@deephaven/code-studio 0.109.1-beta.9 → 1.0.0
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-Dg_nLc8c.js → AppRoot-C38HJ0un.js} +6 -6
- package/build/assets/{AppRoot-Dg_nLc8c.js.map → AppRoot-C38HJ0un.js.map} +1 -1
- package/build/assets/{Chart-DvAn1L3p.js → Chart-D4YHf_6N.js} +2 -2
- package/build/assets/{Chart-DvAn1L3p.js.map → Chart-D4YHf_6N.js.map} +1 -1
- package/build/assets/{ControlType-3HasbVC-.js → ControlType-iwEGPlTh.js} +6 -6
- package/build/assets/ControlType-iwEGPlTh.js.map +1 -0
- package/build/assets/{FontBootstrap-COsTInEn.js → FontBootstrap-B4kLxbaQ.js} +2 -2
- package/build/assets/{FontBootstrap-COsTInEn.js.map → FontBootstrap-B4kLxbaQ.js.map} +1 -1
- package/build/assets/{FormatterUtils-DVozTq8J.js → FormatterUtils-tMzsaSlA.js} +2 -2
- package/build/assets/{FormatterUtils-DVozTq8J.js.map → FormatterUtils-tMzsaSlA.js.map} +1 -1
- package/build/assets/{Grid-_YqxwfZd.js → Grid-Ddxb6zHb.js} +2 -2
- package/build/assets/{Grid-_YqxwfZd.js.map → Grid-Ddxb6zHb.js.map} +1 -1
- package/build/assets/{GridTokenMouseHandler-C4jyd9RJ.js → GridTokenMouseHandler-Cgz-5Eot.js} +2 -2
- package/build/assets/{GridTokenMouseHandler-C4jyd9RJ.js.map → GridTokenMouseHandler-Cgz-5Eot.js.map} +1 -1
- package/build/assets/{IrisGrid-DPlv22Y6.js → IrisGrid-DA_IJZ2F.js} +2 -2
- package/build/assets/{IrisGrid-DPlv22Y6.js.map → IrisGrid-DA_IJZ2F.js.map} +1 -1
- package/build/assets/{IrisGridModel-C58_oDmX.js → IrisGridModel-CpyGLO4h.js} +3 -3
- package/build/assets/{IrisGridModel-C58_oDmX.js.map → IrisGridModel-CpyGLO4h.js.map} +1 -1
- package/build/assets/{IrisGridShortcuts-snHQZtdV.js → IrisGridShortcuts-DtXNJSVp.js} +2 -2
- package/build/assets/{IrisGridShortcuts-snHQZtdV.js.map → IrisGridShortcuts-DtXNJSVp.js.map} +1 -1
- package/build/assets/{IrisGridThemeProvider-D3TajNtW.js → IrisGridThemeProvider-CSv1z1Ip.js} +2 -2
- package/build/assets/{IrisGridThemeProvider-D3TajNtW.js.map → IrisGridThemeProvider-CSv1z1Ip.js.map} +1 -1
- package/build/assets/{LocalWorkspaceStorage-DodpjUnU.js → LocalWorkspaceStorage-hN0IjSNW.js} +2 -2
- package/build/assets/{LocalWorkspaceStorage-DodpjUnU.js.map → LocalWorkspaceStorage-hN0IjSNW.js.map} +1 -1
- package/build/assets/{MarkdownEditor-D-fP7ax_.js → MarkdownEditor-DMcn_pYw.js} +2 -2
- package/build/assets/{MarkdownEditor-D-fP7ax_.js.map → MarkdownEditor-DMcn_pYw.js.map} +1 -1
- package/build/assets/{MarkdownNotebook-S6cCvN-T.js → MarkdownNotebook-D2XS6oTl.js} +2 -2
- package/build/assets/{MarkdownNotebook-S6cCvN-T.js.map → MarkdownNotebook-D2XS6oTl.js.map} +1 -1
- package/build/assets/{MissingPartitionError-CfnkUFSR.js → MissingPartitionError-C6X88tPp.js} +2 -2
- package/build/assets/{MissingPartitionError-CfnkUFSR.js.map → MissingPartitionError-C6X88tPp.js.map} +1 -1
- package/build/assets/Plot-CeX9OXc5.js +2 -0
- package/build/assets/{Plot-BtiE6x1b.js.map → Plot-CeX9OXc5.js.map} +1 -1
- package/build/assets/{Plotly-BExsk7Wu.js → Plotly-CRD66b17.js} +2 -2
- package/build/assets/{Plotly-BExsk7Wu.js.map → Plotly-CRD66b17.js.map} +1 -1
- package/build/assets/{StyleGuideRoot-C2FQVf7x.js → StyleGuideRoot-B8jaKtiv.js} +2 -2
- package/build/assets/{StyleGuideRoot-C2FQVf7x.js.map → StyleGuideRoot-B8jaKtiv.js.map} +1 -1
- package/build/assets/{index-BzOKaIzB.js → index-Ct8lvHqm.js} +4 -4
- package/build/assets/{index-BzOKaIzB.js.map → index-Ct8lvHqm.js.map} +1 -1
- package/build/assets/{index-Oxjc51RS.js → index-Cyc76vZy.js} +3 -3
- package/build/assets/{index-Oxjc51RS.js.map → index-Cyc76vZy.js.map} +1 -1
- package/build/assets/index-mdoUvsfy.js +2 -0
- package/build/assets/{index-B2fa63kF.js.map → index-mdoUvsfy.js.map} +1 -1
- package/build/assets/plotly-cglN1KNi.js +7 -0
- package/build/assets/{plotly-Bb6bKNDb.js.map → plotly-cglN1KNi.js.map} +1 -1
- package/build/index.html +2 -2
- package/package.json +31 -31
- package/build/assets/ControlType-3HasbVC-.js.map +0 -1
- package/build/assets/Plot-BtiE6x1b.js +0 -2
- package/build/assets/index-B2fa63kF.js +0 -2
- package/build/assets/plotly-Bb6bKNDb.js +0 -7
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./MarkdownEditor-
|
|
2
|
-
import{r as g,J as u,M as le,a0 as $e,a1 as ae,bC as qr,ad as k,bD as ki,N as se,a2 as O,_ as Ve,V as J,I as oe,b2 as Xr,b1 as On,a4 as Zr,af as Yr,av as Ft}from"./vendor-CP20mfJA.js";import{F as Ae,cZ as Te,P as ke,an as $,c_ as Yt,c as W,cb as Qr,cf as Jr,b1 as Ni,Q as ea,ac as ta,c$ as et,aq as ji,d0 as ge,B as j,d1 as ln,af as de,Z as Ii,d2 as on,d3 as xi,V as pe,b$ as E,x as tn,d4 as Ut,cl as _i,a2 as dn,d5 as $t,d6 as Vt,d7 as St,d8 as yt,H as Gt,S as ft,d9 as un,i as Ri,b as Ai,a8 as na,ad as ia,da as Ui,db as $i,aV as ra,ag as ne,ck as aa,dc as Ln,cS as sa,cT as la,p as Vi,u as Ht,cA as Ne,cg as Pt,cx as _e,a0 as oa,as as Gi,cK as da,cI as ua,cv as ha,cw as ca,z as pa,cN as Hi,T as ut,W as va,t as fa,N as ma,dd as Bi,de as Ki,df as zi,dg as Wi,be as ga,ah as qi,cz as ba,c1 as Ca,b0 as Sa,cX as ya,dh as Pa,cV as wa,ap as Ea,U as Fa,cY as Ta,cW as Da,ae as Ma,ak as Oa,a6 as La,di as ka,a7 as Na,ay as ja,dj as Ia,az as xa,dk as _a}from"./ControlType-3HasbVC-.js";import{aA as Ra,L as H,e as N,aN as Aa,aO as Ua,K as hn,aP as $a,aQ as Va,aR as Xi,f as cn,aS as Zi,aT as kn,y as Nn,g as Ga,F as Ha,M as Ba,b as Ka,c as za,N as mt,s as Wa,aU as qa,aV as Xa,d as Za,aW as Ya,aX as Qa}from"./index-Oxjc51RS.js";import{C as Ja,a as Q,I as x,G as Tt,S as Yi,L as Qi,b as pn}from"./IrisGridModel-C58_oDmX.js";import{I as es,M as jn,l as ts,i as Re,k as De,j as ns,d as is,e as V,A as rs,m as as,n as ss,o as ls}from"./MissingPartitionError-CfnkUFSR.js";import{F as In}from"./FormatterUtils-DVozTq8J.js";import{_ as os}from"./monaco-CsU3t3B1.js";function vn(i){var{className:e,isFlipped:t,children:n,"data-testid":r}=i,s=d=>{if(n.length!==2)throw new Error("CardFlip requires 2 children to function");return n[d]},a=g.useRef(null),l=g.useCallback(d=>{d.target===d.currentTarget&&document.body.classList.add("card-flip--is-flipping")},[]),o=g.useCallback(d=>{d.target===d.currentTarget&&document.body.classList.remove("card-flip--is-flipping")},[]);return g.useEffect(function(){if(!a.current)throw Error("ref undefined");a.current.addEventListener("transitionstart",l);var h=a.current;return function(){if(h!=null)return h.removeEventListener("transitionstart",l)}},[l]),u.jsxs("div",{className:le(e,{"card-flip--show-front":t,"card-flip--show-back":!t}),"data-testid":r,children:[u.jsx("div",{className:"card-flip--back",children:s(0)}),u.jsx("div",{ref:a,className:"card-flip--front",onTransitionEnd:o,children:s(1)})]})}function xn(i,e,t,n,r,s,a){try{var l=i[s](a),o=l.value}catch(d){return void t(d)}l.done?e(o):Promise.resolve(o).then(n,r)}function ds(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var s=i.apply(e,t);function a(o){xn(s,n,r,a,l,"next",o)}function l(o){xn(s,n,r,a,l,"throw",o)}a(void 0)})}}var us=g.createContext(null);function hs(i){var[e,t]=g.useState(null),[n,r]=g.useState(null),s=g.useContext(us),a=g.useContext(Ra);return g.useEffect(()=>{if(s==null){if(a!=null){t(a),r(null);return}t(null),r(new Error("No API available in useDeferredApi. Was code wrapped in ApiBootstrap or DeferredApiContext.Provider?"));return}var l=!1;function o(){return d.apply(this,arguments)}function d(){return d=ds(function*(){if(i==null)l||(t(null),r(new Error("No widget provided to useDeferredApi")));else if(typeof s=="function")try{var h=yield s(i);l||(t(h),r(null))}catch(c){l||(t(null),r(c))}else t(s)}),d.apply(this,arguments)}return o(),()=>{l=!0}},[a,s,i]),[e,n]}function _n(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function Rn(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?_n(Object(t),!0).forEach(function(n){R(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):_n(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function R(i,e,t){return(e=cs(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function cs(i){var e=ps(i,"string");return typeof e=="symbol"?e:e+""}function ps(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var K=H.module("FigureChartModel");class gt extends Ja{constructor(e,t){var n,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};super(e),n=this,R(this,"chartUtils",void 0),R(this,"dh",void 0),R(this,"figure",void 0),R(this,"settings",void 0),R(this,"data",void 0),R(this,"layout",void 0),R(this,"seriesDataMap",void 0),R(this,"pendingSeries",void 0),R(this,"oneClicks",void 0),R(this,"filterColumnMap",void 0),R(this,"lastFilter",void 0),R(this,"isConnected",void 0),R(this,"seriesToProcess",void 0),R(this,"addPendingSeries",$e(()=>{for(var s=Q.getAxisTypeMap(this.figure),{pendingSeries:a}=this,l=function(){var h,c=a[o],p=n.figure.charts.find(v=>v.series.includes(c));n.addSeries(c,s,(h=p==null?void 0:p.showLegend)!==null&&h!==void 0?h:null),c.subscribe()},o=0;o<a.length;o+=1)l();this.pendingSeries=[]},gt.ADD_SERIES_DEBOUNCE)),R(this,"getTimeZone",ae((s,a)=>{if(a!=null){var l=a.getColumnTypeFormatter(s);if(l!=null)return l.dhTimeZone}},{max:100})),R(this,"getValueTranslator",ae((s,a)=>{var l=this.getTimeZone(s,a);return o=>this.chartUtils.unwrapValue(o,l)},{max:100})),R(this,"getValueParser",ae((s,a)=>{var l=this.getTimeZone(s,a);return o=>this.chartUtils.wrapValue(o,s,l)},{max:100})),R(this,"getRangeParser",ae((s,a)=>l=>{var[o,d]=l,h=this.getValueParser(s,a);return o=h(o),d=h(d),[o,d]},{max:100})),R(this,"getAxisRangeParser",ae((s,a)=>l=>{var o=Q.getSourceForAxis(s,l);return o!=null?this.getRangeParser(o.columnType,a):d=>d},{max:100})),this.handleFigureUpdated=this.handleFigureUpdated.bind(this),this.handleFigureDisconnected=this.handleFigureDisconnected.bind(this),this.handleFigureReconnected=this.handleFigureReconnected.bind(this),this.handleFigureSeriesAdded=this.handleFigureSeriesAdded.bind(this),this.handleDownsampleStart=this.handleDownsampleStart.bind(this),this.handleDownsampleFinish=this.handleDownsampleFinish.bind(this),this.handleDownsampleFail=this.handleDownsampleFail.bind(this),this.handleDownsampleNeeded=this.handleDownsampleNeeded.bind(this),this.handleRequestFailed=this.handleRequestFailed.bind(this),this.dh=e,this.chartUtils=new Q(e),this.figure=t,this.settings=r,this.data=[],this.layout={grid:{rows:t.rows,columns:t.cols,pattern:"independent"}},this.seriesDataMap=new Map,this.pendingSeries=[],this.oneClicks=[],this.filterColumnMap=new Map,this.lastFilter=new Map,this.isConnected=!0,this.seriesToProcess=new Set,this.setTitle(this.getDefaultTitle()),this.initAllSeries(),this.updateAxisPositions(),this.startListeningFigure()}close(){this.figure.close(),this.addPendingSeries.cancel(),this.stopListeningFigure()}getDefaultTitle(){if(this.figure.title!=null&&this.figure.title.length>0)return this.figure.title;if(this.figure.charts.length===1){var e;return(e=this.figure.charts[0].title)!==null&&e!==void 0?e:""}return""}initAllSeries(){var e=this;this.oneClicks=[],this.filterColumnMap.clear();var{charts:t}=this.figure,n=Q.getAxisTypeMap(this.figure),r=[];this.seriesToProcess=new Set;for(var s=function(){for(var p=t[a],v=0;v<p.series.length;v+=1){var m=p.series[v];r.push(m.name),e.addSeries(m,n,p.showLegend)}var{axes:b,title:f}=p;if(f!=null&&f.length>0&&(t.length>1||e.figure.title!=null)){var C=b.find(L=>L.type===e.dh.plot.AxisType.X),P=b.find(L=>L.type===e.dh.plot.AxisType.Y);if(C==null||P==null)K.warn("Chart title provided, but unknown how to map to the correct axes for this chart type",p);else{var S,y,w,D,M=((S=(y=n.get(C.type))===null||y===void 0?void 0:y.findIndex(L=>L===C))!==null&&S!==void 0?S:0)+1,T=((w=(D=n.get(P.type))===null||D===void 0?void 0:D.findIndex(L=>L===P))!==null&&w!==void 0?w:0)+1,F={align:"center",x:.5,y:1,yshift:17,text:f,showarrow:!1,xref:"x".concat(M," domain"),yref:"y".concat(T," domain")};e.layout.annotations==null?e.layout.annotations=[F]:e.layout.annotations.push(F)}}},a=0;a<t.length;a+=1)s();for(var l=[...this.seriesDataMap.keys()],o=l.filter(c=>r.indexOf(c)<0),d=0;d<o.length;d+=1){var h=o[d];this.seriesDataMap.delete(h)}}addSeries(e,t,n){var r,s,{dh:a}=this,l=this.chartUtils.makeSeriesDataFromSeries(e,t,Q.getSeriesVisibility(e.name,this.settings),n,(r=(s=this.renderOptions)===null||s===void 0?void 0:s.webgl)!==null&&r!==void 0?r:!0);if(this.seriesDataMap.set(e.name,l),this.seriesToProcess.add(e.name),this.data=[...this.seriesDataMap.values()],e.plotStyle===a.plot.SeriesPlotStyle.STACKED_BAR?this.layout.barmode="stack":e.plotStyle===a.plot.SeriesPlotStyle.PIE&&(this.layout.hiddenlabels=Q.getHiddenLabels(this.settings)),this.layout.showlegend=this.data.length>1||e.plotStyle===a.plot.SeriesPlotStyle.PIE?n??void 0:!1,e.oneClick!=null){for(var{oneClick:o}=e,{columns:d}=o,h=0;h<d.length;h+=1)this.filterColumnMap.set(d[h].name,d[h]);this.oneClicks.push(o)}this.updateLayoutFormats()}subscribe(e){super.subscribe(e),this.listeners.length===1&&(this.initAllSeries(),this.subscribeFigure())}unsubscribe(e){super.unsubscribe(e),this.listeners.length===0&&this.unsubscribeFigure()}subscribeFigure(){if(!this.isConnected){K.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&&(K.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){K.debug("Downsample started",e),this.fireDownsampleStart(e.detail)}handleDownsampleFinish(e){K.debug("Downsample finished",e),this.fireDownsampleFinish(e.detail)}handleDownsampleFail(e){K.error("Downsample failed",e),this.fireDownsampleFail(e.detail)}handleDownsampleNeeded(e){K.info("Downsample needed",e),this.fireDownsampleNeeded(e.detail)}handleFigureUpdated(e){var{detail:t}=e,{series:n}=t;K.debug2("handleFigureUpdated",n);for(var r=0;r<n.length;r+=1){var s=n[r];K.debug2("handleFigureUpdated updating series",s.name);for(var{sources:a}=s,l=0;l<a.length;l+=1){var o=a[l],{columnType:d,type:h}=o,c=this.getValueTranslator(d,this.formatter),p=t.getArray(s,h,c);this.setDataArrayForSeries(s,h,p)}this.seriesToProcess.delete(s.name),this.cleanSeries(s)}this.seriesToProcess.size===0&&this.fireLoadFinished();var{data:v}=this;this.fireUpdate(v)}handleRequestFailed(e){K.error("Request failed",e),this.fireError(["".concat(e.detail)])}resubscribe(){this.listeners.length>0&&(this.unsubscribeFigure(),this.subscribeFigure())}setFormatter(e){super.setFormatter(e),this.updateLayoutFormats(),this.resubscribe()}setRenderOptions(e){super.setRenderOptions(e),this.initAllSeries()}setDownsamplingDisabled(e){super.setDownsamplingDisabled(e),this.resubscribe()}handleFigureDisconnected(e){K.debug("Figure disconnected",e),this.isConnected=!1,this.listeners.length>0&&this.unsubscribeFigure(),this.fireDisconnect()}handleFigureReconnected(e){K.debug("Figure reconnected",e),this.isConnected=!0,this.initAllSeries(),this.fireReconnect(),this.listeners.length>0&&this.subscribeFigure()}handleFigureSeriesAdded(e){var{detail:t}=e;K.debug("handleFigureSeriesAdded",t),this.pendingSeries.push(t),this.addPendingSeries()}setDimensions(e){super.setDimensions(e),this.updateAxisPositions()}setTitle(e){var t,n;super.setTitle(e);var r=(t=(n=(e??"").match(/<br>/g))===null||n===void 0?void 0:n.length)!==null&&t!==void 0?t:0,s=Q.DEFAULT_MARGIN.t+r*Q.SUBTITLE_LINE_HEIGHT;this.layout.margin?this.layout.margin.t=s:this.layout.margin={t:s},typeof this.layout.title=="string"?this.layout.title=e:(this.layout.title=Rn({},this.layout.title),this.layout.title.text=e,this.layout.title.pad=Rn({},this.layout.title.pad),this.layout.title.pad.t=Q.DEFAULT_TITLE_PADDING.t+r*Q.SUBTITLE_LINE_HEIGHT*.5),this.fireLayoutUpdated({title:this.layout.title})}getPlotWidth(){var e,t,n,r;return!this.rect||!this.rect.width?0:Math.max(this.rect.width-((e=(t=this.layout.margin)===null||t===void 0?void 0:t.l)!==null&&e!==void 0?e:0)-((n=(r=this.layout.margin)===null||r===void 0?void 0:r.r)!==null&&n!==void 0?n:0),0)}getPlotHeight(){var e,t,n,r;return!this.rect||!this.rect.height?0:Math.max(this.rect.height-((e=(t=this.layout.margin)===null||t===void 0?void 0:t.t)!==null&&e!==void 0?e:0)-((n=(r=this.layout.margin)===null||r===void 0?void 0:r.b)!==null&&n!==void 0?n:0),0)}updateAxisPositions(){var e=this.getPlotWidth(),t=this.getPlotHeight();this.chartUtils.updateFigureAxes(this.layout,this.figure,n=>this.getAxisRangeParser(n,this.formatter),e,t)}updateLayoutFormats(){if(this.formatter){var e=this.chartUtils.getAxisFormats(this.figure,this.formatter);e.forEach((t,n)=>{K.debug("Assigning ".concat(n),this.layout[n],t);var r=this.layout[n];r!=null?Object.assign(r,t):K.debug("Ignoring null layout.".concat(n))})}}setDataArrayForSeries(e,t,n){var{name:r,plotStyle:s}=e,a=this.seriesDataMap.get(r),l=this.chartUtils.getPlotlyProperty(s,t);a&&qr(a,l,n)}cleanSeries(e){var{dh:t}=this,{name:n,plotStyle:r}=e,s=this.seriesDataMap.get(n);if(s!=null){if(r===t.plot.SeriesPlotStyle.HISTOGRAM){var{xLow:a,xHigh:l}=s;if(a&&l&&a.length===l.length){for(var o=[],d=0;d<a.length;d+=1)o.push(l[d]-a[d]);s.width=o}}else if(r===t.plot.SeriesPlotStyle.LINE||r===t.plot.SeriesPlotStyle.ERROR_BAR||r===t.plot.SeriesPlotStyle.BAR){var{x:h,xLow:c,xHigh:p,y:v,yLow:m,yHigh:b}=s;c&&p&&c!==h&&(s.error_x=Q.getPlotlyErrorBars(h,c,p)),m&&b&&m!==v&&(s.error_y=Q.getPlotlyErrorBars(v,m,b))}else if(r===t.plot.SeriesPlotStyle.TREEMAP){var{ids:f,labels:C}=s;f!==void 0&&C===void 0&&(s.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){K.warn("Trying to set a filter, but no one click!");return}K.debug("setFilter",e);for(var n=function(){var a=t.oneClicks[r],{columns:l}=a,o=new Set([...e.keys(),...t.lastFilter.keys()]);o.forEach(d=>{var h=e.get(d);t.lastFilter.get(d)!==h&&l.find(c=>c.name===d)!=null&&a.setValueForColumn(d,h)})},r=0;r<this.oneClicks.length;r+=1)n();this.lastFilter=new Map(e)}setFigure(e){this.close(),this.figure=e,this.setTitle(this.getDefaultTitle()),this.initAllSeries(),this.updateAxisPositions(),this.startListeningFigure(),this.listeners.length>0&&this.subscribeFigure()}updateSettings(e){this.settings=e}}R(gt,"ADD_SERIES_DEBOUNCE",50);function An(i,e,t,n,r,s,a){try{var l=i[s](a),o=l.value}catch(d){return void t(d)}l.done?e(o):Promise.resolve(o).then(n,r)}function Qt(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var s=i.apply(e,t);function a(o){An(s,n,r,a,l,"next",o)}function l(o){An(s,n,r,a,l,"throw",o)}a(void 0)})}}class Xe{static makeModelFromSettings(e,t,n){return Qt(function*(){var r=yield Xe.makeFigureFromSettings(e,t,n);return new gt(e,r,t)})()}static makeFigureFromSettings(e,t,n){return Qt(function*(){var r=yield n.copy();return r.applyCustomColumns(n.customColumns),r.applyFilter(n.filter),r.applySort(n.sort),e.plot.Figure.create(new Q(e).makeFigureSettings(t,r))})()}static makeModel(e,t,n){return Qt(function*(){return new gt(e,n,t)})()}}function Un(i){return i.setFigure!==void 0}function $n(i,e,t,n,r,s,a){try{var l=i[s](a),o=l.value}catch(d){return void t(d)}l.done?e(o):Promise.resolve(o).then(n,r)}function Ie(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var s=i.apply(e,t);function a(o){$n(s,n,r,a,l,"next",o)}function l(o){$n(s,n,r,a,l,"throw",o)}a(void 0)})}}function he(i,e,t){return(e=vs(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function vs(i){var e=fs(i,"string");return typeof e=="symbol"?e:e+""}function fs(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var we=H.module("IrisGridTableModel");class ms extends es{constructor(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Ae(e),r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e,t,n,r),he(this,"userFrozenColumns",void 0),he(this,"customColumnList",void 0),he(this,"formatColumnList",void 0),he(this,"initialFilters",[]),he(this,"wasUncoalesced",void 0),he(this,"getMemoizedKeyColumnSet",k(s=>new Set(s??$))),he(this,"getMemoizedFrontColumns",k(s=>s??$)),he(this,"getMemoizedBackColumns",k(s=>s??$)),he(this,"getMemoizedFrozenColumns",k((s,a)=>{var l;return(l=a??s)!==null&&l!==void 0?l:$})),he(this,"getCachedFilterableColumnSet",k(s=>new Set(s.map((a,l)=>l)))),he(this,"getCachedPartitionColumns",k(s=>s.filter(a=>a.isPartitionColumn))),this.customColumnList=[],this.formatColumnList=[],this.initialFilters=t.filter,this.wasUncoalesced=this.isPartitionRequired}get isExportAvailable(){return this.table.freeze!=null}get isColumnStatisticsAvailable(){return this.table.getColumnStatistics!=null}get isRollupAvailable(){return this.table.rollup!=null}get isSelectDistinctAvailable(){return this.table.selectDistinct!=null}get isCustomColumnsAvailable(){return this.table.applyCustomColumns!=null}get isFormatColumnsAvailable(){return this.table.applyCustomColumns!=null}get keyColumnSet(){var e;return this.getMemoizedKeyColumnSet((e=this.inputTable)===null||e===void 0?void 0:e.keys)}get frontColumns(){var e,t;return this.getMemoizedFrontColumns((e=(t=this.layoutHints)===null||t===void 0?void 0:t.frontColumns)!==null&&e!==void 0?e:void 0)}get backColumns(){var e,t;return this.getMemoizedBackColumns((e=(t=this.layoutHints)===null||t===void 0?void 0:t.backColumns)!==null&&e!==void 0?e:void 0)}get frozenColumns(){var e,t;return this.getMemoizedFrozenColumns((e=(t=this.layoutHints)===null||t===void 0?void 0:t.frozenColumns)!==null&&e!==void 0?e:void 0,this.userFrozenColumns)}get layoutHints(){return this.table.layoutHints}get floatingLeftColumnCount(){return this.frozenColumns.length}get description(){var e;return(e=this.table.description)!==null&&e!==void 0?e:""}get customColumns(){return this.customColumnList}set customColumns(e){if(we.debug2("set customColumns",e,this.customColumnList,e===this.customColumnList),this.customColumnList.length===0&&e.length===0){we.debug("Ignore empty initial customColumns"),this.customColumnList=e;return}if(this.customColumnList===e){we.debug("Ignore same customColumns");return}this.closeSubscription(),this.customColumnList=e,this.table.applyCustomColumns([...e,...this.formatColumns]),this.applyViewport()}get formatColumns(){return this.formatColumnList}set formatColumns(e){if(we.debug2("set formatColumns",e,this.formatColumnList,e===this.formatColumnList),this.formatColumnList.length===0&&e.length===0){we.debug("Ignore empty initial formatColumns"),this.formatColumnList=e;return}if(this.formatColumnList===e){we.debug("Ignore same formatColumns");return}this.closeSubscription(),this.formatColumnList=e,this.table.applyCustomColumns([...this.customColumns,...e]),this.applyViewport()}updateFrozenColumns(e){this.userFrozenColumns=e,this.dispatchEvent(new Te(x.EVENT.COLUMNS_CHANGED,{detail:this.columns}))}get partitionColumns(){return this.getCachedPartitionColumns(this.columns)}partitionKeysTable(){var e=this;return Ie(function*(){return e.valuesTable(e.partitionColumns)})()}partitionMergedTable(){var e=this;return Ie(function*(){var t=yield e.table.copy();return t.applyFilter([]),t})()}partitionBaseTable(){var e=this;return Ie(function*(){return e.partitionKeysTable()})()}partitionTable(e){var t=this;return Ie(function*(){we.debug("getting partition table for partitions",e);for(var n=[],r=0;r<t.partitionColumns.length;r+=1){var s=e[r],a=t.partitionColumns[r],l=t.tableUtils.makeNullableEqFilter(a,s);n.push(l)}var o=yield t.table.copy();return o.applyFilter([...t.initialFilters,...n]),o})()}set filter(e){this.closeSubscription(),this.table.applyFilter([...this.initialFilters,...e]),this.applyViewport()}set totalsConfig(e){if(we.debug("set totalsConfig",e),e!==this.totals){if(this.totals=e,this.formattedStringData=[],this.totalsTablePromise!=null&&this.totalsTablePromise.cancel(),this.setTotalsTable(null),e==null){this.dispatchEvent(new Te(x.EVENT.UPDATED));return}this.totalsTablePromise=ke.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{ke.isCanceled(t)||(we.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new Te(x.EVENT.REQUEST_FAILED,{detail:t})))})}}get isFilterRequired(){return this.table.isUncoalesced}get isPartitionRequired(){return this.table.isUncoalesced&&this.isValuesTableAvailable&&this.partitionColumns.length>0}get isPartitionAwareSourceTable(){return this.wasUncoalesced}isFilterable(e){return this.getCachedFilterableColumnSet(this.columns).has(e)}export(){var e=this;return Ie(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=s=>super.pendingDataMap=s,r=this;return Ie(function*(){var s;if(!r.isDeletableRanges(e))throw new Error("Undeletable ranges ".concat(e));N(r.inputTable);var{keyColumns:a}=r.inputTable;if(r.keyColumnSet.size===0)throw new Error("No key columns to allow deletion");var l=r.getPendingAreaRange(),o=e.map(S=>Tt.intersection(l,S)).filter(S=>S!=null).map(S=>(N(S),Tt.offset(S,0,-(r.floatingTopRowCount+r.table.size))));if(o.length>0){for(var d=new Map(t()),h=0;h<o.length;h+=1){var c=o[h];N(c.startRow),N(c.endRow);for(var p=c.startRow;p<=c.endRow;p+=1)d.delete(p)}n(d),r.formattedStringData=[],r.dispatchEvent(new Te(x.EVENT.PENDING_DATA_UPDATED)),r.dispatchEvent(new Te(x.EVENT.UPDATED))}var v=r.getTableAreaRange(),m=e.map(S=>Tt.intersection(v,S)).filter(S=>S!=null);if(!(m.length<=0)){var[b,f]=yield Promise.all([r.snapshot(m.map(S=>(N(S),a.map(y=>{var w=r.getColumnIndexByName(y.name);if(w==null)throw new Error("Key column ".concat(y.name," not found"));return new Tt(w,S.startRow,w,S.endRow)}))).flat()),r.table.copy()]),C=b.map(S=>{for(var y=[],w=0;w<a.length;w+=1){var D=a[w],M=S[w],T=r.tableUtils.makeNullableEqFilter(D,M);y.push(T)}return y.reduce((F,L)=>{var A;return(A=F==null?void 0:F.and(L))!==null&&A!==void 0?A:L})}),P=C.reduce((S,y)=>{var w;return(w=S==null?void 0:S.or(y))!==null&&w!==void 0?w:y});f.applyFilter([P]),yield(s=r.inputTable)===null||s===void 0?void 0:s.deleteTable(f),f.close()}})()}seekRow(e,t,n,r,s,a,l){var o=this;return Ie(function*(){return o.table.seekRow(e,t,n,r,s,a,l)})()}get isSeekRowAvailable(){return this.table.seekRow!=null}}function gs(i,e,t){return(e=bs(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function bs(i){var e=Cs(i,"string");return typeof e=="symbol"?e:e+""}function Cs(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class Ss extends x{constructor(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:new Ae(e);super(e),gs(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 $}getColumnIndexByName(e){}get initialMovedColumns(){return $}get initialMovedRows(){return $}get initialColumnHeaderGroups(){return $}get groupedColumns(){return $}formatForCell(e,t){}valueForCell(e,t){}get filter(){return $}set filter(e){}get partition(){return $}set partition(e){}get partitionColumns(){return $}get formatter(){return this.modelFormatter}set formatter(e){this.modelFormatter=e}displayString(e,t,n){return""}get sort(){return $}set sort(e){}get customColumns(){return $}set customColumns(e){}get formatColumns(){return $}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 $}set selectDistinctColumns(e){}get pendingDataMap(){return Yt}set pendingDataMap(e){}get pendingRowCount(){return 0}set pendingRowCount(e){}get pendingDataErrors(){return Yt}commitPending(){return Promise.resolve()}setViewport(e,t,n){}snapshot(e){return Promise.resolve([])}textSnapshot(e,t,n){return Promise.resolve("")}valuesTable(e){throw new Error("Method not implemented.")}delete(e){return Promise.resolve()}seekRow(e,t,n,r,s,a,l){return Promise.resolve(0)}get columnHeaderGroups(){return $}set columnHeaderGroups(e){}get columnHeaderGroupMap(){return Yt}getColumnHeaderParentGroup(e,t){}}function Vn(i,e,t,n,r,s,a){try{var l=i[s](a),o=l.value}catch(d){return void t(d)}l.done?e(o):Promise.resolve(o).then(n,r)}function Dt(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var s=i.apply(e,t);function a(o){Vn(s,n,r,a,l,"next",o)}function l(o){Vn(s,n,r,a,l,"throw",o)}a(void 0)})}}function ys(i,e,t){return(e=Ps(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Ps(i){var e=ws(i,"string");return typeof e=="symbol"?e:e+""}function ws(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}function Es(i){return"getBaseTable"in i&&typeof i.getBaseTable=="function"}class Fs extends Ss{constructor(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Ae(e);super(e,n),ys(this,"partitionedTable",void 0),this.partitionedTable=t}get isPartitionRequired(){return!0}get isPartitionAwareSourceTable(){return!1}get isReversible(){return!1}displayString(e,t,n){return""}close(){this.partitionedTable.close()}get columns(){return this.partitionedTable.columns}get partitionColumns(){return this.partitionedTable.keyColumns}get columnCount(){return this.columns.length}getColumnIndexByName(e){return this.columns.findIndex(t=>t.name===e)}textForColumnHeader(e,t){var n;return(n=this.columns[e].name)!==null&&n!==void 0?n:""}partitionKeysTable(){var e=this;return Dt(function*(){return e.partitionedTable.getKeyTable()})()}partitionBaseTable(){var e=this;return Dt(function*(){return Es(e.partitionedTable)?e.partitionedTable.getBaseTable():e.partitionedTable.getKeyTable()})()}partitionMergedTable(){var e=this;return Dt(function*(){return e.partitionedTable.getMergedTable()})()}partitionTable(e){var t=this;return Dt(function*(){try{var n=yield t.partitionedTable.getTable(e);if(n==null)throw new jn("Partition not found");return n}catch(r){throw ts(r)?r:new jn("Unable to retrieve partition")}})()}}function Ee(i,e,t){return(e=Ts(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Ts(i){var e=Ds(i,"string");return typeof e=="symbol"?e:e+""}function Ds(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var Fe=H.module("IrisGridProxyModel");function Ke(i,e,t,n){return W.isTreeTable(e)?new is(i,e,t):W.isPartitionedTable(e)?new Fs(i,e,t):new ms(i,e,t,n)}class Ms extends x{constructor(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Ae(e),r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e),Ee(this,"model",void 0),Ee(this,"dh",void 0),Ee(this,"originalModel",void 0),Ee(this,"modelPromise",void 0),Ee(this,"rollup",void 0),Ee(this,"partition",void 0),Ee(this,"selectDistinct",void 0),Ee(this,"currentViewport",void 0),Ee(this,"setViewport",(a,l,o)=>{this.currentViewport={top:a,bottom:l,columns:o},this.model.setViewport(a,l,o)}),this.addEventListener=this.addEventListener.bind(this),this.removeEventListener=this.removeEventListener.bind(this),this.dispatchEvent=this.dispatchEvent.bind(this),this.handleModelEvent=this.handleModelEvent.bind(this);var s=Ke(e,t,n,r);return this.dh=e,this.originalModel=s,this.model=s,this.modelPromise=null,this.rollup=null,this.partition=null,this.selectDistinct=[],new Proxy(this,{get(a,l,o){var d,h=((d=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(a),l))===null||d===void 0?void 0:d.get)!=null;if(h)return Reflect.get(a,l,o);var c=Object.prototype.hasOwnProperty.call(a,l),p=Object.prototype.hasOwnProperty.call(Object.getPrototypeOf(a),l),v=c||p?a:a.model;return Reflect.get(v,l)},set(a,l,o){var d,h=((d=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(a),l))===null||d===void 0?void 0:d.set)!=null,c=Object.prototype.hasOwnProperty.call(a,l);return h||c?Reflect.set(a,l,o,a):Reflect.set(a.model,l,o,a.model)}})}close(){this.originalModel.close(),this.model!==this.originalModel&&this.model.close(),this.modelPromise!=null&&this.modelPromise.cancel()}handleModelEvent(e){Fe.debug2("handleModelEvent",e);var{detail:t,type:n}=e;this.dispatchEvent(new Te(n,{detail:t}))}setModel(e){Fe.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 Te(x.EVENT.COLUMNS_CHANGED,{detail:e.columns}));else if(this.currentViewport!=null){var{top:r,bottom:s,columns:a}=this.currentViewport;e.setViewport(r,s,a)}Re(e)&&this.dispatchEvent(new Te(x.EVENT.TABLE_CHANGED,{detail:e.table}))}setNextModel(e){Fe.debug2("setNextModel"),this.modelPromise&&this.modelPromise.cancel(),this.listenerCount>0&&this.removeListeners(this.model),this.modelPromise=ke.makeCancelable(e,t=>t.close()),this.modelPromise.then(t=>{this.modelPromise=null,this.setModel(t)}).catch(t=>{if(ke.isCanceled(t)){Fe.debug2("setNextModel cancelled");return}Fe.error("Unable to set next model",t),this.modelPromise=null,this.dispatchEvent(new Te(x.EVENT.REQUEST_FAILED,{detail:t}))})}startListening(){super.startListening(),this.addListeners(this.model)}stopListening(){super.stopListening(),this.removeListeners(this.model)}addListeners(e){for(var t=Object.keys(x.EVENT),n=0;n<t.length;n+=1)e.addEventListener(t[n],this.handleModelEvent)}removeListeners(e){for(var t=Object.keys(x.EVENT),n=0;n<t.length;n+=1)e.removeEventListener(t[n],this.handleModelEvent)}get isCustomColumnsAvailable(){return this.model.isCustomColumnsAvailable&&!(this.isSelectDistinctAvailable&&this.selectDistinctColumns.length>0)}get isRollupAvailable(){return(this.originalModel.isRollupAvailable||this.rollup!=null)&&this.selectDistinct.length===0}get isSelectDistinctAvailable(){return(this.originalModel.isSelectDistinctAvailable||this.selectDistinct.length>0)&&this.rollup==null}get originalColumns(){return this.originalModel.columns}get partitionColumns(){return De(this.originalModel)?this.originalModel.partitionColumns:[]}get partitionConfig(){return!De(this.originalModel)||!this.originalModel.isPartitionRequired?ns(this.originalModel)?null:void 0:this.partition}set partitionConfig(e){if(!this.isPartitionRequired)throw new Error("Partitions are not available");Fe.debug("set partitionConfig",e),this.partition=e;var t=Promise.resolve(this.originalModel);e!=null&&De(this.originalModel)&&(e.mode==="keys"?t=this.originalModel.partitionBaseTable().then(n=>Ke(this.dh,n,this.formatter)):e.mode==="merged"?t=this.originalModel.partitionMergedTable().then(n=>Ke(this.dh,n,this.formatter)):t=this.originalModel.partitionTable(e.partitions).then(n=>Ke(this.dh,n,this.formatter))),this.setNextModel(t)}partitionKeysTable(){if(!De(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionKeysTable()}partitionMergedTable(){if(!De(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionMergedTable()}partitionTable(e){if(!De(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionTable(e)}get rollupConfig(){return this.rollup}set rollupConfig(e){if(Fe.debug("set rollupConfig",e),!this.isRollupAvailable)throw new Error("Rollup Rows are not available");if(!ki(e,this.rollup)){this.rollup=e;var t=Promise.resolve(this.originalModel);Re(this.originalModel)&&e!=null&&(t=this.originalModel.table.rollup(e).then(n=>Ke(this.dh,n,this.formatter))),this.setNextModel(t)}}get selectDistinctColumns(){return this.selectDistinct}set selectDistinctColumns(e){if(Fe.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){Fe.debug("Ignore same selectDistinctColumns",e);return}this.selectDistinct=e;var t=e.map(r=>this.originalColumns.find(s=>s.name===r)).filter(r=>r!=null),n=Promise.resolve(this.originalModel);Re(this.originalModel)&&t.length>0&&(n=this.originalModel.table.selectDistinct(t).then(r=>Ke(this.dh,r,this.formatter))),this.setNextModel(n)}get isFilterRequired(){return this.originalModel.isFilterRequired}get isPartitionRequired(){return De(this.originalModel)?this.originalModel.isPartitionRequired:void 0}get isPartitionAwareSourceTable(){return De(this.originalModel)&&this.originalModel.isPartitionAwareSourceTable}get formatter(){return this.originalModel.formatter}set formatter(e){this.originalModel.formatter=e}}function Gn(i,e,t,n,r,s,a){try{var l=i[s](a),o=l.value}catch(d){return void t(d)}l.done?e(o):Promise.resolve(o).then(n,r)}function Os(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var s=i.apply(e,t);function a(o){Gn(s,n,r,a,l,"next",o)}function l(o){Gn(s,n,r,a,l,"throw",o)}a(void 0)})}}class Ji{static makeModel(e,t){var n=arguments;return Os(function*(){var r=n.length>2&&n[2]!==void 0?n[2]:new Ae(e),s=null;return!W.isTreeTable(t)&&!W.isPartitionedTable(t)&&t.hasInputTable&&(s=yield t.inputTable()),new Ms(e,t,r,s)})()}}function Hn(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function Bn(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Hn(Object(t),!0).forEach(function(n){Ls(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):Hn(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function Ls(i,e,t){return(e=ks(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function ks(i){var e=Ns(i,"string");return typeof e=="symbol"?e:e+""}function Ns(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}function er(i,e){var t=["isStuckToBottom","isStuckToRight","movedColumns","movedRows"];return i===e||t.every(n=>i[n]===e[n])}function tr(i,e){var t=["advancedFilters","aggregationSettings","customColumnFormatMap","isFilterBarShown","quickFilters","customColumns","reverse","rollupConfig","showSearchBar","searchValue","selectDistinctColumns","selectedSearchColumns","sorts","invertSearchColumns","pendingDataMap","frozenColumns","conditionalFormats","columnHeaderGroups","partitionConfig"];return i===e||i.metrics!=null&&e.metrics!=null&&i.metrics.userColumnWidths===e.metrics.userColumnWidths&&i.metrics.userRowHeights===e.metrics.userRowHeights&&t.every(n=>i[n]===e[n])}function js(){return k((i,e)=>V.dehydrateGridState(i,e),(i,e)=>{var[t,n]=i,[r,s]=e;return t===r&&er(n,s)})}function Is(){return k((i,e)=>{var t=new V(i.dh);return t.dehydrateIrisGridState(i,e)},(i,e)=>{var[t,n]=i,[r,s]=e;return t===r&&tr(n,s)})}function xs(){return k((i,e,t)=>{var n=new V(i.dh);return Bn(Bn({},n.dehydrateIrisGridState(i,e)),V.dehydrateGridState(i,t))},(i,e)=>{var[t,n,r]=i,[s,a,l]=e;return t===s&&tr(n,a)&&er(r,l)})}var nn={makeMemoizedGridStateDehydrator:js,makeMemoizedIrisGridStateDehydrator:Is,makeMemoizedCombinedGridStateDehydrator:xs};function nr(){var i=g.useContext(Qr);if(i==null)throw new Error("LayoutManager not available, did you add a LayoutManagerContext.Provider to the tree?");return i}function fn(i,e,t){return(e=_s(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function _s(i){var e=Rs(i,"string");return typeof e=="symbol"?e:e+""}function Rs(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class Ue{}fn(Ue,"OPEN","ChartEvent.OPEN");fn(Ue,"CLOSE","ChartEvent.CLOSE");fn(Ue,"COLUMN_SELECTED","ChartEvent.COLUMN_SELECTED");function tt(i,e,t){return(e=As(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function As(i){var e=Us(i,"string");return typeof e=="symbol"?e:e+""}function Us(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class B{}tt(B,"OPEN_GRID","IrisGridEvent.OPEN_GRID");tt(B,"CLOSE_GRID","IrisGridEvent.CLOSE_GRID");tt(B,"DATA_SELECTED","IrisGridEvent.DATA_SELECTED");tt(B,"COLUMN_SELECTED","IrisGridEvent.COLUMN_SELECTED");tt(B,"STATE_CHANGED","IrisGridEvent.STATE_CHANGED");tt(B,"CREATE_CHART","IrisGridevent.CREATE_CHART");function ir(i,e,t){return(e=$s(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function $s(i){var e=Vs(i,"string");return typeof e=="symbol"?e:e+""}function Vs(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class mn{}ir(mn,"OPEN","PandasEvent.OPEN");ir(mn,"CLOSE","PandasEvent.CLOSE");var Gs=Jr;function Hs(i){var{children:e,descriptor:t}=i,{name:n,type:r,description:s,displayName:a}=t,l=r.replace(/([a-z])([A-Z])/g,"$1 $2");return u.jsxs("div",{className:"tab-tooltip-grid-container",children:[u.jsxs("span",{className:"tab-tooltip-title",children:[l," Name"]}),u.jsxs("div",{className:"tab-tooltip-name-wrapper",children:[u.jsx("span",{className:"tab-tooltip-name",children:n}),u.jsx(ea,{className:"tab-tooltip-copy",tooltip:"Copy name",copy:n})]}),n!==a&&!!a&&u.jsxs(u.Fragment,{children:[u.jsx("span",{className:"tab-tooltip-title",children:"Display Name"}),u.jsx("span",{className:"tab-tooltip-name",children:a})]}),!!s&&u.jsx("div",{className:"tab-tooltip-description",children:s}),e]})}var gn=Ni(Hs);function rn(i,e,t){return(e=Bs(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Bs(i){var e=Ks(i,"string");return typeof e=="symbol"?e:e+""}function Ks(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class rr extends g.PureComponent{constructor(e){var t;super(e),t=this,rn(this,"getCachedRenderTabTooltip",k((n,r)=>n?()=>u.jsx(gn,{descriptor:r}):void 0)),rn(this,"getCachedActions",k(function(n){var r,s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:$;return[...s,{title:"Copy ".concat((r=n.displayType)!==null&&r!==void 0?r:n.type," Name"),group:ji.groups.medium,order:20,action:t.handleCopyName}]})),this.handleSessionClosed=this.handleSessionClosed.bind(this),this.handleCopyName=this.handleCopyName.bind(this),this.state={isClientDisconnected:!1,isPanelDisconnected:!1,isWidgetDisconnected:!1,isWaitingForReconnect:!1,isPanelInactive:!1}}handleCopyName(){var{descriptor:e}=this.props;ta(e.name)}getErrorMessage(){var{descriptor:e,errorMessage:t}=this.props,{isClientDisconnected:n,isPanelDisconnected:r,isWidgetDisconnected:s,isWaitingForReconnect:a}=this.state;if(t!=null&&t!=="")return"".concat(t);if(n&&r&&a)return`Disconnected from server.
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./MarkdownEditor-DMcn_pYw.js","./vendor-CP20mfJA.js","./helpers-BosuxZz1.js","./vendor-BQ4VJl3N.css","./ControlType-iwEGPlTh.js","./index-Cyc76vZy.js","./monaco-CsU3t3B1.js","./monaco-CgHo24-M.css","./index-CDBsexMR.css","./ControlType-CsvY3566.css","./mathjax-CYK3SXSe.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{r as g,J as u,M as le,a0 as $e,a1 as ae,bC as qr,ad as k,bD as ki,N as se,a2 as O,_ as Ve,V as J,I as oe,b2 as Xr,b1 as On,a4 as Zr,af as Yr,av as Ft}from"./vendor-CP20mfJA.js";import{F as Ae,c_ as Te,P as ke,an as $,c$ as Yt,c as W,ca as Qr,cf as Jr,b1 as Ni,Q as ea,ac as ta,d0 as et,aq as ji,d1 as ge,B as j,d2 as ln,af as de,Z as Ii,d3 as on,d4 as xi,V as pe,b$ as E,x as tn,d5 as Ut,cl as _i,a2 as dn,d6 as $t,d7 as Vt,d8 as St,d9 as yt,H as Gt,S as ft,da as un,i as Ri,b as Ai,a8 as na,ad as ia,db as Ui,dc as $i,aV as ra,ag as ne,ck as aa,dd as Ln,cT as sa,cU as la,p as Vi,u as Ht,cB as Ne,cg as Pt,cx as _e,a0 as oa,as as Gi,cL as da,cJ as ua,cv as ha,cw as ca,z as pa,cO as Hi,T as ut,W as va,t as fa,N as ma,de as Bi,df as Ki,dg as zi,dh as Wi,be as ga,ah as qi,cA as ba,c1 as Ca,b0 as Sa,cY as ya,di as Pa,cW as wa,ap as Ea,U as Fa,cZ as Ta,cX as Da,ae as Ma,ak as Oa,a6 as La,dj as ka,a7 as Na,ay as ja,dk as Ia,az as xa,dl as _a}from"./ControlType-iwEGPlTh.js";import{aA as Ra,L as H,e as N,aN as Aa,aO as Ua,K as hn,aP as $a,aQ as Va,aR as Xi,f as cn,aS as Zi,aT as kn,y as Nn,g as Ga,F as Ha,M as Ba,b as Ka,c as za,N as mt,s as Wa,aU as qa,aV as Xa,d as Za,aW as Ya,aX as Qa}from"./index-Cyc76vZy.js";import{C as Ja,a as Q,I as x,G as Tt,S as Yi,L as Qi,b as pn}from"./IrisGridModel-CpyGLO4h.js";import{I as es,M as jn,l as ts,i as Re,k as De,j as ns,d as is,e as V,A as rs,m as as,n as ss,o as ls}from"./MissingPartitionError-C6X88tPp.js";import{F as In}from"./FormatterUtils-tMzsaSlA.js";import{_ as os}from"./monaco-CsU3t3B1.js";function vn(i){var{className:e,isFlipped:t,children:n,"data-testid":r}=i,s=d=>{if(n.length!==2)throw new Error("CardFlip requires 2 children to function");return n[d]},a=g.useRef(null),l=g.useCallback(d=>{d.target===d.currentTarget&&document.body.classList.add("card-flip--is-flipping")},[]),o=g.useCallback(d=>{d.target===d.currentTarget&&document.body.classList.remove("card-flip--is-flipping")},[]);return g.useEffect(function(){if(!a.current)throw Error("ref undefined");a.current.addEventListener("transitionstart",l);var h=a.current;return function(){if(h!=null)return h.removeEventListener("transitionstart",l)}},[l]),u.jsxs("div",{className:le(e,{"card-flip--show-front":t,"card-flip--show-back":!t}),"data-testid":r,children:[u.jsx("div",{className:"card-flip--back",children:s(0)}),u.jsx("div",{ref:a,className:"card-flip--front",onTransitionEnd:o,children:s(1)})]})}function xn(i,e,t,n,r,s,a){try{var l=i[s](a),o=l.value}catch(d){return void t(d)}l.done?e(o):Promise.resolve(o).then(n,r)}function ds(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var s=i.apply(e,t);function a(o){xn(s,n,r,a,l,"next",o)}function l(o){xn(s,n,r,a,l,"throw",o)}a(void 0)})}}var us=g.createContext(null);function hs(i){var[e,t]=g.useState(null),[n,r]=g.useState(null),s=g.useContext(us),a=g.useContext(Ra);return g.useEffect(()=>{if(s==null){if(a!=null){t(a),r(null);return}t(null),r(new Error("No API available in useDeferredApi. Was code wrapped in ApiBootstrap or DeferredApiContext.Provider?"));return}var l=!1;function o(){return d.apply(this,arguments)}function d(){return d=ds(function*(){if(i==null)l||(t(null),r(new Error("No widget provided to useDeferredApi")));else if(typeof s=="function")try{var h=yield s(i);l||(t(h),r(null))}catch(c){l||(t(null),r(c))}else t(s)}),d.apply(this,arguments)}return o(),()=>{l=!0}},[a,s,i]),[e,n]}function _n(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function Rn(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?_n(Object(t),!0).forEach(function(n){R(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):_n(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function R(i,e,t){return(e=cs(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function cs(i){var e=ps(i,"string");return typeof e=="symbol"?e:e+""}function ps(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var K=H.module("FigureChartModel");class gt extends Ja{constructor(e,t){var n,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};super(e),n=this,R(this,"chartUtils",void 0),R(this,"dh",void 0),R(this,"figure",void 0),R(this,"settings",void 0),R(this,"data",void 0),R(this,"layout",void 0),R(this,"seriesDataMap",void 0),R(this,"pendingSeries",void 0),R(this,"oneClicks",void 0),R(this,"filterColumnMap",void 0),R(this,"lastFilter",void 0),R(this,"isConnected",void 0),R(this,"seriesToProcess",void 0),R(this,"addPendingSeries",$e(()=>{for(var s=Q.getAxisTypeMap(this.figure),{pendingSeries:a}=this,l=function(){var h,c=a[o],p=n.figure.charts.find(v=>v.series.includes(c));n.addSeries(c,s,(h=p==null?void 0:p.showLegend)!==null&&h!==void 0?h:null),c.subscribe()},o=0;o<a.length;o+=1)l();this.pendingSeries=[]},gt.ADD_SERIES_DEBOUNCE)),R(this,"getTimeZone",ae((s,a)=>{if(a!=null){var l=a.getColumnTypeFormatter(s);if(l!=null)return l.dhTimeZone}},{max:100})),R(this,"getValueTranslator",ae((s,a)=>{var l=this.getTimeZone(s,a);return o=>this.chartUtils.unwrapValue(o,l)},{max:100})),R(this,"getValueParser",ae((s,a)=>{var l=this.getTimeZone(s,a);return o=>this.chartUtils.wrapValue(o,s,l)},{max:100})),R(this,"getRangeParser",ae((s,a)=>l=>{var[o,d]=l,h=this.getValueParser(s,a);return o=h(o),d=h(d),[o,d]},{max:100})),R(this,"getAxisRangeParser",ae((s,a)=>l=>{var o=Q.getSourceForAxis(s,l);return o!=null?this.getRangeParser(o.columnType,a):d=>d},{max:100})),this.handleFigureUpdated=this.handleFigureUpdated.bind(this),this.handleFigureDisconnected=this.handleFigureDisconnected.bind(this),this.handleFigureReconnected=this.handleFigureReconnected.bind(this),this.handleFigureSeriesAdded=this.handleFigureSeriesAdded.bind(this),this.handleDownsampleStart=this.handleDownsampleStart.bind(this),this.handleDownsampleFinish=this.handleDownsampleFinish.bind(this),this.handleDownsampleFail=this.handleDownsampleFail.bind(this),this.handleDownsampleNeeded=this.handleDownsampleNeeded.bind(this),this.handleRequestFailed=this.handleRequestFailed.bind(this),this.dh=e,this.chartUtils=new Q(e),this.figure=t,this.settings=r,this.data=[],this.layout={grid:{rows:t.rows,columns:t.cols,pattern:"independent"}},this.seriesDataMap=new Map,this.pendingSeries=[],this.oneClicks=[],this.filterColumnMap=new Map,this.lastFilter=new Map,this.isConnected=!0,this.seriesToProcess=new Set,this.setTitle(this.getDefaultTitle()),this.initAllSeries(),this.updateAxisPositions(),this.startListeningFigure()}close(){this.figure.close(),this.addPendingSeries.cancel(),this.stopListeningFigure()}getDefaultTitle(){if(this.figure.title!=null&&this.figure.title.length>0)return this.figure.title;if(this.figure.charts.length===1){var e;return(e=this.figure.charts[0].title)!==null&&e!==void 0?e:""}return""}initAllSeries(){var e=this;this.oneClicks=[],this.filterColumnMap.clear();var{charts:t}=this.figure,n=Q.getAxisTypeMap(this.figure),r=[];this.seriesToProcess=new Set;for(var s=function(){for(var p=t[a],v=0;v<p.series.length;v+=1){var m=p.series[v];r.push(m.name),e.addSeries(m,n,p.showLegend)}var{axes:b,title:f}=p;if(f!=null&&f.length>0&&(t.length>1||e.figure.title!=null)){var C=b.find(L=>L.type===e.dh.plot.AxisType.X),P=b.find(L=>L.type===e.dh.plot.AxisType.Y);if(C==null||P==null)K.warn("Chart title provided, but unknown how to map to the correct axes for this chart type",p);else{var S,y,w,D,M=((S=(y=n.get(C.type))===null||y===void 0?void 0:y.findIndex(L=>L===C))!==null&&S!==void 0?S:0)+1,T=((w=(D=n.get(P.type))===null||D===void 0?void 0:D.findIndex(L=>L===P))!==null&&w!==void 0?w:0)+1,F={align:"center",x:.5,y:1,yshift:17,text:f,showarrow:!1,xref:"x".concat(M," domain"),yref:"y".concat(T," domain")};e.layout.annotations==null?e.layout.annotations=[F]:e.layout.annotations.push(F)}}},a=0;a<t.length;a+=1)s();for(var l=[...this.seriesDataMap.keys()],o=l.filter(c=>r.indexOf(c)<0),d=0;d<o.length;d+=1){var h=o[d];this.seriesDataMap.delete(h)}}addSeries(e,t,n){var r,s,{dh:a}=this,l=this.chartUtils.makeSeriesDataFromSeries(e,t,Q.getSeriesVisibility(e.name,this.settings),n,(r=(s=this.renderOptions)===null||s===void 0?void 0:s.webgl)!==null&&r!==void 0?r:!0);if(this.seriesDataMap.set(e.name,l),this.seriesToProcess.add(e.name),this.data=[...this.seriesDataMap.values()],e.plotStyle===a.plot.SeriesPlotStyle.STACKED_BAR?this.layout.barmode="stack":e.plotStyle===a.plot.SeriesPlotStyle.PIE&&(this.layout.hiddenlabels=Q.getHiddenLabels(this.settings)),this.layout.showlegend=this.data.length>1||e.plotStyle===a.plot.SeriesPlotStyle.PIE?n??void 0:!1,e.oneClick!=null){for(var{oneClick:o}=e,{columns:d}=o,h=0;h<d.length;h+=1)this.filterColumnMap.set(d[h].name,d[h]);this.oneClicks.push(o)}this.updateLayoutFormats()}subscribe(e){super.subscribe(e),this.listeners.length===1&&(this.initAllSeries(),this.subscribeFigure())}unsubscribe(e){super.unsubscribe(e),this.listeners.length===0&&this.unsubscribeFigure()}subscribeFigure(){if(!this.isConnected){K.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&&(K.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){K.debug("Downsample started",e),this.fireDownsampleStart(e.detail)}handleDownsampleFinish(e){K.debug("Downsample finished",e),this.fireDownsampleFinish(e.detail)}handleDownsampleFail(e){K.error("Downsample failed",e),this.fireDownsampleFail(e.detail)}handleDownsampleNeeded(e){K.info("Downsample needed",e),this.fireDownsampleNeeded(e.detail)}handleFigureUpdated(e){var{detail:t}=e,{series:n}=t;K.debug2("handleFigureUpdated",n);for(var r=0;r<n.length;r+=1){var s=n[r];K.debug2("handleFigureUpdated updating series",s.name);for(var{sources:a}=s,l=0;l<a.length;l+=1){var o=a[l],{columnType:d,type:h}=o,c=this.getValueTranslator(d,this.formatter),p=t.getArray(s,h,c);this.setDataArrayForSeries(s,h,p)}this.seriesToProcess.delete(s.name),this.cleanSeries(s)}this.seriesToProcess.size===0&&this.fireLoadFinished();var{data:v}=this;this.fireUpdate(v)}handleRequestFailed(e){K.error("Request failed",e),this.fireError(["".concat(e.detail)])}resubscribe(){this.listeners.length>0&&(this.unsubscribeFigure(),this.subscribeFigure())}setFormatter(e){super.setFormatter(e),this.updateLayoutFormats(),this.resubscribe()}setRenderOptions(e){super.setRenderOptions(e),this.initAllSeries()}setDownsamplingDisabled(e){super.setDownsamplingDisabled(e),this.resubscribe()}handleFigureDisconnected(e){K.debug("Figure disconnected",e),this.isConnected=!1,this.listeners.length>0&&this.unsubscribeFigure(),this.fireDisconnect()}handleFigureReconnected(e){K.debug("Figure reconnected",e),this.isConnected=!0,this.initAllSeries(),this.fireReconnect(),this.listeners.length>0&&this.subscribeFigure()}handleFigureSeriesAdded(e){var{detail:t}=e;K.debug("handleFigureSeriesAdded",t),this.pendingSeries.push(t),this.addPendingSeries()}setDimensions(e){super.setDimensions(e),this.updateAxisPositions()}setTitle(e){var t,n;super.setTitle(e);var r=(t=(n=(e??"").match(/<br>/g))===null||n===void 0?void 0:n.length)!==null&&t!==void 0?t:0,s=Q.DEFAULT_MARGIN.t+r*Q.SUBTITLE_LINE_HEIGHT;this.layout.margin?this.layout.margin.t=s:this.layout.margin={t:s},typeof this.layout.title=="string"?this.layout.title=e:(this.layout.title=Rn({},this.layout.title),this.layout.title.text=e,this.layout.title.pad=Rn({},this.layout.title.pad),this.layout.title.pad.t=Q.DEFAULT_TITLE_PADDING.t+r*Q.SUBTITLE_LINE_HEIGHT*.5),this.fireLayoutUpdated({title:this.layout.title})}getPlotWidth(){var e,t,n,r;return!this.rect||!this.rect.width?0:Math.max(this.rect.width-((e=(t=this.layout.margin)===null||t===void 0?void 0:t.l)!==null&&e!==void 0?e:0)-((n=(r=this.layout.margin)===null||r===void 0?void 0:r.r)!==null&&n!==void 0?n:0),0)}getPlotHeight(){var e,t,n,r;return!this.rect||!this.rect.height?0:Math.max(this.rect.height-((e=(t=this.layout.margin)===null||t===void 0?void 0:t.t)!==null&&e!==void 0?e:0)-((n=(r=this.layout.margin)===null||r===void 0?void 0:r.b)!==null&&n!==void 0?n:0),0)}updateAxisPositions(){var e=this.getPlotWidth(),t=this.getPlotHeight();this.chartUtils.updateFigureAxes(this.layout,this.figure,n=>this.getAxisRangeParser(n,this.formatter),e,t)}updateLayoutFormats(){if(this.formatter){var e=this.chartUtils.getAxisFormats(this.figure,this.formatter);e.forEach((t,n)=>{K.debug("Assigning ".concat(n),this.layout[n],t);var r=this.layout[n];r!=null?Object.assign(r,t):K.debug("Ignoring null layout.".concat(n))})}}setDataArrayForSeries(e,t,n){var{name:r,plotStyle:s}=e,a=this.seriesDataMap.get(r),l=this.chartUtils.getPlotlyProperty(s,t);a&&qr(a,l,n)}cleanSeries(e){var{dh:t}=this,{name:n,plotStyle:r}=e,s=this.seriesDataMap.get(n);if(s!=null){if(r===t.plot.SeriesPlotStyle.HISTOGRAM){var{xLow:a,xHigh:l}=s;if(a&&l&&a.length===l.length){for(var o=[],d=0;d<a.length;d+=1)o.push(l[d]-a[d]);s.width=o}}else if(r===t.plot.SeriesPlotStyle.LINE||r===t.plot.SeriesPlotStyle.ERROR_BAR||r===t.plot.SeriesPlotStyle.BAR){var{x:h,xLow:c,xHigh:p,y:v,yLow:m,yHigh:b}=s;c&&p&&c!==h&&(s.error_x=Q.getPlotlyErrorBars(h,c,p)),m&&b&&m!==v&&(s.error_y=Q.getPlotlyErrorBars(v,m,b))}else if(r===t.plot.SeriesPlotStyle.TREEMAP){var{ids:f,labels:C}=s;f!==void 0&&C===void 0&&(s.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){K.warn("Trying to set a filter, but no one click!");return}K.debug("setFilter",e);for(var n=function(){var a=t.oneClicks[r],{columns:l}=a,o=new Set([...e.keys(),...t.lastFilter.keys()]);o.forEach(d=>{var h=e.get(d);t.lastFilter.get(d)!==h&&l.find(c=>c.name===d)!=null&&a.setValueForColumn(d,h)})},r=0;r<this.oneClicks.length;r+=1)n();this.lastFilter=new Map(e)}setFigure(e){this.close(),this.figure=e,this.setTitle(this.getDefaultTitle()),this.initAllSeries(),this.updateAxisPositions(),this.startListeningFigure(),this.listeners.length>0&&this.subscribeFigure()}updateSettings(e){this.settings=e}}R(gt,"ADD_SERIES_DEBOUNCE",50);function An(i,e,t,n,r,s,a){try{var l=i[s](a),o=l.value}catch(d){return void t(d)}l.done?e(o):Promise.resolve(o).then(n,r)}function Qt(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var s=i.apply(e,t);function a(o){An(s,n,r,a,l,"next",o)}function l(o){An(s,n,r,a,l,"throw",o)}a(void 0)})}}class Xe{static makeModelFromSettings(e,t,n){return Qt(function*(){var r=yield Xe.makeFigureFromSettings(e,t,n);return new gt(e,r,t)})()}static makeFigureFromSettings(e,t,n){return Qt(function*(){var r=yield n.copy();return r.applyCustomColumns(n.customColumns),r.applyFilter(n.filter),r.applySort(n.sort),e.plot.Figure.create(new Q(e).makeFigureSettings(t,r))})()}static makeModel(e,t,n){return Qt(function*(){return new gt(e,n,t)})()}}function Un(i){return i.setFigure!==void 0}function $n(i,e,t,n,r,s,a){try{var l=i[s](a),o=l.value}catch(d){return void t(d)}l.done?e(o):Promise.resolve(o).then(n,r)}function Ie(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var s=i.apply(e,t);function a(o){$n(s,n,r,a,l,"next",o)}function l(o){$n(s,n,r,a,l,"throw",o)}a(void 0)})}}function he(i,e,t){return(e=vs(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function vs(i){var e=fs(i,"string");return typeof e=="symbol"?e:e+""}function fs(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var we=H.module("IrisGridTableModel");class ms extends es{constructor(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Ae(e),r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e,t,n,r),he(this,"userFrozenColumns",void 0),he(this,"customColumnList",void 0),he(this,"formatColumnList",void 0),he(this,"initialFilters",[]),he(this,"wasUncoalesced",void 0),he(this,"getMemoizedKeyColumnSet",k(s=>new Set(s??$))),he(this,"getMemoizedFrontColumns",k(s=>s??$)),he(this,"getMemoizedBackColumns",k(s=>s??$)),he(this,"getMemoizedFrozenColumns",k((s,a)=>{var l;return(l=a??s)!==null&&l!==void 0?l:$})),he(this,"getCachedFilterableColumnSet",k(s=>new Set(s.map((a,l)=>l)))),he(this,"getCachedPartitionColumns",k(s=>s.filter(a=>a.isPartitionColumn))),this.customColumnList=[],this.formatColumnList=[],this.initialFilters=t.filter,this.wasUncoalesced=this.isPartitionRequired}get isExportAvailable(){return this.table.freeze!=null}get isColumnStatisticsAvailable(){return this.table.getColumnStatistics!=null}get isRollupAvailable(){return this.table.rollup!=null}get isSelectDistinctAvailable(){return this.table.selectDistinct!=null}get isCustomColumnsAvailable(){return this.table.applyCustomColumns!=null}get isFormatColumnsAvailable(){return this.table.applyCustomColumns!=null}get keyColumnSet(){var e;return this.getMemoizedKeyColumnSet((e=this.inputTable)===null||e===void 0?void 0:e.keys)}get frontColumns(){var e,t;return this.getMemoizedFrontColumns((e=(t=this.layoutHints)===null||t===void 0?void 0:t.frontColumns)!==null&&e!==void 0?e:void 0)}get backColumns(){var e,t;return this.getMemoizedBackColumns((e=(t=this.layoutHints)===null||t===void 0?void 0:t.backColumns)!==null&&e!==void 0?e:void 0)}get frozenColumns(){var e,t;return this.getMemoizedFrozenColumns((e=(t=this.layoutHints)===null||t===void 0?void 0:t.frozenColumns)!==null&&e!==void 0?e:void 0,this.userFrozenColumns)}get layoutHints(){return this.table.layoutHints}get floatingLeftColumnCount(){return this.frozenColumns.length}get description(){var e;return(e=this.table.description)!==null&&e!==void 0?e:""}get customColumns(){return this.customColumnList}set customColumns(e){if(we.debug2("set customColumns",e,this.customColumnList,e===this.customColumnList),this.customColumnList.length===0&&e.length===0){we.debug("Ignore empty initial customColumns"),this.customColumnList=e;return}if(this.customColumnList===e){we.debug("Ignore same customColumns");return}this.closeSubscription(),this.customColumnList=e,this.table.applyCustomColumns([...e,...this.formatColumns]),this.applyViewport()}get formatColumns(){return this.formatColumnList}set formatColumns(e){if(we.debug2("set formatColumns",e,this.formatColumnList,e===this.formatColumnList),this.formatColumnList.length===0&&e.length===0){we.debug("Ignore empty initial formatColumns"),this.formatColumnList=e;return}if(this.formatColumnList===e){we.debug("Ignore same formatColumns");return}this.closeSubscription(),this.formatColumnList=e,this.table.applyCustomColumns([...this.customColumns,...e]),this.applyViewport()}updateFrozenColumns(e){this.userFrozenColumns=e,this.dispatchEvent(new Te(x.EVENT.COLUMNS_CHANGED,{detail:this.columns}))}get partitionColumns(){return this.getCachedPartitionColumns(this.columns)}partitionKeysTable(){var e=this;return Ie(function*(){return e.valuesTable(e.partitionColumns)})()}partitionMergedTable(){var e=this;return Ie(function*(){var t=yield e.table.copy();return t.applyFilter([]),t})()}partitionBaseTable(){var e=this;return Ie(function*(){return e.partitionKeysTable()})()}partitionTable(e){var t=this;return Ie(function*(){we.debug("getting partition table for partitions",e);for(var n=[],r=0;r<t.partitionColumns.length;r+=1){var s=e[r],a=t.partitionColumns[r],l=t.tableUtils.makeNullableEqFilter(a,s);n.push(l)}var o=yield t.table.copy();return o.applyFilter([...t.initialFilters,...n]),o})()}set filter(e){this.closeSubscription(),this.table.applyFilter([...this.initialFilters,...e]),this.applyViewport()}set totalsConfig(e){if(we.debug("set totalsConfig",e),e!==this.totals){if(this.totals=e,this.formattedStringData=[],this.totalsTablePromise!=null&&this.totalsTablePromise.cancel(),this.setTotalsTable(null),e==null){this.dispatchEvent(new Te(x.EVENT.UPDATED));return}this.totalsTablePromise=ke.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{ke.isCanceled(t)||(we.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new Te(x.EVENT.REQUEST_FAILED,{detail:t})))})}}get isFilterRequired(){return this.table.isUncoalesced}get isPartitionRequired(){return this.table.isUncoalesced&&this.isValuesTableAvailable&&this.partitionColumns.length>0}get isPartitionAwareSourceTable(){return this.wasUncoalesced}isFilterable(e){return this.getCachedFilterableColumnSet(this.columns).has(e)}export(){var e=this;return Ie(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=s=>super.pendingDataMap=s,r=this;return Ie(function*(){var s;if(!r.isDeletableRanges(e))throw new Error("Undeletable ranges ".concat(e));N(r.inputTable);var{keyColumns:a}=r.inputTable;if(r.keyColumnSet.size===0)throw new Error("No key columns to allow deletion");var l=r.getPendingAreaRange(),o=e.map(S=>Tt.intersection(l,S)).filter(S=>S!=null).map(S=>(N(S),Tt.offset(S,0,-(r.floatingTopRowCount+r.table.size))));if(o.length>0){for(var d=new Map(t()),h=0;h<o.length;h+=1){var c=o[h];N(c.startRow),N(c.endRow);for(var p=c.startRow;p<=c.endRow;p+=1)d.delete(p)}n(d),r.formattedStringData=[],r.dispatchEvent(new Te(x.EVENT.PENDING_DATA_UPDATED)),r.dispatchEvent(new Te(x.EVENT.UPDATED))}var v=r.getTableAreaRange(),m=e.map(S=>Tt.intersection(v,S)).filter(S=>S!=null);if(!(m.length<=0)){var[b,f]=yield Promise.all([r.snapshot(m.map(S=>(N(S),a.map(y=>{var w=r.getColumnIndexByName(y.name);if(w==null)throw new Error("Key column ".concat(y.name," not found"));return new Tt(w,S.startRow,w,S.endRow)}))).flat()),r.table.copy()]),C=b.map(S=>{for(var y=[],w=0;w<a.length;w+=1){var D=a[w],M=S[w],T=r.tableUtils.makeNullableEqFilter(D,M);y.push(T)}return y.reduce((F,L)=>{var A;return(A=F==null?void 0:F.and(L))!==null&&A!==void 0?A:L})}),P=C.reduce((S,y)=>{var w;return(w=S==null?void 0:S.or(y))!==null&&w!==void 0?w:y});f.applyFilter([P]),yield(s=r.inputTable)===null||s===void 0?void 0:s.deleteTable(f),f.close()}})()}seekRow(e,t,n,r,s,a,l){var o=this;return Ie(function*(){return o.table.seekRow(e,t,n,r,s,a,l)})()}get isSeekRowAvailable(){return this.table.seekRow!=null}}function gs(i,e,t){return(e=bs(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function bs(i){var e=Cs(i,"string");return typeof e=="symbol"?e:e+""}function Cs(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class Ss extends x{constructor(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:new Ae(e);super(e),gs(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 $}getColumnIndexByName(e){}get initialMovedColumns(){return $}get initialMovedRows(){return $}get initialColumnHeaderGroups(){return $}get groupedColumns(){return $}formatForCell(e,t){}valueForCell(e,t){}get filter(){return $}set filter(e){}get partition(){return $}set partition(e){}get partitionColumns(){return $}get formatter(){return this.modelFormatter}set formatter(e){this.modelFormatter=e}displayString(e,t,n){return""}get sort(){return $}set sort(e){}get customColumns(){return $}set customColumns(e){}get formatColumns(){return $}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 $}set selectDistinctColumns(e){}get pendingDataMap(){return Yt}set pendingDataMap(e){}get pendingRowCount(){return 0}set pendingRowCount(e){}get pendingDataErrors(){return Yt}commitPending(){return Promise.resolve()}setViewport(e,t,n){}snapshot(e){return Promise.resolve([])}textSnapshot(e,t,n){return Promise.resolve("")}valuesTable(e){throw new Error("Method not implemented.")}delete(e){return Promise.resolve()}seekRow(e,t,n,r,s,a,l){return Promise.resolve(0)}get columnHeaderGroups(){return $}set columnHeaderGroups(e){}get columnHeaderGroupMap(){return Yt}getColumnHeaderParentGroup(e,t){}}function Vn(i,e,t,n,r,s,a){try{var l=i[s](a),o=l.value}catch(d){return void t(d)}l.done?e(o):Promise.resolve(o).then(n,r)}function Dt(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var s=i.apply(e,t);function a(o){Vn(s,n,r,a,l,"next",o)}function l(o){Vn(s,n,r,a,l,"throw",o)}a(void 0)})}}function ys(i,e,t){return(e=Ps(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Ps(i){var e=ws(i,"string");return typeof e=="symbol"?e:e+""}function ws(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}function Es(i){return"getBaseTable"in i&&typeof i.getBaseTable=="function"}class Fs extends Ss{constructor(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Ae(e);super(e,n),ys(this,"partitionedTable",void 0),this.partitionedTable=t}get isPartitionRequired(){return!0}get isPartitionAwareSourceTable(){return!1}get isReversible(){return!1}displayString(e,t,n){return""}close(){this.partitionedTable.close()}get columns(){return this.partitionedTable.columns}get partitionColumns(){return this.partitionedTable.keyColumns}get columnCount(){return this.columns.length}getColumnIndexByName(e){return this.columns.findIndex(t=>t.name===e)}textForColumnHeader(e,t){var n;return(n=this.columns[e].name)!==null&&n!==void 0?n:""}partitionKeysTable(){var e=this;return Dt(function*(){return e.partitionedTable.getKeyTable()})()}partitionBaseTable(){var e=this;return Dt(function*(){return Es(e.partitionedTable)?e.partitionedTable.getBaseTable():e.partitionedTable.getKeyTable()})()}partitionMergedTable(){var e=this;return Dt(function*(){return e.partitionedTable.getMergedTable()})()}partitionTable(e){var t=this;return Dt(function*(){try{var n=yield t.partitionedTable.getTable(e);if(n==null)throw new jn("Partition not found");return n}catch(r){throw ts(r)?r:new jn("Unable to retrieve partition")}})()}}function Ee(i,e,t){return(e=Ts(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Ts(i){var e=Ds(i,"string");return typeof e=="symbol"?e:e+""}function Ds(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var Fe=H.module("IrisGridProxyModel");function Ke(i,e,t,n){return W.isTreeTable(e)?new is(i,e,t):W.isPartitionedTable(e)?new Fs(i,e,t):new ms(i,e,t,n)}class Ms extends x{constructor(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Ae(e),r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e),Ee(this,"model",void 0),Ee(this,"dh",void 0),Ee(this,"originalModel",void 0),Ee(this,"modelPromise",void 0),Ee(this,"rollup",void 0),Ee(this,"partition",void 0),Ee(this,"selectDistinct",void 0),Ee(this,"currentViewport",void 0),Ee(this,"setViewport",(a,l,o)=>{this.currentViewport={top:a,bottom:l,columns:o},this.model.setViewport(a,l,o)}),this.addEventListener=this.addEventListener.bind(this),this.removeEventListener=this.removeEventListener.bind(this),this.dispatchEvent=this.dispatchEvent.bind(this),this.handleModelEvent=this.handleModelEvent.bind(this);var s=Ke(e,t,n,r);return this.dh=e,this.originalModel=s,this.model=s,this.modelPromise=null,this.rollup=null,this.partition=null,this.selectDistinct=[],new Proxy(this,{get(a,l,o){var d,h=((d=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(a),l))===null||d===void 0?void 0:d.get)!=null;if(h)return Reflect.get(a,l,o);var c=Object.prototype.hasOwnProperty.call(a,l),p=Object.prototype.hasOwnProperty.call(Object.getPrototypeOf(a),l),v=c||p?a:a.model;return Reflect.get(v,l)},set(a,l,o){var d,h=((d=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(a),l))===null||d===void 0?void 0:d.set)!=null,c=Object.prototype.hasOwnProperty.call(a,l);return h||c?Reflect.set(a,l,o,a):Reflect.set(a.model,l,o,a.model)}})}close(){this.originalModel.close(),this.model!==this.originalModel&&this.model.close(),this.modelPromise!=null&&this.modelPromise.cancel()}handleModelEvent(e){Fe.debug2("handleModelEvent",e);var{detail:t,type:n}=e;this.dispatchEvent(new Te(n,{detail:t}))}setModel(e){Fe.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 Te(x.EVENT.COLUMNS_CHANGED,{detail:e.columns}));else if(this.currentViewport!=null){var{top:r,bottom:s,columns:a}=this.currentViewport;e.setViewport(r,s,a)}Re(e)&&this.dispatchEvent(new Te(x.EVENT.TABLE_CHANGED,{detail:e.table}))}setNextModel(e){Fe.debug2("setNextModel"),this.modelPromise&&this.modelPromise.cancel(),this.listenerCount>0&&this.removeListeners(this.model),this.modelPromise=ke.makeCancelable(e,t=>t.close()),this.modelPromise.then(t=>{this.modelPromise=null,this.setModel(t)}).catch(t=>{if(ke.isCanceled(t)){Fe.debug2("setNextModel cancelled");return}Fe.error("Unable to set next model",t),this.modelPromise=null,this.dispatchEvent(new Te(x.EVENT.REQUEST_FAILED,{detail:t}))})}startListening(){super.startListening(),this.addListeners(this.model)}stopListening(){super.stopListening(),this.removeListeners(this.model)}addListeners(e){for(var t=Object.keys(x.EVENT),n=0;n<t.length;n+=1)e.addEventListener(t[n],this.handleModelEvent)}removeListeners(e){for(var t=Object.keys(x.EVENT),n=0;n<t.length;n+=1)e.removeEventListener(t[n],this.handleModelEvent)}get isCustomColumnsAvailable(){return this.model.isCustomColumnsAvailable&&!(this.isSelectDistinctAvailable&&this.selectDistinctColumns.length>0)}get isRollupAvailable(){return(this.originalModel.isRollupAvailable||this.rollup!=null)&&this.selectDistinct.length===0}get isSelectDistinctAvailable(){return(this.originalModel.isSelectDistinctAvailable||this.selectDistinct.length>0)&&this.rollup==null}get originalColumns(){return this.originalModel.columns}get partitionColumns(){return De(this.originalModel)?this.originalModel.partitionColumns:[]}get partitionConfig(){return!De(this.originalModel)||!this.originalModel.isPartitionRequired?ns(this.originalModel)?null:void 0:this.partition}set partitionConfig(e){if(!this.isPartitionRequired)throw new Error("Partitions are not available");Fe.debug("set partitionConfig",e),this.partition=e;var t=Promise.resolve(this.originalModel);e!=null&&De(this.originalModel)&&(e.mode==="keys"?t=this.originalModel.partitionBaseTable().then(n=>Ke(this.dh,n,this.formatter)):e.mode==="merged"?t=this.originalModel.partitionMergedTable().then(n=>Ke(this.dh,n,this.formatter)):t=this.originalModel.partitionTable(e.partitions).then(n=>Ke(this.dh,n,this.formatter))),this.setNextModel(t)}partitionKeysTable(){if(!De(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionKeysTable()}partitionMergedTable(){if(!De(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionMergedTable()}partitionTable(e){if(!De(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionTable(e)}get rollupConfig(){return this.rollup}set rollupConfig(e){if(Fe.debug("set rollupConfig",e),!this.isRollupAvailable)throw new Error("Rollup Rows are not available");if(!ki(e,this.rollup)){this.rollup=e;var t=Promise.resolve(this.originalModel);Re(this.originalModel)&&e!=null&&(t=this.originalModel.table.rollup(e).then(n=>Ke(this.dh,n,this.formatter))),this.setNextModel(t)}}get selectDistinctColumns(){return this.selectDistinct}set selectDistinctColumns(e){if(Fe.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){Fe.debug("Ignore same selectDistinctColumns",e);return}this.selectDistinct=e;var t=e.map(r=>this.originalColumns.find(s=>s.name===r)).filter(r=>r!=null),n=Promise.resolve(this.originalModel);Re(this.originalModel)&&t.length>0&&(n=this.originalModel.table.selectDistinct(t).then(r=>Ke(this.dh,r,this.formatter))),this.setNextModel(n)}get isFilterRequired(){return this.originalModel.isFilterRequired}get isPartitionRequired(){return De(this.originalModel)?this.originalModel.isPartitionRequired:void 0}get isPartitionAwareSourceTable(){return De(this.originalModel)&&this.originalModel.isPartitionAwareSourceTable}get formatter(){return this.originalModel.formatter}set formatter(e){this.originalModel.formatter=e}}function Gn(i,e,t,n,r,s,a){try{var l=i[s](a),o=l.value}catch(d){return void t(d)}l.done?e(o):Promise.resolve(o).then(n,r)}function Os(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var s=i.apply(e,t);function a(o){Gn(s,n,r,a,l,"next",o)}function l(o){Gn(s,n,r,a,l,"throw",o)}a(void 0)})}}class Ji{static makeModel(e,t){var n=arguments;return Os(function*(){var r=n.length>2&&n[2]!==void 0?n[2]:new Ae(e),s=null;return!W.isTreeTable(t)&&!W.isPartitionedTable(t)&&t.hasInputTable&&(s=yield t.inputTable()),new Ms(e,t,r,s)})()}}function Hn(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function Bn(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Hn(Object(t),!0).forEach(function(n){Ls(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):Hn(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function Ls(i,e,t){return(e=ks(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function ks(i){var e=Ns(i,"string");return typeof e=="symbol"?e:e+""}function Ns(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}function er(i,e){var t=["isStuckToBottom","isStuckToRight","movedColumns","movedRows"];return i===e||t.every(n=>i[n]===e[n])}function tr(i,e){var t=["advancedFilters","aggregationSettings","customColumnFormatMap","isFilterBarShown","quickFilters","customColumns","reverse","rollupConfig","showSearchBar","searchValue","selectDistinctColumns","selectedSearchColumns","sorts","invertSearchColumns","pendingDataMap","frozenColumns","conditionalFormats","columnHeaderGroups","partitionConfig"];return i===e||i.metrics!=null&&e.metrics!=null&&i.metrics.userColumnWidths===e.metrics.userColumnWidths&&i.metrics.userRowHeights===e.metrics.userRowHeights&&t.every(n=>i[n]===e[n])}function js(){return k((i,e)=>V.dehydrateGridState(i,e),(i,e)=>{var[t,n]=i,[r,s]=e;return t===r&&er(n,s)})}function Is(){return k((i,e)=>{var t=new V(i.dh);return t.dehydrateIrisGridState(i,e)},(i,e)=>{var[t,n]=i,[r,s]=e;return t===r&&tr(n,s)})}function xs(){return k((i,e,t)=>{var n=new V(i.dh);return Bn(Bn({},n.dehydrateIrisGridState(i,e)),V.dehydrateGridState(i,t))},(i,e)=>{var[t,n,r]=i,[s,a,l]=e;return t===s&&tr(n,a)&&er(r,l)})}var nn={makeMemoizedGridStateDehydrator:js,makeMemoizedIrisGridStateDehydrator:Is,makeMemoizedCombinedGridStateDehydrator:xs};function nr(){var i=g.useContext(Qr);if(i==null)throw new Error("LayoutManager not available, did you add a LayoutManagerContext.Provider to the tree?");return i}function fn(i,e,t){return(e=_s(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function _s(i){var e=Rs(i,"string");return typeof e=="symbol"?e:e+""}function Rs(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class Ue{}fn(Ue,"OPEN","ChartEvent.OPEN");fn(Ue,"CLOSE","ChartEvent.CLOSE");fn(Ue,"COLUMN_SELECTED","ChartEvent.COLUMN_SELECTED");function tt(i,e,t){return(e=As(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function As(i){var e=Us(i,"string");return typeof e=="symbol"?e:e+""}function Us(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class B{}tt(B,"OPEN_GRID","IrisGridEvent.OPEN_GRID");tt(B,"CLOSE_GRID","IrisGridEvent.CLOSE_GRID");tt(B,"DATA_SELECTED","IrisGridEvent.DATA_SELECTED");tt(B,"COLUMN_SELECTED","IrisGridEvent.COLUMN_SELECTED");tt(B,"STATE_CHANGED","IrisGridEvent.STATE_CHANGED");tt(B,"CREATE_CHART","IrisGridevent.CREATE_CHART");function ir(i,e,t){return(e=$s(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function $s(i){var e=Vs(i,"string");return typeof e=="symbol"?e:e+""}function Vs(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class mn{}ir(mn,"OPEN","PandasEvent.OPEN");ir(mn,"CLOSE","PandasEvent.CLOSE");var Gs=Jr;function Hs(i){var{children:e,descriptor:t}=i,{name:n,type:r,description:s,displayName:a}=t,l=r.replace(/([a-z])([A-Z])/g,"$1 $2");return u.jsxs("div",{className:"tab-tooltip-grid-container",children:[u.jsxs("span",{className:"tab-tooltip-title",children:[l," Name"]}),u.jsxs("div",{className:"tab-tooltip-name-wrapper",children:[u.jsx("span",{className:"tab-tooltip-name",children:n}),u.jsx(ea,{className:"tab-tooltip-copy",tooltip:"Copy name",copy:n})]}),n!==a&&!!a&&u.jsxs(u.Fragment,{children:[u.jsx("span",{className:"tab-tooltip-title",children:"Display Name"}),u.jsx("span",{className:"tab-tooltip-name",children:a})]}),!!s&&u.jsx("div",{className:"tab-tooltip-description",children:s}),e]})}var gn=Ni(Hs);function rn(i,e,t){return(e=Bs(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Bs(i){var e=Ks(i,"string");return typeof e=="symbol"?e:e+""}function Ks(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class rr extends g.PureComponent{constructor(e){var t;super(e),t=this,rn(this,"getCachedRenderTabTooltip",k((n,r)=>n?()=>u.jsx(gn,{descriptor:r}):void 0)),rn(this,"getCachedActions",k(function(n){var r,s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:$;return[...s,{title:"Copy ".concat((r=n.displayType)!==null&&r!==void 0?r:n.type," Name"),group:ji.groups.medium,order:20,action:t.handleCopyName}]})),this.handleSessionClosed=this.handleSessionClosed.bind(this),this.handleCopyName=this.handleCopyName.bind(this),this.state={isClientDisconnected:!1,isPanelDisconnected:!1,isWidgetDisconnected:!1,isWaitingForReconnect:!1,isPanelInactive:!1}}handleCopyName(){var{descriptor:e}=this.props;ta(e.name)}getErrorMessage(){var{descriptor:e,errorMessage:t}=this.props,{isClientDisconnected:n,isPanelDisconnected:r,isWidgetDisconnected:s,isWaitingForReconnect:a}=this.state;if(t!=null&&t!=="")return"".concat(t);if(n&&r&&a)return`Disconnected from server.
|
|
3
3
|
Check your internet connection.`;if(n&&r)return"Disconnected from server.";if(r){var{name:l,type:o}=e;return'Variable "'.concat(l,`" not set.
|
|
4
4
|
`).concat(o," does not exist yet.")}if(s)return"".concat(e.name," is unavailable.")}handleSessionClosed(e){var{onSessionClose:t}=this.props;this.setState({isPanelDisconnected:!0,isWaitingForReconnect:!1}),t==null||t(e)}render(){var{children:e,className:t,componentPanel:n,descriptor:r,isLoaded:s,isLoading:a,glContainer:l,glEventHub:o,isDisconnected:d,isClonable:h,isRenamable:c,showTabTooltip:p=!1,renderTabTooltip:v,onClearAllFilters:m,onHide:b,onFocus:f,onBlur:C,onResize:P,onSessionOpen:S,onShow:y,onTabBlur:w,onTabFocus:D,onTabClicked:M,additionalActions:T}=this.props,{isPanelDisconnected:F,isWidgetDisconnected:L,isPanelInactive:A}=this.state,ee=this.getErrorMessage(),Z=v??this.getCachedRenderTabTooltip(p,r),G=this.getCachedActions(r,T);return u.jsxs(et,{className:le(t,{disconnected:F||L||d,inactive:A}),componentPanel:n,glContainer:l,glEventHub:o,onClearAllFilters:m,onHide:b,onFocus:f,onBlur:C,onResize:P,onShow:y,onSessionClose:this.handleSessionClosed,onSessionOpen:S,onTabBlur:w,onTabFocus:D,onTabClicked:M,renderTabTooltip:Z,errorMessage:ee,isLoaded:s,isLoading:a,isClonable:h,isRenamable:c,additionalActions:G,children:[e,A&&u.jsx("div",{className:"fill-parent-absolute"})]})}}rn(rr,"defaultProps",{className:"",isClonable:!0,isDisconnected:!1,isLoading:!1,isLoaded:!0,isRenamable:!0,showTabTooltip:!0});var wt=Ni(rr);function ar(i){var{columnMap:e,inputFilterMap:t,linkedColumnMap:n,onAdd:r,onOpenLinker:s,waitingFilterMap:a,waitingInputMap:l}=i,o=g.useMemo(()=>{var m=Array.from(l.keys()),b=m.find(P=>t.get(P)!=null),f=m.find(P=>n.get(P)!=null),C=ge.join(m.map(P=>'"'.concat(P,'"')));return b!=null&&b&&f!=null&&f?"Use a filter control or linked table to set a value for ".concat(C):b!=null&&b?"Set a filter control value for ".concat(C):"Double click a row in a linked table to set a value for ".concat(C)},[t,n,l]),d=g.useMemo(()=>Array.from(e.values()),[e]),h=g.useCallback(m=>{m.stopPropagation(),m.preventDefault(),r(Array.from(a.values()))},[r,a]),c=g.useCallback(m=>{m.stopPropagation(),m.preventDefault(),s()},[s]),p=a.size>0,v=!p&&l.size>0;return u.jsx("div",{className:"chart-panel-overlay chart-filter-overlay",children:u.jsxs("div",{className:le("chart-panel-overlay-content chart-filter-overlay-content",{"chart-filter-waiting-filter":p},{"chart-filter-waiting-input":v}),children:[p&&u.jsxs(u.Fragment,{children:[u.jsx("div",{className:"info-message",children:"This plot requires a filter control to be added to the layout or a table link to be created on the following columns:"}),u.jsx("div",{className:"waiting-filter-list",children:d.map(m=>{var b=a.has(m.name),f=b?Aa:Ua;return u.jsxs("div",{className:le("waiting-filter-item",{"is-invalid":b}),children:[u.jsx(se,{icon:f}),m.name]},m.name)})}),u.jsxs("div",{children:[u.jsx(j,{kind:"primary",onClick:h,children:"Add Input Filters"}),u.jsx(j,{kind:"primary",onClick:c,children:"Open Linker Tool"})]})]}),v&&u.jsxs(u.Fragment,{children:[u.jsx("div",{className:"info-message",children:"Waiting for User Input"}),u.jsx("div",{className:"",children:o})]})]})})}ar.propTypes={columnMap:O.instanceOf(Map).isRequired,inputFilterMap:O.instanceOf(Map).isRequired,linkedColumnMap:O.instanceOf(Map).isRequired,onAdd:O.func.isRequired,onOpenLinker:O.func.isRequired,waitingFilterMap:O.instanceOf(Map).isRequired,waitingInputMap:O.instanceOf(Map).isRequired};function bt(i){var{columns:e,onColumnSelected:t,onMouseEnter:n,onMouseLeave:r}=i;return u.jsx("div",{className:"chart-panel-overlay chart-column-selector-overlay",children:u.jsxs("div",{className:le("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(s=>u.jsx(Yi,{className:le("btn-chart-column-selector",bt.makeButtonClassName(s.name)),onClick:()=>t(s.name),onMouseEnter:()=>{n&&n(s)},onMouseLeave:r,disabled:!s.isValid,isLinked:s.isActive,children:s.name},s.name))})]})})}bt.makeButtonClassName=i=>"btn-chart-column-selector-".concat(i);bt.defaultProps={onMouseEnter:()=>{},onMouseLeave:()=>{}};function ze(i){return i.settings!==void 0}function sr(i){return i.figure!==void 0}function lr(i){if(i==null)return!1;var{settings:e,tableSettings:t}=i;return typeof e=="object"&&typeof t=="object"}function or(i){return i!=null&&lr(i.panelState)}var bn=ln(de.COLUMNS_CHANGED),zs=bn.listen,_t=bn.emit,Ws=bn.useListener,Cn=ln(de.TABLE_CHANGED);Cn.listen;var Rt=Cn.emit,qs=Cn.useListener,Sn=ln(de.FILTERS_CHANGED);Sn.listen;var dr=Sn.emit,Xs=Sn.useListener;function Kn(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function Mt(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Kn(Object(t),!0).forEach(function(n){re(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):Kn(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function re(i,e,t){return(e=Zs(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Zs(i){var e=Ys(i,"string");return typeof e=="symbol"?e:e+""}function Ys(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var Y=H.module("ChartPanel"),Qs=150;function Js(i){return i.inputFilters!=null}function el(i){return i.panelState!=null}class Bt extends g.Component{constructor(e){super(e),re(this,"panelContainer",void 0),re(this,"pending",void 0),re(this,"getWaitingInputMap",k((a,l,o)=>{if(!a)return new Map;var d=new Map(l);return o.forEach((h,c)=>{d.delete(c)}),d})),re(this,"getWaitingFilterMap",k((a,l,o,d,h)=>{if(!a)return new Map;var c=new Map(l);return o.forEach((p,v)=>{c.delete(v)}),h.forEach((p,v)=>{c.delete(v)}),d.forEach((p,v)=>{c.delete(v)}),c})),re(this,"getInputFilterColumnMap",k((a,l)=>{for(var o=new Map,d=0;d<l.length;d+=1){var h=l[d],{name:c,type:p}=h,v=a.get(c);v!=null&&v.type===p&&o.set(c,h)}return o})),re(this,"getLinkedColumnMap",k((a,l)=>{for(var o=new Map,d=E.getIdFromPanel(this),h=0;h<l.length;h+=1){var c=l[h],p=null;if(c.start!=null&&c.start.panelId===d&&a.has(c.start.columnName)?p=c.start.columnName:c.end&&c.end.panelId===d&&a.has(c.end.columnName)&&(p=c.end.columnName),p!=null&&a.has(p)){var v=a.get(p);N(v),o.set(p,v)}}return o})),re(this,"getSelectorColumns",k((a,l,o)=>Array.from(a.values()).map(d=>({name:d.name,type:d.type,isValid:o?o(this,d):!1,isActive:l.has(d.name)})))),re(this,"getWidgetPanelDescriptor",k(a=>{var l="Chart";if(ze(a))l=a.table;else if(sr(a)){var o;l=(o=a.figure)!==null&&o!==void 0?o:l}else{var d;l=(d=a.name)!==null&&d!==void 0?d:l}return Mt(Mt({},a),{},{type:"Chart",name:l})})),this.handleColumnSelected=this.handleColumnSelected.bind(this),this.handleColumnMouseEnter=this.handleColumnMouseEnter.bind(this),this.handleColumnMouseLeave=this.handleColumnMouseLeave.bind(this),this.handleDisconnect=this.handleDisconnect.bind(this),this.handleReconnect=this.handleReconnect.bind(this),this.handleFilterAdd=this.handleFilterAdd.bind(this),this.handleHide=this.handleHide.bind(this),this.handleError=this.handleError.bind(this),this.handleLoadError=this.handleLoadError.bind(this),this.handleLoadSuccess=this.handleLoadSuccess.bind(this),this.handleSettingsChanged=this.handleSettingsChanged.bind(this),this.handleOpenLinker=this.handleOpenLinker.bind(this),this.handleShow=this.handleShow.bind(this),this.handleSourceColumnChange=this.handleSourceColumnChange.bind(this),this.handleSourceFilterChange=this.handleSourceFilterChange.bind(this),this.handleSourceSortChange=this.handleSourceSortChange.bind(this),this.handleTabBlur=this.handleTabBlur.bind(this),this.handleTabFocus=this.handleTabFocus.bind(this),this.handleUpdate=this.handleUpdate.bind(this),this.updateModelFromSource=$e(this.updateModelFromSource.bind(this),Qs),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.panelContainer=J.createRef(),this.pending=new xi;var{metadata:t,panelState:n}=e,{filterValueMap:r=[],settings:s={}}=n??{};this.state={settings:s,error:void 0,isActive:!1,isDisconnected:!1,isLoading:!1,isLoaded:!1,isLinked:t!=null&&ze(t)&&t.settings.isLinked,filterMap:new Map(r),filterValueMap:new Map(r),model:void 0,columnMap:new Map,panelState:n}}componentDidMount(){this.isHidden()||(this.setState({isActive:!0}),this.initModel())}componentDidUpdate(e,t){var{inputFilters:n,source:r,makeModel:s}=this.props,{columnMap:a,model:l,filterMap:o,filterValueMap:d,isLinked:h,settings:c}=this.state;s!==e.makeModel&&this.initModel(),l!=null&&(a!==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&&Un(l)&&(l.updateSettings(c),this.updatePanelState()),h!==t.isLinked?r&&(h?(this.startListeningToSource(r),this.updateModelFromSource()):this.stopListeningToSource(r)):h&&r!==e.source&&(e.source&&this.stopListeningToSource(e.source),r&&(this.startListeningToSource(r),this.updateModelFromSource())))}componentWillUnmount(){this.pending.cancel();var{model:e}=this.state,{source:t}=this.props;e!=null&&t&&this.stopListeningToSource(t)}initModel(){this.setState({isLoading:!0,isLoaded:!1,error:void 0,isDisconnected:!1});var{makeModel:e}=this.props;this.pending.cancel(),this.pending.add(e(),t=>{t.close()}).then(this.handleLoadSuccess,this.handleLoadError)}startListeningToSource(e){Y.debug("startListeningToSource",e);var{model:t}=this.state;N(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){Y.debug("stopListeningToSource",e);var{model:t}=this.state;N(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(Ue.COLUMN_SELECTED,this,n.get(e))}handleColumnMouseEnter(e){var{type:t,name:n}=e,{columnSelectionValidator:r}=this.props;Y.debug("handleColumnMouseEnter",r,t,n),r&&r(this,{type:t,name:n})}handleColumnMouseLeave(){var{columnSelectionValidator:e}=this.props;Y.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(pe.LINKER)}handleReconnect(){this.setState({isDisconnected:!1,error:void 0}),this.sendColumnChange(),this.updateColumnFilters()}handleLoadSuccess(e){Y.debug("handleLoadSuccess");var{model:t}=this.state;this.setState({model:e,isLoaded:!0},()=>{var{inputFilters:n,source:r}=this.props,{filterMap:s,isLinked:a}=this.state;e!==t&&(this.sendColumnChange(),this.updateColumnFilters(),this.updateInputFilters(n,s.size>0||e.isFilterRequired()),r&&a&&(this.startListeningToSource(r),this.updateModelFromSource()))})}handleLoadError(e){ke.isCanceled(e)||(Y.error("handleLoadError",e),this.setState({error:e,isLoading:!1}))}handleSourceColumnChange(){this.updateModelFromSource()}handleSourceFilterChange(){this.updateModelFromSource()}handleSourceSortChange(){this.updateModelFromSource()}updateModelFromSource(){var{metadata:e,source:t}=this.props,{isLinked:n,model:r}=this.state;if(!n||!r||!t){Y.debug2("updateModelFromSource ignoring",n,r,t);return}var{dh:s}=r;if(this.pending.cancel(),ze(e)){var{settings:a}=e;this.pending.add(Xe.makeFigureFromSettings(s,a,t),l=>l.close()).then(l=>{Un(r)&&r.setFigure(l)}).catch(this.handleLoadError)}this.updatePanelState()}updatePanelState(){var{sourcePanel:e}=this.props,{panelState:t,filterValueMap:n,settings:r}=this.state,{tableSettings:s}=t??{};if(e&&Js(e.props)&&el(e.state)){var{inputFilters:a}=e.props,{panelState:l}=e.state;l!=null&&(s=V.extractTableSettings(l,a))}this.setState({panelState:{settings:r,tableSettings:s,filterValueMap:Array.from(n)}})}handleError(){this.setState({isLoading:!1})}handleSettingsChanged(e){this.setState(t=>{var{settings:n}=t,r=Mt(Mt({},n),e);return Y.debug("Updated settings",r),{settings:r}})}handleHide(){this.setActive(!1)}handleShow(){this.setActive(!0)}handleTabBlur(){this.setActive(!1)}handleTabFocus(){var e=this.isHidden();this.setActive(!e)}handleUpdate(e){var{isLoading:t}=e;this.setState({isLoading:t})}handleClearAllFilters(){this.setState({filterValueMap:new Map,filterMap:new Map}),this.updatePanelState()}openInputFilter(e){var{glEventHub:t}=this.props,{name:n,type:r}=e;t.emit(de.OPEN_INPUT,{title:"".concat(n," Filter"),panelState:{name:n,type:r,isValueShown:!0},createNewStack:!0,focusElement:"input"})}setActive(e){this.setState({isActive:e},()=>{e&&this.loadModelIfNecessary()})}sendColumnChange(){var{model:e}=this.state;if(e){var{glEventHub:t}=this.props,n=E.getIdFromPanel(this);N(n),_t(t,n,Array.from(e.getFilterColumnMap().values()))}}getCoordinateForColumn(e){var t,n=bt.makeButtonClassName(e);if(!this.panelContainer.current)return null;var r=this.panelContainer.current.querySelector(".".concat(n)),s=(t=r==null?void 0:r.getBoundingClientRect())!==null&&t!==void 0?t:null;if(s==null||s.width<=0||s.height<=0)return null;var a=s.left+s.width/2,l=s.bottom;return[a,l]}setFilterMap(e){Y.debug("setFilterMap",e),this.setState(t=>{var n,{columnMap:r,filterMap:s}=t,a=null,l=new Map(t.filterValueMap);return e.forEach((o,d)=>{var{columnType:h,filterList:c}=o,p=r.get(d);if(!(p==null||p.type!==h)){if(c.length<1){Y.debug("Ignoring empty filterList for column",d);return}var{value:v}=c[0];l.set(d,v),s.get(d)!==v&&(a===null&&(a=new Map(s)),a.set(d,v))}}),{filterValueMap:l,filterMap:(n=a)!==null&&n!==void 0?n:s}})}unsetFilterValue(e){this.setState(t=>{var{inputFilters:n}=this.props,{columnMap:r}=t,{filterMap:s,filterValueMap:a}=t;if(!a.has(e))return null;a=new Map(t.filterValueMap),a.delete(e);var l=this.getInputFilterColumnMap(r,n);if(l.has(e)){var o,d=s.get(e),h=(o=l.get(e))===null||o===void 0?void 0:o.value;h!=null&&d!==h&&(s=new Map(t.filterMap),h.length>0?s.set(e,h):s.delete(e))}else s=new Map(t.filterMap),s.delete(e);return{filterMap:s,filterValueMap:a}})}updateChangedInputFilters(e,t){var n=t.filter(s=>e.find(a=>a.name===s.name&&a.type===s.type)===void 0);n.length>0&&this.deleteInputFilters(n);var r=e.filter(s=>!t.includes(s));r.length>0&&this.updateInputFilters(r)}updateInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;this.setState(n=>{for(var{columnMap:r}=n,s=new Map(n.filterValueMap),a=new Map(n.filterMap),l=t?{filterMap:a,filterValueMap:s}:{},o=0;o<e.length;o+=1){var{name:d,type:h,value:c}=e[o],p=r.get(d);p!=null&&p.type===h&&(c!=null&&a.get(d)!==c&&(c===""?a.delete(d):a.set(d,c),l.filterMap=a),s.has(d)&&(s.delete(d),l.filterValueMap=s))}return Y.debug("updateInputFilters",l),l})}deleteInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;this.setState(n=>{for(var{columnMap:r,filterValueMap:s}=n,a=new Map(n.filterMap),l=t,o=0;o<e.length;o+=1){var{name:d,type:h}=e[o],c=r.get(d);if(c!=null&&c.type===h&&a.has(d)){var p=a.get(d);if(s.has(d)){var v=s.get(d);v!==p&&v!=null&&(l=!0,a.set(d,v))}else l=!0,a.delete(d)}}return Y.debug("deleteInputFilters",l),l?{filterMap:a}: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;N(n);var r=this.getWaitingInputMap(n.isFilterRequired(),e,t);if(n.setFilter(t),t.size>0&&r.size===0){var s=n.getDefaultTitle(),a=ge.join(Array.from(t.entries()).map(l=>{var[o,d]=l;return"".concat(o,": ").concat(d)}));s?n.setTitle("".concat(s,'<br><span style="font-size: smaller">').concat(a,"</span>")):n.setTitle(a),Y.debug2("updateFilters filters set",t),this.setState({isLoading:!0})}else Y.debug2("updateFilters waiting on inputs",r),n.setTitle(n.getDefaultTitle()),this.setState({isLoading:!1});this.updatePanelState()}pruneFilterMaps(){this.setState(e=>{var{columnMap:t}=e,n=new Map(e.filterMap),r=new Map(e.filterValueMap),s={};return e.filterValueMap.forEach((a,l)=>{t.has(l)||(r.delete(l),s.filterValueMap=r)}),e.filterMap.forEach((a,l)=>{t.has(l)||(n.delete(l),s.filterMap=n)}),s})}render(){var{columnSelectionValidator:e,glContainer:t,glEventHub:n,inputFilters:r,isLinkerActive:s,links:a,metadata:l,settings:o,Plotly:d,containerRef:h}=this.props,{columnMap:c,filterMap:p,error:v,model:m,isActive:b,isDisconnected:f,isLoaded:C,isLoading:P}=this.state,S=this.getInputFilterColumnMap(c,r),y=this.getLinkedColumnMap(c,a),w=m!=null?this.getWaitingInputMap(m.isFilterRequired(),c,p):new Map,D=m!=null?this.getWaitingFilterMap(m.isFilterRequired(),c,p,y,S):new Map,M=v!=null?"Unable to open chart. ".concat(v):void 0,T=w.size>0,F=c.size>0&&s,L=this.getWidgetPanelDescriptor(l);return u.jsx(wt,{className:le("iris-chart-panel",{"input-required":T}),componentPanel:this,glContainer:t,glEventHub:n,onHide:this.handleHide,onClearAllFilters:this.handleClearAllFilters,onShow:this.handleShow,onTabBlur:this.handleTabBlur,onTabFocus:this.handleTabFocus,errorMessage:M,isDisconnected:f,isLoading:P,isLoaded:C,descriptor:L,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:C&&m&&u.jsx(Qi,{isActive:b,model:m,settings:o,onDisconnect:this.handleDisconnect,onReconnect:this.handleReconnect,onUpdate:this.handleUpdate,onError:this.handleError,onSettingsChanged:this.handleSettingsChanged,Plotly:d,containerRef:h})}),u.jsx(tn,{in:T&&!F&&!P,mountOnEnter:!0,unmountOnExit:!0,children:u.jsx(ar,{inputFilterMap:S,linkedColumnMap:y,onAdd:this.handleFilterAdd,onOpenLinker:this.handleOpenLinker,columnMap:c,waitingFilterMap:D,waitingInputMap:w})}),u.jsx(tn,{in:F,mountOnEnter:!0,unmountOnExit:!0,children:u.jsx(bt,{columns:this.getSelectorColumns(c,y,e),onColumnSelected:this.handleColumnSelected,onMouseEnter:this.handleColumnMouseEnter,onMouseLeave:this.handleColumnMouseLeave})})]})})}}re(Bt,"defaultProps",{columnSelectionValidator:null,isLinkerActive:!1,source:null,sourcePanel:null,panelState:null,settings:{},containerRef:null});re(Bt,"displayName","ChartPanel");re(Bt,"COMPONENT","ChartPanel");var tl=(i,e)=>{var{localDashboardId:t,metadata:n}=e,r;n!=null&&ze(n)&&(r=n.sourcePanelId);var s=Ut(i,t),a=_i(i,t),l=dn(i),o=$t(i,t),d=l===pe.LINKER&&o===void 0;return{columnSelectionValidator:Vt(i,t),isLinkerActive:d,inputFilters:St(i,t),links:yt(i,t),source:r!=null?s.get(r):void 0,sourcePanel:r!=null?a.get(r):void 0,settings:Gt(i)}},Et=Ve(tl,{setActiveTool:Ii,setDashboardIsolatedLinkerPanelId:on},null,{forwardRef:!0})(Bt),ur=g.createContext(null);function ud(i){var{initialState:e,onChange:t,children:n}=i,[r,s]=J.useState(0),a=g.useRef({initial:e,initialStateMap:new Map,state:new Map,isTracking:!0}),l=g.useCallback((p,v)=>{a.current.isTracking&&a.current.state.set(p,v)},[]),o=g.useCallback(()=>{a.current.isTracking||(a.current.isTracking=!0,a.current.state=new Map,s(p=>p+1))},[]),d=g.useRef(a.current.initial[Symbol.iterator]()),h=g.useCallback(function(v){var m=a.current.initialStateMap.get(v);if(m)return m;var{value:b,done:f}=d.current.next(),C={value:b,done:f??!1};return a.current.initialStateMap.set(v,C),C},[]);g.useEffect(function(){a.current.isTracking&&(t([...a.current.state.values()]),a.current.isTracking=!1)},[r,t]);var c=g.useMemo(()=>({addState:l,scheduleStateUpdate:o,getInitialState:h,updateId:r}),[l,h,o,r]);return u.jsx(ur.Provider,{value:c,children:n})}function nl(i,e,t,n,r){if(e>t)throw new Error("Persisted state ".concat(r," is a newer version than the current version. Persisted version: ").concat(e,". Current version: ").concat(t));for(var s=i,a=e;a<t;){var l=n.filter(d=>d.from===a);if(l.length===0)throw new Error("No migration found for persisted state ".concat(r," from version ").concat(a));if(l.length>1)throw new Error("Multiple migrations found for persisted state ".concat(r," from version ").concat(a));var o=l[0];try{s=o.migrate(s),a+=1}catch(d){throw new Error("Error migrating persisted state ".concat(r," from version ").concat(o.from,": ").concat(d),{cause:d})}}return s}function il(i,e){var t,[n]=g.useState(()=>oe()),r=g.useContext(ur),{value:s,done:a}=(t=r==null?void 0:r.getInitialState(n))!==null&&t!==void 0?t:{value:void 0,done:!0},[l,o]=g.useState(()=>{if(s==null||a)return typeof i=="function"?i():i;if(s.type!==e.type)throw new Error("usePersistentState type mismatch. Expected ".concat(e.type," but got ").concat(s.type,"."));if(s.version!==e.version){var h;return nl(s.state,s.version,e.version,(h=e.migrations)!==null&&h!==void 0?h:[],e.type)}return s.state}),d={type:e.type,version:e.version,state:l};return g.useDebugValue(d),r==null||r.addState(n,d),g.useEffect(function(){r==null||r.scheduleStateUpdate()},[r,l]),g.useEffect(function(){return()=>{r==null||r.scheduleStateUpdate()}},[r]),[l,o]}function ce(i,e,t){return(e=rl(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function rl(i){var e=al(i,"string");return typeof e=="symbol"?e:e+""}function al(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var Ot=H.module("DropdownFilter"),sl=150;class Ce extends g.Component{constructor(e){super(e),ce(this,"dropdownRef",void 0),ce(this,"getCompatibleColumns",k((s,a)=>s!=null?a.filter(l=>{var{type:o}=l;return o!==void 0&&W.isCompatibleType(o,s.columnType)}):[])),ce(this,"getColumnOptions",k((s,a)=>{var l=-1,o=[];return o.push(u.jsx("option",{value:"-1",children:"Select a column"},"placeholder")),s.forEach((d,h)=>{o.push(u.jsx("option",{value:h,children:this.getItemLabel(s,h)},"".concat(d.name,"/").concat(d.type))),a!==null&&d.name===a.name&&d.type===a.type&&(l=h)}),[o,l]})),ce(this,"getSelectedOptionIndex",k((s,a)=>s.indexOf(a))),ce(this,"getValueOptions",k(s=>[u.jsx("option",{value:"-1",children:Ce.PLACEHOLDER},"-1"),...s.map((a,l)=>u.jsx("option",{value:l,children:a??"(null)"},"".concat(l,"/").concat(a)))])),ce(this,"getItemLabel",ae((s,a)=>{var{name:l,type:o}=s[a];if(a>0&&s[a-1].name===l||a<s.length-1&&s[a+1].name===l){var d=o.substring(o.lastIndexOf(".")+1);return"".concat(l," (").concat(d,")")}return l},{max:1e3})),ce(this,"sendUpdate",$e(()=>{var{onChange:s}=this.props,{column:a,value:l,isValueShown:o}=this.state;s({column:a,isValueShown:o,value:l??void 0})},sl)),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=J.createRef();var{column:t,isValueShown:n,value:r}=e;this.state={column:t,id:oe(),selectedColumn:t,disableCancel:!n,isValueShown:n,value:r}}componentDidUpdate(e,t){var{source:n,values:r,isLoaded:s}=this.props,{column:a,value:l,isValueShown:o}=this.state;s&&(n!==e.source&&this.sourceUpdated(),r!==e.values&&l!==""&&!r.includes(l)&&this.resetValue(),o!==t.isValueShown&&o&&this.focusInput(),(a!==t.column||l!==t.value||o!==t.isValueShown)&&this.sendUpdate())}componentWillUnmount(){this.sendUpdate.flush()}handleColumnChange(e){var t=e;if(Ot.debug2("handleColumnChange",t),t!=null&&parseInt(t,10)<0){this.setState({selectedColumn:null});return}var{columns:n,source:r}=this.props,s=this.getCompatibleColumns(r,n);this.setState({selectedColumn:s[parseInt(t,10)]})}handleDropdownKeyPress(e){e.key==="Enter"&&(e.preventDefault(),e.stopPropagation(),Ot.debug2("handleDropdownKeyPress"),this.sendUpdate(),this.sendUpdate.flush())}handleValueChange(e){var t=e,n=parseInt(t,10),r="",{values:s}=this.props;n>=0&&n<s.length?r=s[n]:Ot.debug2("Selected default item"),Ot.debug2("handleValueChange",r),this.setState({value:r})}handleSettingsCancel(){this.setState(e=>{var{column:t}=e;return{selectedColumn:t,isValueShown:!0}})}handleSettingsSave(){this.setState(e=>{var{column:t,selectedColumn:n,value:r}=e;return{column:n,value:t===n?r:"",isValueShown:!0,disableCancel:!1}})}handleSettingsClick(e){e.stopPropagation(),this.showSettings()}handleBackgroundClick(e){e.target!==this.dropdownRef.current&&this.focusInput()}sourceUpdated(){this.setState({column:null,selectedColumn:null,isValueShown:!1,disableCancel:!0,value:""})}showSettings(){var{column:e}=this.state;this.setState({selectedColumn:e,isValueShown:!1})}focusInput(){var e;(e=this.dropdownRef.current)===null||e===void 0||e.focus()}resetValue(){this.setState({value:""})}clearFilter(){this.resetValue()}setFilterState(e){var{name:t,type:n,value:r,isValueShown:s}=e,a=t!=null&&n!=null?{name:t,type:n}:null;this.setState(l=>{var{value:o,isValueShown:d}=l;return{column:a,value:r??o,isValueShown:s??d}})}render(){var e,{columns:t,disableLinking:n,isLinkerActive:r,isLoaded:s,source:a,onColumnSelected:l,onSourceMouseEnter:o,onSourceMouseLeave:d,values:h,settingsError:c}=this.props,{column:p,disableCancel:v,id:m,isValueShown:b,selectedColumn:f,value:C}=this.state,P=a===null,S=this.getCompatibleColumns(a,t),y=a!=null,w=(e=a==null?void 0:a.columnName)!==null&&e!==void 0?e:Ce.SOURCE_BUTTON_PLACEHOLDER,D=p!=null?"".concat(p.name," Filter"):null,[M,T]=this.getColumnOptions(S,f),F=this.getValueOptions(h),L=this.getSelectedOptionIndex(h,C),A=!y||f==null,ee=b&&!r,Z="source-column-btn-".concat(m),G="filter-column-select-".concat(m);return u.jsxs(vn,{className:"dropdown-filter fill-parent-absolute",isFlipped:ee,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:Z,children:"Source Column"}),u.jsx(Yi,{id:Z,isLinked:y,onClick:l,onMouseEnter:o,onMouseLeave:d,className:Ce.SOURCE_BUTTON_CLASS_NAME,disabled:n,children:w}),u.jsx("div",{className:"text-muted small",children:"Select a source column for the list by linking to a table."}),u.jsx("label",{htmlFor:G,children:"Filter Column"}),u.jsx(ft,{id:G,value:String(T),className:"custom-select",onChange:this.handleColumnChange,disabled:P,children:M}),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}),y&&u.jsxs("div",{className:"dropdown-filter-settings-buttons",children:[u.jsx(j,{kind:"secondary",type:"button",onClick:this.handleSettingsCancel,disabled:v||b||r,tooltip:r?"Cancel disabled while linker open":void 0,children:"Cancel"}),u.jsx(j,{kind:"primary",type:"button",className:"ml-2",onClick:this.handleSettingsSave,disabled:A||b||r,tooltip:r?"Save disabled while linker open":void 0,children:"Save"})]})]})}),u.jsx("div",{className:"dropdown-filter-value-card",onClick:this.handleBackgroundClick,"data-testid":"dropdown-filter-value-background",children:s&&u.jsxs(u.Fragment,{children:[u.jsx("div",{className:"dropdown-filter-column",children:u.jsx("div",{className:"dropdown-filter-column-title",children:D})}),u.jsxs("div",{className:"dropdown-filter-card-content",children:[u.jsx("div",{className:"dropdown-filter-value-input d-flex flex-column justify-content-center",children:u.jsx(ft,{className:"custom-select",value:String(L),ref:this.dropdownRef,onChange:this.handleValueChange,onKeyDown:this.handleDropdownKeyPress,title:"Select Value",children:F})}),c&&u.jsx("div",{className:"error-message mt-3 text-center",children:c})]}),u.jsx("div",{className:"dropdown-filter-menu",children:u.jsx(j,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:u.jsx(se,{icon:hn,transform:"grow-4"}),tooltip:"Dropdown Filter Settings"})})]})})]})}}ce(Ce,"defaultProps",{column:null,disableLinking:!1,isLinkerActive:!1,isLoaded:!1,isValueShown:!1,settingsError:null,source:null,value:"",values:[],onColumnSelected:()=>{},onSourceMouseEnter:()=>{},onSourceMouseLeave:()=>{}});ce(Ce,"PLACEHOLDER","Select a value...");ce(Ce,"SOURCE_BUTTON_CLASS_NAME","btn-dropdown-filter-selector");ce(Ce,"SOURCE_BUTTON_PLACEHOLDER","Select a column");function X(i,e,t){return(e=ll(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function ll(i){var e=ol(i,"string");return typeof e=="symbol"?e:e+""}function ol(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var I=H.module("DropdownFilterPanel"),dl=250,ul=Object.freeze({name:"Dropdown Filter",type:"DropdownFilter"}),hl=(i,e)=>{var{localDashboardId:t}=e,n=E.getIdFromPanel({props:e}),r=Ut(i,t),s=yt(i,t),a=dn(i),l=$t(i,t),o=a===pe.LINKER&&(l===void 0||l===n),d=a===pe.LINKER&&l!==void 0&&l!==n;return{columns:un(i,t),columnSelectionValidator:Vt(i,t),dh:Ri(i),isLinkerActive:o,disableLinking:d,settings:Gt(i),panelTableMap:r,dashboardLinks:s}},cl=Ve(hl,null,null,{forwardRef:!0});class ve extends g.Component{constructor(e){super(e),X(this,"dateTimeFormatter",void 0),X(this,"dropdownFilterRef",void 0),X(this,"panelContainer",void 0),X(this,"pending",void 0),X(this,"cleanup",void 0),X(this,"columnFormats",void 0),X(this,"getCachedValues",ae((c,p,v)=>{var{type:m,name:b}=p;return m!==void 0&&W.isDateType(m)?c.map(f=>this.dateTimeFormatter.format(f)):c.map(f=>f!=null&&m!=null?v.getFormattedString(f,m,b):null)},{max:1e3})),X(this,"getCachedPanelLinks",ae((c,p)=>{var v=E.getIdFromPanel(p);return I.debug("getCachedPanelLinks",c,v),c.filter(m=>{var b;return((b=m.end)===null||b===void 0?void 0:b.panelId)===v})},{max:1e3})),X(this,"getCachedSource",ae(c=>{I.debug("getCachedSource",c);var p;if(c.length>0){var[v]=c;p=v.start,c.length>1&&I.error("Filter has more that one link",c)}return p},{max:1e3})),X(this,"getCachedSourceTable",ae((c,p)=>{var v;if(I.debug("getCachedSourceTable",c,p),p==null)return null;var{panelId:m}=p;return(v=c.get(m))!==null&&v!==void 0?v:null},{max:1e3})),X(this,"getCachedSourceColumn",ae((c,p)=>{var v;return I.debug("getCachedSourceColumn",c,p),c==null||p==null?null:(v=c.columns.find(m=>{var{name:b,type:f}=m;return b===p.columnName&&f===p.columnType}))!==null&&v!==void 0?v:null},{max:1e3})),this.handleChange=$e(this.handleChange.bind(this),dl),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=J.createRef(),this.panelContainer=J.createRef(),this.pending=new xi;var{dh:t,panelState:n,settings:r}=e;this.columnFormats=In.getColumnFormats(r),this.dateTimeFormatter=new Ai(t,{showTimeZone:!1,showTSeparator:!0,defaultDateTimeFormatString:"yyyy-MM-dd HH:mm:ss.SSSSSSSSS"});var{value:s="",isValueShown:a=!1,name:l,type:o,timestamp:d}=n??{},h=l!=null&&o!=null?{name:l,type:o}:void 0;this.state={column:h,formatter:new Ae(t,this.columnFormats),valuesTable:void 0,valuesColumn:void 0,sourceSize:0,value:s,timestamp:d,values:[],isValueShown:a,wasFlipped:!1,skipUpdate:!1,panelState:n,isDisconnected:!1,isLoading:!1,isLoaded:!1,error:null}}componentDidMount(){this.updateValuesTable();var{dashboardLinks:e,panelTableMap:t}=this.props,{column:n,value:r,timestamp:s}=this.state,a=this.getSourceTable(t,e);if(a!==null&&this.startListeningToSource(a),n!=null){var{name:l,type:o}=n;this.sendUpdate(l,o,r,s)}}componentDidUpdate(e,t){var{dashboardLinks:n,panelTableMap:r,settings:s}=this.props,{valuesTable:a}=this.state,l=this.getSource(n),o=this.getSourceTable(r,n),d=this.getSource(e.dashboardLinks),h=this.getSourceTable(e.panelTableMap,e.dashboardLinks);s!==e.settings&&s!==void 0&&this.updateFormatterSettings(s),a!==t.valuesTable&&t.valuesTable!=null&&(I.debug("Table in state modified, closing the old table."),t.valuesTable.close()),(o!==h||l!==d)&&this.updateValuesTable(),o!==h&&(h!==null&&this.stopListeningToSource(h),o!==null&&this.startListeningToSource(o))}componentWillUnmount(){var{dashboardLinks:e,panelTableMap:t}=this.props,{valuesTable:n}=this.state,r=this.getSourceTable(t,e);this.pending.cancel(),r!==null&&this.stopListeningToSource(r),this.cleanup&&this.cleanup(),n!=null&&n.close()}getCoordinateForColumn(){var e;if(this.panelContainer.current==null)return null;var t=this.panelContainer.current.querySelector(".".concat(Ce.SOURCE_BUTTON_CLASS_NAME)),n=(e=t==null?void 0:t.getBoundingClientRect())!==null&&e!==void 0?e:null;if(n==null||n.width<=0||n.height<=0)return null;var r=n.left+n.width/2,s=n.bottom;return[r,s]}getSettingsErrorMessage(){var{sourceSize:e}=this.state;if(e>ve.MAX_TABLE_SIZE)return"Table too large, must have fewer than ".concat(ve.MAX_TABLE_SIZE," options.")}getPanelErrorMessage(){var{error:e}=this.state;return e!=null?"".concat(e):void 0}getSource(e){var t=this.getCachedPanelLinks(e,this);return this.getCachedSource(t)}getSourceTable(e,t){var n=this.getSource(t);return this.getCachedSourceTable(e,n)}getValuesColumn(e,t){var n=this.getSource(t);return this.getCachedSourceColumn(e,n)}startListeningToSource(e){var{dh:t}=this.props;I.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;I.debug("stopListeningToSource"),e.removeEventListener(t.Table.EVENT_FILTERCHANGED,this.handleSourceFilterChange),e.removeEventListener(t.Table.EVENT_SORTCHANGED,this.handleSourceSortChange),e.removeEventListener(t.Table.EVENT_SIZECHANGED,this.handleSourceSizeChange),e.removeEventListener(t.Table.EVENT_DISCONNECT,this.handleDisconnect),e.removeEventListener(t.Table.EVENT_RECONNECT,this.handleReconnect)}handleChange(e){var{column:t,isValueShown:n=!1,value:r}=e,{name:s=void 0,type:a=void 0}=t??{},l=!0,o=Date.now();this.setState(d=>{var h,c,{panelState:p,timestamp:v,wasFlipped:m,skipUpdate:b}=d,f=p!=null&&n!==p.isValueShown&&s===p.name&&a===p.type&&r===p.value;return l=(h=!b&&n&&(!f||!m))!==null&&h!==void 0?h:!1,l||(o=v),{panelState:{isValueShown:n,name:s,type:a,value:r,timestamp:(c=o)!==null&&c!==void 0?c:void 0},timestamp:o,wasFlipped:f,skipUpdate:!1}},()=>{l&&this.sendUpdate(s??null,a,r,o)})}handleDisconnect(){this.setState({error:new Error("Table disconnected"),isDisconnected:!0,isLoading:!1})}handleReconnect(){this.setState({isDisconnected:!1,error:null})}handleSourceFilterChange(){this.applySourceFilters()}handleSourceSortChange(){this.applySourceSorts()}handleSourceSizeChange(e){var{detail:t}=e;this.setState({sourceSize:t})}handleColumnSelected(){I.debug("handleColumnSelected");var{glEventHub:e}=this.props;e.emit(de.COLUMN_SELECTED,this,ve.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,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,{dashboardLinks:s}=this.props;if(this.getSource(s)==null){I.debug("Ignore state update for unlinked filter",e);return}this.setState({skipUpdate:!r}),(t=this.dropdownFilterRef)===null||t===void 0||(n=t.current)===null||n===void 0||n.setFilterState(e)}sendUpdate(e,t,n,r){var s,{dashboardLinks:a,glEventHub:l}=this.props,o=(s=this.getSource(a))===null||s===void 0?void 0:s.panelId,d=o==null?[]:[o];I.debug("sendUpdate",{name:e,type:t,value:n,timestamp:r,excludePanelIds:d});var h=E.getIdFromPanel(this);N(h),dr(l,h,e!=null&&t!=null&&r!=null?{name:e,type:t,value:n??"=null",timestamp:r,excludePanelIds:d}:null)}updateValuesTable(){var{dashboardLinks:e,panelTableMap:t}=this.props,n=this.getSource(e),r=this.getSourceTable(t,e);if(I.debug("updateValuesTable",n,r),this.setState({values:[],valuesTable:void 0,error:null}),n==null){I.debug("Filter unlinked."),this.setState({isLoading:!1,isLoaded:!0,isValueShown:!1,sourceSize:0});return}this.setState({isLoading:!0}),r!=null&&(this.setState({isLoaded:!1,sourceSize:r.size}),this.pending.add(r.copy(),s=>s.close()).then(s=>{this.updateViewportListener(s),this.setState({valuesTable:s})}).catch(s=>{ke.isCanceled(s)||(I.error(s),this.setState({isLoading:!1,error:s}))}))}applySourceSorts(){var{dashboardLinks:e,panelTableMap:t}=this.props,{valuesTable:n}=this.state,r=this.getSourceTable(t,e);if(I.debug("applySourceSorts",r==null?void 0:r.sort),n==null||r==null){I.debug("Table not initialized");return}var s=[...r.sort];n.applySort(s),this.setViewport(n)}applySourceFilters(){var{dashboardLinks:e,panelTableMap:t}=this.props,{valuesTable:n}=this.state,r=this.getSourceTable(t,e);if(I.debug("applySourceFilters",r==null?void 0:r.filter),n==null||r==null){I.debug("Table not initialized");return}var s=[...r.filter];n.applyFilter(s),this.setViewport(n)}updateViewportListener(e){var{dh:t}=this.props;if(I.debug("updateViewportListener",e==null?void 0:e.size),this.cleanup&&this.cleanup(),e==null){this.cleanup=void 0;return}this.cleanup=e.addEventListener(t.Table.EVENT_UPDATED,this.handleValuesTableUpdate),this.setViewport(e)}setViewport(e){var{dashboardLinks:t}=this.props,n=this.getValuesColumn(e,t);if(!n){I.error("values column is null");return}e.setViewport(0,ve.MAX_TABLE_SIZE-1,[n])}updateFormatterSettings(e){var{dh:t}=this.props,n=In.getColumnFormats(e);ki(this.columnFormats,n)||(this.columnFormats=n,this.setState({formatter:new Ae(t,n)}))}handleValuesTableUpdate(e){var{detail:t}=e,{rows:n}=t,{dashboardLinks:r}=this.props,{valuesTable:s}=this.state;if(!s){I.error("valuesTable is null");return}var a=this.getValuesColumn(s,r);if(!a){I.error("Values column not found");return}var l=n.map(o=>o.get(a));this.setState({values:l,isLoading:!1,isLoaded:!0,valuesColumn:a})}handleSourceMouseEnter(){var{columnSelectionValidator:e}=this.props;e&&e(this,ve.SOURCE_COLUMN)}handleSourceMouseLeave(){var{columnSelectionValidator:e}=this.props;e&&e(this,void 0)}render(){var{columns:e,dashboardLinks:t,disableLinking:n,glContainer:r,glEventHub:s,isLinkerActive:a}=this.props,{column:l,formatter:o,isDisconnected:d,isValueShown:h,value:c,values:p,valuesColumn:v,isLoading:m,isLoaded:b}=this.state,f=this.getSource(t),C=this.getSettingsErrorMessage(),P=this.getPanelErrorMessage(),S=b&&v!=null?this.getCachedValues(p,v,o):$;return u.jsx(wt,{errorMessage:P,isLoading:m,isLoaded:b,isDisconnected:d,className:"iris-dropdown-filter-panel",componentPanel:this,glContainer:r,glEventHub:s,onClearAllFilters:this.handleClearAllFilters,descriptor:ul,children:u.jsx("div",{ref:this.panelContainer,className:"dropdown-filter-container h-100 w-100 container",children:u.jsx(Ce,{ref:this.dropdownFilterRef,column:l,columns:e,isValueShown:h,isLinkerActive:a,disableLinking:n,isLoaded:b,settingsError:C,source:f,value:c,values:S,onChange:this.handleChange,onColumnSelected:this.handleColumnSelected,onSourceMouseEnter:this.handleSourceMouseEnter,onSourceMouseLeave:this.handleSourceMouseLeave})})})}}X(ve,"displayName","DropdownFilterPanel");X(ve,"COMPONENT","DropdownFilterPanel");X(ve,"MAX_TABLE_SIZE",256);X(ve,"SOURCE_COLUMN",Object.freeze({name:"FilterSource",type:null}));var Le=cl(ve);function zn(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function Lt(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?zn(Object(t),!0).forEach(function(n){ht(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):zn(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function ht(i,e,t){return(e=pl(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function pl(i){var e=vl(i,"string");return typeof e=="symbol"?e:e+""}function vl(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var _=H.module("FilterSetManager"),fl="Enter name...",Wn="No Available Filter Sets";class Ct extends g.Component{static animateScreenFlash(){var e,t=document.createElement("div");t.classList.add("screen-flash-overlay"),t.addEventListener("animationend",()=>{t.remove()}),(e=document.querySelector("body"))===null||e===void 0||e.appendChild(t)}constructor(e){super(e),ht(this,"renameInputRef",J.createRef()),ht(this,"dropdownRef",J.createRef()),ht(this,"editDropdownRef",J.createRef()),ht(this,"isRenamingExistingSet",k((t,n)=>n!==void 0&&t.some(r=>{var{id:s}=r;return s===n.id}))),this.handleSettingsCancel=this.handleSettingsCancel.bind(this),this.handleSettingsClick=this.handleSettingsClick.bind(this),this.handleSettingsSave=this.handleSettingsSave.bind(this),this.handleBackgroundClick=this.handleBackgroundClick.bind(this),this.handleEditDropdownChange=this.handleEditDropdownChange.bind(this),this.handleFilterChange=this.handleFilterChange.bind(this),this.handleFilterApply=this.handleFilterApply.bind(this),this.handleCaptureNewSet=this.handleCaptureNewSet.bind(this),this.handleNameInputChange=this.handleNameInputChange.bind(this),this.handleNameInputKeyPress=this.handleNameInputKeyPress.bind(this),this.handleRenameConfirm=this.handleRenameConfirm.bind(this),this.handleRenameCancel=this.handleRenameCancel.bind(this),this.handleRestoreFullStateChange=this.handleRestoreFullStateChange.bind(this),this.handleSetDelete=this.handleSetDelete.bind(this),this.handleSetEdit=this.handleSetEdit.bind(this),this.handleSetUpdate=this.handleSetUpdate.bind(this),this.state={editId:void 0,renameSet:void 0,nameInputValue:"",nameInputError:void 0,modifiedFilterSets:[],restoreFullState:!1}}componentDidMount(){var{isValueShown:e}=this.props;e?this.updateSelectedId():this.initSettingsScreen()}componentDidUpdate(e,t){var{isValueShown:n,filterSets:r}=this.props,{modifiedFilterSets:s}=this.state;if(e.isValueShown&&!n&&this.initSettingsScreen(),this.isNameInputScreen()&&!this.isNameInputScreen(t)&&this.focusRenameInput(),r!==e.filterSets)if(!n&&r.length>0&&e.filterSets.length===0&&s.length===0){var{onChange:a}=this.props;a({isValueShown:!0,selectedId:r[0].id})}else this.updateSelectedId()}initSettingsScreen(){var{filterSets:e,selectedId:t}=this.props;_.debug("initSettingsScreen",e,t),this.setState({modifiedFilterSets:[...e],editId:t})}updateSelectedId(){var{isValueShown:e,filterSets:t,selectedId:n,onChange:r}=this.props;if(_.debug("updateSelectedId",t,n),!!e&&!t.some(a=>{var{id:l}=a;return l===n})){var s=t.length===0;r({isValueShown:!s,selectedId:s?void 0:t[0].id})}}handleEditDropdownChange(e){this.setState({editId:e})}handleFilterChange(e){var t=e,{isValueShown:n,onChange:r}=this.props;this.applyFilterSet(t),r({isValueShown:n,selectedId:t})}handleFilterApply(){var{selectedId:e}=this.props;this.applyFilterSet(e)}handleSettingsCancel(){var{onChange:e,selectedId:t,filterSets:n}=this.props;this.setState({modifiedFilterSets:[]}),n.length>0&&e({isValueShown:!0,selectedId:t})}handleSettingsSave(){var{onChange:e,onUpdateSets:t}=this.props,{modifiedFilterSets:n,editId:r}=this.state;this.setState({modifiedFilterSets:[]}),_.debug("Update sets",n,r),t(n),n.length>0&&e({isValueShown:!0,selectedId:r})}handleCaptureNewSet(){var{getFilterState:e}=this.props;Ct.animateScreenFlash();var t=oe(),n=e(),r={id:t,title:"",panels:n};_.debug("handleSetCreate",r),this.setState({nameInputValue:"",nameInputError:void 0,renameSet:r})}handleRenameCancel(){this.setState({renameSet:void 0})}handleRestoreFullStateChange(e){this.setState({restoreFullState:e==="true"})}getNameError(e){var t,{renameSet:n,modifiedFilterSets:r}=this.state,s=(t=e==null?void 0:e.trim())!==null&&t!==void 0?t:"";if(s.length===0)return _.debug("Name cannot be empty",s),"Name cannot be empty";if(n!==void 0&&r.some(a=>{var{title:l,id:o}=a;return l===s&&o!==n.id}))return _.debug("Set with this name already exists",s),"Set with this name already exists"}handleRenameConfirm(){var e,{nameInputValue:t,renameSet:n,modifiedFilterSets:r,restoreFullState:s}=this.state;if(n===void 0){_.error("Renamed set undefined.");return}var a=this.getNameError(t);if(_.debug("handleRenameConfirm",t,a),a!==void 0){this.setState({nameInputError:a});return}var l=(e=t==null?void 0:t.trim())!==null&&e!==void 0?e:"",o=Lt(Lt({},n),{},{title:l,restoreFullState:s}),d=r.findIndex(c=>{var{id:p}=c;return p===n.id}),h=[...r];d>=0?(h[d]=o,_.debug("Renamed existing set",h)):(h.push(o),_.debug("Added new set to modified sets",h)),this.setState({editId:o.id,modifiedFilterSets:h,renameSet:void 0})}handleSetDelete(){this.setState(e=>{var{editId:t,modifiedFilterSets:n}=e,r=n.findIndex(o=>{var{id:d}=o;return d===t});if(r<0)return _.error("Unable to find selected filterSet index",n,t),null;var s=n.filter(o=>{var{id:d}=o;return d!==t}),a=Math.max(0,Math.min(s.length-1,r-1)),l=s.length>0?s[a].id:void 0;return _.debug("Deleted selected set",t,n,s),_.debug("New selection",a,l),{modifiedFilterSets:s,editId:l}})}handleSetUpdate(){var{getFilterState:e}=this.props;Ct.animateScreenFlash();var t=e();this.setState(n=>{var{modifiedFilterSets:r,editId:s}=n;if(s===void 0)return _.error("Filter for update not selected."),null;var a=[...r],l=a.findIndex(o=>{var{id:d}=o;return d===s});return l<0?(_.error("Selected set for update not found."),null):(a[l]=Lt(Lt({},a[l]),{},{panels:t}),_.debug("Update set",a,t),{modifiedFilterSets:a})})}handleSetEdit(){this.setState(e=>{var{editId:t,modifiedFilterSets:n}=e,r=n.find(l=>{var{id:o}=l;return o===t});if(r===void 0)return _.error("Could not find selected set",t,n),null;var{title:s,restoreFullState:a=!1}=r;return{nameInputValue:s,nameInputError:void 0,renameSet:r,restoreFullState:a}})}handleSettingsClick(e){e.stopPropagation();var{onChange:t,selectedId:n}=this.props;t({isValueShown:!1,selectedId:n})}handleBackgroundClick(e){_.debug("handleBackgroundClick"),e.target!==this.dropdownRef.current&&this.focusInput()}handleNameInputChange(e){var{value:t}=e.target,n=this.getNameError(t);this.setState({nameInputValue:t,nameInputError:n})}handleNameInputKeyPress(e){var{key:t}=e;t==="Enter"&&(e.preventDefault(),this.handleRenameConfirm())}isNameInputScreen(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.state,{renameSet:t}=e;return t!==void 0}applyFilterSet(e){var{onApply:t,filterSets:n}=this.props;if(e===void 0){_.debug("No filter selected");return}var r=n.find(s=>{var{id:a}=s;return a===e});if(r===void 0){_.debug("Selected id not found in filterSets",e,n);return}_.debug("Apply filterSet",r),t(r)}focusInput(){var e;(e=this.dropdownRef.current)===null||e===void 0||e.focus()}focusRenameInput(){var e;(e=this.renameInputRef.current)===null||e===void 0||e.focus()}render(){var{nameInputValue:e,nameInputError:t,editId:n,renameSet:r,modifiedFilterSets:s,restoreFullState:a}=this.state,{isValueShown:l,filterSets:o,selectedId:d}=this.props,h=this.isNameInputScreen(),c=this.isRenamingExistingSet(s,r),p=s.length===0,v=!h&&p&&o.length===0,m=!h&&!v,b=u.jsxs("div",{className:"fa-layers mr-3",children:[u.jsx(se,{icon:kn,mask:Nn,transform:"shrink-1 down-5 right-7"}),u.jsx(se,{icon:Ga,className:"text-primary",transform:"shrink-6 down-5 right-7"})]}),f=u.jsxs("div",{className:"fa-layers",children:[u.jsx(se,{icon:kn,mask:Nn,transform:"shrink-1 down-5 right-7"}),u.jsx(se,{icon:Ha,transform:"shrink-1 down-5 right-7"})]});return u.jsx("div",{className:"filter-set-manager fill-parent-absolute",children:u.jsxs(vn,{className:"w-100 h-100",isFlipped:l,children:[u.jsx("div",{className:"filter-set-manager-settings-card fill-parent-absolute",children:u.jsxs("div",{className:"filter-set-manager-card-content",children:[v&&u.jsxs("div",{children:[u.jsx(j,{kind:"ghost",className:"btn btn-link no-underline",onClick:this.handleCaptureNewSet,icon:b,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:fl,value:e,ref:this.renameInputRef,onChange:this.handleNameInputChange,onKeyPress:this.handleNameInputKeyPress,spellCheck:"false"}),u.jsx(j,{"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:$a}),u.jsx(j,{"data-testid":"rename-cancel-button",kind:"ghost",className:"btn btn-link no-underline pt-2 pb-2",onClick:this.handleRenameCancel,tooltip:"Cancel",icon:Va})]}),t!==void 0&&u.jsx("div",{className:"error-message",children:t})]}),u.jsx("div",{className:"form-group",children:u.jsxs(Xr,{"aria-label":"Restoration options",onChange:this.handleRestoreFullStateChange,value:"".concat(a),children:[u.jsx(On,{value:"false",children:"Restore only filters"}),u.jsx(On,{value:"true",children:"Restore full table state"})]})})]}),m&&u.jsxs("div",{className:"filter-set-manager-settings-grid-1",children:[u.jsxs("div",{className:"form-group",children:[u.jsx("label",{children:"Edit filter sets"}),u.jsxs("div",{className:"filter-select-container",children:[u.jsxs(ft,{"data-testid":"settings-card-filter-select",ref:this.editDropdownRef,value:n??"-1",className:"custom-select filter-value-select",onChange:this.handleEditDropdownChange,disabled:p,children:[p&&u.jsx("option",{value:"-1",disabled:!0,children:Wn}),s.map(C=>{var{id:P,title:S}=C;return u.jsx("option",{value:P,children:S},P)})]}),u.jsx(j,{kind:"ghost",onClick:this.handleSetUpdate,disabled:p,icon:f,tooltip:"Update"}),u.jsx(j,{kind:"ghost",onClick:this.handleSetEdit,disabled:p,icon:Xi,tooltip:"Edit"}),u.jsx(j,{kind:"ghost",onClick:this.handleSetDelete,disabled:p,icon:cn,tooltip:"Delete"})]})]}),u.jsx("div",{children:u.jsx(j,{kind:"ghost",className:"btn btn-link no-underline",onClick:this.handleCaptureNewSet,icon:b,children:"Capture new filter set"})}),u.jsxs("div",{className:"py-3 text-right",children:[u.jsx(j,{kind:"secondary",onClick:this.handleSettingsCancel,children:"Cancel"})," ",u.jsx(j,{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(ft,{"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:Wn}),o.map(C=>{var{id:P,title:S}=C;return u.jsx("option",{value:P,children:S},P)})]}),u.jsx(j,{"data-testid":"filter-apply-button",kind:"ghost",onClick:this.handleFilterApply,icon:Zi,tooltip:"Apply Filter Set"})]})})}),u.jsx("div",{className:"filter-set-manager-menu",children:u.jsx(j,{kind:"ghost",className:"btn btn-link btn-link-icon m-2 px-2",onClick:this.handleSettingsClick,tooltip:"Settings",icon:u.jsx(se,{icon:hn,transform:"grow-4"})})})]},"back")]})})}}function qn(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function Xn(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?qn(Object(t),!0).forEach(function(n){ml(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):qn(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function ml(i,e,t){return(e=gl(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function gl(i){var e=bl(i,"string");return typeof e=="symbol"?e:e+""}function bl(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}function Cl(i){var e,t,n,r,s,{model:a}=i,l=((e=a==null?void 0:a.rowCount)!==null&&e!==void 0?e:0)-((t=a==null?void 0:a.pendingRowCount)!==null&&t!==void 0?t:0)-((n=a==null?void 0:a.floatingBottomRowCount)!==null&&n!==void 0?n:0)-((r=a==null?void 0:a.floatingTopRowCount)!==null&&r!==void 0?r:0),o=a==null?void 0:a.displayString(l,"long"),d=(s=a==null?void 0:a.columnCount)!==null&&s!==void 0?s:0,h=a==null?void 0:a.displayString(d,"long");return u.jsxs(gn,Xn(Xn({},i),{},{children:[u.jsx("hr",{className:"tab-tooltip-divider"}),u.jsx("span",{children:"Number of Columns"}),u.jsx("span",{className:"tab-tooltip-statistic-value",children:h}),u.jsx("span",{children:"Number of Rows"}),u.jsx("span",{className:"tab-tooltip-statistic-value",children:o})]}))}function hr(i){if(i==null)return!1;var e=i;return typeof e.table=="string"}function cr(i){if(i==null)return!1;var e=i;return typeof e.name=="string"}function Zn(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function ie(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Zn(Object(t),!0).forEach(function(n){U(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):Zn(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function U(i,e,t){return(e=Sl(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Sl(i){var e=yl(i,"string");return typeof e=="symbol"?e:e+""}function yl(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var me=H.module("IrisGridPanel"),Pl=500;function Yn(i){if(i==null)throw new Error("No metadata provided");if(cr(i))return i.name;if(hr(i))return i.table;throw new Error("Unable to determine table name from metadata: ".concat(JSON.stringify(i)))}class Ze extends g.PureComponent{constructor(e){super(e),U(this,"irisGrid",void 0),U(this,"pluginRef",void 0),U(this,"modelPromise",void 0),U(this,"irisGridState",void 0),U(this,"gridState",void 0),U(this,"pluginState",void 0),U(this,"irisGridUtils",void 0),U(this,"gridStateDehydrator",nn.makeMemoizedGridStateDehydrator()),U(this,"irisGridStateDehydrator",nn.makeMemoizedIrisGridStateDehydrator()),U(this,"getGridInputFilters",k((n,r)=>V.getInputFiltersForColumns(n,r.filter(s=>{var{value:a,excludePanelIds:l}=s,o=E.getIdFromPanel(this);return a!=null&&(l==null||o!=null&&!l.includes(o))})))),U(this,"getAlwaysFetchColumns",k((n,r)=>{for(var s=E.getIdFromPanel(this),a=new Set(r),l=0;l<n.length;l+=1){var{start:o}=n[l];o!=null&&o.panelId===s&&a.add(o.columnName)}return[...a]})),U(this,"getPluginContent",k((n,r,s)=>{var a;if(!r||!Re(r)||n==null||r.table==null)return null;var l={panel:this};return u.jsx("div",{className:"iris-grid-plugin",children:u.jsx(n,ie({ref:this.pluginRef,filter:this.handlePluginFilter,fetchColumns:this.handlePluginFetchColumns,model:r,table:r.table,tableName:this.getTableName(),selectedRanges:(a=this.irisGrid.current)===null||a===void 0?void 0:a.state.selectedRanges,onStateChange:this.handlePluginStateChange,pluginState:s},l))})})),U(this,"getDehydratedIrisGridPanelState",k((n,r,s,a)=>V.dehydrateIrisGridPanelState(n,{isSelectingPartition:r,partitions:s,advancedSettings:a}))),U(this,"getCachedPanelState",k((n,r,s,a)=>({irisGridPanelState:n,irisGridState:r,gridState:s,pluginState:a}))),U(this,"getWidgetPanelDescriptor",k((n,r)=>{var s=Yn(n);return ie(ie({type:"Table",displayType:"Table"},n),{},{name:s,description:r})})),U(this,"savePanelState",$e(()=>{var{irisGridState:n,gridState:r,pluginState:s}=this;N(n);var{onPanelStateUpdate:a}=this.props,{model:l,panelState:o,isSelectingPartition:d,partitions:h,advancedSettings:c}=this.state;N(this.irisGridUtils),N(l),N(r);var p=this.getCachedPanelState(this.getDehydratedIrisGridPanelState(l,d,h,c),this.irisGridStateDehydrator(l,n),this.gridStateDehydrator(l,r),s);p!==o&&(me.debug("Saving panel state",this,p),this.setState({panelState:p}),a==null||a(p))},Pl)),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=J.createRef(),this.pluginRef=J.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(rs.DEFAULTS),customColumns:[],customColumnFormatMap:new Map,isFilterBarShown:!1,quickFilters:new Map,sorts:[],userColumnWidths:new Map,userRowHeights:new Map,reverse:!1,movedColumns:[],movedRows:[],isSelectingPartition:!1,partitions:[],rollupConfig:void 0,showSearchBar:!1,searchValue:"",selectedSearchColumns:void 0,invertSearchColumns:!0,Plugin:void 0,pluginFilters:[],pluginFetchColumns:[],modelQueue:[],pendingDataMap:new Map,frozenColumns:void 0,panelState:t,irisGridStateOverrides:{},gridStateOverrides:{},isStuckToBottom:!1,isStuckToRight:!1,conditionalFormats:[],selectDistinctColumns:[]}}componentDidMount(){this.initModel()}componentDidUpdate(e,t){var{model:n}=this.state,{makeModel:r}=this.props;n!==t.model&&(t.model!=null&&(this.stopModelListening(t.model),t.model.close()),n!=null&&this.startModelListening(n)),r!==e.makeModel&&this.initModel()}componentWillUnmount(){this.savePanelState.cancel(),this.modelPromise!=null&&(this.modelPromise.cancel(),this.modelPromise=void 0);var{model:e}=this.state;e&&(this.stopModelListening(e),e.close())}getTableName(){var{metadata:e}=this.props;return Yn(e)}initModel(){this.setState({isModelReady:!1,isLoading:!0,error:null,isDisconnected:!1});var{makeModel:e}=this.props;this.modelPromise!=null&&this.modelPromise.cancel(),this.modelPromise=ke.makeCancelable(e(),t=>t.close()),this.modelPromise.then(this.handleLoadSuccess).catch(this.handleLoadError)}handleLoadSuccess(e){var t=e,{panelState:n,irisGridStateOverrides:r}=this.state,s=[];if(this.irisGridUtils=new V(t.dh),n!=null){var{irisGridState:a}=n,{aggregationSettings:l,customColumns:o,selectDistinctColumns:d=[],rollupConfig:h}=ie(ie({},a),r);o.length>0&&s.push(c=>{c.customColumns=o}),h!=null&&h.columns.length>0&&s.push(c=>{c.rollupConfig=V.getModelRollupConfig(c.originalColumns,h,l)}),d.length>0&&s.push(c=>{c.selectDistinctColumns=d})}this.setState({model:t,modelQueue:s}),this.initModelQueue(t,s)}initModelQueue(e,t){var n=e;if(t.length===0){this.modelInitialized(n);return}var r=t.shift();me.debug("initModelQueue",r),r&&r(n),this.setState({modelQueue:t})}handleAdvancedSettingsChange(e,t){me.debug("handleAdvancedSettingsChange",e,t),this.setState(n=>{var{advancedSettings:r}=n;return r.get(e)===t?null:{advancedSettings:new Map(r).set(e,t)}})}handlePluginFilter(e){var t,n,{model:r}=this.state;N(r);var{columns:s,formatter:a}=r,l=(t=(n=this.irisGridUtils)===null||n===void 0?void 0:n.getFiltersFromInputFilters(s,e,a.timeZone))!==null&&t!==void 0?t:[];this.setState({pluginFilters:l})}handlePluginFetchColumns(e){this.setState({pluginFetchColumns:e})}handleContextMenu(e){var t,n,r;return(t=(n=this.pluginRef.current)===null||n===void 0||(r=n.getMenu)===null||r===void 0?void 0:r.call(n,e))!==null&&t!==void 0?t:[]}isColumnSelectionValid(e){var{columnSelectionValidator:t}=this.props;return t&&e?t(this,e):!1}handleGridStateChange(e,t){this.irisGridState=e,this.gridState=t,this.setState({isLoaded:!0,isLoading:!1}),this.savePanelState();var{glEventHub:n,onStateChange:r}=this.props;n.emit(B.STATE_CHANGED,this),r==null||r(e,t)}handlePluginStateChange(e){var{irisGridState:t,gridState:n}=this;this.pluginState=e,t!==null&&n!==null&&this.savePanelState()}handleColumnsChanged(e){var{isModelReady:t,model:n,modelQueue:r}=this.state;t?this.sendColumnsChange(e.detail):(N(n),this.initModelQueue(n,r))}handleTableChanged(e){me.debug("handleTableChanged",e);var{glEventHub:t}=this.props,{detail:n}=e,r=E.getIdFromPanel(this);N(r),Rt(t,r,n)}handleCreateChart(e,t){this.savePanelState.flush(),this.setState(()=>null,()=>{var{glEventHub:n,inputFilters:r,metadata:s}=this.props,a=this.getTableName(),{panelState:l}=this.state,o=E.getIdFromPanel(this),d;l&&(d=V.extractTableSettings(l,r)),n.emit(B.CREATE_CHART,{metadata:ie(ie({},s),{},{settings:e,sourcePanelId:o,table:a,tableSettings:d}),table:Re(t)?t.table:void 0})})}handleColumnSelected(e){var{glEventHub:t}=this.props;t.emit(B.COLUMN_SELECTED,this,e)}handleDataSelected(e,t){var{glEventHub:n}=this.props;n.emit(B.DATA_SELECTED,this,t)}handleShow(){this.updateGrid()}handleTabClicked(){this.irisGrid.current&&this.irisGrid.current.focus()}handleError(e){me.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){ke.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}),Re(e)){var{table:r}=e,{pluginName:s}=r;if(s!==""&&n!=null&&s!=null){var a=n(s);this.setState({Plugin:a})}var l=E.getIdFromPanel(this);N(l),Rt(t,l,r)}this.sendColumnsChange(e.columns)}handleClearAllFilters(){var e=this.irisGrid.current,{isDisconnected:t}=this.state;e!=null&&!t&&e.clearAllFilters()}sendColumnsChange(e){me.debug2("sendColumnsChange",e);var{glEventHub:t}=this.props,n=E.getIdFromPanel(this);N(n),_t(t,n,e)}startModelListening(e){e.addEventListener(x.EVENT.DISCONNECT,this.handleDisconnect),e.addEventListener(x.EVENT.RECONNECT,this.handleReconnect),e.addEventListener(x.EVENT.COLUMNS_CHANGED,this.handleColumnsChanged),e.addEventListener(x.EVENT.TABLE_CHANGED,this.handleTableChanged)}stopModelListening(e){e.removeEventListener(x.EVENT.DISCONNECT,this.handleDisconnect),e.removeEventListener(x.EVENT.RECONNECT,this.handleReconnect),e.removeEventListener(x.EVENT.COLUMNS_CHANGED,this.handleColumnsChanged),e.removeEventListener(x.EVENT.TABLE_CHANGED,this.handleTableChanged)}getCoordinateForColumn(e){var t,n,r,{model:s}=this.state;if(!s)return null;var a=this.irisGrid.current,{gridWrapper:l}=a||{},o=(t=l==null?void 0:l.getBoundingClientRect())!==null&&t!==void 0?t:null;if(o==null||o.width<=0||o.height<=0)return null;N(a);var{metrics:d}=a.state;N(d);var{columnHeaderHeight:h,allColumnXs:c,allColumnWidths:p,right:v,columnHeaderMaxDepth:m}=d,b=s.getColumnIndexByName(e);N(b);var f=a.getVisibleColumn(b),C=(n=c.get(f))!==null&&n!==void 0?n:0,P=(r=p.get(f))!==null&&r!==void 0?r:0,S=Math.max(o.left,Math.min(f>v?o.right:o.left+C+P*.5,o.right)),y=o.top+h*m;return[S,y]}setFilterMap(e){var t=this.irisGrid.current;t!=null&&t.setFilterMap(e)}setAdvancedFilterMap(e){var t=this.irisGrid.current;t!=null&&t.setAdvancedFilterMap(e)}setFilters(e){var{quickFilters:t,advancedFilters:n}=e;me.debug("setFilters",t,n);var{model:r,isDisconnected:s}=this.state,a=this.irisGrid.current;if(a==null||s){me.debug("Ignore setFilters, model disconnected");return}N(r);var{columns:l,formatter:o}=r,d=V.changeFilterColumnNamesToIndexes(r.columns,t).filter(c=>{var[p]=c;return r.isFilterable(p)}),h=V.changeFilterColumnNamesToIndexes(r.columns,n).filter(c=>{var[p]=c;return r.isFilterable(p)});N(this.irisGridUtils),a.clearAllFilters(),a.setFilters({quickFilters:this.irisGridUtils.hydrateQuickFilters(l,d,o.timeZone),advancedFilters:this.irisGridUtils.hydrateAdvancedFilters(l,h,o.timeZone)})}setStateOverrides(e){me.debug("setStateOverrides",e);var{irisGridState:t,gridState:n}=e;this.setState({irisGridStateOverrides:t,gridStateOverrides:n},()=>{this.initModel()})}unsetFilterValue(){}loadPanelState(e){var{panelState:t,irisGridStateOverrides:n,gridStateOverrides:r}=this.state;if(t!=null)try{var{gridState:s,irisGridState:a,irisGridPanelState:l}=t,o=ie({},n),{quickFilters:d,advancedFilters:h}=o;d&&(o.quickFilters=V.changeFilterColumnNamesToIndexes(e.columns,d)),h&&(o.advancedFilters=V.changeFilterColumnNamesToIndexes(e.columns,h));var{isSelectingPartition:c,partitions:p,advancedSettings:v}=V.hydrateIrisGridPanelState(e,l);N(this.irisGridUtils);var{advancedFilters:m,customColumns:b,customColumnFormatMap:f,isFilterBarShown:C,quickFilters:P,reverse:S,rollupConfig:y,aggregationSettings:w,sorts:D,userColumnWidths:M,userRowHeights:T,showSearchBar:F,searchValue:L,selectDistinctColumns:A,selectedSearchColumns:ee,invertSearchColumns:Z,pendingDataMap:G,frozenColumns:je,conditionalFormats:nt,columnHeaderGroups:it,partitionConfig:rt}=this.irisGridUtils.hydrateIrisGridState(e,ie(ie({},a),o)),{isStuckToBottom:Ge,isStuckToRight:He,movedColumns:at,movedRows:st}=V.hydrateGridState(e,ie(ie({},s),r),a.customColumns);this.setState({advancedFilters:m,advancedSettings:v,conditionalFormats:nt,customColumns:b,customColumnFormatMap:f,isFilterBarShown:C,isSelectingPartition:c,movedColumns:at,movedRows:st,partitions:p,quickFilters:P,reverse:S,rollupConfig:y,aggregationSettings:w,sorts:D,userColumnWidths:M,userRowHeights:T,showSearchBar:F,searchValue:L,selectDistinctColumns:A,selectedSearchColumns:ee,invertSearchColumns:Z,pendingDataMap:G,frozenColumns:je,isStuckToBottom:Ge,isStuckToRight:He,columnHeaderGroups:it,partitionConfig:rt})}catch(te){me.error("loadPanelState failed to load panelState",t,te)}}updateGrid(){var e,t,n=(e=(t=this.irisGrid.current)===null||t===void 0?void 0:t.grid)!==null&&e!==void 0?e:null;n&&n.handleResize()}render(){var e,t,{children:n,glContainer:r,glEventHub:s,columnSelectionValidator:a,getDownloadWorker:l,inputFilters:o,links:d,metadata:h,panelState:c,user:p,settings:v,theme:m}=this.props,{advancedFilters:b,aggregationSettings:f,advancedSettings:C,conditionalFormats:P,customColumns:S,customColumnFormatMap:y,error:w,isDisconnected:D,isFilterBarShown:M,isSelectingPartition:T,isStuckToBottom:F,isStuckToRight:L,isLoaded:A,isLoading:ee,isModelReady:Z,model:G,movedColumns:je,movedRows:nt,partitions:it,partitionConfig:rt,quickFilters:Ge,reverse:He,rollupConfig:at,sorts:st,userColumnWidths:te,userRowHeights:Xt,showSearchBar:ue,searchValue:fe,selectDistinctColumns:ye,selectedSearchColumns:Pe,invertSearchColumns:Be,Plugin:Zt,pluginFilters:_r,pluginFetchColumns:Rr,pendingDataMap:Ar,frozenColumns:Ur,columnHeaderGroups:$r}=this.state,Vr=w!=null?"Unable to open table. ".concat(w):void 0,Gr=(e=G==null?void 0:G.description)!==null&&e!==void 0?e:void 0,Hr=(t=c==null?void 0:c.pluginState)!==null&&t!==void 0?t:null,Br=n??this.getPluginContent(Zt,G,Hr),{permissions:Kr}=p,{canCopy:zr,canDownloadCsv:Wr}=Kr,Mn=this.getWidgetPanelDescriptor(h,Gr);return u.jsx(wt,{errorMessage:Vr,isDisconnected:D,isLoading:ee,isLoaded:A,className:"iris-grid-panel",glContainer:r,glEventHub:s,onClearAllFilters:this.handleClearAllFilters,onShow:this.handleShow,onTabFocus:this.handleShow,onTabClicked:this.handleTabClicked,componentPanel:this,descriptor:Mn,renderTabTooltip:()=>u.jsx(Cl,{descriptor:Mn,model:G}),children:Z&&G&&u.jsx(pn,{advancedFilters:b,aggregationSettings:f,advancedSettings:C,alwaysFetchColumns:this.getAlwaysFetchColumns(d,Rr),columnAllowedCursor:"linker",columnNotAllowedCursor:"linker-not-allowed",copyCursor:"copy",customColumns:S,customColumnFormatMap:y,columnSelectionValidator:this.isColumnSelectionValid,conditionalFormats:P,inputFilters:this.getGridInputFilters(G.columns,o),applyInputFiltersOnInit:c==null,isFilterBarShown:M,isSelectingColumn:a!=null,isSelectingPartition:T,isStuckToBottom:F,isStuckToRight:L,movedColumns:je,movedRows:nt,partitions:it,partitionConfig:rt,quickFilters:Ge,reverse:He,rollupConfig:at,settings:v,sorts:st,userColumnWidths:te,userRowHeights:Xt,model:G,showSearchBar:ue,searchValue:fe,selectedSearchColumns:Pe,selectDistinctColumns:ye,invertSearchColumns:Be,onColumnSelected:this.handleColumnSelected,onCreateChart:this.handleCreateChart,onDataSelected:this.handleDataSelected,onError:this.handleError,onStateChange:this.handleGridStateChange,onContextMenu:this.handleContextMenu,onAdvancedSettingsChange:this.handleAdvancedSettingsChange,customFilters:_r,pendingDataMap:Ar,canCopy:zr,canDownloadCsv:Wr,ref:this.irisGrid,getDownloadWorker:l,frozenColumns:Ur,theme:m,columnHeaderGroups:$r,children:Br})})}}U(Ze,"defaultProps",{onStateChange:()=>{},onPanelStateUpdate:()=>{}});U(Ze,"displayName","IrisGridPanel");U(Ze,"COMPONENT","IrisGridPanel");var wl=(i,e)=>{var{localDashboardId:t=ia}=e;return{inputFilters:St(i,t),links:yt(i,t),columnSelectionValidator:Vt(i,t),user:na(i),settings:Gt(i)}},Ye=Ve(wl,null,null,{forwardRef:!0})(Ze);function pt(i,e,t){return(e=El(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function El(i){var e=Fl(i,"string");return typeof e=="symbol"?e:e+""}function Fl(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var Qn=H.module("InputFilter"),Tl=150;class Qe extends g.Component{constructor(e){super(e),pt(this,"inputRef",void 0),pt(this,"getItemLabel",ae((s,a)=>{var{name:l,type:o}=s[a];if(a>0&&s[a-1].name===l||a<s.length-1&&s[a+1].name===l){var d=o.substring(o.lastIndexOf(".")+1);return"".concat(l," (").concat(d,")")}return l},{max:1e3})),pt(this,"sendUpdate",$e(()=>{var{onChange:s}=this.props,{column:a,value:l,isValueShown:o}=this.state;s({column:a,isValueShown:o,value:l})},Tl)),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=J.createRef();var{column:t,isValueShown:n,value:r}=e;this.state={column:t,selectedColumn:t,value:r,isValueShown:n}}componentDidUpdate(e,t){var{column:n}=this.props,{column:r,value:s,isValueShown:a}=this.state;n!==e.column&&this.setState({column:n,selectedColumn:n}),a!==void 0&&a&&a!==t.isValueShown&&this.focusInput(),(r!==t.column||s!==t.value||a!==t.isValueShown)&&this.sendUpdate()}componentWillUnmount(){this.sendUpdate.flush()}handleColumnChange(e){var{columns:t}=this.props,n=t[parseInt(e,10)];Qn.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;Qn.debug2("handleValueChange",t),this.setState({value:t})}handleSettingsCancel(){var{column:e}=this.state;this.setState({selectedColumn:e,isValueShown:!0})}handleSettingsSave(){var{selectedColumn:e}=this.state;this.setState({column:e,isValueShown:!0})}handleSettingsClick(e){var{column:t}=this.state;this.setState({selectedColumn:t,isValueShown:!1}),e.stopPropagation()}handleBackgroundClick(e){e.target!==this.inputRef.current&&this.focusInput()}focusInput(){this.inputRef.current!==null&&(this.inputRef.current.select(),this.inputRef.current.focus())}clearFilter(){this.setState({value:""})}setFilterState(e){var{name:t,type:n,value:r,isValueShown:s}=e,a=t!=null&&n!=null?{name:t,type:n}:void 0,l=s===void 0?{column:a,value:r}:{column:a,value:r,isValueShown:s};this.setState(l)}render(){var{columns:e}=this.props,{column:t,isValueShown:n,selectedColumn:r,value:s}=this.state,a=s==null||s.length===0?Qe.PLACEHOLDER.length:s.length,l=null;if(t!=null){var o=e.findIndex(d=>d.name===t.name&&d.type===t.type);l=o>=0?this.getItemLabel(e,o):t.name}return u.jsxs(vn,{className:"input-filter fill-parent-absolute",isFlipped:n??!1,children:[u.jsx("div",{className:"input-filter-settings-card",children:u.jsxs("div",{className:"input-filter-settings-content",children:[u.jsxs("div",{className:"input-filter-settings-grid",children:[u.jsx("label",{children:"Filter Column"}),u.jsxs(ft,{value:String(e.findIndex(d=>d.name===(r==null?void 0:r.name)&&d.type===(r==null?void 0:r.type))),className:"custom-select",onChange:this.handleColumnChange,children:[e.map((d,h)=>u.jsx("option",{value:h,children:this.getItemLabel(e,h)},"".concat(d.name,"/").concat(d.type))),e.length===0&&u.jsx("option",{value:"-1",disabled:!0,children:"No Available Columns"})]}),u.jsx("div",{className:"text-muted small",children:"Input filter control will apply its filter to all columns matching this name in this dashboard."})]}),u.jsxs("div",{className:"input-filter-settings-buttons",children:[u.jsx(j,{kind:"secondary",onClick:this.handleSettingsCancel,disabled:t==null,children:"Cancel"}),u.jsx(j,{kind:"primary",className:"ml-2",onClick:this.handleSettingsSave,disabled:r==null,children:"Save"})]})]})}),u.jsxs("div",{className:"input-filter-value-card",onClick:this.handleBackgroundClick,children:[u.jsx("div",{className:"input-filter-column",children:u.jsxs("div",{className:"input-filter-column-title",children:[l," 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:Qe.PLACEHOLDER,value:s??"",onChange:this.handleValueChange,onKeyPress:this.handleInputKeyPress,style:{width:"".concat(a+3,"ch")},spellCheck:"false"})})}),u.jsx("div",{className:"input-filter-menu",children:u.jsx(j,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:u.jsx(se,{icon:hn,transform:"grow-4"}),tooltip:"Input Filter Settings"})})]})]})}}pt(Qe,"PLACEHOLDER","Enter value...");pt(Qe,"defaultProps",{column:null,isValueShown:!1,value:null});function Kt(i,e,t){return(e=Dl(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Dl(i){var e=Ml(i,"string");return typeof e=="symbol"?e:e+""}function Ml(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var Ol=250;class zt extends g.Component{constructor(e){super(e),Kt(this,"inputFilterRef",void 0),this.handleChange=$e(this.handleChange.bind(this),Ol),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.inputFilterRef=J.createRef();var{panelState:t}=e,{value:n,isValueShown:r=!1,name:s,type:a,timestamp:l=Date.now()}=t??{};this.state={columns:[],column:s!=null&&a!=null?{name:s,type:a}:void 0,value:n,timestamp:l,isValueShown:r,wasFlipped:!1,skipUpdate:!1,panelState:t}}componentDidMount(){this.updateColumns();var{column:e,value:t,timestamp:n}=this.state;if(e!=null){var{name:r,type:s}=e;this.sendUpdate(r,s,t,n)}}componentDidUpdate(e){var{columns:t}=this.props;t!==e.columns&&this.updateColumns()}handleChange(e){var{column:t,isValueShown:n=!1,value:r}=e,s,a;t!=null&&({name:s,type:a}=t);var l=!0,o=Date.now();this.setState(d=>{var h,{panelState:c,timestamp:p,wasFlipped:v,skipUpdate:m}=d,b=c!=null&&n!==c.isValueShown&&s===c.name&&a===c.type&&r===c.value;return l=(h=!m&&n&&(!b||!v))!==null&&h!==void 0?h:!1,l||(o=p),{panelState:{isValueShown:n,name:s,type:a,value:r,timestamp:o},timestamp:o,wasFlipped:b,skipUpdate:!1}},()=>{l&&this.sendUpdate(s,a,r,o)})}handleClearAllFilters(){var e;(e=this.inputFilterRef.current)===null||e===void 0||e.clearFilter()}sendUpdate(e,t,n,r){var{glEventHub:s}=this.props,a=E.getIdFromPanel(this);N(a),dr(s,a,e!=null&&t!=null&&n!=null&&r!=null?{name:e,type:t,value:n,timestamp:r}:null)}setPanelState(e){var t,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;this.setState({skipUpdate:!n}),(t=this.inputFilterRef.current)===null||t===void 0||t.setFilterState(e)}updateColumns(){var{columns:e}=this.props;e!=null&&this.setState(t=>{var{column:n}=t;return n==null&&e.length>0?{columns:[...e],column:e[0]}:n!=null&&!e.find(r=>{var{name:s,type:a}=r;return n.name===s&&n.type===a})?{columns:[...e,n]}:{columns:[...e]}})}render(){var{glContainer:e,glEventHub:t}=this.props,{column:n,columns:r,isValueShown:s,value:a}=this.state;return u.jsx(et,{className:"iris-input-filter-panel",componentPanel:this,glContainer:e,glEventHub:t,onClearAllFilters:this.handleClearAllFilters,isClonable:!0,isRenamable:!0,children:u.jsx(Qe,{ref:this.inputFilterRef,column:n,columns:r,onChange:this.handleChange,isValueShown:s,value:a})})}}Kt(zt,"defaultProps",{panelState:null});Kt(zt,"COMPONENT","InputFilterPanel");Kt(zt,"displayName","InputFilterPanel");var Ll=(i,e)=>{var{localDashboardId:t}=e;return{columns:un(i,t)}},We=Ve(Ll,null,null,{forwardRef:!0})(zt);function Jn(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function kt(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Jn(Object(t),!0).forEach(function(n){yn(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):Jn(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function yn(i,e,t){return(e=kl(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function kl(i){var e=Nl(i,"string");return typeof e=="symbol"?e:e+""}function Nl(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var q=H.module("FilterSetManagerPanel");function jl(i){return i.setPanelState!=null}class Je extends g.Component{static changeFilterIndexesToColumnNames(e,t){return t.map(n=>{var[r,s]=n;if(r>=e.columns.length)return null;var{name:a}=e.columns[r];return{name:a,filter:s}}).filter(n=>n!=null)}constructor(e){super(e),this.handleChange=this.handleChange.bind(this),this.handleFilterApply=this.handleFilterApply.bind(this),this.handleSetsUpdate=this.handleSetsUpdate.bind(this),this.handleGetFilterState=this.handleGetFilterState.bind(this);var{panelState:t,filterSets:n}=e,{selectedId:r=n.length>0?n[0].id:void 0,isValueShown:s=!1}=t??{};this.state={selectedId:r,isValueShown:s,panelState:t}}getFilterState(){var{dashboardOpenedPanelMap:e}=this.props,t=[];return[...e.keys()].forEach(n=>{var r=e.get(n);if(r===void 0){q.error("Could not get panel",r);return}var s=E.getComponentNameFromPanel(r),a=E.getIdFromPanel(r);q.debug("Panel:",r,s);var{glContainer:l=null}=r.props;if(l==null){q.error("Could not get panel container",r);return}var o=E.getComponentConfigFromContainer(l);if(o==null){q.error("Could not get component config from container",l);return}var d=E.getPanelComponentState(o);if(d==null){q.debug("Panel state is null ".concat(a));return}switch(s){case E.getComponentName(Ze):{var h;a!=null&&(h=this.getIrisGridPanelFilters(a,d)),h!=null&&t.push({panelId:a,type:s,state:h});break}case E.getComponentName(We):case E.getComponentName(Le):{var{isValueShown:c,name:p,type:v,value:m}=d;t.push({panelId:a,type:s,state:{isValueShown:c,name:p,type:v,value:m}});break}}}),t}getIrisGridPanelFilters(e,t){var{panelTableMap:n}=this.props,r=n.get(e);if(r==null)return q.error("Unable to get table for panel ".concat(e,".")),null;var{irisGridState:s={advancedFilters:void 0,quickFilters:void 0},gridState:a={}}=t,{advancedFilters:l,quickFilters:o}=s,d;l&&(d=Je.changeFilterIndexesToColumnNames(r,l));var h;return o&&(h=Je.changeFilterIndexesToColumnNames(r,o)),{irisGridState:kt(kt({},s),{},{advancedFilters:d,quickFilters:h}),gridState:kt({},a)}}handleGetFilterState(){return this.getFilterState()}handleChange(e){var{isValueShown:t,selectedId:n}=e;q.debug("handleChange",t,n),this.setState({isValueShown:t,selectedId:n}),this.updatePanelState()}handleFilterApply(e){var{dashboardOpenedPanelMap:t}=this.props,{panels:n,restoreFullState:r=!1}=e;q.debug("Apply filters from filter set",e),n.forEach(s=>{var{panelId:a,type:l,state:o}=s;if(a==null){q.debug("panel is null",a);return}if(!t.has(a)){q.debug("Ignore closed panel",a);return}q.debug("Apply panel filters",a,l,o);var d=t.get(a);switch(l){case E.getComponentName(Ze):this.restoreIrisGridFilters(d,o,r);break;case E.getComponentName(We):case E.getComponentName(Le):this.restoreInputFilterState(d,o);break}})}handleSetsUpdate(e){var{setDashboardFilterSets:t,localDashboardId:n}=this.props;q.debug("Saving updated sets",e),t(n,[...e])}updatePanelState(){this.setState(e=>{var{selectedId:t,isValueShown:n}=e;return{panelState:{selectedId:t,isValueShown:n}}})}restoreIrisGridFilters(e,t,n){var{irisGridState:r={},advancedFilters:s=[],quickFilters:a=[]}=t,{advancedFilters:l=s,quickFilters:o=a}=r,{panelTableMap:d}=this.props,h=E.getIdFromPanel(e);if(h==null){q.error("Panel Id is null.");return}var c=d.get(h);if(c==null){q.error("Unable to get table for panel ".concat(h,"."));return}q.debug("restoreIrisGridFilters",h,t,n),n?e.setStateOverrides(t):e.setFilters({quickFilters:o,advancedFilters:l})}restoreInputFilterState(e,t){var n=kt({},t);delete n.isValueShown,q.debug("restoreInputFilterState",e,n),e&&jl(e)&&e.setPanelState(n)}render(){var{glContainer:e,glEventHub:t,filterSets:n}=this.props,{isValueShown:r,selectedId:s}=this.state;return u.jsx(et,{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(Ct,{onChange:this.handleChange,onApply:this.handleFilterApply,onUpdateSets:this.handleSetsUpdate,isValueShown:r,filterSets:n,selectedId:s,getFilterState:this.handleGetFilterState})})})}}yn(Je,"defaultProps",{panelState:null});yn(Je,"COMPONENT","FilterSetManagerPanel");var Il=(i,e)=>{var{localDashboardId:t}=e;return{filterSets:$i(i,t),dashboardOpenedPanelMap:_i(i,t),dashboardInputFilters:St(i,t),panelTableMap:Ut(i,t)}},xt=Ve(Il,{setDashboardFilterSets:Ui},null,{forwardRef:!0})(Je);function xl(i,e,t){return(e=_l(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function _l(i){var e=Rl(i,"string");return typeof e=="symbol"?e:e+""}function Rl(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class pr extends g.PureComponent{render(){var{isEditing:e,children:t,onDoubleClick:n}=this.props;return u.jsxs("div",{className:"markdown-editor-container h-100 w-100",onDoubleClick:n,children:[u.jsx("div",{className:le("text-muted","edit-hint",{viewing:e===void 0||!e}),children:u.jsxs("span",{children:["double-click to edit ",u.jsx(se,{icon:Xi})]})}),t]})}}xl(pr,"defaultProps",{isEditing:!1});function Al(i,e,t){return(e=Ul(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Ul(i){var e=$l(i,"string");return typeof e=="symbol"?e:e+""}function $l(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var Vl=H.module("MarkdownStartPage");class vr extends g.PureComponent{constructor(e){super(e),this.handleDeleteButtonClick=this.handleDeleteButtonClick.bind(this),this.handleDeleteModalClose=this.handleDeleteModalClose.bind(this),this.state={isDeleteModalShown:!1}}handleDeleteButtonClick(e){this.setState({isDeleteModalShown:!0,toBeDeleted:e})}handleDeleteModalClose(){this.setState({isDeleteModalShown:!1,toBeDeleted:void 0})}handleDeleteMarkdown(e){if(Vl.debug("delete markdown: ",e),e!==void 0){var{onDelete:t}=this.props;t(e)}this.setState({isDeleteModalShown:!1,toBeDeleted:void 0})}render(){var{closedMarkdowns:e,onOpen:t,onCreate:n}=this.props,{isDeleteModalShown:r,toBeDeleted:s}=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(j,{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(a=>u.jsxs("div",{className:"list-item",children:[u.jsx(j,{kind:"ghost",className:"title",onClick:()=>t(a),children:a.title}),u.jsx("button",{className:"btn-link icon",type:"button",onClick:()=>{this.handleDeleteButtonClick(a)},children:u.jsx(se,{icon:cn})})]},a.id)),u.jsxs(Ba,{isOpen:r,toggle:this.handleDeleteModalClose,className:"modal-dialog-centered markdown-delete-modal",children:[u.jsx(Ka,{children:"Are you sure you want to permanently delete this note?"}),u.jsx(za,{children:"You can't undo this action."}),u.jsxs(ra,{children:[u.jsx(j,{kind:"secondary",onClick:this.handleDeleteModalClose,children:"Cancel"}),u.jsx(j,{kind:"danger",onClick:()=>{this.handleDeleteMarkdown(s)},children:"Delete"})]})]})]})]})})}}Al(vr,"defaultProps",{closedMarkdowns:[],onOpen:()=>{},onCreate:()=>{},onDelete:()=>{}});function Pn(i,e,t){return(e=Gl(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Gl(i){var e=Hl(i,"string");return typeof e=="symbol"?e:e+""}function Hl(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class Se{static getNewMarkdownTitle(e){for(var t="".concat(Se.DEFAULT_TITLE),n=0;e.indexOf(t)>=0;)n+=1,t="".concat(Se.DEFAULT_TITLE,"-").concat(n);return t}}Pn(Se,"DEFAULT_TITLE","Note");Pn(Se,"DEFAULT_CONTENT",`# Markdown Note
|
|
5
5
|
|
|
6
|
-
This note can be edited using **markdown** for styling.`);Pn(Se,"getClosedMarkdowns",k(i=>i.filter(e=>e.component==="MarkdownPanel"&&e.props.panelState.content!==""&&e.props.panelState.content!==null).reverse()));function vt(i,e,t){return(e=Bl(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Bl(i){var e=Kl(i,"string");return typeof e=="symbol"?e:e+""}function Kl(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var zl=g.lazy(()=>os(()=>import("./MarkdownEditor-D-fP7ax_.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10]),import.meta.url)),Nt=H.module("MarkdownPanel");class wn extends g.Component{constructor(e){super(e),vt(this,"markdownEditor",void 0),vt(this,"editor",void 0),vt(this,"getClosedMarkdowns",k(Se.getClosedMarkdowns)),this.handleContainerDoubleClick=this.handleContainerDoubleClick.bind(this),this.handleCreateMarkdown=this.handleCreateMarkdown.bind(this),this.handleDeleteMarkdown=this.handleDeleteMarkdown.bind(this),this.handleOpenMarkdown=this.handleOpenMarkdown.bind(this),this.handleEditorInitialized=this.handleEditorInitialized.bind(this),this.handleEditorBlur=this.handleEditorBlur.bind(this),this.handleEditorResize=this.handleEditorResize.bind(this);var{panelState:t}=e,n=null;t!=null&&t.content!=null&&(t.content!==""?{content:n}=t:n=Se.DEFAULT_CONTENT),this.state={isStartPageShown:n==null&&this.getClosedMarkdowns(e.closedPanels).length!==0,isEditing:!1,content:n,panelState:t},this.markdownEditor=null}setEditorPosition(e){N(this.markdownEditor);var{container:t}=this.markdownEditor;if(this.editor&&t!=null){var n,r,s=t.getBoundingClientRect().top,a=t.scrollTop,l=t.scrollHeight,o=(n=(r=this.editor.getModel())===null||r===void 0?void 0:r.getLineCount())!==null&&n!==void 0?n:0,d=Math.round((a+e-s)/l*o);d>o&&(d=o),this.editor.revealLine(d),this.editor.setPosition({lineNumber:d,column:1}),this.editor.focus()}}handleContainerDoubleClick(e){var{isEditing:t}=this.state,n=e.clientY;t||this.setState({isEditing:!0},()=>{this.setEditorPosition(n)})}handleEditorInitialized(e){Nt.debug("Markdown Editor Initialized..."),this.editor=e}handleCreateMarkdown(){Nt.debug("create markdown..."),this.setState({isStartPageShown:!1,content:"",isEditing:!0,panelState:{content:""}},()=>{this.editor!=null&&this.editor.focus!=null&&this.editor.focus()})}handleOpenMarkdown(e){Nt.debug("open markdown...",e);var{glContainer:t,glEventHub:n}=this.props,r=E.getComponentConfigFromContainer(t);n.emit(ne.REOPEN,e,r)}handleDeleteMarkdown(e){var{glEventHub:t}=this.props;t.emit(ne.DELETE,e)}handleEditorBlur(e){var t;Nt.debug("markdown content changed, saving...");var{isEditing:n}=this.state;if(!(!n||this.markdownEditor!=null&&this.markdownEditor.container!=null&&this.markdownEditor.container.contains(e.relatedTarget))){var r=(t=this.editor)===null||t===void 0?void 0:t.getValue();this.setState({content:r,isEditing:!1,panelState:{content:r}})}}handleEditorResize(){var{isEditing:e}=this.state;e&&this.editor&&this.editor.layout()}render(){var{glContainer:e,glEventHub:t,closedPanels:n}=this.props,{isEditing:r,isStartPageShown:s,content:a}=this.state,l=this.getClosedMarkdowns(n);return u.jsx(et,{glContainer:e,glEventHub:t,className:"markdown-panel",componentPanel:this,onResize:this.handleEditorResize,onBlur:this.handleEditorBlur,isClonable:!0,isRenamable:!0,children:s?u.jsx(vr,{closedMarkdowns:l,onCreate:this.handleCreateMarkdown,onOpen:this.handleOpenMarkdown,onDelete:this.handleDeleteMarkdown}):u.jsx(pr,{isEditing:r,onDoubleClick:this.handleContainerDoubleClick,children:u.jsx(g.Suspense,{fallback:u.jsx(mt,{}),children:u.jsx(zl,{ref:o=>{this.markdownEditor=o},isEditing:r,content:a??Se.DEFAULT_CONTENT,onEditorInitialized:this.handleEditorInitialized})})})})}}vt(wn,"defaultProps",{panelState:null});vt(wn,"COMPONENT","MarkdownPanel");var Wl=(i,e)=>{var{localDashboardId:t}=e;return{closedPanels:aa(i,t)}},ct=Ve(Wl,null,null,{forwardRef:!0})(wn);function fr(i){var{onClick:e}=i,t=g.useRef(null),n=g.useCallback(r=>{var s;(s=t.current)===null||s===void 0||s.blur(),e(r)},[e]);return u.jsxs(j,{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(se,{icon:Zi,transform:"shrink-1",className:"mr-1"}),"Reload"]})]})}function ei(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function ti(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ei(Object(t),!0).forEach(function(n){Wt(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):ei(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function Wt(i,e,t){return(e=ql(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function ql(i){var e=Xl(i,"string");return typeof e=="symbol"?e:e+""}function Xl(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class qt extends g.Component{constructor(e){super(e),Wt(this,"irisGridRef",void 0),this.irisGridRef=J.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:r}=this.state;r&&(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(Ye,ti(ti({ref:this.irisGridRef,onStateChange:this.handleGridStateChange,onPanelStateUpdate:this.handlePanelStateUpdate},this.props),{},{children:u.jsx(fr,{onClick:this.handleReload})}))}}Wt(qt,"defaultProps",{panelState:null});Wt(qt,"COMPONENT","PandasPanel");function ni(i,e,t,n,r,s,a){try{var l=i[s](a),o=l.value}catch(d){return void t(d)}l.done?e(o):Promise.resolve(o).then(n,r)}function ii(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var s=i.apply(e,t);function a(o){ni(s,n,r,a,l,"next",o)}function l(o){ni(s,n,r,a,l,"throw",o)}a(void 0)})}}function ri(i,e,t){return(e=Zl(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Zl(i){var e=Yl(i,"string");return typeof e=="symbol"?e:e+""}function Yl(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class Ql{constructor(e){ri(this,"items",void 0),ri(this,"onUpdateCallback",void 0),this.items=e}setSearch(e){}setExpanded(e,t){if(e.charAt(e.length-1)==="/")for(var n=0;n<this.items.length;n+=1){var r=this.items[n];Ln(r)&&("".concat(r.filename,"/")===e||r.filename===e)&&(r.isExpanded=t)}return Promise.resolve()}collapseAll(){for(var e=0;e<this.items.length;e+=1){var t=this.items[e];Ln(t)&&(t.isExpanded=!1)}return Promise.resolve()}getViewportData(){return Promise.resolve({items:this.items,offset:0})}getSnapshot(e){return ii(function*(){throw new Error("Method not implemented.")})()}setViewport(e){var t=this;return ii(function*(){var n,r=yield t.getViewportData();(n=t.onUpdateCallback)===null||n===void 0||n.call(t,r)})()}setFilters(e){}setSorts(e){}setReversed(e){}close(){}onUpdate(e){return this.onUpdateCallback=e,jest.fn()}get size(){return this.items.length}}function ai(i,e,t,n,r,s,a){try{var l=i[s](a),o=l.value}catch(d){return void t(d)}l.done?e(o):Promise.resolve(o).then(n,r)}function lt(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var s=i.apply(e,t);function a(o){ai(s,n,r,a,l,"next",o)}function l(o){ai(s,n,r,a,l,"throw",o)}a(void 0)})}}function Jl(i,e,t){return(e=eo(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function eo(i){var e=to(i,"string");return typeof e=="symbol"?e:e+""}function to(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class no{constructor(e){Jl(this,"items",void 0),this.items=e}getTable(){var e=this;return lt(function*(){return new Ql(e.items)})()}saveFile(e){throw new Error("Method not implemented.")}loadFile(e){throw new Error("Method not implemented.")}copyFile(e,t){return lt(function*(){throw new Error("Method not implemented.")})()}deleteFile(e){var t=this;return lt(function*(){t.items=t.items.filter(n=>n.filename!==e)})()}moveFile(e,t){var n=this;return lt(function*(){for(var r=0;r<n.items.length;r+=1)if(n.items[r].filename===e){n.items[r].filename=t,n.items[r].basename=sa.getBaseName(t),n.items[r].id=t;break}})()}info(e){var t=this;return lt(function*(){var n=t.items.filter(s=>s.filename===e);if(n.length===0)throw new la;if(n.length>1)throw new Error("More than one matching file found");var r=n[0];return{filename:r.filename,basename:r.basename,id:r.filename,type:r.type}})()}createDirectory(e){throw new Error("Method not implemented.")}}var io=et,ro=et;function si(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function At(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?si(Object(t),!0).forEach(function(n){ao(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):si(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function ao(i,e,t){return(e=so(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function so(i){var e=lo(i,"string");return typeof e=="symbol"?e:e+""}function lo(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}function li(i,e,t,n,r,s,a){try{var l=i[s](a),o=l.value}catch(d){return void t(d)}l.done?e(o):Promise.resolve(o).then(n,r)}function mr(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var s=i.apply(e,t);function a(o){li(s,n,r,a,l,"next",o)}function l(o){li(s,n,r,a,l,"throw",o)}a(void 0)})}}function oo(i,e,t,n){return an.apply(this,arguments)}function an(){return an=mr(function*(i,e,t,n){var r={},s="",a={};if(ze(e)&&(r=e.settings,s=e.table,a=e.tableSettings),n!=null&&(n.tableSettings!=null&&(a=n.tableSettings),n.table!=null&&(s=n.table),n.settings!=null&&(r=At(At({},r),n.settings))),s!=null&&s!==""){var l=yield t();return new V(i).applyTableSettings(l,a,Vi(Wa.getState())),Xe.makeModelFromSettings(i,r,l)}var o=yield t();return Xe.makeModel(i,r,o)}),an.apply(this,arguments)}var En=g.forwardRef((i,e)=>{var t=or(i)?i.panelState:void 0,{fetch:n,metadata:r,localDashboardId:s}=i;N(r);var[a,l]=hs(r),o=g.useCallback(mr(function*(){if(l!=null)throw l;return a==null?new Promise(()=>{}):oo(a,r,n,t)}),[a,l,r,n,t]);return u.jsx(Et,At(At({ref:e},i),{},{metadata:r,localDashboardId:s,makeModel:o}))});En.displayName="ChartPanelPlugin";function oi(i,e,t,n,r,s,a){try{var l=i[s](a),o=l.value}catch(d){return void t(d)}l.done?e(o):Promise.resolve(o).then(n,r)}function uo(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var s=i.apply(e,t);function a(o){oi(s,n,r,a,l,"next",o)}function l(o){oi(s,n,r,a,l,"throw",o)}a(void 0)})}}function gr(i){var e=Ht(),[t,n]=g.useState(),{fetch:r}=i;return g.useEffect(()=>{var s=!1;function a(){return l.apply(this,arguments)}function l(){return l=uo(function*(){var o=yield r(),d=yield Xe.makeModel(e,void 0,o);s||n(d)}),l.apply(this,arguments)}return a(),()=>{s=!0}},[e,r]),t?u.jsx(Qi,{model:t}):null}var ho={name:"ChartPanel",title:"Chart",type:Ne.WIDGET_PLUGIN,component:gr,panelComponent:En,supportedTypes:"Figure",icon:qa};function di(i,e,t,n,r,s,a){try{var l=i[s](a),o=l.value}catch(d){return void t(d)}l.done?e(o):Promise.resolve(o).then(n,r)}function co(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var s=i.apply(e,t);function a(o){di(s,n,r,a,l,"next",o)}function l(o){di(s,n,r,a,l,"throw",o)}a(void 0)})}}function br(i){Pt(i);var{id:e,layout:t}=i,n=g.useCallback(r=>{var{metadata:s,panelId:a=oe(),table:l}=r,{settings:o}=s,d=function(){var v=co(function*(){return l});return function(){return v.apply(this,arguments)}}(),h=Q.titleFromSettings(o),c={type:"react-component",component:Et.COMPONENT,props:{localDashboardId:e,id:a,metadata:s,fetch:d},title:h,id:a},{root:p}=t;E.openComponent({root:p,config:c})},[e,t]);return _e(t.eventHub,B.CREATE_CHART,n),null}var po={name:"ChartBuilderPlugin",type:Ne.DASHBOARD_PLUGIN,component:br},ot=H.module("FilterPlugin");function Cr(i){Pt(i);var{id:e,layout:t,registerComponent:n}=i,r=Zr(),[s]=g.useState(()=>new Map),[a]=g.useState(()=>new Map),[l]=g.useState(()=>new Map),o=g.useCallback(()=>{var f=Array.from(s.values()).flat().sort((S,y)=>{var w=ge.toLower(S.name),D=ge.toLower(y.name);if(w!==D)return w>D?1:-1;var M=ge.toLower(S.type),T=ge.toLower(y.type);return M!==T?M>T?1:-1:0}).reduce((S,y)=>((S.length===0||ge.toLower(S[S.length-1].name)!==ge.toLower(y.name)||ge.toLower(S[S.length-1].type)!==ge.toLower(y.type))&&S.push(y),S),[]),C=Array.from(a.values()).flat().sort((S,y)=>S.timestamp-y.timestamp),P=new Map(l);ot.debug("sendUpdate",{columns:f,filters:C,tableMap:P}),r(oa(e,{columns:f,filters:C,tableMap:P}))},[r,e,s,a,l]),d=g.useCallback((f,C)=>{ot.debug2("handleColumnsChanged",f,C),C==null?s.delete(f):s.set(f,[].concat(C)),o()},[s,o]),h=g.useCallback((f,C)=>{ot.debug2("handleFiltersChanged",f,C),C==null?a.delete(f):a.set(f,[].concat(C??[])),o()},[a,o]),c=g.useCallback((f,C)=>{ot.debug2("handleTableChanged",f,C),C==null?l.delete(f):l.set(f,C),o()},[l,o]),p=g.useCallback(f=>{ot.debug2("handlePanelUnmount",f);var C=E.getIdFromPanel(f);C!=null&&(s.delete(C),l.delete(C),a.delete(C)),o()},[s,a,l,o]),v=g.useCallback(f=>{var{title:C="DropdownFilter",metadata:P={},panelState:S=null,id:y=oe(),focusElement:w=E.DEFAULT_FOCUS_SELECTOR,createNewStack:D=!1,dragEvent:M=null}=f,T={type:"react-component",component:Le.COMPONENT,props:{id:y,metadata:P,panelState:S,localDashboardId:e},title:C,id:y},{root:F}=t;E.openComponent({root:F,config:T,focusElement:w,createNewStack:D,dragEvent:M})},[t,e]),m=g.useCallback(f=>{var{title:C="InputFilter",metadata:P={},panelState:S=null,id:y=oe(),focusElement:w=E.DEFAULT_FOCUS_SELECTOR,createNewStack:D=!1,dragEvent:M=void 0}=f,T={type:"react-component",component:We.COMPONENT,props:{id:y,metadata:P,panelState:S,localDashboardId:e},title:C,id:y},{root:F}=t;E.openComponent({root:F,config:T,focusElement:w,createNewStack:D,dragEvent:M})},[t,e]),b=g.useCallback(f=>{var{title:C="FilterSets",metadata:P={},panelState:S=null,id:y=oe(),focusElement:w=E.DEFAULT_FOCUS_SELECTOR,createNewStack:D=!1,dragEvent:M=null}=f,T={type:"react-component",component:xt.COMPONENT,props:{id:y,metadata:P,panelState:S,localDashboardId:e},title:C,id:y},{root:F}=t;E.openComponent({root:F,config:T,focusElement:w,createNewStack:D,dragEvent:M})},[t,e]);return g.useEffect(function(){var C=[n(Le.COMPONENT,Le),n(We.COMPONENT,We),n(xt.COMPONENT,xt)];return()=>{C.forEach(P=>P())}},[n]),Ws(t.eventHub,d),Xs(t.eventHub,h),qs(t.eventHub,c),_e(t.eventHub,de.OPEN_DROPDOWN,v),_e(t.eventHub,de.OPEN_INPUT,m),_e(t.eventHub,de.OPEN_FILTER_SET_MANAGER,b),_e(t.eventHub,ne.UNMOUNT,p),null}var vo={name:"FilterPlugin",type:Ne.DASHBOARD_PLUGIN,component:Cr},fo=H.module("@deephaven/app-utils/useTablePlugin");function Sr(){var i=Gi(),e=g.useCallback(t=>{var n=i.get(t);if(n!=null){if(da(n))return n.component;if(ua(n))return n.TablePlugin}var r="Unable to find table plugin ".concat(t,".");throw fo.error(r),new Error(r)},[i]);return e}function ui(i,e,t,n,r,s,a){try{var l=i[s](a),o=l.value}catch(d){return void t(d)}l.done?e(o):Promise.resolve(o).then(n,r)}function mo(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var s=i.apply(e,t);function a(o){ui(s,n,r,a,l,"next",o)}function l(o){ui(s,n,r,a,l,"throw",o)}a(void 0)})}}function yr(i,e,t){var n=Ht(),r=Sr(),s=g.useMemo(()=>({loadPlugin:r,localDashboardId:e,makeModel:function(){var a=mo(function*(){var o=yield i();return Ji.makeModel(n,o)});function l(){return a.apply(this,arguments)}return l}(),metadata:t}),[n,i,e,r,t]);return s}function hi(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function ci(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?hi(Object(t),!0).forEach(function(n){go(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):hi(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function go(i,e,t){return(e=bo(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function bo(i){var e=Co(i,"string");return typeof e=="symbol"?e:e+""}function Co(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var Fn=g.forwardRef((i,e)=>{var{localDashboardId:t,fetch:n,metadata:r}=i,s=yr(n,t,r);return u.jsx(Ye,ci(ci({ref:e},i),s))});Fn.displayName="GridPanelPlugin";function pi(i,e,t,n,r,s,a){try{var l=i[s](a),o=l.value}catch(d){return void t(d)}l.done?e(o):Promise.resolve(o).then(n,r)}function Jt(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var s=i.apply(e,t);function a(o){pi(s,n,r,a,l,"next",o)}function l(o){pi(s,n,r,a,l,"throw",o)}a(void 0)})}}function Pr(i){var e=Ht(),[t,n]=g.useState(),[r,s]=g.useState(),[a,l]=g.useState(!0),o=g.useCallback(Jt(function*(){var c=yield i();return Ji.makeModel(e,c)}),[e,i]),d=g.useCallback(Jt(function*(){l(!0),s(void 0);try{var c=yield o();n(c),l(!1)}catch(p){s(p),l(!1)}}),[o]);g.useEffect(()=>{var c=!1;function p(){return v.apply(this,arguments)}function v(){return v=Jt(function*(){l(!0),s(void 0);try{var m=yield o();c||(n(m),l(!1))}catch(b){c||(s(b),l(!1))}}),v.apply(this,arguments)}return p(),()=>{c=!0}},[o]),g.useEffect(function(){if(!t)return;function p(){s(new Error("Table disconnected")),n(void 0),l(!1)}return t.addEventListener(x.EVENT.DISCONNECT,p),()=>{t.removeEventListener(x.EVENT.DISCONNECT,p)}},[t]);var h=g.useMemo(()=>{if(a)return{reload:d,status:"loading"};if(r!=null)return{error:r,reload:d,status:"error"};if(t!=null)return{model:t,reload:d,status:"success"};throw new Error("Invalid state")},[r,a,t,d]);return h}function wr(i,e){var{eventHub:t}=nr(),n=ha(),r=ca();g.useEffect(function(){r!=null&&_t(t,r,i)},[t,r,i]),g.useEffect(function(){e==null||r==null||Rt(t,r,e)},[t,r,e]),g.useEffect(function(){if(r!=null)return()=>{_t(t,r,null),Rt(t,r,null)}},[t,r]);var s=g.useCallback(o=>St(o,n),[n]),a=pa(s),l=g.useMemo(()=>V.getInputFiltersForColumns(i,a.filter(o=>{var{value:d,excludePanelIds:h}=o;return d!=null&&(h==null||r!=null&&!h.includes(r))})),[i,r,a]);return l}function vi(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function jt(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?vi(Object(t),!0).forEach(function(n){So(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):vi(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function So(i,e,t){return(e=yo(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function yo(i){var e=Po(i,"string");return typeof e=="symbol"?e:e+""}function Po(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}function Er(i){var{fetch:e}=i,t=Yr(Gt),{eventHub:n}=nr(),r=Pr(e),s=Ht(),a=g.useMemo(()=>new V(s),[s]),[l,o]=il(void 0,{version:1,type:"GridWidgetPlugin"}),d=g.useRef(l),h=g.useMemo(()=>{if(!(r.status!=="success"||d.current===void 0))return jt(jt({},a.hydrateIrisGridState(r.model,d.current)),V.hydrateGridState(r.model,d.current))},[r,a]),c=g.useMemo(()=>nn.makeMemoizedCombinedGridStateDehydrator(),[]),p=g.useCallback((C,P)=>{if(!(r.status!=="success"||C==null||P==null)){var S=c(r.model,C,P);o(S)}},[r,o,c]),v=wr(r.status==="success"?r.model.columns:$,r.status==="success"&&Re(r.model)?r.model.table:void 0),m=g.useRef(null),b=g.useCallback(()=>{m.current!=null&&m.current.clearAllFilters()},[]);if(_e(n,de.CLEAR_ALL_FILTERS,b),r.status==="loading")return u.jsx(mt,{isLoading:!0});if(r.status==="error")return u.jsx(mt,{errorMessage:Hi(r.error),isLoading:!1});var{model:f}=r;return u.jsx(pn,jt(jt({ref:m,model:f,settings:t,onStateChange:p},h),{},{inputFilters:v}))}var wo={name:"IrisGridPanel",title:"Table",type:Ne.WIDGET_PLUGIN,component:Er,panelComponent:Fn,supportedTypes:["Table","TreeTable","HierarchicalTable","PartitionedTable"],icon:Xa};function fi(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function Me(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?fi(Object(t),!0).forEach(function(n){Fr(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):fi(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function Fr(i,e,t){return(e=Eo(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Eo(i){var e=Fo(i,"string");return typeof e=="symbol"?e:e+""}function Fo(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}function Tr(i){var e=i;return typeof e.getCoordinateForColumn=="function"}function mi(i){var e=i;return Tr(i)&&typeof e.setFilterMap=="function"&&typeof e.unsetFilterValue=="function"}function gi(i){return i.description==null||!i.description.startsWith("Preview of type: ")}var dt=H.module("LinkerUtils");class be{static getLinkType(e,t,n){var r;if((e==null?void 0:e.panelId)==null||(t==null?void 0:t.panelId)==null||e.panelId===t.panelId||n!=null&&n!==e.panelId&&n!==t.panelId)return dt.debug2("Incompatible panel ids",e,t,n),"invalid";if(e.panelComponent==null||t.panelComponent==null)return dt.error("PanelComponent should not be null",e,t),"invalid";var s=(r=be.ALLOWED_LINKS.get(e.panelComponent))===null||r===void 0?void 0:r.includes(t.panelComponent);if(s===void 0||!s)return dt.debug2("Incompatible panel components",e,t),"invalid";var{columnType:a}=e,{columnType:l}=t,o=l===null||W.isCompatibleType(a,l);if(!o)return dt.debug2("Incompatible type",a,l),"invalid";switch(t.panelComponent){case E.getComponentName(Et):case"@deephaven/plotly-express":return"chartLink";case E.getComponentName(Ye):return"tableLink";case E.getComponentName(Le):return"filterSource"}return dt.debug2("Incompatible target panel component",t.panelComponent),"invalid"}static findColumn(e,t){var{columnName:n,columnType:r}=t;return e.find(s=>{var{name:a,type:l}=s;return a===n&&l===r})}static cloneLinksForPanel(e,t,n){var r=[];return e.forEach(s=>{var a;s.start.panelId===t&&s.type!=="filterSource"?r.push(Me(Me({},s),{},{id:oe(),start:Me(Me({},s.start),{},{panelId:n})})):((a=s.end)===null||a===void 0?void 0:a.panelId)===t&&r.push(Me(Me({},s),{},{id:oe(),end:Me(Me({},s.end),{},{panelId:n})}))}),r}}Fr(be,"ALLOWED_LINKS",new Map([[E.getComponentName(Ye),[E.getComponentName(Ye),E.getComponentName(Et),E.getComponentName(Le),"@deephaven/plotly-express"]]]));function Dr(i,e,t){return(e=To(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function To(i){var e=Do(i,"string");return typeof e=="symbol"?e:e+""}function Do(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var Mo=H.module("LinkerLink"),bi=.015,Ci=1.5,Mr=12,Or=12,Si=2,It=Math.sqrt((Or*.5)**2+Mr**2),yi=Math.asin(Or*.5/Mr),Pi=15,Oe=Math.PI*.5;class qe extends g.Component{static makeCirclePath(e,t,n){return"M ".concat(e," ").concat(t," m -").concat(n,",0 a ").concat(n,",").concat(n," 0 1,0 ").concat(n*2,",0 a ").concat(n,",").concat(n," 0 1,0 -").concat(n*2,",0 z")}static getLabelForLinkFilter(e,t){try{if(W.isNumberType(e)||W.isCharType(e))return as(t);if(W.isTextType(e))return ss(t);if(W.isDateType(e))return ls(t);if(W.isBooleanType(e)){if(t===ut.eq)return"is equal to";if(t===ut.notEq)return"is not equal to"}throw new Error("Unrecognized column type: ".concat(e))}catch(n){return Mo.warn(n),""}}constructor(e){super(e),Dr(this,"getOperators",k((t,n)=>{var{onOperatorChanged:r}=this.props,s=W.getFilterTypes(n);return W.isBooleanType(n)&&(s=[ut.eq,ut.notEq]),s.flatMap((a,l)=>{if(a==="eqIgnoreCase"||a==="notEqIgnoreCase")return[];var o="";return a==="startsWith"?o="a*":a==="endsWith"?o="*z":o=W.getFilterOperatorString(a),[{title:qe.getLabelForLinkFilter(n,a),icon:u.jsx("b",{children:o}),action:()=>r(t,a),order:l}]})})),this.handleClick=this.handleClick.bind(this),this.handleMouseEnter=this.handleMouseEnter.bind(this),this.handleMouseLeave=this.handleMouseLeave.bind(this),this.handleDelete=this.handleDelete.bind(this),this.getDropdownActions=this.getDropdownActions.bind(this),this.state={isHovering:void 0}}handleClick(e){e.stopPropagation(),e.preventDefault();var{id:t,onClick:n,onDelete:r}=this.props;e.altKey?r(t):n(t)}handleMouseEnter(){this.setState({isHovering:!0})}handleMouseLeave(){this.setState({isHovering:!1})}handleDelete(){var{id:e,onDelete:t}=this.props;t(e)}getDropdownActions(){var{id:e,startColumnType:t}=this.props;return t!=null?this.getOperators(e,t):[]}render(){var{className:e,operator:t,isSelected:n,x1:r,y1:s,x2:a,y2:l,id:o,startColumnType:d,type:h}=this.props,{isHovering:c}=this.state,p=Math.sqrt((r-a)**2+(s-l)**2),v=Math.atan2(l-s,a-r),m=Math.sin(v),b=Math.cos(v)+2,f=window.innerWidth,C=window.innerHeight,P=0,S=0,y=Math.max(P,Math.min(r+(a-r)/2+m*(p*bi)**Ci,f)),w=Math.max(S,Math.min(s+(l-s)/2+b*(p*bi)**Ci,C)),D="M ".concat(r," ").concat(s," Q ").concat(y," ").concat(w," ").concat(a," ").concat(l),M="M ".concat(P," ").concat(S," L ").concat(P," ").concat(C," L ").concat(f," ").concat(C," L ").concat(f," ").concat(S,` z
|
|
6
|
+
This note can be edited using **markdown** for styling.`);Pn(Se,"getClosedMarkdowns",k(i=>i.filter(e=>e.component==="MarkdownPanel"&&e.props.panelState.content!==""&&e.props.panelState.content!==null).reverse()));function vt(i,e,t){return(e=Bl(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Bl(i){var e=Kl(i,"string");return typeof e=="symbol"?e:e+""}function Kl(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var zl=g.lazy(()=>os(()=>import("./MarkdownEditor-DMcn_pYw.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10]),import.meta.url)),Nt=H.module("MarkdownPanel");class wn extends g.Component{constructor(e){super(e),vt(this,"markdownEditor",void 0),vt(this,"editor",void 0),vt(this,"getClosedMarkdowns",k(Se.getClosedMarkdowns)),this.handleContainerDoubleClick=this.handleContainerDoubleClick.bind(this),this.handleCreateMarkdown=this.handleCreateMarkdown.bind(this),this.handleDeleteMarkdown=this.handleDeleteMarkdown.bind(this),this.handleOpenMarkdown=this.handleOpenMarkdown.bind(this),this.handleEditorInitialized=this.handleEditorInitialized.bind(this),this.handleEditorBlur=this.handleEditorBlur.bind(this),this.handleEditorResize=this.handleEditorResize.bind(this);var{panelState:t}=e,n=null;t!=null&&t.content!=null&&(t.content!==""?{content:n}=t:n=Se.DEFAULT_CONTENT),this.state={isStartPageShown:n==null&&this.getClosedMarkdowns(e.closedPanels).length!==0,isEditing:!1,content:n,panelState:t},this.markdownEditor=null}setEditorPosition(e){N(this.markdownEditor);var{container:t}=this.markdownEditor;if(this.editor&&t!=null){var n,r,s=t.getBoundingClientRect().top,a=t.scrollTop,l=t.scrollHeight,o=(n=(r=this.editor.getModel())===null||r===void 0?void 0:r.getLineCount())!==null&&n!==void 0?n:0,d=Math.round((a+e-s)/l*o);d>o&&(d=o),this.editor.revealLine(d),this.editor.setPosition({lineNumber:d,column:1}),this.editor.focus()}}handleContainerDoubleClick(e){var{isEditing:t}=this.state,n=e.clientY;t||this.setState({isEditing:!0},()=>{this.setEditorPosition(n)})}handleEditorInitialized(e){Nt.debug("Markdown Editor Initialized..."),this.editor=e}handleCreateMarkdown(){Nt.debug("create markdown..."),this.setState({isStartPageShown:!1,content:"",isEditing:!0,panelState:{content:""}},()=>{this.editor!=null&&this.editor.focus!=null&&this.editor.focus()})}handleOpenMarkdown(e){Nt.debug("open markdown...",e);var{glContainer:t,glEventHub:n}=this.props,r=E.getComponentConfigFromContainer(t);n.emit(ne.REOPEN,e,r)}handleDeleteMarkdown(e){var{glEventHub:t}=this.props;t.emit(ne.DELETE,e)}handleEditorBlur(e){var t;Nt.debug("markdown content changed, saving...");var{isEditing:n}=this.state;if(!(!n||this.markdownEditor!=null&&this.markdownEditor.container!=null&&this.markdownEditor.container.contains(e.relatedTarget))){var r=(t=this.editor)===null||t===void 0?void 0:t.getValue();this.setState({content:r,isEditing:!1,panelState:{content:r}})}}handleEditorResize(){var{isEditing:e}=this.state;e&&this.editor&&this.editor.layout()}render(){var{glContainer:e,glEventHub:t,closedPanels:n}=this.props,{isEditing:r,isStartPageShown:s,content:a}=this.state,l=this.getClosedMarkdowns(n);return u.jsx(et,{glContainer:e,glEventHub:t,className:"markdown-panel",componentPanel:this,onResize:this.handleEditorResize,onBlur:this.handleEditorBlur,isClonable:!0,isRenamable:!0,children:s?u.jsx(vr,{closedMarkdowns:l,onCreate:this.handleCreateMarkdown,onOpen:this.handleOpenMarkdown,onDelete:this.handleDeleteMarkdown}):u.jsx(pr,{isEditing:r,onDoubleClick:this.handleContainerDoubleClick,children:u.jsx(g.Suspense,{fallback:u.jsx(mt,{}),children:u.jsx(zl,{ref:o=>{this.markdownEditor=o},isEditing:r,content:a??Se.DEFAULT_CONTENT,onEditorInitialized:this.handleEditorInitialized})})})})}}vt(wn,"defaultProps",{panelState:null});vt(wn,"COMPONENT","MarkdownPanel");var Wl=(i,e)=>{var{localDashboardId:t}=e;return{closedPanels:aa(i,t)}},ct=Ve(Wl,null,null,{forwardRef:!0})(wn);function fr(i){var{onClick:e}=i,t=g.useRef(null),n=g.useCallback(r=>{var s;(s=t.current)===null||s===void 0||s.blur(),e(r)},[e]);return u.jsxs(j,{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(se,{icon:Zi,transform:"shrink-1",className:"mr-1"}),"Reload"]})]})}function ei(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function ti(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ei(Object(t),!0).forEach(function(n){Wt(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):ei(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function Wt(i,e,t){return(e=ql(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function ql(i){var e=Xl(i,"string");return typeof e=="symbol"?e:e+""}function Xl(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class qt extends g.Component{constructor(e){super(e),Wt(this,"irisGridRef",void 0),this.irisGridRef=J.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:r}=this.state;r&&(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(Ye,ti(ti({ref:this.irisGridRef,onStateChange:this.handleGridStateChange,onPanelStateUpdate:this.handlePanelStateUpdate},this.props),{},{children:u.jsx(fr,{onClick:this.handleReload})}))}}Wt(qt,"defaultProps",{panelState:null});Wt(qt,"COMPONENT","PandasPanel");function ni(i,e,t,n,r,s,a){try{var l=i[s](a),o=l.value}catch(d){return void t(d)}l.done?e(o):Promise.resolve(o).then(n,r)}function ii(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var s=i.apply(e,t);function a(o){ni(s,n,r,a,l,"next",o)}function l(o){ni(s,n,r,a,l,"throw",o)}a(void 0)})}}function ri(i,e,t){return(e=Zl(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Zl(i){var e=Yl(i,"string");return typeof e=="symbol"?e:e+""}function Yl(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class Ql{constructor(e){ri(this,"items",void 0),ri(this,"onUpdateCallback",void 0),this.items=e}setSearch(e){}setExpanded(e,t){if(e.charAt(e.length-1)==="/")for(var n=0;n<this.items.length;n+=1){var r=this.items[n];Ln(r)&&("".concat(r.filename,"/")===e||r.filename===e)&&(r.isExpanded=t)}return Promise.resolve()}collapseAll(){for(var e=0;e<this.items.length;e+=1){var t=this.items[e];Ln(t)&&(t.isExpanded=!1)}return Promise.resolve()}getViewportData(){return Promise.resolve({items:this.items,offset:0})}getSnapshot(e){return ii(function*(){throw new Error("Method not implemented.")})()}setViewport(e){var t=this;return ii(function*(){var n,r=yield t.getViewportData();(n=t.onUpdateCallback)===null||n===void 0||n.call(t,r)})()}setFilters(e){}setSorts(e){}setReversed(e){}close(){}onUpdate(e){return this.onUpdateCallback=e,jest.fn()}get size(){return this.items.length}}function ai(i,e,t,n,r,s,a){try{var l=i[s](a),o=l.value}catch(d){return void t(d)}l.done?e(o):Promise.resolve(o).then(n,r)}function lt(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var s=i.apply(e,t);function a(o){ai(s,n,r,a,l,"next",o)}function l(o){ai(s,n,r,a,l,"throw",o)}a(void 0)})}}function Jl(i,e,t){return(e=eo(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function eo(i){var e=to(i,"string");return typeof e=="symbol"?e:e+""}function to(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class no{constructor(e){Jl(this,"items",void 0),this.items=e}getTable(){var e=this;return lt(function*(){return new Ql(e.items)})()}saveFile(e){throw new Error("Method not implemented.")}loadFile(e){throw new Error("Method not implemented.")}copyFile(e,t){return lt(function*(){throw new Error("Method not implemented.")})()}deleteFile(e){var t=this;return lt(function*(){t.items=t.items.filter(n=>n.filename!==e)})()}moveFile(e,t){var n=this;return lt(function*(){for(var r=0;r<n.items.length;r+=1)if(n.items[r].filename===e){n.items[r].filename=t,n.items[r].basename=sa.getBaseName(t),n.items[r].id=t;break}})()}info(e){var t=this;return lt(function*(){var n=t.items.filter(s=>s.filename===e);if(n.length===0)throw new la;if(n.length>1)throw new Error("More than one matching file found");var r=n[0];return{filename:r.filename,basename:r.basename,id:r.filename,type:r.type}})()}createDirectory(e){throw new Error("Method not implemented.")}}var io=et,ro=et;function si(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function At(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?si(Object(t),!0).forEach(function(n){ao(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):si(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function ao(i,e,t){return(e=so(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function so(i){var e=lo(i,"string");return typeof e=="symbol"?e:e+""}function lo(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}function li(i,e,t,n,r,s,a){try{var l=i[s](a),o=l.value}catch(d){return void t(d)}l.done?e(o):Promise.resolve(o).then(n,r)}function mr(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var s=i.apply(e,t);function a(o){li(s,n,r,a,l,"next",o)}function l(o){li(s,n,r,a,l,"throw",o)}a(void 0)})}}function oo(i,e,t,n){return an.apply(this,arguments)}function an(){return an=mr(function*(i,e,t,n){var r={},s="",a={};if(ze(e)&&(r=e.settings,s=e.table,a=e.tableSettings),n!=null&&(n.tableSettings!=null&&(a=n.tableSettings),n.table!=null&&(s=n.table),n.settings!=null&&(r=At(At({},r),n.settings))),s!=null&&s!==""){var l=yield t();return new V(i).applyTableSettings(l,a,Vi(Wa.getState())),Xe.makeModelFromSettings(i,r,l)}var o=yield t();return Xe.makeModel(i,r,o)}),an.apply(this,arguments)}var En=g.forwardRef((i,e)=>{var t=or(i)?i.panelState:void 0,{fetch:n,metadata:r,localDashboardId:s}=i;N(r);var[a,l]=hs(r),o=g.useCallback(mr(function*(){if(l!=null)throw l;return a==null?new Promise(()=>{}):oo(a,r,n,t)}),[a,l,r,n,t]);return u.jsx(Et,At(At({ref:e},i),{},{metadata:r,localDashboardId:s,makeModel:o}))});En.displayName="ChartPanelPlugin";function oi(i,e,t,n,r,s,a){try{var l=i[s](a),o=l.value}catch(d){return void t(d)}l.done?e(o):Promise.resolve(o).then(n,r)}function uo(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var s=i.apply(e,t);function a(o){oi(s,n,r,a,l,"next",o)}function l(o){oi(s,n,r,a,l,"throw",o)}a(void 0)})}}function gr(i){var e=Ht(),[t,n]=g.useState(),{fetch:r}=i;return g.useEffect(()=>{var s=!1;function a(){return l.apply(this,arguments)}function l(){return l=uo(function*(){var o=yield r(),d=yield Xe.makeModel(e,void 0,o);s||n(d)}),l.apply(this,arguments)}return a(),()=>{s=!0}},[e,r]),t?u.jsx(Qi,{model:t}):null}var ho={name:"ChartPanel",title:"Chart",type:Ne.WIDGET_PLUGIN,component:gr,panelComponent:En,supportedTypes:"Figure",icon:qa};function di(i,e,t,n,r,s,a){try{var l=i[s](a),o=l.value}catch(d){return void t(d)}l.done?e(o):Promise.resolve(o).then(n,r)}function co(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var s=i.apply(e,t);function a(o){di(s,n,r,a,l,"next",o)}function l(o){di(s,n,r,a,l,"throw",o)}a(void 0)})}}function br(i){Pt(i);var{id:e,layout:t}=i,n=g.useCallback(r=>{var{metadata:s,panelId:a=oe(),table:l}=r,{settings:o}=s,d=function(){var v=co(function*(){return l});return function(){return v.apply(this,arguments)}}(),h=Q.titleFromSettings(o),c={type:"react-component",component:Et.COMPONENT,props:{localDashboardId:e,id:a,metadata:s,fetch:d},title:h,id:a},{root:p}=t;E.openComponent({root:p,config:c})},[e,t]);return _e(t.eventHub,B.CREATE_CHART,n),null}var po={name:"ChartBuilderPlugin",type:Ne.DASHBOARD_PLUGIN,component:br},ot=H.module("FilterPlugin");function Cr(i){Pt(i);var{id:e,layout:t,registerComponent:n}=i,r=Zr(),[s]=g.useState(()=>new Map),[a]=g.useState(()=>new Map),[l]=g.useState(()=>new Map),o=g.useCallback(()=>{var f=Array.from(s.values()).flat().sort((S,y)=>{var w=ge.toLower(S.name),D=ge.toLower(y.name);if(w!==D)return w>D?1:-1;var M=ge.toLower(S.type),T=ge.toLower(y.type);return M!==T?M>T?1:-1:0}).reduce((S,y)=>((S.length===0||ge.toLower(S[S.length-1].name)!==ge.toLower(y.name)||ge.toLower(S[S.length-1].type)!==ge.toLower(y.type))&&S.push(y),S),[]),C=Array.from(a.values()).flat().sort((S,y)=>S.timestamp-y.timestamp),P=new Map(l);ot.debug("sendUpdate",{columns:f,filters:C,tableMap:P}),r(oa(e,{columns:f,filters:C,tableMap:P}))},[r,e,s,a,l]),d=g.useCallback((f,C)=>{ot.debug2("handleColumnsChanged",f,C),C==null?s.delete(f):s.set(f,[].concat(C)),o()},[s,o]),h=g.useCallback((f,C)=>{ot.debug2("handleFiltersChanged",f,C),C==null?a.delete(f):a.set(f,[].concat(C??[])),o()},[a,o]),c=g.useCallback((f,C)=>{ot.debug2("handleTableChanged",f,C),C==null?l.delete(f):l.set(f,C),o()},[l,o]),p=g.useCallback(f=>{ot.debug2("handlePanelUnmount",f);var C=E.getIdFromPanel(f);C!=null&&(s.delete(C),l.delete(C),a.delete(C)),o()},[s,a,l,o]),v=g.useCallback(f=>{var{title:C="DropdownFilter",metadata:P={},panelState:S=null,id:y=oe(),focusElement:w=E.DEFAULT_FOCUS_SELECTOR,createNewStack:D=!1,dragEvent:M=null}=f,T={type:"react-component",component:Le.COMPONENT,props:{id:y,metadata:P,panelState:S,localDashboardId:e},title:C,id:y},{root:F}=t;E.openComponent({root:F,config:T,focusElement:w,createNewStack:D,dragEvent:M})},[t,e]),m=g.useCallback(f=>{var{title:C="InputFilter",metadata:P={},panelState:S=null,id:y=oe(),focusElement:w=E.DEFAULT_FOCUS_SELECTOR,createNewStack:D=!1,dragEvent:M=void 0}=f,T={type:"react-component",component:We.COMPONENT,props:{id:y,metadata:P,panelState:S,localDashboardId:e},title:C,id:y},{root:F}=t;E.openComponent({root:F,config:T,focusElement:w,createNewStack:D,dragEvent:M})},[t,e]),b=g.useCallback(f=>{var{title:C="FilterSets",metadata:P={},panelState:S=null,id:y=oe(),focusElement:w=E.DEFAULT_FOCUS_SELECTOR,createNewStack:D=!1,dragEvent:M=null}=f,T={type:"react-component",component:xt.COMPONENT,props:{id:y,metadata:P,panelState:S,localDashboardId:e},title:C,id:y},{root:F}=t;E.openComponent({root:F,config:T,focusElement:w,createNewStack:D,dragEvent:M})},[t,e]);return g.useEffect(function(){var C=[n(Le.COMPONENT,Le),n(We.COMPONENT,We),n(xt.COMPONENT,xt)];return()=>{C.forEach(P=>P())}},[n]),Ws(t.eventHub,d),Xs(t.eventHub,h),qs(t.eventHub,c),_e(t.eventHub,de.OPEN_DROPDOWN,v),_e(t.eventHub,de.OPEN_INPUT,m),_e(t.eventHub,de.OPEN_FILTER_SET_MANAGER,b),_e(t.eventHub,ne.UNMOUNT,p),null}var vo={name:"FilterPlugin",type:Ne.DASHBOARD_PLUGIN,component:Cr},fo=H.module("@deephaven/app-utils/useTablePlugin");function Sr(){var i=Gi(),e=g.useCallback(t=>{var n=i.get(t);if(n!=null){if(da(n))return n.component;if(ua(n))return n.TablePlugin}var r="Unable to find table plugin ".concat(t,".");throw fo.error(r),new Error(r)},[i]);return e}function ui(i,e,t,n,r,s,a){try{var l=i[s](a),o=l.value}catch(d){return void t(d)}l.done?e(o):Promise.resolve(o).then(n,r)}function mo(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var s=i.apply(e,t);function a(o){ui(s,n,r,a,l,"next",o)}function l(o){ui(s,n,r,a,l,"throw",o)}a(void 0)})}}function yr(i,e,t){var n=Ht(),r=Sr(),s=g.useMemo(()=>({loadPlugin:r,localDashboardId:e,makeModel:function(){var a=mo(function*(){var o=yield i();return Ji.makeModel(n,o)});function l(){return a.apply(this,arguments)}return l}(),metadata:t}),[n,i,e,r,t]);return s}function hi(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function ci(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?hi(Object(t),!0).forEach(function(n){go(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):hi(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function go(i,e,t){return(e=bo(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function bo(i){var e=Co(i,"string");return typeof e=="symbol"?e:e+""}function Co(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var Fn=g.forwardRef((i,e)=>{var{localDashboardId:t,fetch:n,metadata:r}=i,s=yr(n,t,r);return u.jsx(Ye,ci(ci({ref:e},i),s))});Fn.displayName="GridPanelPlugin";function pi(i,e,t,n,r,s,a){try{var l=i[s](a),o=l.value}catch(d){return void t(d)}l.done?e(o):Promise.resolve(o).then(n,r)}function Jt(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var s=i.apply(e,t);function a(o){pi(s,n,r,a,l,"next",o)}function l(o){pi(s,n,r,a,l,"throw",o)}a(void 0)})}}function Pr(i){var e=Ht(),[t,n]=g.useState(),[r,s]=g.useState(),[a,l]=g.useState(!0),o=g.useCallback(Jt(function*(){var c=yield i();return Ji.makeModel(e,c)}),[e,i]),d=g.useCallback(Jt(function*(){l(!0),s(void 0);try{var c=yield o();n(c),l(!1)}catch(p){s(p),l(!1)}}),[o]);g.useEffect(()=>{var c=!1;function p(){return v.apply(this,arguments)}function v(){return v=Jt(function*(){l(!0),s(void 0);try{var m=yield o();c||(n(m),l(!1))}catch(b){c||(s(b),l(!1))}}),v.apply(this,arguments)}return p(),()=>{c=!0}},[o]),g.useEffect(function(){if(!t)return;function p(){s(new Error("Table disconnected")),n(void 0),l(!1)}return t.addEventListener(x.EVENT.DISCONNECT,p),()=>{t.removeEventListener(x.EVENT.DISCONNECT,p)}},[t]);var h=g.useMemo(()=>{if(a)return{reload:d,status:"loading"};if(r!=null)return{error:r,reload:d,status:"error"};if(t!=null)return{model:t,reload:d,status:"success"};throw new Error("Invalid state")},[r,a,t,d]);return h}function wr(i,e){var{eventHub:t}=nr(),n=ha(),r=ca();g.useEffect(function(){r!=null&&_t(t,r,i)},[t,r,i]),g.useEffect(function(){e==null||r==null||Rt(t,r,e)},[t,r,e]),g.useEffect(function(){if(r!=null)return()=>{_t(t,r,null),Rt(t,r,null)}},[t,r]);var s=g.useCallback(o=>St(o,n),[n]),a=pa(s),l=g.useMemo(()=>V.getInputFiltersForColumns(i,a.filter(o=>{var{value:d,excludePanelIds:h}=o;return d!=null&&(h==null||r!=null&&!h.includes(r))})),[i,r,a]);return l}function vi(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function jt(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?vi(Object(t),!0).forEach(function(n){So(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):vi(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function So(i,e,t){return(e=yo(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function yo(i){var e=Po(i,"string");return typeof e=="symbol"?e:e+""}function Po(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}function Er(i){var{fetch:e}=i,t=Yr(Gt),{eventHub:n}=nr(),r=Pr(e),s=Ht(),a=g.useMemo(()=>new V(s),[s]),[l,o]=il(void 0,{version:1,type:"GridWidgetPlugin"}),d=g.useRef(l),h=g.useMemo(()=>{if(!(r.status!=="success"||d.current===void 0))return jt(jt({},a.hydrateIrisGridState(r.model,d.current)),V.hydrateGridState(r.model,d.current))},[r,a]),c=g.useMemo(()=>nn.makeMemoizedCombinedGridStateDehydrator(),[]),p=g.useCallback((C,P)=>{if(!(r.status!=="success"||C==null||P==null)){var S=c(r.model,C,P);o(S)}},[r,o,c]),v=wr(r.status==="success"?r.model.columns:$,r.status==="success"&&Re(r.model)?r.model.table:void 0),m=g.useRef(null),b=g.useCallback(()=>{m.current!=null&&m.current.clearAllFilters()},[]);if(_e(n,de.CLEAR_ALL_FILTERS,b),r.status==="loading")return u.jsx(mt,{isLoading:!0});if(r.status==="error")return u.jsx(mt,{errorMessage:Hi(r.error),isLoading:!1});var{model:f}=r;return u.jsx(pn,jt(jt({ref:m,model:f,settings:t,onStateChange:p},h),{},{inputFilters:v}))}var wo={name:"IrisGridPanel",title:"Table",type:Ne.WIDGET_PLUGIN,component:Er,panelComponent:Fn,supportedTypes:["Table","TreeTable","HierarchicalTable","PartitionedTable"],icon:Xa};function fi(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function Me(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?fi(Object(t),!0).forEach(function(n){Fr(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):fi(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function Fr(i,e,t){return(e=Eo(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Eo(i){var e=Fo(i,"string");return typeof e=="symbol"?e:e+""}function Fo(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}function Tr(i){var e=i;return typeof e.getCoordinateForColumn=="function"}function mi(i){var e=i;return Tr(i)&&typeof e.setFilterMap=="function"&&typeof e.unsetFilterValue=="function"}function gi(i){return i.description==null||!i.description.startsWith("Preview of type: ")}var dt=H.module("LinkerUtils");class be{static getLinkType(e,t,n){var r;if((e==null?void 0:e.panelId)==null||(t==null?void 0:t.panelId)==null||e.panelId===t.panelId||n!=null&&n!==e.panelId&&n!==t.panelId)return dt.debug2("Incompatible panel ids",e,t,n),"invalid";if(e.panelComponent==null||t.panelComponent==null)return dt.error("PanelComponent should not be null",e,t),"invalid";var s=(r=be.ALLOWED_LINKS.get(e.panelComponent))===null||r===void 0?void 0:r.includes(t.panelComponent);if(s===void 0||!s)return dt.debug2("Incompatible panel components",e,t),"invalid";var{columnType:a}=e,{columnType:l}=t,o=l===null||W.isCompatibleType(a,l);if(!o)return dt.debug2("Incompatible type",a,l),"invalid";switch(t.panelComponent){case E.getComponentName(Et):case"@deephaven/plotly-express":return"chartLink";case E.getComponentName(Ye):return"tableLink";case E.getComponentName(Le):return"filterSource"}return dt.debug2("Incompatible target panel component",t.panelComponent),"invalid"}static findColumn(e,t){var{columnName:n,columnType:r}=t;return e.find(s=>{var{name:a,type:l}=s;return a===n&&l===r})}static cloneLinksForPanel(e,t,n){var r=[];return e.forEach(s=>{var a;s.start.panelId===t&&s.type!=="filterSource"?r.push(Me(Me({},s),{},{id:oe(),start:Me(Me({},s.start),{},{panelId:n})})):((a=s.end)===null||a===void 0?void 0:a.panelId)===t&&r.push(Me(Me({},s),{},{id:oe(),end:Me(Me({},s.end),{},{panelId:n})}))}),r}}Fr(be,"ALLOWED_LINKS",new Map([[E.getComponentName(Ye),[E.getComponentName(Ye),E.getComponentName(Et),E.getComponentName(Le),"@deephaven/plotly-express"]]]));function Dr(i,e,t){return(e=To(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function To(i){var e=Do(i,"string");return typeof e=="symbol"?e:e+""}function Do(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var Mo=H.module("LinkerLink"),bi=.015,Ci=1.5,Mr=12,Or=12,Si=2,It=Math.sqrt((Or*.5)**2+Mr**2),yi=Math.asin(Or*.5/Mr),Pi=15,Oe=Math.PI*.5;class qe extends g.Component{static makeCirclePath(e,t,n){return"M ".concat(e," ").concat(t," m -").concat(n,",0 a ").concat(n,",").concat(n," 0 1,0 ").concat(n*2,",0 a ").concat(n,",").concat(n," 0 1,0 -").concat(n*2,",0 z")}static getLabelForLinkFilter(e,t){try{if(W.isNumberType(e)||W.isCharType(e))return as(t);if(W.isTextType(e))return ss(t);if(W.isDateType(e))return ls(t);if(W.isBooleanType(e)){if(t===ut.eq)return"is equal to";if(t===ut.notEq)return"is not equal to"}throw new Error("Unrecognized column type: ".concat(e))}catch(n){return Mo.warn(n),""}}constructor(e){super(e),Dr(this,"getOperators",k((t,n)=>{var{onOperatorChanged:r}=this.props,s=W.getFilterTypes(n);return W.isBooleanType(n)&&(s=[ut.eq,ut.notEq]),s.flatMap((a,l)=>{if(a==="eqIgnoreCase"||a==="notEqIgnoreCase")return[];var o="";return a==="startsWith"?o="a*":a==="endsWith"?o="*z":o=W.getFilterOperatorString(a),[{title:qe.getLabelForLinkFilter(n,a),icon:u.jsx("b",{children:o}),action:()=>r(t,a),order:l}]})})),this.handleClick=this.handleClick.bind(this),this.handleMouseEnter=this.handleMouseEnter.bind(this),this.handleMouseLeave=this.handleMouseLeave.bind(this),this.handleDelete=this.handleDelete.bind(this),this.getDropdownActions=this.getDropdownActions.bind(this),this.state={isHovering:void 0}}handleClick(e){e.stopPropagation(),e.preventDefault();var{id:t,onClick:n,onDelete:r}=this.props;e.altKey?r(t):n(t)}handleMouseEnter(){this.setState({isHovering:!0})}handleMouseLeave(){this.setState({isHovering:!1})}handleDelete(){var{id:e,onDelete:t}=this.props;t(e)}getDropdownActions(){var{id:e,startColumnType:t}=this.props;return t!=null?this.getOperators(e,t):[]}render(){var{className:e,operator:t,isSelected:n,x1:r,y1:s,x2:a,y2:l,id:o,startColumnType:d,type:h}=this.props,{isHovering:c}=this.state,p=Math.sqrt((r-a)**2+(s-l)**2),v=Math.atan2(l-s,a-r),m=Math.sin(v),b=Math.cos(v)+2,f=window.innerWidth,C=window.innerHeight,P=0,S=0,y=Math.max(P,Math.min(r+(a-r)/2+m*(p*bi)**Ci,f)),w=Math.max(S,Math.min(s+(l-s)/2+b*(p*bi)**Ci,C)),D="M ".concat(r," ").concat(s," Q ").concat(y," ").concat(w," ").concat(a," ").concat(l),M="M ".concat(P," ").concat(S," L ").concat(P," ").concat(C," L ").concat(f," ").concat(C," L ").concat(f," ").concat(S,` z
|
|
7
7
|
`).concat(qe.makeCirclePath(r,s,Pi),`
|
|
8
8
|
`).concat(qe.makeCirclePath(a,l,Pi)),T="link-select-clip-".concat(o),F=Math.atan2(l-w,a-y),L=F-yi+Math.PI,A=F+yi+Math.PI,ee=a+Math.cos(F)*Si,Z=l+Math.sin(F)*Si,G=ee+Math.cos(L)*It,je=Z+Math.sin(L)*It,nt=ee+Math.cos(A)*It,it=Z+Math.sin(A)*It,rt="".concat(ee,",").concat(Z," ").concat(G,",").concat(je," ").concat(nt,",").concat(it),Ge=.25*r+.5*y+.25*a,He=.25*s+.5*w+.25*l,at=y-r+(a-y),st=w-s+(l-w),te=st/at,Xt=20,ue=Xt/Math.sqrt(1+te**2),fe=ue*te,ye=ue*-1,Pe=fe*-1;Number.isFinite(te)?te>0?(ue*=-1,fe*=-1,ye*=-1,Pe*=-1,ye-=50-10*(Math.abs(v)%Oe),Pe+=10*(Math.abs(v)%Oe),ue-=50-10*(Math.abs(v)%Oe),fe+=10*(Math.abs(v)%Oe)):te<0?(ye+=10*(Math.abs(v)%Oe),Pe+=10*(Math.abs(v)%Oe),ue+=10*(Math.abs(v)%Oe),fe+=10*(Math.abs(v)%Oe)):(ye=15,Pe=10,ue=-25,fe=10):(ye=10,Pe=5,ue=10,fe=-35);var Be="";t!==void 0&&(t==="startsWith"?Be="a*":t==="endsWith"?Be="*z":Be=W.getFilterOperatorString(t));var Zt=h!=="chartLink"&&h!=="filterSource";return u.jsxs(u.Fragment,{children:[u.jsxs("svg",{className:le(e,{hovering:c}),children:[u.jsx("clipPath",{id:T,children:u.jsx("path",{d:M,clipRule:"evenodd"})}),u.jsx("path",{className:"link-select",d:D,onClick:this.handleClick,onMouseEnter:this.handleMouseEnter,onMouseLeave:this.handleMouseLeave,clipPath:"url(#".concat(T,")"),"data-testid":"link-select"}),u.jsx("path",{className:"link-background",d:D}),u.jsx("path",{className:"link-foreground",d:D}),u.jsx("circle",{className:"link-dot",cx:r,cy:s,r:"5"}),u.jsx("polygon",{className:"link-triangle",points:rt})]}),d!=null&&n&&u.jsxs(u.Fragment,{children:[Zt&&u.jsx(j,{kind:"primary",className:"btn-fab btn-operator",style:{top:He+(te>=0?fe:Pe),left:Ge+(te>=0?ue:ye)},onClick:()=>{},icon:u.jsxs("div",{className:"fa-md fa-layers",children:[u.jsx("b",{children:Be}),u.jsx(se,{icon:Za,transform:"right-8 down-9 shrink-5"})]}),tooltip:"Change comparison operator",children:u.jsx(va,{actions:this.getDropdownActions,popperOptions:{placement:"bottom-start"}})}),u.jsx(j,{kind:"primary",className:"btn-fab btn-delete",style:{top:He+(te<0?fe:Pe),left:Ge+(te<0?ue:ye)},onClick:this.handleDelete,icon:cn,tooltip:"Delete"})]})]})}}Dr(qe,"defaultProps",{className:"",isSelected:!1,onClick(){},onDelete(){}});function wi(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function Ei(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?wi(Object(t),!0).forEach(function(n){Tn(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):wi(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function Tn(i,e,t){return(e=Oo(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Oo(i){var e=Lo(i,"string");return typeof e=="symbol"?e:e+""}function Lo(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var en=H.module("LinkerOverlayContent");class Lr extends g.Component{constructor(e){super(e),Tn(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=J.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){en.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:r}=e,s=t.getOpenedPanelById(n);if(s!=null){if(!Tr(s))throw new Error("Panel does not have getCoordinateForColumn method: ".concat(n));try{var a=s.getCoordinateForColumn(r);if(a!=null)return a}catch{en.error("Could not get coordinate for column",r,s)}}var l=t.getContainerByPanelId(n);if(l==null)throw new Error("Unable to find panel container for id: ".concat(n));return E.getTabPoint(l)}handleOperatorChanged(e,t){var{links:n,onLinksUpdated:r}=this.props,s=n.map(a=>a.id===e?Ei(Ei({},a),{},{operator:t}):a);r(s)}handleBlur(){this.setState({mode:"select"})}handleResize(){var{dialog:e}=this.state;if(e&&this.dialogRef.current){var t=this.dialogRef.current.getBoundingClientRect(),n=Ft(e.x,0,window.innerWidth-t.width),r=Ft(e.y,0,window.innerHeight-t.height);this.setState({dialog:{x:n,y:r}})}}handleMouseMove(e){var{offset:t,isDragging:n}=this.state;if(this.setState({mouse:{x:e.clientX,y:e.clientY}}),n&&this.dialogRef.current){var r=this.dialogRef.current.getBoundingClientRect(),s=Ft(window.innerWidth-(e.clientX+r.width+t.x),0,window.innerWidth-r.width),a=Ft(window.innerHeight-(e.clientY+r.height+t.y),0,window.innerHeight-r.height);this.setState({dialog:{x:s,y:a}})}}handleMouseDown(e){e.preventDefault();var t={x:0,y:0};if(this.dialogRef.current){var n=this.dialogRef.current.getBoundingClientRect();t.x=n.right-(n.width+e.clientX),t.y=n.bottom-(n.height+e.clientY)}this.setState({isDragging:!0,offset:t})}handleMouseUp(){this.setState({isDragging:!1})}handleKeyDown(e){if(e.key==="Alt")e.preventDefault(),this.setState({mode:"delete"});else if(e.key==="Delete"||e.key==="Backspace"){var{selectedIds:t,onLinkDeleted:n}=this.props;e.preventDefault(),t.forEach(r=>n(r))}}handleKeyUp(e){e.key==="Alt"&&(e.preventDefault(),this.setState({mode:"select"}))}handleEscapePressed(){var{onCancel:e}=this.props;e()}render(){var{disabled:e,links:t,selectedIds:n,messageText:r,onLinkSelected:s,onLinkDeleted:a,onAllLinksDeleted:l,onDone:o}=this.props,{mouse:d,dialog:h,isDragging:c,mode:p}=this.state,v=t.map(m=>{try{var b,f,{id:C,type:P,isReversed:S,start:y,end:w,operator:D}=m,M=y.columnType,[T,F]=this.getPointFromLinkPoint(y),L=(b=d==null?void 0:d.x)!==null&&b!==void 0?b:T,A=(f=d==null?void 0:d.y)!==null&&f!==void 0?f:F;if(w!=null&&([L,A]=this.getPointFromLinkPoint(w)),S!=null&&S){var[ee,Z]=[T,F];[T,F]=[L,A],[L,A]=[ee,Z]}var G=le("linker-link",{disabled:e},{"link-filter-source":P==="filterSource"},{"link-invalid":P==="invalid"},{interactive:m.end==null},{"link-is-selected":n.has(C)},{"danger-delete":p==="delete"});return{x1:T,y1:F,x2:L,y2:A,id:C,className:G,operator:D,startColumnType:M,type:P}}catch(je){return en.warn("Unable to get point for link",m,je),null}}).filter(m=>m!=null);return u.jsxs("div",{className:le("linker-overlay",{"danger-delete":p==="delete"}),children:[v.map(m=>{var{x1:b,y1:f,x2:C,y2:P,id:S,className:y,operator:w,startColumnType:D,type:M}=m;return u.jsx(qe,{className:y,id:S,x1:b,y1:f,x2:C,y2:P,onClick:s,onDelete:a,isSelected:n.has(S),operator:w,startColumnType:D,type:M,onOperatorChanged:this.handleOperatorChanged},S)}),u.jsxs("div",{className:le("linker-toast-dialog",{dragging:c}),ref:this.dialogRef,style:{bottom:h==null?void 0:h.y,right:h==null?void 0:h.x},"data-testid":"linker-toast-dialog",children:[u.jsx(j,{draggable:!0,kind:"inline",className:"btn-drag-handle",icon:Ya,onClick:()=>{},onMouseDown:this.handleMouseDown,children:!c&&u.jsx(fa,{children:"Drag to reposition"})}),u.jsx("div",{className:"toast-body",children:r}),u.jsxs("div",{className:"toast-footer",children:[u.jsx(j,{kind:"secondary",onClick:l,children:"Clear All"}),u.jsx(j,{kind:"primary",onClick:o,children:"Done"})]})]}),u.jsx(ji,{actions:[{action:this.handleEscapePressed,shortcut:ma.LINKER_CLOSE,isGlobal:!0}]})]})}}Tn(Lr,"defaultProps",{disabled:"false"});function Fi(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function Ti(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Fi(Object(t),!0).forEach(function(n){sn(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):Fi(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function sn(i,e,t){return(e=ko(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function ko(i){var e=No(i,"string");return typeof e=="symbol"?e:e+""}function No(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var z=H.module("Linker"),jo=(i,e)=>({activeTool:dn(i),dh:Ri(i),isolatedLinkerPanelId:$t(i,e.localDashboardId),links:yt(i,e.localDashboardId),timeZone:Vi(i)}),Io=Ve(jo,{setActiveTool:Ii,setDashboardLinks:Bi,addDashboardLinks:Ki,deleteDashboardLinks:zi,setDashboardIsolatedLinkerPanelId:on,setDashboardColumnSelectionValidator:Wi});class xo extends g.Component{constructor(e){super(e),sn(this,"removerFns",[]),sn(this,"getCachedLinks",k((t,n,r)=>{var s=[...t];return n!=null&&n.start!=null&&s.push(n),r!==void 0?s.filter(a=>{var l,o;return(a==null||(l=a.start)===null||l===void 0?void 0:l.panelId)===r||(a==null||(o=a.end)===null||o===void 0?void 0:o.panelId)===r||(a==null?void 0:a.end)==null}):s})),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===pe.DEFAULT&&this.reset())}componentDidCatch(e,t){z.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(B.COLUMN_SELECTED,this.handleGridColumnSelect),t.on(B.DATA_SELECTED,this.handleUpdateValues),t.on(B.STATE_CHANGED,this.handleStateChange),t.on(Ue.COLUMN_SELECTED,this.handleChartColumnSelect),t.on(ne.CLONED,this.handlePanelCloned),t.on(de.COLUMN_SELECTED,this.handleFilterColumnSelect),this.removerFns.push(zs(t,this.handleColumnsChanged)),t.on(ne.CLOSE,this.handlePanelClosed),t.on(ne.CLOSED,this.handlePanelClosed),t.on(ne.DRAGGING,this.handlePanelDragging),t.on(ne.DROPPED,this.handlePanelDropped)}stopListening(e){e.off("stateChanged",this.handleLayoutStateChanged);var{eventHub:t}=e;t.off(B.COLUMN_SELECTED,this.handleGridColumnSelect),t.off(B.DATA_SELECTED,this.handleUpdateValues),t.off(B.STATE_CHANGED,this.handleStateChange),t.off(Ue.COLUMN_SELECTED,this.handleChartColumnSelect),t.off(ne.CLONED,this.handlePanelCloned),t.off(de.COLUMN_SELECTED,this.handleFilterColumnSelect),t.off(ne.CLOSE,this.handlePanelClosed),t.off(ne.CLOSED,this.handlePanelClosed),t.off(ne.DRAGGING,this.handlePanelDragging),t.off(ne.DROPPED,this.handlePanelDropped),this.removerFns.forEach(n=>n()),this.removerFns=[]}reset(){this.setState({linkInProgress:void 0,selectedIds:new Set})}handleCancel(){var{linkInProgress:e}=this.state;if(e==null){var{setActiveTool:t}=this.props;t(pe.DEFAULT)}this.setState({linkInProgress:void 0})}handleDone(){var{setActiveTool:e}=this.props;e(pe.DEFAULT)}handleChartColumnSelect(e,t){this.columnSelected(e,t,!0)}handleFilterColumnSelect(e,t){z.debug("handleFilterColumnSelect",this.isOverlayShown());var{links:n,localDashboardId:r,setActiveTool:s,setDashboardIsolatedLinkerPanelId:a}=this.props,l=E.getIdFromPanel(e),o=n.filter(d=>{var h,c;return((h=d.start)===null||h===void 0?void 0:h.panelId)===l||((c=d.end)===null||c===void 0?void 0:c.panelId)===l});if(!this.isOverlayShown()&&l!=null){s(pe.LINKER),a(r,l),o.length===0&&this.columnSelected(e,t,!0,l);return}this.columnSelected(e,t,!0)}handleColumnsChanged(e,t){z.debug("handleColumnsChanged",e,t);var{links:n}=this.props;if(e==null){z.error("Invalid filter columns source id",e);return}if(t==null){this.deleteLinksForPanelId(e);return}var r=n.filter(s=>{var{start:a,end:l}=s;return a.panelId===e&&be.findColumn(t,a)==null||l!=null&&l.panelId===e&&be.findColumn(t,l)==null});this.deleteLinks(r)}handleGridColumnSelect(e,t){if(!gi(t)){z.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,r=arguments.length>3?arguments[3]:void 0;if(!(r===void 0&&!this.isOverlayShown())){var{isolatedLinkerPanelId:s}=this.props,{linkInProgress:a}=this.state,l=E.getIdFromPanel(e);if(l!=null){var o=E.getComponentNameFromPanel(e),{name:d,type:h}=t;if(a==null||a.start==null){var c={id:oe(),start:{panelId:l,panelComponent:o,columnName:d,columnType:h},type:"invalid",isReversed:n};z.debug("starting link",c),this.setState({linkInProgress:c})}else{var{links:p}=this.props,{start:v,id:m,isReversed:b}=a,f={panelId:l,panelComponent:o,columnName:d,columnType:h},C=be.getLinkType(b!==void 0&&b?f:v,b!==void 0&&b?v:f,r??s);switch(C){case"invalid":z.debug("Ignore invalid link connection",a,f);return;case"filterSource":{var P=b!==void 0&&b?v.panelId:f.panelId,S=p.filter(T=>{var{end:F}=T;return(F==null?void 0:F.panelId)===P});this.deleteLinks(S);break}case"chartLink":{var y=b===!0?v:f,w=b===!0?f:v;z.debug("creating chartlink",{existingLinkEnd:y,start:v,end:f});var D=p.filter(T=>{var{end:F,start:L}=T;return(L==null?void 0:L.panelId)===w.panelId&&(F==null?void 0:F.panelId)===y.panelId&&(F==null?void 0:F.columnName)===y.columnName&&(F==null?void 0:F.columnType)===y.columnType});this.deleteLinks(D);break}}var M={start:b!==void 0&&b?f:v,end:b!==void 0&&b?v:f,id:m,type:C,operator:ut.eq};z.info("creating link",M),this.setState({linkInProgress:void 0,selectedIds:new Set([m])},()=>{this.addLinks([M])})}}}}unsetFilterValueForLink(e){var{panelManager:t}=this.props;if(e.end){var{end:n}=e,{panelId:r,columnName:s,columnType:a}=n,l=t.getOpenedPanelById(r);l?mi(l)?l.unsetFilterValue(s,a):z.debug("endPanel.unsetFilterValue not implemented",l):z.debug("endPanel no longer exists, ignoring unsetFilterValue",r)}}setPanelFilterMap(e,t){z.debug("Set filter data for panel:",e,t);var{panelManager:n}=this.props,r=n.getOpenedPanelById(e);r?mi(r)?r.setFilterMap(t):z.debug("panel.setFilterMap not implemented",e,r):z.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(a=>this.unsetFilterValueForLink(a)),t){var{setDashboardLinks:r}=this.props;r(n,[])}else if(e.length>0){var{deleteDashboardLinks:s}=this.props;s(n,e.map(a=>{var{id:l}=a;return l}))}}handleAllLinksDeleted(){var{links:e,isolatedLinkerPanelId:t}=this.props;if(t===void 0)this.deleteLinks(e,!0);else{var n=e.filter(r=>{var s,a;return(r==null||(s=r.start)===null||s===void 0?void 0:s.panelId)===t||(r==null||(a=r.end)===null||a===void 0?void 0:a.panelId)===t});this.deleteLinks(n)}this.reset()}handleLinkDeleted(e){var{links:t}=this.props,n=t.find(r=>r.id===e);n?this.deleteLinks([n]):z.error("Unable to find link to delete",e)}handleUpdateValues(e,t){for(var n=E.getIdFromPanel(e),{dh:r,links:s,timeZone:a}=this.props,l=new Map,o=0;o<s.length;o+=1){var{start:d,end:h,operator:c}=s[o];if(d.panelId===n&&h!=null){var{panelId:p,columnName:v,columnType:m}=h,b=l.has(p)?l.get(p):new Map,f=b.has(v)===!0?b.get(v).filterList:[],{visibleIndex:C,isExpandable:P,isGrouped:S}=t[d.columnName],{value:y}=t[d.columnName],w="".concat(y);if(y===null&&P&&S&&(y=void 0),m!=null&&W.isDateType(m)){var D=new Ai(r,{timeZone:a,showTimeZone:!1,showTSeparator:!0,defaultDateTimeFormatString:ga.FULL_DATE_FORMAT});w=D.format(y)}var M={operator:c,text:w,value:y,startColumnIndex:C};f.push(M),b.set(v,{columnType:m,filterList:f}),l.set(p,b)}}l.forEach((T,F)=>{this.setPanelFilterMap(F,T)})}handlePanelCloned(e,t){var{links:n}=this.props,r=E.getIdFromPanel(e),s=t.id;if(r!=null){var a=be.cloneLinksForPanel(n,r,s);this.addLinks(a)}}handlePanelDragging(e){for(var{links:t}=this.props,n=0;n<t.length;n+=1){var r=t[n],{start:s,end:a}=r;if(s.panelId===e||(a==null?void 0:a.panelId)===e){this.setState({isDraggingPanel:!0});return}}}handlePanelDropped(){this.setState({isDraggingPanel:!1})}handlePanelClosed(e){z.debug("Panel ".concat(e," closed, deleting links.")),this.deleteLinksForPanelId(e)}handleLinkSelected(e){this.setState({selectedIds:new Set([e])})}handleLinksUpdated(e){var{localDashboardId:t,setDashboardLinks:n}=this.props;n(t,e)}handleLayoutStateChanged(){this.forceUpdate()}handleStateChange(){this.forceUpdate()}handleExited(){var{localDashboardId:e,setDashboardIsolatedLinkerPanelId:t}=this.props;t(e,void 0)}deleteLinksForPanelId(e){for(var{links:t}=this.props,n=0;n<t.length;n+=1){var r=t[n],{start:s,end:a,id:l}=r;(s.panelId===e||(a==null?void 0:a.panelId)===e)&&this.handleLinkDeleted(l)}}isOverlayShown(){var{activeTool:e}=this.props;return e===pe.LINKER}updateSelectionValidators(){var{activeTool:e,setDashboardColumnSelectionValidator:t,localDashboardId:n}=this.props;switch(e){case pe.LINKER:t(n,this.isColumnSelectionValid);break;default:t(n,void 0);break}}updateLinkInProgressType(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"invalid";this.setState(t=>{var{linkInProgress:n}=t;return n!==void 0?{linkInProgress:Ti(Ti({},n),{},{type:e})}:null})}isColumnSelectionValid(e,t){var{linkInProgress:n}=this.state,{isolatedLinkerPanelId:r}=this.props;if(t==null)return(n==null?void 0:n.start)!=null&&this.updateLinkInProgressType(),!1;if(!gi(t))return z.debug2("Column is not filterable",t.description),(n==null?void 0:n.start)!=null&&this.updateLinkInProgressType("invalid"),!1;if((n==null?void 0:n.start)==null)return!0;var{isReversed:s,start:a}=n,l=E.getIdFromPanel(e);if(l==null)return!1;var o={panelId:l,panelComponent:E.getComponentNameFromPanel(e),columnName:t.name,columnType:t.type},d=s!==void 0&&s?be.getLinkType(o,a,r):be.getLinkType(a,o,r);return this.updateLinkInProgressType(d),d!=="invalid"}render(){var{links:e,isolatedLinkerPanelId:t,panelManager:n}=this.props,{linkInProgress:r,selectedIds:s,isDraggingPanel:a}=this.state,l=this.isOverlayShown(),o=r!=null&&r.start!=null,d=t===void 0?"Click a column source, then click a column target to create a filter link. The filter comparison operator used by a selected link can be changed. Delete a filter link by clicking the delete button or with alt+click. Click done when finished.":"Create a link between the source column button and a table column by clicking on one, then the other. Delete a filter link by clicking the delete button or with alt+click. Click done when finished.";return a?null:u.jsx(tn,{in:l,mountOnEnter:!0,unmountOnExit:!0,onExited:this.handleExited,children:u.jsx(Lr,{disabled:o,panelManager:n,links:this.getCachedLinks(e,r,t),selectedIds:s,messageText:d,onLinkSelected:this.handleLinkSelected,onLinkDeleted:this.handleLinkDeleted,onAllLinksDeleted:this.handleAllLinksDeleted,onLinksUpdated:this.handleLinksUpdated,onDone:this.handleDone,onCancel:this.handleCancel})})}}var _o=Io(xo);function kr(i){Pt(i);var{id:e,layout:t,panelManager:n}=i;return u.jsx(_o,{layout:t,localDashboardId:e,panelManager:n})}var Ro={name:"LinkerPlugin",type:Ne.DASHBOARD_PLUGIN,component:kr};function Nr(i){Pt(i);var{id:e,layout:t,panelManager:n,registerComponent:r}=i,s=g.useCallback(function(){var{title:a="",metadata:l={},id:o=oe(),focusElement:d=E.DEFAULT_FOCUS_SELECTOR,createNewStack:h=!1,dragEvent:c=null}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},p=n.getOpenedPanelConfigsOfType(ct.COMPONENT),v=p.map(P=>{var S;return(S=P.title)!==null&&S!==void 0?S:""}),m=a!=null&&a!==""?a:Se.getNewMarkdownTitle(v),b=null,f={type:"react-component",component:ct.COMPONENT,props:{id:o,metadata:l,panelState:{content:b},localDashboardId:e},title:m,id:o},{root:C}=t;E.openComponent({root:C,config:f,focusElement:d,createNewStack:h,dragEvent:c})},[e,t,n]);return g.useEffect(function(){var l=[r(ct.COMPONENT,ct)];return()=>{l.forEach(o=>o())}},[r]),_e(t.eventHub,qi.OPEN,s),null}var Ao={name:"MarkdownPlugin",type:Ne.DASHBOARD_PLUGIN,component:Nr};function Di(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function Mi(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Di(Object(t),!0).forEach(function(n){Uo(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):Di(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function Uo(i,e,t){return(e=$o(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function $o(i){var e=Vo(i,"string");return typeof e=="symbol"?e:e+""}function Vo(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var Dn=g.forwardRef((i,e)=>{var{localDashboardId:t,fetch:n,metadata:r}=i,s=yr(n,t,r);return u.jsx(qt,Mi(Mi({ref:e},i),s))});Dn.displayName="PandasPanelPlugin";function jr(i){var{fetch:e}=i,t=Pr(e);if(t.status==="loading")return u.jsx(mt,{isLoading:!0});if(t.status==="error")return u.jsx(mt,{errorMessage:Hi(t.error),isLoading:!1});var{model:n,reload:r}=t;return u.jsx(pn,{model:n,children:u.jsx(fr,{onClick:r})})}var Go={name:"PandasPanel",title:"Pandas",type:Ne.WIDGET_PLUGIN,component:jr,panelComponent:Dn,supportedTypes:"pandas.DataFrame",icon:Qa};function Oi(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function xe(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Oi(Object(t),!0).forEach(function(n){Ho(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):Oi(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function Ho(i,e,t){return(e=Bo(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Bo(i){var e=Ko(i,"string");return typeof e=="symbol"?e:e+""}function Ko(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var zo=H.module("WidgetLoaderPlugin");function Wo(i){var e;function t(n,r){var s,a,l=i.component,{metadata:o}=n,d=xe(xe({},o),{},{type:(s=o==null?void 0:o.type)!==null&&s!==void 0?s:i.type,name:(a=o==null?void 0:o.name)!==null&&a!==void 0?a:"Widget"}),h=Sa(l);return u.jsx(wt,xe(xe({descriptor:d},n),{},{children:h?u.jsx(l,xe(xe({},n),{},{ref:r})):u.jsx(l,xe({},n))}))}return t.displayName="WidgetLoaderPlugin(".concat((e=i.component.displayName)!==null&&e!==void 0?e:i.name,")"),g.forwardRef(t)}function Ir(i){var e=Gi(),t=g.useMemo(()=>{var l=new Map;return e.forEach(o=>{ba(o)&&[o.supportedTypes].flat().forEach(d=>{if(d!=null&&d!==""){if(l.has(d)){var h;zo.warn("Multiple WidgetPlugins handling type ".concat(d,". Replacing ").concat((h=l.get(d))===null||h===void 0?void 0:h.name," with ").concat(o.name," to handle ").concat(d))}l.set(d,o)}})}),l},[e]);Pt(i);var{id:n,layout:r,registerComponent:s}=i,a=g.useCallback(l=>{var o,{dragEvent:d,panelId:h=oe(),fetch:c,widget:p}=l,{type:v}=p,m=v!=null?t.get(v):null;if(m!=null){var b=(o=p.name)!==null&&o!==void 0?o:v,f={localDashboardId:n,metadata:p,fetch:c},C={type:"react-component",component:m.name,props:f,title:b,id:h},{root:P}=r;E.openComponent({root:P,config:C,dragEvent:d})}},[n,r,t]);return g.useEffect(()=>{var l=[...new Set(t.values())].map(o=>{var{panelComponent:d}=o;return d==null?s(o.name,Wo(o)):s(o.name,d)});return()=>{l.forEach(o=>o())}},[s,t]),Ca(r.eventHub,a),null}var qo={name:"WidgetLoaderPlugin",type:Ne.DASHBOARD_PLUGIN,component:Ir},Xo=O.shape({state:O.shape({panelState:O.shape({})})}),Zo=O.shape({panelId:O.string.isRequired,columnName:O.string.isRequired,columnType:O.string.isRequired}),Li=O.shape({panelId:O.string.isRequired,columnName:O.string.isRequired}),xr=O.shape({start:Li,end:Li,id:O.string,isReversed:O.bool}),Yo=O.arrayOf(xr),Qo=O.shape({name:O.string.isRequired,operateAs:O.string.isRequired,groups:O.arrayOf(O.string).isRequired,permissions:O.shape({canUsePanels:O.bool.isRequired,canCopy:O.bool.isRequired,canDownloadCsv:O.bool.isRequired,canLogout:O.bool.isRequired}).isRequired}),Jo=Object.freeze({LinkPoint:Zo,Link:xr,Links:Yo,Panel:Xo,User:Qo}),ed=(i,e)=>i[e]===null?null:O.bool,td=(i,e)=>i[e]===null?null:O.string,nd=Object.freeze({nullableBoolean:ed,nullableString:td});const hd=Object.freeze(Object.defineProperty({__proto__:null,ChartBuilderPlugin:br,ChartBuilderPluginConfig:po,ChartEvent:Ue,ChartPanel:Et,ChartPanelPlugin:En,ChartPluginConfig:ho,ChartWidgetPlugin:gr,CommandHistoryPanel:ya,CommonPropTypes:nd,ConsoleEvent:Pa,ConsolePanel:wa,ConsolePlugin:Ea,ControlType:Fa,CorePanel:io,DropdownFilterPanel:Le,FileExplorerPanel:Ta,FilterPlugin:Cr,FilterPluginConfig:vo,FilterSetManager:Ct,FilterSetManagerPanel:xt,GridPanelPlugin:Fn,GridPluginConfig:wo,GridWidgetPlugin:Er,InputFilterEvent:de,InputFilterPanel:We,IrisGridEvent:B,IrisGridPanel:Ye,LinkerPlugin:kr,LinkerPluginConfig:Ro,LinkerUtils:be,LogPanel:Da,MarkdownEvent:qi,MarkdownPanel:ct,MarkdownPlugin:Nr,MarkdownPluginConfig:Ao,MockFileStorage:no,NotebookEvent:Ma,NotebookPanel:Oa,PandasEvent:mn,PandasPanel:qt,PandasPanelPlugin:Dn,PandasPluginConfig:Go,PandasWidgetPlugin:jr,Panel:ro,TabEvent:Gs,ToolType:pe,UIPropTypes:Jo,WidgetLoaderPlugin:Ir,WidgetLoaderPluginConfig:qo,WidgetPanel:wt,WidgetPanelTooltip:gn,addDashboardLinks:Ki,deleteDashboardLinks:zi,getColumnSelectionValidatorForDashboard:Vt,getColumnsForDashboard:un,getDashboardConnection:La,getDashboardConsoleSettings:ka,getDashboardSessionWrapper:Na,getFilterSetsForDashboard:$i,getInputFiltersForDashboard:St,getIsolatedLinkerPanelIdForDashboard:$t,getLinksForDashboard:yt,getTableMapForDashboard:Ut,isChartPanelDehydratedProps:or,isChartPanelFigureMetadata:sr,isChartPanelTableMetadata:ze,isGLChartPanelState:lr,isIrisGridPanelMetadata:cr,isLegacyIrisGridPanelMetadata:hr,setDashboardColumnSelectionValidator:Wi,setDashboardConnection:ja,setDashboardConsoleSettings:Ia,setDashboardFilterSets:Ui,setDashboardIsolatedLinkerPanelId:on,setDashboardLinks:Bi,setDashboardSessionWrapper:xa,useConfigureRuff:_a,useDashboardColumnFilters:wr,useLoadTablePlugin:Sr},Symbol.toStringTag,{value:"Module"}));export{vn as C,us as D,gt as F,Ms as I,ur as P,Xe as a,nn as b,Ji as c,Fs as d,ms as e,nr as f,ud as g,il as h,Un as i,hd as j,hs as u};
|
|
9
|
-
//# sourceMappingURL=index-
|
|
9
|
+
//# sourceMappingURL=index-Ct8lvHqm.js.map
|