@deephaven/code-studio 1.28.1 → 1.29.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.
Files changed (56) hide show
  1. package/build/assets/{AppRoot-CtUuR9HT.js → AppRoot-ByNXRX9Z.js} +7 -7
  2. package/build/assets/{AppRoot-CtUuR9HT.js.map → AppRoot-ByNXRX9Z.js.map} +1 -1
  3. package/build/assets/{Chart-D0szrevz.js → Chart-CJdYQdQ9.js} +3 -3
  4. package/build/assets/{Chart-D0szrevz.js.map → Chart-CJdYQdQ9.js.map} +1 -1
  5. package/build/assets/{ControlType-CtXY1n1b.js → ControlType-nb8hu8xE.js} +43 -43
  6. package/build/assets/ControlType-nb8hu8xE.js.map +1 -0
  7. package/build/assets/{FormatterUtils-DlljNd83.js → FormatterUtils-Cwnqibxb.js} +2 -2
  8. package/build/assets/{FormatterUtils-DlljNd83.js.map → FormatterUtils-Cwnqibxb.js.map} +1 -1
  9. package/build/assets/Grid-CC2-iJqc.js +7 -0
  10. package/build/assets/Grid-CC2-iJqc.js.map +1 -0
  11. package/build/assets/IrisGrid-BPHKbuAd.js +14 -0
  12. package/build/assets/IrisGrid-BPHKbuAd.js.map +1 -0
  13. package/build/assets/IrisGridModel-6bsriUgB.js +5 -0
  14. package/build/assets/IrisGridModel-6bsriUgB.js.map +1 -0
  15. package/build/assets/{IrisGridShortcuts-C6vL7IZi.js → IrisGridShortcuts-CcND9SFE.js} +2 -2
  16. package/build/assets/{IrisGridShortcuts-C6vL7IZi.js.map → IrisGridShortcuts-CcND9SFE.js.map} +1 -1
  17. package/build/assets/{LocalWorkspaceStorage-UZ320sjQ.js → LocalWorkspaceStorage-w_1OqBoq.js} +2 -2
  18. package/build/assets/{LocalWorkspaceStorage-UZ320sjQ.js.map → LocalWorkspaceStorage-w_1OqBoq.js.map} +1 -1
  19. package/build/assets/{MarkdownEditor-BR5w9NeU.js → MarkdownEditor-Cb40ZdjN.js} +2 -2
  20. package/build/assets/{MarkdownEditor-BR5w9NeU.js.map → MarkdownEditor-Cb40ZdjN.js.map} +1 -1
  21. package/build/assets/{MarkdownNotebook-CapbcK55.js → MarkdownNotebook-DWizeaXM.js} +2 -2
  22. package/build/assets/{MarkdownNotebook-CapbcK55.js.map → MarkdownNotebook-DWizeaXM.js.map} +1 -1
  23. package/build/assets/MissingPartitionError-DBtE4dG7.js +7 -0
  24. package/build/assets/MissingPartitionError-DBtE4dG7.js.map +1 -0
  25. package/build/assets/{MockChartModel-C9ZERWJD.js → MockChartModel-CRlmr2a-.js} +2 -2
  26. package/build/assets/{MockChartModel-C9ZERWJD.js.map → MockChartModel-CRlmr2a-.js.map} +1 -1
  27. package/build/assets/PasteKeyHandler-C4_aCP1Y.js +15 -0
  28. package/build/assets/PasteKeyHandler-C4_aCP1Y.js.map +1 -0
  29. package/build/assets/Picker-DT2FM8Mj.js +26 -0
  30. package/build/assets/Picker-DT2FM8Mj.js.map +1 -0
  31. package/build/assets/{StyleGuideRoot-CqAei-DM.js → StyleGuideRoot-B1uTaf3Y.js} +2 -2
  32. package/build/assets/{StyleGuideRoot-CqAei-DM.js.map → StyleGuideRoot-B1uTaf3Y.js.map} +1 -1
  33. package/build/assets/{index-DMSPOHPd.js → index-JVa8V3fu.js} +25 -25
  34. package/build/assets/{index-DMSPOHPd.js.map → index-JVa8V3fu.js.map} +1 -1
  35. package/build/assets/index-dXs3zbSl.js +27 -0
  36. package/build/assets/index-dXs3zbSl.js.map +1 -0
  37. package/build/assets/{index-CH6HLWgt.js → index-thrdP8Nk.js} +11 -11
  38. package/build/assets/index-thrdP8Nk.js.map +1 -0
  39. package/build/index.html +2 -2
  40. package/package.json +21 -21
  41. package/build/assets/ControlType-CtXY1n1b.js.map +0 -1
  42. package/build/assets/Grid-C8RUSj63.js +0 -5
  43. package/build/assets/Grid-C8RUSj63.js.map +0 -1
  44. package/build/assets/IrisGrid-D8eFxgVO.js +0 -14
  45. package/build/assets/IrisGrid-D8eFxgVO.js.map +0 -1
  46. package/build/assets/IrisGridModel-Cz3-J_KF.js +0 -5
  47. package/build/assets/IrisGridModel-Cz3-J_KF.js.map +0 -1
  48. package/build/assets/MissingPartitionError-Cyo7_iZi.js +0 -6
  49. package/build/assets/MissingPartitionError-Cyo7_iZi.js.map +0 -1
  50. package/build/assets/PasteKeyHandler-gbxW-Zo-.js +0 -15
  51. package/build/assets/PasteKeyHandler-gbxW-Zo-.js.map +0 -1
  52. package/build/assets/Picker-CrotsLla.js +0 -26
  53. package/build/assets/Picker-CrotsLla.js.map +0 -1
  54. package/build/assets/index-CH6HLWgt.js.map +0 -1
  55. package/build/assets/index-iNF_lksg.js +0 -27
  56. package/build/assets/index-iNF_lksg.js.map +0 -1
@@ -0,0 +1,27 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./MarkdownEditor-Cb40ZdjN.js","./vendor-06-vIFQy.js","./helpers-BosuxZz1.js","./vendor-C1_wHZy5.css","./ControlType-nb8hu8xE.js","./index-thrdP8Nk.js","./monaco-DaE0jI-i.js","./monaco-CgHo24-M.css","./index-CExWme38.css","./ControlType-oZW24NEb.css","./mathjax-BRdXMzz1.js"])))=>i.map(i=>d[i]);
2
+ import{r as y,I as h,K as ye,bI as zn,a1 as ge,ad as A,bJ as wi,H as Se,M as be,_ as ze,a0 as ut,U as ve,b3 as Za,b2 as qn,aw as Ye,af as Pi,a3 as Ya,bK as V}from"./vendor-06-vIFQy.js";import{c as te,F as Ke,dB as De,P as Ve,at as X,dC as tn,cj as Qa,cR as fn,cn as Ja,cq as el,b9 as Ei,V as tl,aw as Ti,af as nl,dD as dt,dE as Me,B as $,dF as ht,ah as je,dG as gn,a3 as Mi,dH as Wt,cx as Di,ac as bn,dI as Kt,X as Pe,L as Mt,dJ as ct,dK as Dt,dL as Ft,dM as Fi,c8 as L,y as hn,S as Ct,a as ki,n as Li,dN as yn,a5 as rl,aa as il,dO as Ii,dP as Oi,b0 as al,cw as ll,am as pe,dQ as Xn,du as sl,dv as ol,f as _i,u as zt,cX as Ue,cr as kt,cS as We,a0 as ul,ay as ji,df as dl,dc as hl,cQ as Ai,z as cn,cU as Ni,dp as xi,T as Qe,Y as cl,t as pl,U as vl,dR as Ri,dS as $i,dT as Vi,dU as Ui,bh as ml,an as Gi,di as fl,dj as gl,c_ as bl,c$ as yl,ca as Sl,b7 as Cl,dz as wl,dV as Pl,dx as El,av as Tl,W as Ml,dA as Dl,dy as Fl,ag as kl,aq as Ll,dW as Il,dX as Ol,a7 as _l,dY as jl,a6 as Al,dZ as Nl,d_ as xl,aE as Rl,d$ as $l,aF as Vl,e0 as Ul,e1 as Gl,e2 as Hl}from"./ControlType-nb8hu8xE.js";import{aA as Bl,L as Y,e as _,aO as Wl,aP as Kl,K as Sn,aQ as zl,aR as ql,aS as Hi,f as Cn,aT as Bi,y as Zn,aU as Yn,g as Xl,F as Zl,M as Yl,b as Ql,c as Jl,N as wt,s as es,aV as ts,aW as ns,d as rs,aX as is,aY as as}from"./index-thrdP8Nk.js";import{C as ls,a as he,I as G,G as It,S as Wi,L as Ki,b as wn,s as ss}from"./IrisGridModel-6bsriUgB.js";import{d as os,M as Qn,n as us,f as Ae,l as xe,k as ds,e as hs,I as Z,A as cs,o as ps,p as vs,q as ms}from"./MissingPartitionError-DBtE4dG7.js";import{F as Jn}from"./FormatterUtils-Cwnqibxb.js";import{_ as fs}from"./monaco-DaE0jI-i.js";function Pn(n){var e=n.className,t=n.isFlipped,r=n.children,i=n["data-testid"],a=u=>{if(r.length!==2)throw new Error("CardFlip requires 2 children to function");return r[u]},l=y.useRef(null),s=y.useCallback(u=>{u.target===u.currentTarget&&document.body.classList.add("card-flip--is-flipping")},[]),o=y.useCallback(u=>{u.target===u.currentTarget&&document.body.classList.remove("card-flip--is-flipping")},[]);return y.useEffect(function(){if(!l.current)throw Error("ref undefined");l.current.addEventListener("transitionstart",s);var d=l.current;return function(){if(d!=null)return d.removeEventListener("transitionstart",s)}},[s]),h.jsxs("div",{className:ye(e,{"card-flip--show-front":t,"card-flip--show-back":!t}),"data-testid":i,children:[h.jsx("div",{className:"card-flip--back",children:a(0)}),h.jsx("div",{ref:l,className:"card-flip--front",onTransitionEnd:o,children:a(1)})]})}function er(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function gs(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){er(a,r,i,l,s,"next",o)}function s(o){er(a,r,i,l,s,"throw",o)}l(void 0)})}}function tr(n,e){return Cs(n)||Ss(n,e)||ys(n,e)||bs()}function bs(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
3
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function ys(n,e){if(n){if(typeof n=="string")return nr(n,e);var t={}.toString.call(n).slice(8,-1);return t==="Object"&&n.constructor&&(t=n.constructor.name),t==="Map"||t==="Set"?Array.from(n):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?nr(n,e):void 0}}function nr(n,e){(e==null||e>n.length)&&(e=n.length);for(var t=0,r=Array(e);t<e;t++)r[t]=n[t];return r}function Ss(n,e){var t=n==null?null:typeof Symbol<"u"&&n[Symbol.iterator]||n["@@iterator"];if(t!=null){var r,i,a,l,s=[],o=!0,u=!1;try{if(a=(t=t.call(n)).next,e!==0)for(;!(o=(r=a.call(t)).done)&&(s.push(r.value),s.length!==e);o=!0);}catch(d){u=!0,i=d}finally{try{if(!o&&t.return!=null&&(l=t.return(),Object(l)!==l))return}finally{if(u)throw i}}return s}}function Cs(n){if(Array.isArray(n))return n}var zi=y.createContext(null);zi.displayName="DeferredApiContext";function ws(n){var e=y.useState(null),t=tr(e,2),r=t[0],i=t[1],a=y.useState(null),l=tr(a,2),s=l[0],o=l[1],u=y.useContext(zi),d=y.useContext(Bl);return y.useEffect(()=>{if(u==null){if(d!=null){i(d),o(null);return}i(null),o(new Error("No API available in useDeferredApi. Was code wrapped in ApiBootstrap or DeferredApiContext.Provider?"));return}var c=!1;function p(){return m.apply(this,arguments)}function m(){return m=gs(function*(){if(n==null)c||(i(null),o(new Error("No widget provided to useDeferredApi")));else if(typeof u=="function")try{var v=yield u(n);c||(i(v),o(null))}catch(b){c||(i(null),o(b??new Error("Null error")))}else i(u)}),m.apply(this,arguments)}return p(),()=>{c=!0}},[d,u,n]),[r,s]}function rr(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function ir(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?rr(Object(t),!0).forEach(function(r){K(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):rr(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Ps(n,e){return Ds(n)||Ms(n,e)||Ts(n,e)||Es()}function Es(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
4
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Ts(n,e){if(n){if(typeof n=="string")return ar(n,e);var t={}.toString.call(n).slice(8,-1);return t==="Object"&&n.constructor&&(t=n.constructor.name),t==="Map"||t==="Set"?Array.from(n):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?ar(n,e):void 0}}function ar(n,e){(e==null||e>n.length)&&(e=n.length);for(var t=0,r=Array(e);t<e;t++)r[t]=n[t];return r}function Ms(n,e){var t=n==null?null:typeof Symbol<"u"&&n[Symbol.iterator]||n["@@iterator"];if(t!=null){var r,i,a,l,s=[],o=!0,u=!1;try{if(a=(t=t.call(n)).next,e!==0)for(;!(o=(r=a.call(t)).done)&&(s.push(r.value),s.length!==e);o=!0);}catch(d){u=!0,i=d}finally{try{if(!o&&t.return!=null&&(l=t.return(),Object(l)!==l))return}finally{if(u)throw i}}return s}}function Ds(n){if(Array.isArray(n))return n}function K(n,e,t){return(e=Fs(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Fs(n){var e=ks(n,"string");return typeof e=="symbol"?e:e+""}function ks(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ne=Y.module("FigureChartModel");class Pt extends ls{constructor(e,t){var r,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};super(e),r=this,K(this,"chartUtils",void 0),K(this,"dh",void 0),K(this,"figure",void 0),K(this,"settings",void 0),K(this,"data",void 0),K(this,"layout",void 0),K(this,"seriesDataMap",void 0),K(this,"pendingSeries",void 0),K(this,"oneClicks",void 0),K(this,"filterColumnMap",void 0),K(this,"lastFilter",void 0),K(this,"isConnected",void 0),K(this,"seriesToProcess",void 0),K(this,"addPendingSeries",zn.debounce(()=>{for(var a=he.getAxisTypeMap(this.figure),l=this.pendingSeries,s=function(){var d,c=l[o],p=r.figure.charts.find(m=>m.series.includes(c));r.addSeries(c,a,(d=p==null?void 0:p.showLegend)!==null&&d!==void 0?d:null),c.subscribe()},o=0;o<l.length;o+=1)s();this.pendingSeries=[]},Pt.ADD_SERIES_DEBOUNCE)),K(this,"getTimeZone",ge((a,l)=>{if(l!=null){var s=l.getColumnTypeFormatter(a);if(s!=null)return s.dhTimeZone}},{max:100})),K(this,"getValueTranslator",ge((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.unwrapValue(o,s)},{max:100})),K(this,"getValueParser",ge((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.wrapValue(o,a,s)},{max:100})),K(this,"getRangeParser",ge((a,l)=>s=>{var o=Ps(s,2),u=o[0],d=o[1],c=this.getValueParser(a,l);return u=c(u),d=c(d),[u,d]},{max:100})),K(this,"getAxisRangeParser",ge((a,l)=>s=>{var o=he.getSourceForAxis(a,s);return o!=null?this.getRangeParser(o.columnType,l):u=>u},{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 he(e),this.figure=t,this.settings=i,this.data=[],this.layout={grid:{rows:t.rows,columns:t.cols,pattern:"independent"}},this.seriesDataMap=new Map,this.pendingSeries=[],this.oneClicks=[],this.filterColumnMap=new Map,this.lastFilter=new Map,this.isConnected=!0,this.seriesToProcess=new Set,this.setTitle(this.getDefaultTitle()),this.initAllSeries(),this.updateAxisPositions(),this.startListeningFigure()}close(){this.figure.close(),this.addPendingSeries.cancel(),this.stopListeningFigure()}getDefaultTitle(){if(this.figure.title!=null&&this.figure.title.length>0)return this.figure.title;if(this.figure.charts.length===1){var e;return(e=this.figure.charts[0].title)!==null&&e!==void 0?e:""}return""}initAllSeries(){var e=this;this.oneClicks=[],this.filterColumnMap.clear();var t=this.figure.charts,r=he.getAxisTypeMap(this.figure),i=[];this.seriesToProcess=new Set;for(var a=function(){for(var p=t[l],m=0;m<p.series.length;m+=1){var v=p.series[m];i.push(v.name),e.addSeries(v,r,p.showLegend)}var b=p.axes,f=p.title;if(f!=null&&f.length>0&&(t.length>1||e.figure.title!=null)){var g=b.find(M=>M.type===e.dh.plot.AxisType.X),w=b.find(M=>M.type===e.dh.plot.AxisType.Y);if(g==null||w==null)ne.warn("Chart title provided, but unknown how to map to the correct axes for this chart type",p);else{var P,D,E,S,C=((P=(D=r.get(g.type))===null||D===void 0?void 0:D.findIndex(M=>M===g))!==null&&P!==void 0?P:0)+1,F=((E=(S=r.get(w.type))===null||S===void 0?void 0:S.findIndex(M=>M===w))!==null&&E!==void 0?E:0)+1,T={align:"center",x:.5,y:1,yshift:17,text:f,showarrow:!1,xref:"x".concat(C," domain"),yref:"y".concat(F," domain")};e.layout.annotations==null?e.layout.annotations=[T]:e.layout.annotations.push(T)}}},l=0;l<t.length;l+=1)a();for(var s=[...this.seriesDataMap.keys()],o=s.filter(c=>i.indexOf(c)<0),u=0;u<o.length;u+=1){var d=o[u];this.seriesDataMap.delete(d)}}addSeries(e,t,r){var i,a,l=this.dh,s=this.chartUtils.makeSeriesDataFromSeries(e,t,he.getSeriesVisibility(e.name,this.settings),r,(i=(a=this.renderOptions)===null||a===void 0?void 0:a.webgl)!==null&&i!==void 0?i:!0);if(this.seriesDataMap.set(e.name,s),this.seriesToProcess.add(e.name),this.data=[...this.seriesDataMap.values()],e.plotStyle===l.plot.SeriesPlotStyle.STACKED_BAR?this.layout.barmode="stack":e.plotStyle===l.plot.SeriesPlotStyle.PIE&&(this.layout.hiddenlabels=he.getHiddenLabels(this.settings)),this.layout.showlegend=this.data.length>1||e.plotStyle===l.plot.SeriesPlotStyle.PIE?r??void 0:!1,e.oneClick!=null){for(var o=e.oneClick,u=o.columns,d=0;d<u.length;d+=1)this.filterColumnMap.set(u[d].name,u[d]);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){ne.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&&(ne.error("Errors in figure",this.figure.errors),this.fireError(this.figure.errors))}unsubscribeFigure(){this.figure.unsubscribe()}startListeningFigure(){var e=this.dh;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 e=this.dh;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){ne.debug("Downsample started",e),this.fireDownsampleStart(e.detail)}handleDownsampleFinish(e){ne.debug("Downsample finished",e),this.fireDownsampleFinish(e.detail)}handleDownsampleFail(e){ne.error("Downsample failed",e),this.fireDownsampleFail(e.detail)}handleDownsampleNeeded(e){ne.info("Downsample needed",e),this.fireDownsampleNeeded(e.detail)}handleFigureUpdated(e){var t=e.detail,r=t.series;ne.debug2("handleFigureUpdated",r);for(var i=0;i<r.length;i+=1){var a=r[i];ne.debug2("handleFigureUpdated updating series",a.name);for(var l=a.sources,s=0;s<l.length;s+=1){var o=l[s],u=o.columnType,d=o.type,c=this.getValueTranslator(u,this.formatter),p=t.getArray(a,d,c);this.setDataArrayForSeries(a,d,p)}this.seriesToProcess.delete(a.name),this.cleanSeries(a)}this.seriesToProcess.size===0&&this.fireLoadFinished();var m=this.data;this.fireUpdate(m)}handleRequestFailed(e){ne.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){ne.debug("Figure disconnected",e),this.isConnected=!1,this.listeners.length>0&&this.unsubscribeFigure(),this.fireDisconnect()}handleFigureReconnected(e){ne.debug("Figure reconnected",e),this.isConnected=!0,this.initAllSeries(),this.fireReconnect(),this.listeners.length>0&&this.subscribeFigure()}handleFigureSeriesAdded(e){var t=e.detail;ne.debug("handleFigureSeriesAdded",t),this.pendingSeries.push(t),this.addPendingSeries()}setDimensions(e){super.setDimensions(e),this.updateAxisPositions()}setTitle(e){var t,r;super.setTitle(e);var i=(t=(r=(e??"").match(/<br>/g))===null||r===void 0?void 0:r.length)!==null&&t!==void 0?t:0,a=he.DEFAULT_MARGIN.t+i*he.SUBTITLE_LINE_HEIGHT;this.layout.margin?this.layout.margin.t=a:this.layout.margin={t:a},typeof this.layout.title=="string"?this.layout.title={text:e}:(this.layout.title=ir({},this.layout.title),this.layout.title.text=e,this.layout.title.pad=ir({},this.layout.title.pad),this.layout.title.pad.t=he.DEFAULT_TITLE_PADDING.t+i*he.SUBTITLE_LINE_HEIGHT*.5),this.fireLayoutUpdated({title:this.layout.title})}getPlotWidth(){var e,t,r,i;return!this.rect||!this.rect.width?0:Math.max(this.rect.width-((e=(t=this.layout.margin)===null||t===void 0?void 0:t.l)!==null&&e!==void 0?e:0)-((r=(i=this.layout.margin)===null||i===void 0?void 0:i.r)!==null&&r!==void 0?r:0),0)}getPlotHeight(){var e,t,r,i;return!this.rect||!this.rect.height?0:Math.max(this.rect.height-((e=(t=this.layout.margin)===null||t===void 0?void 0:t.t)!==null&&e!==void 0?e:0)-((r=(i=this.layout.margin)===null||i===void 0?void 0:i.b)!==null&&r!==void 0?r:0),0)}updateAxisPositions(){var e=this.getPlotWidth(),t=this.getPlotHeight();this.chartUtils.updateFigureAxes(this.layout,this.figure,r=>this.getAxisRangeParser(r,this.formatter),e,t)}updateLayoutFormats(){if(this.formatter){var e=this.chartUtils.getAxisFormats(this.figure,this.formatter);e.forEach((t,r)=>{ne.debug("Assigning ".concat(r),this.layout[r],t);var i=this.layout[r];i!=null?Object.assign(i,t):ne.debug("Ignoring null layout.".concat(r))})}}setDataArrayForSeries(e,t,r){var i=e.name,a=e.plotStyle,l=this.seriesDataMap.get(i),s=this.chartUtils.getPlotlyProperty(a,t);l&&zn.set(l,s,r)}cleanSeries(e){var t=this.dh,r=e.name,i=e.plotStyle,a=this.seriesDataMap.get(r);if(a!=null){if(i===t.plot.SeriesPlotStyle.HISTOGRAM){var l=a.xLow,s=a.xHigh;if(l&&s&&l.length===s.length){for(var o=[],u=0;u<l.length;u+=1)o.push(s[u]-l[u]);a.width=o}}else if(i===t.plot.SeriesPlotStyle.LINE||i===t.plot.SeriesPlotStyle.ERROR_BAR||i===t.plot.SeriesPlotStyle.BAR){var d=a.x,c=a.xLow,p=a.xHigh,m=a.y,v=a.yLow,b=a.yHigh;c&&p&&c!==d&&(a.error_x=he.getPlotlyErrorBars(d,c,p)),v&&b&&v!==m&&(a.error_y=he.getPlotlyErrorBars(m,v,b))}else if(i===t.plot.SeriesPlotStyle.TREEMAP){var f=a.ids,g=a.labels;f!==void 0&&g===void 0&&(a.labels=f)}}}getData(){return this.data}getLayout(){return this.layout}getFilterColumnMap(){return new Map(this.filterColumnMap)}isFilterRequired(){return this.oneClicks.find(e=>e.requireAllFiltersToDisplay)!=null}coerceFilterValue(e,t){if(e==null)return e;if(typeof e=="string"&&te.isNumberType(t)){var r=Number(e);if(!Number.isNaN(r))return r}return e}setFilter(e){var t=this;if(this.oneClicks.length===0){ne.warn("Trying to set a filter, but no one click!");return}ne.debug("setFilter",e);for(var r=function(){var l=t.oneClicks[i],s=l.columns,o=new Set([...e.keys(),...t.lastFilter.keys()]);o.forEach(u=>{var d=e.get(u),c=s.find(m=>m.name===u);if(t.lastFilter.get(u)!==d&&c!=null){var p=d!=null?t.coerceFilterValue(d,c.type):d;l.setValueForColumn(u,p)}})},i=0;i<this.oneClicks.length;i+=1)r();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}}K(Pt,"ADD_SERIES_DEBOUNCE",50);function lr(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function nn(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){lr(a,r,i,l,s,"next",o)}function s(o){lr(a,r,i,l,s,"throw",o)}l(void 0)})}}class rt{static makeModelFromSettings(e,t,r){return nn(function*(){var i=yield rt.makeFigureFromSettings(e,t,r);return new Pt(e,i,t)})()}static makeFigureFromSettings(e,t,r){return nn(function*(){var i=yield r.copy();return i.applyCustomColumns(r.customColumns),i.applyFilter(r.filter),i.applySort(r.sort),e.plot.Figure.create(new he(e).makeFigureSettings(t,i))})()}static makeModel(e,t,r){return nn(function*(){return new Pt(e,r,t)})()}}function sr(n){return n.setFigure!==void 0}function Ls(n,e){return js(n)||_s(n,e)||Os(n,e)||Is()}function Is(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
5
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Os(n,e){if(n){if(typeof n=="string")return or(n,e);var t={}.toString.call(n).slice(8,-1);return t==="Object"&&n.constructor&&(t=n.constructor.name),t==="Map"||t==="Set"?Array.from(n):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?or(n,e):void 0}}function or(n,e){(e==null||e>n.length)&&(e=n.length);for(var t=0,r=Array(e);t<e;t++)r[t]=n[t];return r}function _s(n,e){var t=n==null?null:typeof Symbol<"u"&&n[Symbol.iterator]||n["@@iterator"];if(t!=null){var r,i,a,l,s=[],o=!0,u=!1;try{if(a=(t=t.call(n)).next,e!==0)for(;!(o=(r=a.call(t)).done)&&(s.push(r.value),s.length!==e);o=!0);}catch(d){u=!0,i=d}finally{try{if(!o&&t.return!=null&&(l=t.return(),Object(l)!==l))return}finally{if(u)throw i}}return s}}function js(n){if(Array.isArray(n))return n}function ur(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function He(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){ur(a,r,i,l,s,"next",o)}function s(o){ur(a,r,i,l,s,"throw",o)}l(void 0)})}}function me(n,e,t){return(e=As(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function As(n){var e=Ns(n,"string");return typeof e=="symbol"?e:e+""}function Ns(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Le=Y.module("IrisGridTableModel");class xs extends os{constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Ke(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e,t,r,i),me(this,"userFrozenColumns",void 0),me(this,"customColumnList",void 0),me(this,"formatColumnList",void 0),me(this,"initialFilters",[]),me(this,"wasUncoalesced",void 0),me(this,"getMemoizedInputKeyColumnSet",A(a=>new Set(a??X))),me(this,"getMemoizedInputValueColumnSet",A(a=>new Set(a??X))),me(this,"getMemoizedFrontColumns",A(a=>a??X)),me(this,"getMemoizedBackColumns",A(a=>a??X)),me(this,"getMemoizedFrozenColumns",A((a,l)=>{var s;return(s=l??a)!==null&&s!==void 0?s:X})),me(this,"getCachedFilterableColumnSet",A(a=>new Set(a.map((l,s)=>s)))),me(this,"getCachedPartitionColumns",A(a=>a.filter(l=>l.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 isOrganizeColumnsAvailable(){return!0}get isCustomColumnsAvailable(){return this.table.applyCustomColumns!=null}get isFormatColumnsAvailable(){return this.table.applyCustomColumns!=null}get inputKeyColumnSet(){var e;return this.getMemoizedInputKeyColumnSet((e=this.inputTable)===null||e===void 0?void 0:e.keys)}get inputValueColumnSet(){var e;return this.getMemoizedInputValueColumnSet((e=this.inputTable)===null||e===void 0?void 0:e.values)}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(Le.debug2("set customColumns",e,this.customColumnList,e===this.customColumnList),this.customColumnList.length===0&&e.length===0){Le.debug("Ignore empty initial customColumns"),this.customColumnList=e;return}if(this.customColumnList===e){Le.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(Le.debug2("set formatColumns",e,this.formatColumnList,e===this.formatColumnList),this.formatColumnList.length===0&&e.length===0){Le.debug("Ignore empty initial formatColumns"),this.formatColumnList=e;return}if(this.formatColumnList===e){Le.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 De(G.EVENT.COLUMNS_CHANGED,{detail:this.columns}))}get partitionColumns(){return this.getCachedPartitionColumns(this.columns)}partitionKeysTable(){var e=this;return He(function*(){return e.valuesTable(e.partitionColumns)})()}partitionMergedTable(){var e=this;return He(function*(){var t=yield e.table.copy();return t.applyFilter([]),t})()}partitionBaseTable(){var e=this;return He(function*(){return e.partitionKeysTable()})()}partitionTable(e){var t=this;return He(function*(){Le.debug("getting partition table for partitions",e);for(var r=[],i=0;i<t.partitionColumns.length;i+=1){var a=e[i],l=t.partitionColumns[i],s=t.tableUtils.makeNullableEqFilter(l,a);r.push(s)}var o=yield t.table.copy();return o.applyFilter([...t.initialFilters,...r]),o})()}set filter(e){this.closeSubscription(),this.table.applyFilter([...this.initialFilters,...e]),this.applyViewport()}set totalsConfig(e){if(Le.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 De(G.EVENT.UPDATED));return}this.totalsTablePromise=Ve.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{Ve.isCanceled(t)||(Le.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new De(G.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 He(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.isInputKeyColumn(e)}isColumnFrozen(e){return this.frozenColumns.includes(this.columns[e].name)}delete(e){var t=()=>super.pendingDataMap,r=a=>super.pendingDataMap=a,i=this;return He(function*(){var a;if(!i.isDeletableRanges(e))throw new Error("Undeletable ranges ".concat(e));_(i.inputTable);var l=i.inputTable.keyColumns;if(i.inputKeyColumnSet.size===0)throw new Error("No key columns to allow deletion");var s=i.getPendingAreaRange(),o=e.map(E=>It.intersection(s,E)).filter(E=>E!=null).map(E=>(_(E),It.offset(E,0,-(i.floatingTopRowCount+i.table.size))));if(o.length>0){for(var u=new Map(t()),d=0;d<o.length;d+=1){var c=o[d];_(c.startRow),_(c.endRow);for(var p=c.startRow;p<=c.endRow;p+=1)u.delete(p)}r(u),i.formattedStringData=[],i.dispatchEvent(new De(G.EVENT.PENDING_DATA_UPDATED)),i.dispatchEvent(new De(G.EVENT.UPDATED))}var m=i.getTableAreaRange(),v=e.map(E=>It.intersection(m,E)).filter(E=>E!=null);if(!(v.length<=0)){var b=yield Promise.all([i.snapshot(v.map(E=>(_(E),l.map(S=>{var C=i.getColumnIndexByName(S.name);if(C==null)throw new Error("Key column ".concat(S.name," not found"));return new It(C,E.startRow,C,E.endRow)}))).flat()),i.table.copy()]),f=Ls(b,2),g=f[0],w=f[1],P=g.map(E=>{for(var S=[],C=0;C<l.length;C+=1){var F=l[C],T=E[C],M=i.tableUtils.makeNullableEqFilter(F,T);S.push(M)}return S.length===1?S[0]:S[0].and(...S.slice(1))}),D=P.length===1?P[0]:P[0].or(...P.slice(1));w.applyFilter([D]),yield(a=i.inputTable)===null||a===void 0?void 0:a.deleteTable(w),w.close()}})()}seekRow(e,t,r,i,a,l,s){var o=this;return He(function*(){return o.table.seekRow(e,t,r,i,a,l,s)})()}get isSeekRowAvailable(){return this.table.seekRow!=null}}function dr(n,e,t){return(e=Rs(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Rs(n){var e=$s(n,"string");return typeof e=="symbol"?e:e+""}function $s(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Vs extends G{constructor(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:new Ke(e);super(e),dr(this,"modelFormatter",void 0),dr(this,"modelColumnAlignmentMap",void 0),this.modelFormatter=t,this.modelColumnAlignmentMap=new Map}get rowCount(){return 0}get columnCount(){return 0}textForCell(e,t){return""}textForColumnHeader(e,t){}get columns(){return X}getColumnIndexByName(e){}get initialMovedColumns(){return X}get initialMovedRows(){return X}get initialColumnHeaderGroups(){return X}get groupedColumns(){return X}formatForCell(e,t){}valueForCell(e,t){}get filter(){return X}set filter(e){}get partition(){return X}set partition(e){}get partitionColumns(){return X}get formatter(){return this.modelFormatter}set formatter(e){this.modelFormatter=e}get columnAlignmentMap(){return this.modelColumnAlignmentMap}set columnAlignmentMap(e){this.modelColumnAlignmentMap=e}displayString(e,t,r){return""}get sort(){return X}set sort(e){}get customColumns(){return X}set customColumns(e){}get formatColumns(){return X}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 X}set selectDistinctColumns(e){}get pendingDataMap(){return tn}set pendingDataMap(e){}get pendingRowCount(){return 0}set pendingRowCount(e){}get pendingDataErrors(){return tn}commitPending(){return Promise.resolve()}setViewport(e,t,r){}snapshot(e){return Promise.resolve([])}textSnapshot(e,t,r){return Promise.resolve("")}valuesTable(e){throw new Error("Method not implemented.")}delete(e){return Promise.resolve()}seekRow(e,t,r,i,a,l,s){return Promise.resolve(0)}get columnHeaderGroups(){return X}set columnHeaderGroups(e){}get columnHeaderGroupMap(){return tn}getColumnHeaderParentGroup(e,t){}}function hr(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function Ot(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){hr(a,r,i,l,s,"next",o)}function s(o){hr(a,r,i,l,s,"throw",o)}l(void 0)})}}function Us(n,e,t){return(e=Gs(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Gs(n){var e=Hs(n,"string");return typeof e=="symbol"?e:e+""}function Hs(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Bs(n){return"getBaseTable"in n&&typeof n.getBaseTable=="function"}class Ws extends Vs{constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Ke(e);super(e,r),Us(this,"partitionedTable",void 0),this.partitionedTable=t}get isPartitionRequired(){return!0}get isPartitionAwareSourceTable(){return!1}get isReversible(){return!1}displayString(e,t,r){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 r;return(r=this.columns[e].name)!==null&&r!==void 0?r:""}partitionKeysTable(){var e=this;return Ot(function*(){return e.partitionedTable.getKeyTable()})()}partitionBaseTable(){var e=this;return Ot(function*(){return Bs(e.partitionedTable)?e.partitionedTable.getBaseTable():e.partitionedTable.getKeyTable()})()}partitionMergedTable(){var e=this;return Ot(function*(){return e.partitionedTable.getMergedTable()})()}partitionTable(e){var t=this;return Ot(function*(){try{var r=yield t.partitionedTable.getTable(e);if(r==null)throw new Qn("Partition not found");return r}catch(i){throw us(i)?i:new Qn("Unable to retrieve partition")}})()}}function Ie(n,e,t){return(e=Ks(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ks(n){var e=zs(n,"string");return typeof e=="symbol"?e:e+""}function zs(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Oe=Y.module("IrisGridProxyModel");function Xe(n,e,t,r){return te.isTreeTable(e)?new hs(n,e,t):te.isPartitionedTable(e)?new Ws(n,e,t):new xs(n,e,t,r)}class qs extends G{constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Ke(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e),Ie(this,"model",void 0),Ie(this,"dh",void 0),Ie(this,"originalModel",void 0),Ie(this,"modelPromise",void 0),Ie(this,"rollup",void 0),Ie(this,"partition",void 0),Ie(this,"selectDistinct",void 0),Ie(this,"currentViewport",void 0),Ie(this,"setViewport",(l,s,o)=>{this.currentViewport={top:l,bottom:s,columns:o},this.model.setViewport(l,s,o)}),this.addEventListener=this.addEventListener.bind(this),this.removeEventListener=this.removeEventListener.bind(this),this.dispatchEvent=this.dispatchEvent.bind(this),this.handleModelEvent=this.handleModelEvent.bind(this);var a=Xe(e,t,r,i);return this.dh=e,this.originalModel=a,this.model=a,this.modelPromise=null,this.rollup=null,this.partition=null,this.selectDistinct=[],new Proxy(this,{get(l,s,o){var u,d=((u=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(l),s))===null||u===void 0?void 0:u.get)!=null;if(d)return Reflect.get(l,s,o);var c=Object.prototype.hasOwnProperty.call(l,s),p=Object.prototype.hasOwnProperty.call(Object.getPrototypeOf(l),s),m=c||p?l:l.model;return Reflect.get(m,s)},set(l,s,o){var u,d=((u=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(l),s))===null||u===void 0?void 0:u.set)!=null,c=Object.prototype.hasOwnProperty.call(l,s);return d||c?Reflect.set(l,s,o,l):Reflect.set(l.model,s,o,l.model)},has(l,s){return Reflect.has(l,s)?!0:Reflect.has(l.model,s)}})}close(){this.originalModel.close(),this.model!==this.originalModel&&this.model.close(),this.modelPromise!=null&&this.modelPromise.cancel()}handleModelEvent(e){Oe.debug2("handleModelEvent",e);var t=e.detail,r=e.type;this.dispatchEvent(new De(r,{detail:t}))}setModel(e){Oe.debug("setModel",e);var t=this.model,r=t.columns;if(t!==this.originalModel&&t.close(),this.model=e,this.listenerCount>0&&this.addListeners(e),t!==e&&this.dispatchEvent(new De(G.EVENT.SCHEMA_CHANGED,{detail:e})),r!==e.columns)this.dispatchEvent(new De(G.EVENT.COLUMNS_CHANGED,{detail:e.columns}));else if(this.currentViewport!=null){var i=this.currentViewport,a=i.top,l=i.bottom,s=i.columns;e.setViewport(a,l,s)}Ae(e)&&this.dispatchEvent(new De(G.EVENT.TABLE_CHANGED,{detail:e.table}))}setNextModel(e){Oe.debug2("setNextModel"),this.modelPromise&&this.modelPromise.cancel(),this.listenerCount>0&&this.removeListeners(this.model),this.modelPromise=Ve.makeCancelable(e,t=>{t!==this.originalModel&&t.close()}),this.modelPromise.then(t=>{this.modelPromise=null,this.setModel(t)}).catch(t=>{if(Ve.isCanceled(t)){Oe.debug2("setNextModel cancelled");return}Oe.error("Unable to set next model",t),this.modelPromise=null,this.dispatchEvent(new De(G.EVENT.REQUEST_FAILED,{detail:t}))})}startListening(){super.startListening(),this.addListeners(this.model)}stopListening(){super.stopListening(),this.removeListeners(this.model)}addListeners(e){for(var t=Object.keys(G.EVENT),r=0;r<t.length;r+=1)e.addEventListener(t[r],this.handleModelEvent)}removeListeners(e){for(var t=Object.keys(G.EVENT),r=0;r<t.length;r+=1)e.removeEventListener(t[r],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.model.isSelectDistinctAvailable&&(this.originalModel.isSelectDistinctAvailable||this.selectDistinct.length>0)&&this.rollup==null}get originalColumns(){return this.originalModel.columns}get partitionColumns(){return xe(this.originalModel)?this.originalModel.partitionColumns:[]}get partitionConfig(){return!xe(this.originalModel)||!this.originalModel.isPartitionRequired?ds(this.originalModel)?null:void 0:this.partition}set partitionConfig(e){if(!this.isPartitionRequired)throw new Error("Partitions are not available");if(!(this.partition===e||this.partition!=null&&e!=null&&this.partition.mode===e.mode&&this.partition.partitions.length===e.partitions.length&&this.partition.partitions.every((r,i)=>r===e.partitions[i]))){Oe.debug("set partitionConfig",e),this.partition=e;var t=Promise.resolve(this.originalModel);e!=null&&xe(this.originalModel)&&(e.mode==="keys"?t=this.originalModel.partitionBaseTable().then(r=>Xe(this.dh,r,this.formatter)):e.mode==="merged"?t=this.originalModel.partitionMergedTable().then(r=>Xe(this.dh,r,this.formatter)):t=this.originalModel.partitionTable(e.partitions).then(r=>Xe(this.dh,r,this.formatter))),this.setNextModel(t)}}partitionKeysTable(){if(!xe(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionKeysTable()}partitionMergedTable(){if(!xe(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionMergedTable()}partitionTable(e){if(!xe(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionTable(e)}get rollupConfig(){return this.rollup}set rollupConfig(e){if(Oe.debug("set rollupConfig",e),!this.isRollupAvailable)throw new Error("Rollup Rows are not available");if(!wi(e,this.rollup)){this.rollup=e;var t=Promise.resolve(this.originalModel);Ae(this.originalModel)&&e!=null&&(t=this.originalModel.table.rollup(e).then(r=>Xe(this.dh,r,this.formatter))),this.setNextModel(t)}}get selectDistinctColumns(){return this.selectDistinct}set selectDistinctColumns(e){if(Oe.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){Oe.debug("Ignore same selectDistinctColumns",e);return}this.selectDistinct=e;var t=e.map(i=>this.originalColumns.find(a=>a.name===i)).filter(i=>i!=null),r=Promise.resolve(this.originalModel);Ae(this.originalModel)&&t.length>0&&(r=this.originalModel.table.selectDistinct(t).then(i=>Xe(this.dh,i,this.formatter))),this.setNextModel(r)}set totalsConfig(e){this.modelPromise==null&&(this.model.totalsConfig=e)}get isFilterRequired(){return this.originalModel.isFilterRequired}get isPartitionRequired(){return xe(this.originalModel)?this.originalModel.isPartitionRequired:void 0}get isPartitionAwareSourceTable(){return xe(this.originalModel)&&this.originalModel.isPartitionAwareSourceTable}get formatter(){return this.originalModel.formatter}set formatter(e){this.originalModel.formatter=e}get columnAlignmentMap(){return this.originalModel.columnAlignmentMap}set columnAlignmentMap(e){this.originalModel.columnAlignmentMap=e}}function cr(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function Xs(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){cr(a,r,i,l,s,"next",o)}function s(o){cr(a,r,i,l,s,"throw",o)}l(void 0)})}}class qi{static makeModel(e,t){var r=arguments;return Xs(function*(){var i=r.length>2&&r[2]!==void 0?r[2]:new Ke(e),a=null;return!te.isTreeTable(t)&&!te.isPartitionedTable(t)&&t.hasInputTable&&(a=yield t.inputTable()),new qs(e,t,i,a)})()}}function pr(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function vr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?pr(Object(t),!0).forEach(function(r){Zs(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):pr(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Zs(n,e,t){return(e=Ys(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ys(n){var e=Qs(n,"string");return typeof e=="symbol"?e:e+""}function Qs(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function it(n,e){return no(n)||to(n,e)||eo(n,e)||Js()}function Js(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
6
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function eo(n,e){if(n){if(typeof n=="string")return mr(n,e);var t={}.toString.call(n).slice(8,-1);return t==="Object"&&n.constructor&&(t=n.constructor.name),t==="Map"||t==="Set"?Array.from(n):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?mr(n,e):void 0}}function mr(n,e){(e==null||e>n.length)&&(e=n.length);for(var t=0,r=Array(e);t<e;t++)r[t]=n[t];return r}function to(n,e){var t=n==null?null:typeof Symbol<"u"&&n[Symbol.iterator]||n["@@iterator"];if(t!=null){var r,i,a,l,s=[],o=!0,u=!1;try{if(a=(t=t.call(n)).next,e===0){if(Object(t)!==t)return;o=!1}else for(;!(o=(r=a.call(t)).done)&&(s.push(r.value),s.length!==e);o=!0);}catch(d){u=!0,i=d}finally{try{if(!o&&t.return!=null&&(l=t.return(),Object(l)!==l))return}finally{if(u)throw i}}return s}}function no(n){if(Array.isArray(n))return n}function Xi(n,e){var t=["isStuckToBottom","isStuckToRight","movedColumns","movedRows"];return n===e||t.every(r=>n[r]===e[r])}function Zi(n,e){var t=["advancedFilters","aggregationSettings","customColumnFormatMap","columnAlignmentMap","isFilterBarShown","quickFilters","customColumns","reverse","rollupConfig","showSearchBar","searchValue","selectDistinctColumns","selectedSearchColumns","sorts","invertSearchColumns","pendingDataMap","frozenColumns","conditionalFormats","columnHeaderGroups","partitionConfig"];return n===e||n.metrics!=null&&e.metrics!=null&&n.metricCalculator===e.metricCalculator&&n.metrics.userColumnWidths===e.metrics.userColumnWidths&&n.metrics.userRowHeights===e.metrics.userRowHeights&&t.every(r=>n[r]===e[r])}function ro(){return A((n,e)=>Z.dehydrateGridState(n,e),(n,e)=>{var t=it(n,2),r=t[0],i=t[1],a=it(e,2),l=a[0],s=a[1];return r===l&&Xi(i,s)})}function io(){return A((n,e)=>{var t=new Z(n.dh);return t.dehydrateIrisGridState(n,e)},(n,e)=>{var t=it(n,2),r=t[0],i=t[1],a=it(e,2),l=a[0],s=a[1];return r===l&&Zi(i,s)})}function ao(){return A((n,e,t)=>{var r=new Z(n.dh);return vr(vr({},r.dehydrateIrisGridState(n,e)),Z.dehydrateGridState(n,t))},(n,e)=>{var t=it(n,3),r=t[0],i=t[1],a=t[2],l=it(e,3),s=l[0],o=l[1],u=l[2];return r===s&&Zi(i,o)&&Xi(a,u)})}var pn={makeMemoizedGridStateDehydrator:ro,makeMemoizedIrisGridStateDehydrator:io,makeMemoizedCombinedGridStateDehydrator:ao};function qt(){var n=y.useContext(Qa);if(n==null)throw new Error("LayoutManager not available, did you add a LayoutManagerContext.Provider to the tree?");return n}function lo(n,e){return ho(n)||uo(n,e)||oo(n,e)||so()}function so(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
7
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function oo(n,e){if(n){if(typeof n=="string")return fr(n,e);var t={}.toString.call(n).slice(8,-1);return t==="Object"&&n.constructor&&(t=n.constructor.name),t==="Map"||t==="Set"?Array.from(n):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?fr(n,e):void 0}}function fr(n,e){(e==null||e>n.length)&&(e=n.length);for(var t=0,r=Array(e);t<e;t++)r[t]=n[t];return r}function uo(n,e){var t=n==null?null:typeof Symbol<"u"&&n[Symbol.iterator]||n["@@iterator"];if(t!=null){var r,i,a,l,s=[],o=!0,u=!1;try{if(a=(t=t.call(n)).next,e!==0)for(;!(o=(r=a.call(t)).done)&&(s.push(r.value),s.length!==e);o=!0);}catch(d){u=!0,i=d}finally{try{if(!o&&t.return!=null&&(l=t.return(),Object(l)!==l))return}finally{if(u)throw i}}return s}}function ho(n){if(Array.isArray(n))return n}function co(n,e,t,r,i){if(e>t)throw new Error("Persisted state ".concat(i," is a newer version than the current version. Persisted version: ").concat(e,". Current version: ").concat(t));for(var a=n,l=e;l<t;){var s=r.filter(u=>u.from===l);if(s.length===0)throw new Error("No migration found for persisted state ".concat(i," from version ").concat(l));if(s.length>1)throw new Error("Multiple migrations found for persisted state ".concat(i," from version ").concat(l));var o=s[0];try{a=o.migrate(a),l+=1}catch(u){throw new Error("Error migrating persisted state ".concat(i," from version ").concat(o.from,": ").concat(u),{cause:u})}}return a}function Yi(n,e){var t=fn(),r=y.useMemo(()=>Se(),[]),i=y.useContext(Ja),a=e.type,l=e.version,s=e.migrations,o=s===void 0?[]:s,u=e.deleteOnUnmount,d=u===void 0?!0:u,c=y.useState(()=>{var f=t!=null?i==null?void 0:i.getState(t,a):void 0;return f==null?typeof n=="function"?n():n:f.version!==l?co(f.state,f.version,l,o,a):f.state}),p=lo(c,2),m=p[0],v=p[1],b=y.useMemo(()=>({type:a,version:l,state:m}),[m,a,l]);return y.useDebugValue(b),y.useEffect(function(){t!=null&&(i==null||i.addState(r,t,b))},[i,r,t,b]),y.useEffect(function(){return()=>{d&&t!=null&&(i==null||i.removeState(r,t,a))}},[i,d,r,t,a]),y.useEffect(()=>()=>{t!=null&&(i==null||i.deregisterHook(r,t,a))},[i,r,t,a]),[m,v]}function En(n,e,t){return(e=po(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function po(n){var e=vo(n,"string");return typeof e=="symbol"?e:e+""}function vo(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class at{}En(at,"OPEN","ChartEvent.OPEN");En(at,"CLOSE","ChartEvent.CLOSE");En(at,"COLUMN_SELECTED","ChartEvent.COLUMN_SELECTED");function pt(n,e,t){return(e=mo(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function mo(n){var e=fo(n,"string");return typeof e=="symbol"?e:e+""}function fo(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class ae{}pt(ae,"OPEN_GRID","IrisGridEvent.OPEN_GRID");pt(ae,"CLOSE_GRID","IrisGridEvent.CLOSE_GRID");pt(ae,"DATA_SELECTED","IrisGridEvent.DATA_SELECTED");pt(ae,"COLUMN_SELECTED","IrisGridEvent.COLUMN_SELECTED");pt(ae,"STATE_CHANGED","IrisGridEvent.STATE_CHANGED");pt(ae,"CREATE_CHART","IrisGridevent.CREATE_CHART");function Qi(n,e,t){return(e=go(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function go(n){var e=bo(n,"string");return typeof e=="symbol"?e:e+""}function bo(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Tn{}Qi(Tn,"OPEN","PandasEvent.OPEN");Qi(Tn,"CLOSE","PandasEvent.CLOSE");var yo=el;function So(n){var e=n.children,t=n.descriptor,r=t.name,i=t.type,a=t.description,l=t.displayName,s=i.replace(/([a-z])([A-Z])/g,"$1 $2");return h.jsxs("div",{className:"tab-tooltip-grid-container",children:[h.jsxs("span",{className:"tab-tooltip-title",children:[s," Name"]}),h.jsxs("div",{className:"tab-tooltip-name-wrapper",children:[h.jsx("span",{className:"tab-tooltip-name",children:r}),h.jsx(tl,{UNSAFE_className:"tab-tooltip-copy",tooltip:"Copy name",copy:r,isQuiet:!0})]}),r!==l&&!!l&&h.jsxs(h.Fragment,{children:[h.jsx("span",{className:"tab-tooltip-title",children:"Display Name"}),h.jsx("span",{className:"tab-tooltip-name",children:l})]}),!!a&&h.jsx("div",{className:"tab-tooltip-description",children:a}),e]})}var Mn=Ei(So);function vn(n,e,t){return(e=Co(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Co(n){var e=wo(n,"string");return typeof e=="symbol"?e:e+""}function wo(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Ji extends y.PureComponent{constructor(e){var t;super(e),t=this,vn(this,"getCachedRenderTabTooltip",A((r,i)=>r?()=>h.jsx(Mn,{descriptor:i}):void 0)),vn(this,"getCachedActions",A(function(r){var i,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:X;return[...a,{title:"Copy ".concat((i=r.displayType)!==null&&i!==void 0?i:r.type," Name"),group:Ti.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 e=this.props.descriptor;nl(e.name)}getErrorMessage(){var e=this.props,t=e.descriptor,r=e.errorMessage,i=this.state,a=i.isClientDisconnected,l=i.isPanelDisconnected,s=i.isWidgetDisconnected,o=i.isWaitingForReconnect;if(r!=null&&r!=="")return"".concat(r);if(a&&l&&o)return`Disconnected from server.
8
+ Check your internet connection.`;if(a&&l)return"Disconnected from server.";if(l){var u=t.name,d=t.type;return'Variable "'.concat(u,`" not set.
9
+ `).concat(d," does not exist yet.")}if(s)return"".concat(t.name," is unavailable.")}handleSessionClosed(e){var t=this.props.onSessionClose;this.setState({isPanelDisconnected:!0,isWaitingForReconnect:!1}),t==null||t(e)}render(){var e=this.props,t=e.children,r=e.className,i=e.componentPanel,a=e.descriptor,l=e.isLoaded,s=e.isLoading,o=e.glContainer,u=e.glEventHub,d=e.isDisconnected,c=e.isClonable,p=e.isRenamable,m=e.showTabTooltip,v=m===void 0?!1:m,b=e.renderTabTooltip,f=e.onClearAllFilters,g=e.onErrorAction,w=e.onHide,P=e.onFocus,D=e.onBlur,E=e.onResize,S=e.onSessionOpen,C=e.onShow,F=e.onTabBlur,T=e.onTabFocus,M=e.onTabClicked,k=e.additionalActions,O=this.state,I=O.isPanelDisconnected,j=O.isWidgetDisconnected,N=O.isPanelInactive,U=this.getErrorMessage(),R=b??this.getCachedRenderTabTooltip(v,a),x=this.getCachedActions(a,k);return h.jsxs(dt,{className:ye(r,{disconnected:I||j||d,inactive:N}),componentPanel:i,glContainer:o,glEventHub:u,onClearAllFilters:f,onErrorAction:g,onHide:w,onFocus:P,onBlur:D,onResize:E,onShow:C,onSessionClose:this.handleSessionClosed,onSessionOpen:S,onTabBlur:F,onTabFocus:T,onTabClicked:M,renderTabTooltip:R,errorMessage:U,isLoaded:l,isLoading:s,isClonable:c,isRenamable:p,additionalActions:x,children:[t,N&&h.jsx("div",{className:"fill-parent-absolute"})]})}}vn(Ji,"defaultProps",{className:"",isClonable:!0,isDisconnected:!1,isLoading:!1,isLoaded:!0,isRenamable:!0,showTabTooltip:!0});var Lt=Ei(Ji);function Po(n){var e=n.columnMap,t=n.inputFilterMap,r=n.linkedColumnMap,i=n.onAdd,a=n.onOpenLinker,l=n.waitingFilterMap,s=n.waitingInputMap,o=y.useMemo(()=>{var v=Array.from(s.keys()),b=v.find(w=>t.get(w)!=null),f=v.find(w=>r.get(w)!=null),g=Me.join(v.map(w=>'"'.concat(w,'"')));return b!=null&&b&&f!=null&&f?"Use a filter control or linked table to set a value for ".concat(g):b!=null&&b?"Set a filter control value for ".concat(g):"Double click a row in a linked table to set a value for ".concat(g)},[t,r,s]),u=y.useMemo(()=>Array.from(e.values()),[e]),d=y.useCallback(v=>{v.stopPropagation(),v.preventDefault(),i(Array.from(l.values()))},[i,l]),c=y.useCallback(v=>{v.stopPropagation(),v.preventDefault(),a()},[a]),p=l.size>0,m=!p&&s.size>0;return h.jsx("div",{className:"chart-panel-overlay chart-filter-overlay",children:h.jsxs("div",{className:ye("chart-panel-overlay-content chart-filter-overlay-content",{"chart-filter-waiting-filter":p},{"chart-filter-waiting-input":m}),children:[p&&h.jsxs(h.Fragment,{children:[h.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:"}),h.jsx("div",{className:"waiting-filter-list",children:u.map(v=>{var b=l.has(v.name),f=b?Wl:Kl;return h.jsxs("div",{className:ye("waiting-filter-item",{"is-invalid":b}),children:[h.jsx(be,{icon:f}),v.name]},v.name)})}),h.jsxs("div",{children:[h.jsx($,{kind:"primary",onClick:d,children:"Add Input Filters"}),h.jsx($,{kind:"primary",onClick:c,children:"Open Linker Tool"})]})]}),m&&h.jsxs(h.Fragment,{children:[h.jsx("div",{className:"info-message",children:"Waiting for User Input"}),h.jsx("div",{className:"",children:o})]})]})})}function Ut(n){var e=n.columns,t=n.onColumnSelected,r=n.onMouseEnter,i=n.onMouseLeave;return h.jsx("div",{className:"chart-panel-overlay chart-column-selector-overlay",children:h.jsxs("div",{className:ye("chart-panel-overlay-content"),children:[h.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:"}),h.jsx("div",{className:"waiting-column-select-list",children:e.map(a=>h.jsx(Wi,{className:ye("btn-chart-column-selector",Ut.makeButtonClassName(a.name)),onClick:()=>t(a.name),onMouseEnter:()=>{r==null||r(a)},onMouseLeave:i,disabled:!a.isValid,isLinked:a.isActive,children:a.name},a.name))})]})})}Ut.makeButtonClassName=n=>"btn-chart-column-selector-".concat(n);function Je(n){return n.settings!==void 0}function ea(n){return n.figure!==void 0}function ta(n){if(n==null)return!1;var e=n,t=e.settings,r=e.tableSettings;return typeof t=="object"&&typeof r=="object"}function na(n){return n!=null&&ta(n.panelState)}var Dn=ht(je.COLUMNS_CHANGED),Eo=Dn.listen,Gt=Dn.emit,To=Dn.useListener,Fn=ht(je.TABLE_CHANGED);Fn.listen;var Ht=Fn.emit,Mo=Fn.useListener,kn=ht(je.FILTERS_CHANGED);kn.listen;var ra=kn.emit,Do=kn.useListener,Ln=Object.freeze({LINK_POINT_SELECTED:"LinkerEvent.LINK_POINT_SELECTED",SOURCE_DATA_SELECTED:"LinkerEvent.SOURCE_DATA_SELECTED",REGISTER_TARGET:"LinkerEvent.REGISTER_TARGET"}),In=ht(Ln.LINK_POINT_SELECTED),Fo=In.listen,Xt=In.emit;In.useListener;var On=ht(Ln.SOURCE_DATA_SELECTED),ko=On.listen,ia=On.emit;On.useListener;var _n=ht(Ln.REGISTER_TARGET),Lo=_n.listen,gr=_n.emit;_n.useListener;function Io(n,e){return Ao(n)||jo(n,e)||_o(n,e)||Oo()}function Oo(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
10
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function _o(n,e){if(n){if(typeof n=="string")return br(n,e);var t={}.toString.call(n).slice(8,-1);return t==="Object"&&n.constructor&&(t=n.constructor.name),t==="Map"||t==="Set"?Array.from(n):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?br(n,e):void 0}}function br(n,e){(e==null||e>n.length)&&(e=n.length);for(var t=0,r=Array(e);t<e;t++)r[t]=n[t];return r}function jo(n,e){var t=n==null?null:typeof Symbol<"u"&&n[Symbol.iterator]||n["@@iterator"];if(t!=null){var r,i,a,l,s=[],o=!0,u=!1;try{if(a=(t=t.call(n)).next,e!==0)for(;!(o=(r=a.call(t)).done)&&(s.push(r.value),s.length!==e);o=!0);}catch(d){u=!0,i=d}finally{try{if(!o&&t.return!=null&&(l=t.return(),Object(l)!==l))return}finally{if(u)throw i}}return s}}function Ao(n){if(Array.isArray(n))return n}function yr(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function _t(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?yr(Object(t),!0).forEach(function(r){fe(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):yr(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function fe(n,e,t){return(e=No(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function No(n){var e=xo(n,"string");return typeof e=="symbol"?e:e+""}function xo(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ue=Y.module("ChartPanel"),Ro=150;function $o(n){return n.inputFilters!=null}function Vo(n){return n.panelState!=null}class Zt extends y.Component{constructor(e){super(e),fe(this,"panelContainer",void 0),fe(this,"pending",void 0),fe(this,"getWaitingInputMap",A((u,d,c)=>{if(!u)return new Map;var p=new Map(d);return c.forEach((m,v)=>{p.delete(v)}),p})),fe(this,"getWaitingFilterMap",A((u,d,c,p,m)=>{if(!u)return new Map;var v=new Map(d);return c.forEach((b,f)=>{v.delete(f)}),m.forEach((b,f)=>{v.delete(f)}),p.forEach((b,f)=>{v.delete(f)}),v})),fe(this,"getInputFilterColumnMap",A((u,d)=>{for(var c=new Map,p=0;p<d.length;p+=1){var m=d[p],v=m.name,b=m.type,f=u.get(v);f!=null&&f.type===b&&c.set(v,m)}return c})),fe(this,"getLinkedColumnMap",A((u,d)=>{for(var c=new Map,p=L.getIdFromPanel(this),m=0;m<d.length;m+=1){var v=d[m],b=null;if(v.start!=null&&v.start.panelId===p&&u.has(v.start.columnName)?b=v.start.columnName:v.end&&v.end.panelId===p&&u.has(v.end.columnName)&&(b=v.end.columnName),b!=null&&u.has(b)){var f=u.get(b);_(f),c.set(b,f)}}return c})),fe(this,"getSelectorColumns",A((u,d,c)=>Array.from(u.values()).map(p=>({name:p.name,type:p.type,isValid:c?c(this,p,{type:"chartLink"}):!1,isActive:d.has(p.name)})))),fe(this,"getWidgetPanelDescriptor",A(u=>{var d="Chart";if(Je(u))d=u.table;else if(ea(u)){var c;d=(c=u.figure)!==null&&c!==void 0?c:d}else{var p;d=(p=u.name)!==null&&p!==void 0?p:d}return _t(_t({},u),{},{type:"Chart",name:d})})),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=ut(this.updateModelFromSource.bind(this),Ro),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.panelContainer=ve.createRef(),this.pending=new Fi;var t=e.metadata,r=e.panelState,i=r??{},a=i.filterValueMap,l=a===void 0?[]:a,s=i.settings,o=s===void 0?{}:s;this.state={settings:o,error:void 0,isActive:!1,isDisconnected:!1,isLoading:!1,isLoaded:!1,isLinked:t!=null&&Je(t)&&t.settings.isLinked,filterMap:new Map(l),filterValueMap:new Map(l),model:void 0,columnMap:new Map,panelState:r}}componentDidMount(){this.isHidden()||(this.setState({isActive:!0}),this.initModel())}componentDidUpdate(e,t){var r=this.props,i=r.inputFilters,a=r.source,l=r.makeModel,s=this.state,o=s.columnMap,u=s.model,d=s.filterMap,c=s.filterValueMap,p=s.isLinked,m=s.settings;l!==e.makeModel&&this.initModel(),u!=null&&(o!==t.columnMap&&this.pruneFilterMaps(),i!==e.inputFilters&&this.updateChangedInputFilters(i,e.inputFilters),d!==t.filterMap?this.updateFilters():c!==t.filterValueMap&&this.updatePanelState(),m!==t.settings&&sr(u)&&(u.updateSettings(m),this.updatePanelState()),p!==t.isLinked?a&&(p?(this.startListeningToSource(a),this.updateModelFromSource()):this.stopListeningToSource(a)):p&&a!==e.source&&(e.source&&this.stopListeningToSource(e.source),a&&(this.startListeningToSource(a),this.updateModelFromSource())))}componentWillUnmount(){this.pending.cancel();var e=this.state.model,t=this.props.source;e!=null&&t&&this.stopListeningToSource(t)}initModel(){this.setState({isLoading:!0,isLoaded:!1,error:void 0,isDisconnected:!1});var e=this.props.makeModel;this.pending.cancel(),this.pending.add(e(),t=>{t.close()}).then(this.handleLoadSuccess,this.handleLoadError)}startListeningToSource(e){ue.debug("startListeningToSource",e);var t=this.state.model;_(t);var r=t.dh;e.addEventListener(r.Table.EVENT_CUSTOMCOLUMNSCHANGED,this.handleSourceColumnChange),e.addEventListener(r.Table.EVENT_FILTERCHANGED,this.handleSourceFilterChange),e.addEventListener(r.Table.EVENT_SORTCHANGED,this.handleSourceSortChange)}stopListeningToSource(e){ue.debug("stopListeningToSource",e);var t=this.state.model;_(t);var r=t.dh;e.removeEventListener(r.Table.EVENT_CUSTOMCOLUMNSCHANGED,this.handleSourceColumnChange),e.removeEventListener(r.Table.EVENT_FILTERCHANGED,this.handleSourceFilterChange),e.removeEventListener(r.Table.EVENT_SORTCHANGED,this.handleSourceSortChange)}loadModelIfNecessary(){var e=this.state,t=e.isActive,r=e.isLoaded,i=e.isLoading;t&&!r&&!i&&this.initModel()}isHidden(){var e=this.props.glContainer,t=e.isHidden;return t}handleColumnSelected(e){var t=this.props.glEventHub,r=this.state.columnMap,i=L.getIdFromPanel(this);_(i);var a=r.get(e);a!=null&&Xt(t,i,a,{type:"chartLink"})}handleColumnMouseEnter(e){var t=e.type,r=e.name,i=this.props.columnSelectionValidator;ue.debug("handleColumnMouseEnter",i,t,r),i&&i(this,{type:t,name:r},{type:"chartLink"})}handleColumnMouseLeave(){var e=this.props.columnSelectionValidator;ue.debug("handleColumnMouseLeave",e),e&&e(this,void 0,{type:"chartLink"})}handleDisconnect(){this.setState({error:new Error("Figure disconnected"),isDisconnected:!0})}handleFilterAdd(e){for(var t=0;t<e.length;t+=1)this.openInputFilter(e[t])}handleOpenLinker(){var e=this.props,t=e.localDashboardId,r=e.setActiveTool,i=e.setDashboardIsolatedLinkerPanelId;i(t,void 0),r(Pe.LINKER)}handleReconnect(){this.setState({isDisconnected:!1,error:void 0}),this.sendColumnChange(),this.updateColumnFilters()}handleLoadSuccess(e){ue.debug("handleLoadSuccess");var t=this.state.model;this.setState({model:e,isLoaded:!0},()=>{var r=this.props,i=r.inputFilters,a=r.source,l=this.state,s=l.filterMap,o=l.isLinked;e!==t&&(this.sendColumnChange(),this.updateColumnFilters(),this.updateInputFilters(i,s.size>0||e.isFilterRequired()),a&&o&&(this.startListeningToSource(a),this.updateModelFromSource()))})}handleLoadError(e){Ve.isCanceled(e)||(ue.error("handleLoadError",e),this.setState({error:e,isLoading:!1}))}handleSourceColumnChange(){this.updateModelFromSource()}handleSourceFilterChange(){this.updateModelFromSource()}handleSourceSortChange(){this.updateModelFromSource()}updateModelFromSource(){var e=this.props,t=e.metadata,r=e.source,i=this.state,a=i.isLinked,l=i.model;if(!a||!l||!r){ue.debug2("updateModelFromSource ignoring",a,l,r);return}var s=l.dh;if(this.pending.cancel(),Je(t)){var o=t.settings;this.pending.add(rt.makeFigureFromSettings(s,o,r),u=>u.close()).then(u=>{sr(l)&&l.setFigure(u)}).catch(this.handleLoadError)}this.updatePanelState()}updatePanelState(){var e=this.props.sourcePanel,t=this.state,r=t.panelState,i=t.filterValueMap,a=t.settings,l=r??{},s=l.tableSettings;if(e&&$o(e.props)&&Vo(e.state)){var o=e.props.inputFilters,u=e.state.panelState;u!=null&&(s=Z.extractTableSettings(u,o))}this.setState({panelState:{settings:a,tableSettings:s,filterValueMap:Array.from(i)}})}handleError(){this.setState({isLoading:!1})}handleSettingsChanged(e){this.setState(t=>{var r=t.settings,i=_t(_t({},r),e);return ue.debug("Updated settings",i),{settings:i}})}handleHide(){this.setActive(!1)}handleShow(){this.setActive(!0)}handleTabBlur(){this.setActive(!1)}handleTabFocus(){var e=this.isHidden();this.setActive(!e)}handleUpdate(e){var t=e.isLoading;this.setState({isLoading:t})}handleClearAllFilters(){this.setState({filterValueMap:new Map,filterMap:new Map}),this.updatePanelState()}openInputFilter(e){var t=this.props.glEventHub,r=e.name,i=e.type;t.emit(je.OPEN_INPUT,{title:"".concat(r," Filter"),panelState:{name:r,type:i,isValueShown:!0},createNewStack:!0,focusElement:"input"})}setActive(e){this.setState({isActive:e},()=>{e&&this.loadModelIfNecessary()})}sendColumnChange(){var e=this.state.model;if(e){var t=this.props.glEventHub,r=L.getIdFromPanel(this);_(r),Gt(t,r,Array.from(e.getFilterColumnMap().values()))}}getCoordinateForColumn(e){var t,r=Ut.makeButtonClassName(e);if(!this.panelContainer.current)return null;var i=this.panelContainer.current.querySelector(".".concat(r)),a=(t=i==null?void 0:i.getBoundingClientRect())!==null&&t!==void 0?t:null;if(a==null||a.width<=0||a.height<=0)return null;var l=a.left+a.width/2,s=a.bottom;return[l,s]}setFilterMap(e){ue.debug("setFilterMap",e),this.setState(t=>{var r=t.columnMap,i=t.filterMap,a=null,l=new Map(t.filterValueMap);return e.forEach((s,o)=>{var u=s.columnType,d=s.filterList,c=r.get(o);if(!(c==null||c.type!==u)){if(d.length===0){ue.debug("Ignoring empty filterList for column",o);return}var p=d[0].value;l.set(o,p),i.get(o)!==p&&(a===null&&(a=new Map(i)),a.set(o,p))}}),{filterValueMap:l,filterMap:a??i}})}unsetFilterValue(e){this.setState(t=>{var r=this.props.inputFilters,i=t.columnMap,a=t.filterMap,l=t.filterValueMap;if(!l.has(e))return null;l=new Map(t.filterValueMap),l.delete(e);var s=this.getInputFilterColumnMap(i,r);if(s.has(e)){var o,u=a.get(e),d=(o=s.get(e))===null||o===void 0?void 0:o.value;d!=null&&u!==d&&(a=new Map(t.filterMap),d.length>0?a.set(e,d):a.delete(e))}else a=new Map(t.filterMap),a.delete(e);return{filterMap:a,filterValueMap:l}})}updateChangedInputFilters(e,t){var r=t.filter(a=>e.find(l=>l.name===a.name&&l.type===a.type)===void 0);r.length>0&&this.deleteInputFilters(r);var i=e.filter(a=>!t.includes(a));i.length>0&&this.updateInputFilters(i)}updateInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;this.setState(r=>{for(var i=r.columnMap,a=new Map(r.filterValueMap),l=new Map(r.filterMap),s=t?{filterMap:l,filterValueMap:a}:{},o=0;o<e.length;o+=1){var u=e[o],d=u.name,c=u.type,p=u.value,m=i.get(d);m!=null&&m.type===c&&(p!=null&&l.get(d)!==p&&(p===""?l.delete(d):l.set(d,p),s.filterMap=l),a.has(d)&&(a.delete(d),s.filterValueMap=a))}return ue.debug("updateInputFilters",s),s})}deleteInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;this.setState(r=>{for(var i=r.columnMap,a=r.filterValueMap,l=new Map(r.filterMap),s=t,o=0;o<e.length;o+=1){var u=e[o],d=u.name,c=u.type,p=i.get(d);if(p!=null&&p.type===c&&l.has(d)){var m=l.get(d);if(a.has(d)){var v=a.get(d);v!==m&&v!=null&&(s=!0,l.set(d,v))}else s=!0,l.delete(d)}}return ue.debug("deleteInputFilters",s),s?{filterMap:l}:null})}updateColumnFilters(){this.setState(e=>{var t=e.model;return t?{columnMap:t.getFilterColumnMap()}:null})}updateFilters(){var e=this.state,t=e.columnMap,r=e.filterMap,i=e.model;_(i);var a=this.getWaitingInputMap(i.isFilterRequired(),t,r);if(i.setFilter(r),r.size>0&&a.size===0){var l=i.getDefaultTitle(),s=Me.join(Array.from(r.entries()).map(o=>{var u=Io(o,2),d=u[0],c=u[1];return"".concat(d,": ").concat(c)}));l?i.setTitle("".concat(l,'<br><span style="font-size: smaller">').concat(s,"</span>")):i.setTitle(s),ue.debug2("updateFilters filters set",r),this.setState({isLoading:!0})}else ue.debug2("updateFilters waiting on inputs",a),i.setTitle(i.getDefaultTitle()),this.setState({isLoading:!1});this.updatePanelState()}pruneFilterMaps(){this.setState(e=>{var t=e.columnMap,r=new Map(e.filterMap),i=new Map(e.filterValueMap),a={};return e.filterValueMap.forEach((l,s)=>{t.has(s)||(i.delete(s),a.filterValueMap=i)}),e.filterMap.forEach((l,s)=>{t.has(s)||(r.delete(s),a.filterMap=r)}),a})}render(){var e=this.props,t=e.columnSelectionValidator,r=e.glContainer,i=e.glEventHub,a=e.inputFilters,l=e.isLinkerActive,s=e.links,o=e.metadata,u=e.settings,d=e.Plotly,c=e.containerRef,p=e.onPlotlyRelayout,m=e.onPlotlyClick,v=e.onPlotlyDoubleClick,b=e.onPlotlySelected,f=e.onPlotlyDeselect,g=e.onPlotlyClickAnnotation,w=e.onPlotlyLegendClick,P=e.onPlotlyLegendDoubleClick,D=e.onPlotlyWebGlContextLost,E=e.onPlotElementChange,S=this.state,C=S.columnMap,F=S.filterMap,T=S.error,M=S.model,k=S.isActive,O=S.isDisconnected,I=S.isLoaded,j=S.isLoading,N=this.getInputFilterColumnMap(C,a),U=this.getLinkedColumnMap(C,s),R=M!=null?this.getWaitingInputMap(M.isFilterRequired(),C,F):new Map,x=M!=null?this.getWaitingFilterMap(M.isFilterRequired(),C,F,U,N):new Map,z=T!=null?"Unable to open chart. ".concat(T):void 0,H=R.size>0,Q=C.size>0&&l,le=this.getWidgetPanelDescriptor(o);return h.jsx(Lt,{className:ye("iris-chart-panel",{"input-required":H}),componentPanel:this,glContainer:r,glEventHub:i,onHide:this.handleHide,onClearAllFilters:this.handleClearAllFilters,onShow:this.handleShow,onTabBlur:this.handleTabBlur,onTabFocus:this.handleTabFocus,errorMessage:z,isDisconnected:O,isLoading:j,isLoaded:I,descriptor:le,children:h.jsxs("div",{ref:this.panelContainer,className:"chart-panel-container h-100 w-100",children:[h.jsx("div",{className:"chart-container h-100 w-100",children:I&&M&&h.jsx(Ki,{isActive:k,model:M,settings:u,onDisconnect:this.handleDisconnect,onReconnect:this.handleReconnect,onUpdate:this.handleUpdate,onError:this.handleError,onSettingsChanged:this.handleSettingsChanged,Plotly:d,containerRef:c,onPlotlyRelayout:p,onPlotlyClick:m,onPlotlyDoubleClick:v,onPlotlySelected:b,onPlotlyDeselect:f,onPlotlyClickAnnotation:g,onPlotlyLegendClick:w,onPlotlyLegendDoubleClick:P,onPlotlyWebGlContextLost:D,onPlotElementChange:E})}),h.jsx(hn,{in:H&&!Q&&!j,mountOnEnter:!0,unmountOnExit:!0,children:h.jsx(Po,{inputFilterMap:N,linkedColumnMap:U,onAdd:this.handleFilterAdd,onOpenLinker:this.handleOpenLinker,columnMap:C,waitingFilterMap:x,waitingInputMap:R})}),h.jsx(hn,{in:Q,mountOnEnter:!0,unmountOnExit:!0,children:h.jsx(Ut,{columns:this.getSelectorColumns(C,U,t),onColumnSelected:this.handleColumnSelected,onMouseEnter:this.handleColumnMouseEnter,onMouseLeave:this.handleColumnMouseLeave})})]})})}}fe(Zt,"defaultProps",{columnSelectionValidator:null,isLinkerActive:!1,source:null,sourcePanel:null,panelState:null,settings:{},containerRef:null});fe(Zt,"displayName","ChartPanel");fe(Zt,"COMPONENT","ChartPanel");var Uo=(n,e)=>{var t=e.localDashboardId,r=e.metadata,i;r!=null&&Je(r)&&(i=r.sourcePanelId);var a=Wt(n,t),l=Di(n,t),s=bn(n),o=Kt(n,t),u=s===Pe.LINKER&&o===void 0;return{columnSelectionValidator:Ft(n,t),isLinkerActive:u,inputFilters:Dt(n,t),links:ct(n,t),source:i!=null?a.get(i):void 0,sourcePanel:i!=null?l.get(i):void 0,settings:Mt(n)}},jn=ze(Uo,{setActiveTool:Mi,setDashboardIsolatedLinkerPanelId:gn},null,{forwardRef:!0})(Zt);function Go(n,e){return Ko(n)||Wo(n,e)||Bo(n,e)||Ho()}function Ho(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
11
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Bo(n,e){if(n){if(typeof n=="string")return Sr(n,e);var t={}.toString.call(n).slice(8,-1);return t==="Object"&&n.constructor&&(t=n.constructor.name),t==="Map"||t==="Set"?Array.from(n):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?Sr(n,e):void 0}}function Sr(n,e){(e==null||e>n.length)&&(e=n.length);for(var t=0,r=Array(e);t<e;t++)r[t]=n[t];return r}function Wo(n,e){var t=n==null?null:typeof Symbol<"u"&&n[Symbol.iterator]||n["@@iterator"];if(t!=null){var r,i,a,l,s=[],o=!0,u=!1;try{if(a=(t=t.call(n)).next,e!==0)for(;!(o=(r=a.call(t)).done)&&(s.push(r.value),s.length!==e);o=!0);}catch(d){u=!0,i=d}finally{try{if(!o&&t.return!=null&&(l=t.return(),Object(l)!==l))return}finally{if(u)throw i}}return s}}function Ko(n){if(Array.isArray(n))return n}function we(n,e,t){return(e=zo(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function zo(n){var e=qo(n,"string");return typeof e=="symbol"?e:e+""}function qo(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var jt=Y.module("DropdownFilter"),Xo=150;class Fe extends y.Component{constructor(e){super(e),we(this,"dropdownRef",void 0),we(this,"getCompatibleColumns",A((a,l)=>a!=null?l.filter(s=>{var o=s.type;return o!==void 0&&te.isCompatibleType(o,a.columnType)}):[])),we(this,"getColumnOptions",A((a,l)=>{var s=-1,o=[];return o.push(h.jsx("option",{value:"-1",children:"Select a column"},"placeholder")),a.forEach((u,d)=>{o.push(h.jsx("option",{value:d,children:this.getItemLabel(a,d)},"".concat(u.name,"/").concat(u.type))),l!==null&&u.name===l.name&&u.type===l.type&&(s=d)}),[o,s]})),we(this,"getSelectedOptionIndex",A((a,l)=>a.indexOf(l))),we(this,"getValueOptions",A(a=>[h.jsx("option",{value:"-1",children:Fe.PLACEHOLDER},"-1"),...a.map((l,s)=>h.jsx("option",{value:s,children:l??"(null)"},"".concat(s,"/").concat(l)))])),we(this,"getItemLabel",ge((a,l)=>{var s=a[l],o=s.name,u=s.type;if(l>0&&a[l-1].name===o||l<a.length-1&&a[l+1].name===o){var d=u.substring(u.lastIndexOf(".")+1);return"".concat(o," (").concat(d,")")}return o},{max:1e3})),we(this,"sendUpdate",ut(()=>{var a=this.props.onChange,l=this.state,s=l.column,o=l.value,u=l.isValueShown;a({column:s,isValueShown:u,value:o??void 0})},Xo)),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=ve.createRef();var t=e.column,r=e.isValueShown,i=e.value;this.state={column:t,id:Se(),selectedColumn:t,disableCancel:!r,isValueShown:r,value:i}}componentDidUpdate(e,t){var r=this.props,i=r.source,a=r.values,l=r.isLoaded,s=this.state,o=s.column,u=s.value,d=s.isValueShown;l&&(i!==e.source&&this.sourceUpdated(),a!==e.values&&u!==""&&!a.includes(u)&&this.resetValue(),d!==t.isValueShown&&d&&this.focusInput(),(o!==t.column||u!==t.value||d!==t.isValueShown)&&this.sendUpdate())}componentWillUnmount(){this.sendUpdate.flush()}handleColumnChange(e){var t=e;if(jt.debug2("handleColumnChange",t),t!=null&&parseInt(t,10)<0){this.setState({selectedColumn:null});return}var r=this.props,i=r.columns,a=r.source,l=this.getCompatibleColumns(a,i);this.setState({selectedColumn:l[parseInt(t,10)]})}handleDropdownKeyPress(e){e.key==="Enter"&&(e.preventDefault(),e.stopPropagation(),jt.debug2("handleDropdownKeyPress"),this.sendUpdate(),this.sendUpdate.flush())}handleValueChange(e){var t=e,r=parseInt(t,10),i="",a=this.props.values;r>=0&&r<a.length?i=a[r]:jt.debug2("Selected default item"),jt.debug2("handleValueChange",i),this.setState({value:i})}handleSettingsCancel(){this.setState(e=>{var t=e.column;return{selectedColumn:t,isValueShown:!0}})}handleSettingsSave(){this.setState(e=>{var t=e.column,r=e.selectedColumn,i=e.value;return{column:r,value:t===r?i:"",isValueShown:!0,disableCancel:!1}})}handleSettingsClick(e){e.stopPropagation(),this.showSettings()}handleBackgroundClick(e){e.target!==this.dropdownRef.current&&this.focusInput()}sourceUpdated(){this.setState({column:null,selectedColumn:null,isValueShown:!1,disableCancel:!0,value:""})}showSettings(){var e=this.state.column;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 t=e.name,r=e.type,i=e.value,a=e.isValueShown,l=t!=null&&r!=null?{name:t,type:r}:null;this.setState(s=>{var o=s.value,u=s.isValueShown;return{column:l,value:i??o,isValueShown:a??u}})}render(){var e,t=this.props,r=t.columns,i=t.disableLinking,a=t.isLinkerActive,l=t.isLoaded,s=t.source,o=t.onColumnSelected,u=t.onSourceMouseEnter,d=t.onSourceMouseLeave,c=t.values,p=t.settingsError,m=this.state,v=m.column,b=m.disableCancel,f=m.id,g=m.isValueShown,w=m.selectedColumn,P=m.value,D=s===null,E=this.getCompatibleColumns(s,r),S=s!=null,C=(e=s==null?void 0:s.columnName)!==null&&e!==void 0?e:Fe.SOURCE_BUTTON_PLACEHOLDER,F=v!=null?"".concat(v.name," Filter"):null,T=this.getColumnOptions(E,w),M=Go(T,2),k=M[0],O=M[1],I=this.getValueOptions(c),j=this.getSelectedOptionIndex(c,P),N=!S||w==null,U=g&&!a,R="source-column-btn-".concat(f),x="filter-column-select-".concat(f);return h.jsxs(Pn,{className:"dropdown-filter fill-parent-absolute",isFlipped:U,children:[h.jsx("div",{className:"dropdown-filter-settings-card",children:h.jsxs("div",{className:"dropdown-filter-card-content",children:[h.jsxs("div",{className:"dropdown-filter-settings-grid",children:[h.jsx("label",{htmlFor:R,children:"Source Column"}),h.jsx(Wi,{id:R,isLinked:S,onClick:o,onMouseEnter:u,onMouseLeave:d,className:Fe.SOURCE_BUTTON_CLASS_NAME,disabled:i,children:C}),h.jsx("div",{className:"text-muted small",children:"Select a source column for the list by linking to a table."}),h.jsx("label",{htmlFor:x,children:"Filter Column"}),h.jsx(Ct,{id:x,value:String(O),className:"custom-select",onChange:this.handleColumnChange,disabled:D,children:k}),h.jsx("div",{className:"text-muted small",children:"Dropdown filter control will apply its filter to all columns matching this name in this dashboard."})]}),p&&h.jsx("div",{className:"error-message text-center",children:p}),S&&h.jsxs("div",{className:"dropdown-filter-settings-buttons",children:[h.jsx($,{kind:"secondary",type:"button",onClick:this.handleSettingsCancel,disabled:b||g||a,tooltip:a?"Cancel disabled while linker open":void 0,children:"Cancel"}),h.jsx($,{kind:"primary",type:"button",className:"ml-2",onClick:this.handleSettingsSave,disabled:N||g||a,tooltip:a?"Save disabled while linker open":void 0,children:"Save"})]})]})}),h.jsx("div",{className:"dropdown-filter-value-card",onClick:this.handleBackgroundClick,"data-testid":"dropdown-filter-value-background",children:l&&h.jsxs(h.Fragment,{children:[h.jsx("div",{className:"dropdown-filter-column",children:h.jsx("div",{className:"dropdown-filter-column-title",children:F})}),h.jsxs("div",{className:"dropdown-filter-card-content",children:[h.jsx("div",{className:"dropdown-filter-value-input d-flex flex-column justify-content-center",children:h.jsx(Ct,{className:"custom-select",value:String(j),ref:this.dropdownRef,onChange:this.handleValueChange,onKeyDown:this.handleDropdownKeyPress,title:"Select Value",children:I})}),p&&h.jsx("div",{className:"error-message mt-3 text-center",children:p})]}),h.jsx("div",{className:"dropdown-filter-menu",children:h.jsx($,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:h.jsx(be,{icon:Sn,transform:"grow-4"}),tooltip:"Dropdown Filter Settings"})})]})})]})}}we(Fe,"defaultProps",{column:null,disableLinking:!1,isLinkerActive:!1,isLoaded:!1,isValueShown:!1,settingsError:null,source:null,value:"",values:[],onColumnSelected:()=>{},onSourceMouseEnter:()=>{},onSourceMouseLeave:()=>{}});we(Fe,"PLACEHOLDER","Select a value...");we(Fe,"SOURCE_BUTTON_CLASS_NAME","btn-dropdown-filter-selector");we(Fe,"SOURCE_BUTTON_PLACEHOLDER","Select a column");function Zo(n,e){return eu(n)||Jo(n,e)||Qo(n,e)||Yo()}function Yo(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
12
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Qo(n,e){if(n){if(typeof n=="string")return Cr(n,e);var t={}.toString.call(n).slice(8,-1);return t==="Object"&&n.constructor&&(t=n.constructor.name),t==="Map"||t==="Set"?Array.from(n):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?Cr(n,e):void 0}}function Cr(n,e){(e==null||e>n.length)&&(e=n.length);for(var t=0,r=Array(e);t<e;t++)r[t]=n[t];return r}function Jo(n,e){var t=n==null?null:typeof Symbol<"u"&&n[Symbol.iterator]||n["@@iterator"];if(t!=null){var r,i,a,l,s=[],o=!0,u=!1;try{if(a=(t=t.call(n)).next,e!==0)for(;!(o=(r=a.call(t)).done)&&(s.push(r.value),s.length!==e);o=!0);}catch(d){u=!0,i=d}finally{try{if(!o&&t.return!=null&&(l=t.return(),Object(l)!==l))return}finally{if(u)throw i}}return s}}function eu(n){if(Array.isArray(n))return n}function oe(n,e,t){return(e=tu(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function tu(n){var e=nu(n,"string");return typeof e=="symbol"?e:e+""}function nu(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var B=Y.module("DropdownFilterPanel"),ru=250,iu=Object.freeze({name:"Dropdown Filter",type:"DropdownFilter"}),au=(n,e)=>{var t=e.localDashboardId,r=L.getIdFromPanel({props:e}),i=Wt(n,t),a=ct(n,t),l=bn(n),s=Kt(n,t),o=l===Pe.LINKER&&(s===void 0||s===r),u=l===Pe.LINKER&&s!==void 0&&s!==r;return{columns:yn(n,t),columnSelectionValidator:Ft(n,t),dh:Li(n),isLinkerActive:o,disableLinking:u,settings:Mt(n),panelTableMap:i,dashboardLinks:a}},lu=ze(au,null,null,{forwardRef:!0});class Ee extends y.Component{constructor(e){super(e),oe(this,"dateTimeFormatter",void 0),oe(this,"dropdownFilterRef",void 0),oe(this,"panelContainer",void 0),oe(this,"pending",void 0),oe(this,"cleanup",void 0),oe(this,"columnFormats",void 0),oe(this,"getCachedValues",ge((v,b,f)=>{var g=b.type,w=b.name;return g!==void 0&&te.isDateType(g)?v.map(P=>this.dateTimeFormatter.format(P)):v.map(P=>P!=null&&g!=null?f.getFormattedString(P,g,w):null)},{max:1e3})),oe(this,"getCachedPanelLinks",ge((v,b)=>{var f=L.getIdFromPanel(b);return B.debug("getCachedPanelLinks",v,f),v.filter(g=>{var w;return((w=g.end)===null||w===void 0?void 0:w.panelId)===f})},{max:1e3})),oe(this,"getCachedSource",ge(v=>{B.debug("getCachedSource",v);var b;if(v.length>0){var f=Zo(v,1),g=f[0];b=g.start,v.length>1&&B.error("Filter has more that one link",v)}return b},{max:1e3})),oe(this,"getCachedSourceTable",ge((v,b)=>{var f;if(B.debug("getCachedSourceTable",v,b),b==null)return null;var g=b.panelId;return(f=v.get(g))!==null&&f!==void 0?f:null},{max:1e3})),oe(this,"getCachedSourceColumn",ge((v,b)=>{var f;return B.debug("getCachedSourceColumn",v,b),v==null||b==null?null:(f=v.columns.find(g=>{var w=g.name,P=g.type;return w===b.columnName&&P===b.columnType}))!==null&&f!==void 0?f:null},{max:1e3})),this.handleChange=ut(this.handleChange.bind(this),ru),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=ve.createRef(),this.panelContainer=ve.createRef(),this.pending=new Fi;var t=e.dh,r=e.panelState,i=e.settings;this.columnFormats=Jn.getColumnFormats(i),this.dateTimeFormatter=new ki(t,{showTimeZone:!1,showTSeparator:!0,defaultDateTimeFormatString:"yyyy-MM-dd HH:mm:ss.SSSSSSSSS"});var a=r??{},l=a.value,s=l===void 0?"":l,o=a.isValueShown,u=o===void 0?!1:o,d=a.name,c=a.type,p=a.timestamp,m=d!=null&&c!=null?{name:d,type:c}:void 0;this.state={column:m,formatter:new Ke(t,this.columnFormats),valuesTable:void 0,valuesColumn:void 0,sourceSize:0,value:s,timestamp:p,values:[],isValueShown:u,wasFlipped:!1,skipUpdate:!1,panelState:r,isDisconnected:!1,isLoading:!1,isLoaded:!1,error:null}}componentDidMount(){this.updateValuesTable();var e=this.props,t=e.dashboardLinks,r=e.panelTableMap,i=this.state,a=i.column,l=i.value,s=i.timestamp,o=this.getSourceTable(r,t);if(o!==null&&this.startListeningToSource(o),a!=null){var u=a.name,d=a.type;this.sendUpdate(u,d,l,s)}}componentDidUpdate(e,t){var r=this.props,i=r.dashboardLinks,a=r.panelTableMap,l=r.settings,s=this.state.valuesTable,o=this.getSource(i),u=this.getSourceTable(a,i),d=this.getSource(e.dashboardLinks),c=this.getSourceTable(e.panelTableMap,e.dashboardLinks);l!==e.settings&&l!==void 0&&this.updateFormatterSettings(l),s!==t.valuesTable&&t.valuesTable!=null&&(B.debug("Table in state modified, closing the old table."),t.valuesTable.close()),(u!==c||o!==d)&&this.updateValuesTable(),u!==c&&(c!==null&&this.stopListeningToSource(c),u!==null&&this.startListeningToSource(u))}componentWillUnmount(){var e=this.props,t=e.dashboardLinks,r=e.panelTableMap,i=this.state.valuesTable,a=this.getSourceTable(r,t);this.pending.cancel(),a!==null&&this.stopListeningToSource(a),this.cleanup&&this.cleanup(),i!=null&&i.close()}getCoordinateForColumn(){var e;if(this.panelContainer.current==null)return null;var t=this.panelContainer.current.querySelector(".".concat(Fe.SOURCE_BUTTON_CLASS_NAME)),r=(e=t==null?void 0:t.getBoundingClientRect())!==null&&e!==void 0?e:null;if(r==null||r.width<=0||r.height<=0)return null;var i=r.left+r.width/2,a=r.bottom;return[i,a]}getSettingsErrorMessage(){var e=this.state.sourceSize;if(e>Ee.MAX_TABLE_SIZE)return"Table too large, must have fewer than ".concat(Ee.MAX_TABLE_SIZE," options.")}getPanelErrorMessage(){var e=this.state.error;return e!=null?"".concat(e):void 0}getSource(e){var t=this.getCachedPanelLinks(e,this);return this.getCachedSource(t)}getSourceTable(e,t){var r=this.getSource(t);return this.getCachedSourceTable(e,r)}getValuesColumn(e,t){var r=this.getSource(t);return this.getCachedSourceColumn(e,r)}startListeningToSource(e){var t=this.props.dh;B.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 t=this.props.dh;B.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 t=e.column,r=e.isValueShown,i=r===void 0?!1:r,a=e.value,l=t??{},s=l.name,o=s===void 0?void 0:s,u=l.type,d=u===void 0?void 0:u,c=!0,p=Date.now();this.setState(m=>{var v,b=m.panelState,f=m.timestamp,g=m.wasFlipped,w=m.skipUpdate,P=b!=null&&i!==b.isValueShown&&o===b.name&&d===b.type&&a===b.value;return c=(v=!w&&i&&(!P||!g))!==null&&v!==void 0?v:!1,c||(p=f),{panelState:{isValueShown:i,name:o,type:d,value:a,timestamp:p??void 0},timestamp:p,wasFlipped:P,skipUpdate:!1}},()=>{c&&this.sendUpdate(o??null,d,a,p)})}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 t=e.detail;this.setState({sourceSize:t})}handleColumnSelected(){B.debug("handleColumnSelected");var e=this.props.glEventHub,t=L.getIdFromPanel(this);_(t),Xt(e,t,Ee.SOURCE_COLUMN,{type:"filterSource"})}handleClearAllFilters(){var e;(e=this.dropdownFilterRef)===null||e===void 0||(e=e.current)===null||e===void 0||e.clearFilter()}setPanelState(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,i=this.props.dashboardLinks;if(this.getSource(i)==null){B.debug("Ignore state update for unlinked filter",e);return}this.setState({skipUpdate:!r}),(t=this.dropdownFilterRef)===null||t===void 0||(t=t.current)===null||t===void 0||t.setFilterState(e)}sendUpdate(e,t,r,i){var a,l=this.props,s=l.dashboardLinks,o=l.glEventHub,u=(a=this.getSource(s))===null||a===void 0?void 0:a.panelId,d=u==null?[]:[u];B.debug("sendUpdate",{name:e,type:t,value:r,timestamp:i,excludePanelIds:d});var c=L.getIdFromPanel(this);_(c),ra(o,c,e!=null&&t!=null&&i!=null?{name:e,type:t,value:r??"=null",timestamp:i,excludePanelIds:d}:null)}updateValuesTable(){var e=this.props,t=e.dashboardLinks,r=e.panelTableMap,i=this.getSource(t),a=this.getSourceTable(r,t);if(B.debug("updateValuesTable",i,a),this.setState({values:[],valuesTable:void 0,error:null}),i==null){B.debug("Filter unlinked."),this.setState({isLoading:!1,isLoaded:!0,isValueShown:!1,sourceSize:0});return}this.setState({isLoading:!0}),a!=null&&(this.setState({isLoaded:!1,sourceSize:a.size}),this.pending.add(a.copy(),l=>l.close()).then(l=>{this.updateViewportListener(l),this.setState({valuesTable:l})}).catch(l=>{Ve.isCanceled(l)||(B.error(l),this.setState({isLoading:!1,error:l}))}))}applySourceSorts(){var e=this.props,t=e.dashboardLinks,r=e.panelTableMap,i=this.state.valuesTable,a=this.getSourceTable(r,t);if(B.debug("applySourceSorts",a==null?void 0:a.sort),i==null||a==null){B.debug("Table not initialized");return}var l=[...a.sort];i.applySort(l),this.setViewport(i)}applySourceFilters(){var e=this.props,t=e.dashboardLinks,r=e.panelTableMap,i=this.state.valuesTable,a=this.getSourceTable(r,t);if(B.debug("applySourceFilters",a==null?void 0:a.filter),i==null||a==null){B.debug("Table not initialized");return}var l=[...a.filter];i.applyFilter(l),this.setViewport(i)}updateViewportListener(e){var t=this.props.dh;if(B.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 t=this.props.dashboardLinks,r=this.getValuesColumn(e,t);if(!r){B.error("values column is null");return}e.setViewport(0,Ee.MAX_TABLE_SIZE-1,[r])}updateFormatterSettings(e){var t=this.props.dh,r=Jn.getColumnFormats(e);wi(this.columnFormats,r)||(this.columnFormats=r,this.setState({formatter:new Ke(t,r)}))}handleValuesTableUpdate(e){var t=e.detail,r=t.rows,i=this.props.dashboardLinks,a=this.state.valuesTable;if(!a){B.error("valuesTable is null");return}var l=this.getValuesColumn(a,i);if(!l){B.error("Values column not found");return}var s=r.map(o=>o.get(l));this.setState({values:s,isLoading:!1,isLoaded:!0,valuesColumn:l})}handleSourceMouseEnter(){var e=this.props.columnSelectionValidator;e&&e(this,Ee.SOURCE_COLUMN,{type:"filterSource"})}handleSourceMouseLeave(){var e=this.props.columnSelectionValidator;e&&e(this,void 0,{type:"filterSource"})}render(){var e=this.props,t=e.columns,r=e.dashboardLinks,i=e.disableLinking,a=e.glContainer,l=e.glEventHub,s=e.isLinkerActive,o=this.state,u=o.column,d=o.formatter,c=o.isDisconnected,p=o.isValueShown,m=o.value,v=o.values,b=o.valuesColumn,f=o.isLoading,g=o.isLoaded,w=this.getSource(r),P=this.getSettingsErrorMessage(),D=this.getPanelErrorMessage(),E=g&&b!=null?this.getCachedValues(v,b,d):X;return h.jsx(Lt,{errorMessage:D,isLoading:f,isLoaded:g,isDisconnected:c,className:"iris-dropdown-filter-panel",componentPanel:this,glContainer:a,glEventHub:l,onClearAllFilters:this.handleClearAllFilters,descriptor:iu,children:h.jsx("div",{ref:this.panelContainer,className:"dropdown-filter-container h-100 w-100 container",children:h.jsx(Fe,{ref:this.dropdownFilterRef,column:u,columns:t,isValueShown:p,isLinkerActive:s,disableLinking:i,isLoaded:g,settingsError:P,source:w,value:m,values:E,onChange:this.handleChange,onColumnSelected:this.handleColumnSelected,onSourceMouseEnter:this.handleSourceMouseEnter,onSourceMouseLeave:this.handleSourceMouseLeave})})})}}oe(Ee,"displayName","DropdownFilterPanel");oe(Ee,"COMPONENT","DropdownFilterPanel");oe(Ee,"MAX_TABLE_SIZE",256);oe(Ee,"SOURCE_COLUMN",Object.freeze({name:"FilterSource",type:null}));var et=lu(Ee);function wr(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function At(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?wr(Object(t),!0).forEach(function(r){gt(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):wr(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function gt(n,e,t){return(e=su(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function su(n){var e=ou(n,"string");return typeof e=="symbol"?e:e+""}function ou(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var W=Y.module("FilterSetManager"),uu="Enter name...",Pr="No Available Filter Sets";class Et extends y.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),gt(this,"renameInputRef",ve.createRef()),gt(this,"dropdownRef",ve.createRef()),gt(this,"editDropdownRef",ve.createRef()),gt(this,"isRenamingExistingSet",A((t,r)=>r!==void 0&&t.some(i=>{var a=i.id;return a===r.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 e=this.props.isValueShown;e?this.updateSelectedId():this.initSettingsScreen()}componentDidUpdate(e,t){var r=this.props,i=r.isValueShown,a=r.filterSets,l=this.state.modifiedFilterSets;if(e.isValueShown&&!i&&this.initSettingsScreen(),this.isNameInputScreen()&&!this.isNameInputScreen(t)&&this.focusRenameInput(),a!==e.filterSets)if(!i&&a.length>0&&e.filterSets.length===0&&l.length===0){var s=this.props.onChange;s({isValueShown:!0,selectedId:a[0].id})}else this.updateSelectedId()}initSettingsScreen(){var e=this.props,t=e.filterSets,r=e.selectedId;W.debug("initSettingsScreen",t,r),this.setState({modifiedFilterSets:[...t],editId:r})}updateSelectedId(){var e=this.props,t=e.isValueShown,r=e.filterSets,i=e.selectedId,a=e.onChange;if(W.debug("updateSelectedId",r,i),!!t&&!r.some(s=>{var o=s.id;return o===i})){var l=r.length===0;a({isValueShown:!l,selectedId:l?void 0:r[0].id})}}handleEditDropdownChange(e){this.setState({editId:e})}handleFilterChange(e){var t=e,r=this.props,i=r.isValueShown,a=r.onChange;this.applyFilterSet(t),a({isValueShown:i,selectedId:t})}handleFilterApply(){var e=this.props.selectedId;this.applyFilterSet(e)}handleSettingsCancel(){var e=this.props,t=e.onChange,r=e.selectedId,i=e.filterSets;this.setState({modifiedFilterSets:[]}),i.length>0&&t({isValueShown:!0,selectedId:r})}handleSettingsSave(){var e=this.props,t=e.onChange,r=e.onUpdateSets,i=this.state,a=i.modifiedFilterSets,l=i.editId;this.setState({modifiedFilterSets:[]}),W.debug("Update sets",a,l),r(a),a.length>0&&t({isValueShown:!0,selectedId:l})}handleCaptureNewSet(){var e=this.props.getFilterState;Et.animateScreenFlash();var t=Se(),r=e(),i={id:t,title:"",panels:r};W.debug("handleSetCreate",i),this.setState({nameInputValue:"",nameInputError:void 0,renameSet:i})}handleRenameCancel(){this.setState({renameSet:void 0})}handleRestoreFullStateChange(e){this.setState({restoreFullState:e==="true"})}getNameError(e){var t,r=this.state,i=r.renameSet,a=r.modifiedFilterSets,l=(t=e==null?void 0:e.trim())!==null&&t!==void 0?t:"";if(l.length===0)return W.debug("Name cannot be empty",l),"Name cannot be empty";if(i!==void 0&&a.some(s=>{var o=s.title,u=s.id;return o===l&&u!==i.id}))return W.debug("Set with this name already exists",l),"Set with this name already exists"}handleRenameConfirm(){var e,t=this.state,r=t.nameInputValue,i=t.renameSet,a=t.modifiedFilterSets,l=t.restoreFullState;if(i===void 0){W.error("Renamed set undefined.");return}var s=this.getNameError(r);if(W.debug("handleRenameConfirm",r,s),s!==void 0){this.setState({nameInputError:s});return}var o=(e=r==null?void 0:r.trim())!==null&&e!==void 0?e:"",u=At(At({},i),{},{title:o,restoreFullState:l}),d=a.findIndex(p=>{var m=p.id;return m===i.id}),c=[...a];d>=0?(c[d]=u,W.debug("Renamed existing set",c)):(c.push(u),W.debug("Added new set to modified sets",c)),this.setState({editId:u.id,modifiedFilterSets:c,renameSet:void 0})}handleSetDelete(){this.setState(e=>{var t=e.editId,r=e.modifiedFilterSets,i=r.findIndex(o=>{var u=o.id;return u===t});if(i<0)return W.error("Unable to find selected filterSet index",r,t),null;var a=r.filter(o=>{var u=o.id;return u!==t}),l=Math.max(0,Math.min(a.length-1,i-1)),s=a.length>0?a[l].id:void 0;return W.debug("Deleted selected set",t,r,a),W.debug("New selection",l,s),{modifiedFilterSets:a,editId:s}})}handleSetUpdate(){var e=this.props.getFilterState;Et.animateScreenFlash();var t=e();this.setState(r=>{var i=r.modifiedFilterSets,a=r.editId;if(a===void 0)return W.error("Filter for update not selected."),null;var l=[...i],s=l.findIndex(o=>{var u=o.id;return u===a});return s<0?(W.error("Selected set for update not found."),null):(l[s]=At(At({},l[s]),{},{panels:t}),W.debug("Update set",l,t),{modifiedFilterSets:l})})}handleSetEdit(){this.setState(e=>{var t=e.editId,r=e.modifiedFilterSets,i=r.find(o=>{var u=o.id;return u===t});if(i===void 0)return W.error("Could not find selected set",t,r),null;var a=i.title,l=i.restoreFullState,s=l===void 0?!1:l;return{nameInputValue:a,nameInputError:void 0,renameSet:i,restoreFullState:s}})}handleSettingsClick(e){e.stopPropagation();var t=this.props,r=t.onChange,i=t.selectedId;r({isValueShown:!1,selectedId:i})}handleBackgroundClick(e){W.debug("handleBackgroundClick"),e.target!==this.dropdownRef.current&&this.focusInput()}handleNameInputChange(e){var t=e.target.value,r=this.getNameError(t);this.setState({nameInputValue:t,nameInputError:r})}handleNameInputKeyPress(e){var t=e.key;t==="Enter"&&(e.preventDefault(),this.handleRenameConfirm())}isNameInputScreen(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.state,t=e.renameSet;return t!==void 0}applyFilterSet(e){var t=this.props,r=t.onApply,i=t.filterSets;if(e===void 0){W.debug("No filter selected");return}var a=i.find(l=>{var s=l.id;return s===e});if(a===void 0){W.debug("Selected id not found in filterSets",e,i);return}W.debug("Apply filterSet",a),r(a)}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 e=this.state,t=e.nameInputValue,r=e.nameInputError,i=e.editId,a=e.renameSet,l=e.modifiedFilterSets,s=e.restoreFullState,o=this.props,u=o.isValueShown,d=o.filterSets,c=o.selectedId,p=this.isNameInputScreen(),m=this.isRenamingExistingSet(l,a),v=l.length===0,b=!p&&v&&d.length===0,f=!p&&!b,g=h.jsxs("div",{className:"fa-layers mr-3",children:[h.jsx(be,{icon:Yn,mask:Zn,transform:"shrink-1 down-5 right-7"}),h.jsx(be,{icon:Xl,className:"text-primary",transform:"shrink-6 down-5 right-7"})]}),w=h.jsxs("div",{className:"fa-layers",children:[h.jsx(be,{icon:Yn,mask:Zn,transform:"shrink-1 down-5 right-7"}),h.jsx(be,{icon:Zl,transform:"shrink-1 down-5 right-7"})]});return h.jsx("div",{className:"filter-set-manager fill-parent-absolute",children:h.jsxs(Pn,{className:"w-100 h-100",isFlipped:u,children:[h.jsx("div",{className:"filter-set-manager-settings-card fill-parent-absolute",children:h.jsxs("div",{className:"filter-set-manager-card-content",children:[b&&h.jsxs("div",{children:[h.jsx($,{kind:"ghost",className:"btn btn-link no-underline",onClick:this.handleCaptureNewSet,icon:g,children:"Capture filter set"}),h.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."})]}),p&&h.jsxs("div",{className:"d-flex flex-column justify-content-center","data-testid":"edit-filter-set-container",children:[h.jsxs("div",{className:"form-group",children:[h.jsx("label",{children:m?"Edit set":"Name captured set"}),h.jsxs("div",{className:"name-input-container",children:[h.jsx("input",{type:"text",className:"input-set-name form-control",placeholder:uu,value:t,ref:this.renameInputRef,onChange:this.handleNameInputChange,onKeyPress:this.handleNameInputKeyPress,spellCheck:"false"}),h.jsx($,{"data-testid":"rename-confirm-button",kind:"ghost",className:"btn btn-link no-underline pt-2 pb-2",onClick:this.handleRenameConfirm,tooltip:"Save","test-id":"button-save",icon:zl}),h.jsx($,{"data-testid":"rename-cancel-button",kind:"ghost",className:"btn btn-link no-underline pt-2 pb-2",onClick:this.handleRenameCancel,tooltip:"Cancel",icon:ql})]}),r!==void 0&&h.jsx("div",{className:"error-message",children:r})]}),h.jsx("div",{className:"form-group",children:h.jsxs(Za,{"aria-label":"Restoration options",onChange:this.handleRestoreFullStateChange,value:"".concat(s),children:[h.jsx(qn,{value:"false",children:"Restore only filters"}),h.jsx(qn,{value:"true",children:"Restore full table state"})]})})]}),f&&h.jsxs("div",{className:"filter-set-manager-settings-grid-1",children:[h.jsxs("div",{className:"form-group",children:[h.jsx("label",{children:"Edit filter sets"}),h.jsxs("div",{className:"filter-select-container",children:[h.jsxs(Ct,{"data-testid":"settings-card-filter-select",ref:this.editDropdownRef,value:i??"-1",className:"custom-select filter-value-select",onChange:this.handleEditDropdownChange,disabled:v,children:[v&&h.jsx("option",{value:"-1",disabled:!0,children:Pr}),l.map(P=>{var D=P.id,E=P.title;return h.jsx("option",{value:D,children:E},D)})]}),h.jsx($,{kind:"ghost",onClick:this.handleSetUpdate,disabled:v,icon:w,tooltip:"Update"}),h.jsx($,{kind:"ghost",onClick:this.handleSetEdit,disabled:v,icon:Hi,tooltip:"Edit"}),h.jsx($,{kind:"ghost",onClick:this.handleSetDelete,disabled:v,icon:Cn,tooltip:"Delete"})]})]}),h.jsx("div",{children:h.jsx($,{kind:"ghost",className:"btn btn-link no-underline",onClick:this.handleCaptureNewSet,icon:g,children:"Capture new filter set"})}),h.jsxs("div",{className:"py-3 text-right",children:[h.jsx($,{kind:"secondary",onClick:this.handleSettingsCancel,children:"Cancel"})," ",h.jsx($,{kind:"primary",onClick:this.handleSettingsSave,children:"Save"})]})]})]})},"front"),h.jsxs("div",{className:"filter-set-manager-value-card fill-parent-absolute",onClick:this.handleBackgroundClick,children:[h.jsx("div",{className:"filter-set-manager-column",children:h.jsx("div",{className:"filter-set-manager-column-title",children:"Filter sets"})}),h.jsx("div",{className:"filter-set-manager-card-content",children:h.jsx("div",{className:"filter-set-manager-value-input",children:h.jsxs("div",{className:"filter-select-container",children:[h.jsxs(Ct,{"data-testid":"value-card-filter-select",ref:this.dropdownRef,value:c??"-1",className:"custom-select filter-value-select",onChange:this.handleFilterChange,children:[d.length===0&&h.jsx("option",{value:"-1",disabled:!0,children:Pr}),d.map(P=>{var D=P.id,E=P.title;return h.jsx("option",{value:D,children:E},D)})]}),h.jsx($,{"data-testid":"filter-apply-button",kind:"ghost",onClick:this.handleFilterApply,icon:Bi,tooltip:"Apply Filter Set"})]})})}),h.jsx("div",{className:"filter-set-manager-menu",children:h.jsx($,{kind:"ghost",className:"btn btn-link btn-link-icon m-2 px-2",onClick:this.handleSettingsClick,tooltip:"Settings",icon:h.jsx(be,{icon:Sn,transform:"grow-4"})})})]},"back")]})})}}function Er(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Tr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Er(Object(t),!0).forEach(function(r){du(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Er(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function du(n,e,t){return(e=hu(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function hu(n){var e=cu(n,"string");return typeof e=="symbol"?e:e+""}function cu(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function pu(n){var e,t,r,i,a,l=n.model,s=((e=l==null?void 0:l.rowCount)!==null&&e!==void 0?e:0)-((t=l==null?void 0:l.pendingRowCount)!==null&&t!==void 0?t:0)-((r=l==null?void 0:l.floatingBottomRowCount)!==null&&r!==void 0?r:0)-((i=l==null?void 0:l.floatingTopRowCount)!==null&&i!==void 0?i:0),o=l==null?void 0:l.displayString(s,"long"),u=(a=l==null?void 0:l.columnCount)!==null&&a!==void 0?a:0,d=l==null?void 0:l.displayString(u,"long");return h.jsxs(Mn,Tr(Tr({},n),{},{children:[h.jsx("hr",{className:"tab-tooltip-divider"}),h.jsx("span",{children:"Number of Columns"}),h.jsx("span",{className:"tab-tooltip-statistic-value",children:d}),h.jsx("span",{children:"Number of Rows"}),h.jsx("span",{className:"tab-tooltip-statistic-value",children:o})]}))}function aa(n){if(n==null)return!1;var e=n;return typeof e.table=="string"}function la(n){if(n==null)return!1;var e=n;return typeof e.name=="string"}function Mr(n,e){return gu(n)||fu(n,e)||mu(n,e)||vu()}function vu(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
13
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function mu(n,e){if(n){if(typeof n=="string")return Dr(n,e);var t={}.toString.call(n).slice(8,-1);return t==="Object"&&n.constructor&&(t=n.constructor.name),t==="Map"||t==="Set"?Array.from(n):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?Dr(n,e):void 0}}function Dr(n,e){(e==null||e>n.length)&&(e=n.length);for(var t=0,r=Array(e);t<e;t++)r[t]=n[t];return r}function fu(n,e){var t=n==null?null:typeof Symbol<"u"&&n[Symbol.iterator]||n["@@iterator"];if(t!=null){var r,i,a,l,s=[],o=!0,u=!1;try{if(a=(t=t.call(n)).next,e!==0)for(;!(o=(r=a.call(t)).done)&&(s.push(r.value),s.length!==e);o=!0);}catch(d){u=!0,i=d}finally{try{if(!o&&t.return!=null&&(l=t.return(),Object(l)!==l))return}finally{if(u)throw i}}return s}}function gu(n){if(Array.isArray(n))return n}function Fr(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function bu(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Fr(a,r,i,l,s,"next",o)}function s(o){Fr(a,r,i,l,s,"throw",o)}l(void 0)})}}function kr(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function de(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?kr(Object(t),!0).forEach(function(r){q(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):kr(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function q(n,e,t){return(e=yu(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function yu(n){var e=Su(n,"string");return typeof e=="symbol"?e:e+""}function Su(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Te=Y.module("IrisGridPanel"),Cu=500;function Lr(n){if(n==null)throw new Error("No metadata provided");if(la(n))return n.name;if(aa(n))return n.table;throw new Error("Unable to determine table name from metadata: ".concat(JSON.stringify(n)))}class lt extends y.PureComponent{constructor(e){super(e),q(this,"irisGrid",void 0),q(this,"pluginRef",void 0),q(this,"modelPromise",void 0),q(this,"irisGridState",void 0),q(this,"gridState",void 0),q(this,"pluginState",void 0),q(this,"irisGridUtils",void 0),q(this,"gridStateDehydrator",pn.makeMemoizedGridStateDehydrator()),q(this,"irisGridStateDehydrator",pn.makeMemoizedIrisGridStateDehydrator()),q(this,"getGridInputFilters",A((r,i)=>Z.getInputFiltersForColumns(r,i.filter(a=>{var l=a.value,s=a.excludePanelIds,o=L.getIdFromPanel(this);return l!=null&&(s==null||o!=null&&!s.includes(o))})))),q(this,"getAlwaysFetchColumns",A((r,i)=>{for(var a=L.getIdFromPanel(this),l=new Set(i),s=0;s<r.length;s+=1){var o=r[s].start;o!=null&&o.panelId===a&&l.add(o.columnName)}return[...l]})),q(this,"getPluginContent",A((r,i,a,l)=>{if(!i||!Ae(i)||r==null||i.table==null)return null;var s={panel:this},o=ss(l);return h.jsx("div",{className:"iris-grid-plugin",children:h.jsx(r,de({ref:this.pluginRef,filter:this.handlePluginFilter,fetchColumns:this.handlePluginFetchColumns,model:i,table:i.table,tableName:this.getTableName(),selectedRanges:o,selection:l??null,onStateChange:this.handlePluginStateChange,pluginState:a},s))})})),q(this,"getDehydratedIrisGridPanelState",A((r,i,a,l)=>Z.dehydrateIrisGridPanelState(r,{isSelectingPartition:i,partitions:a,advancedSettings:l}))),q(this,"getCachedPanelState",A((r,i,a,l)=>({irisGridPanelState:r,irisGridState:i,gridState:a,pluginState:l}))),q(this,"getWidgetPanelDescriptor",A((r,i)=>{var a=Lr(r);return de(de({type:"Table",displayType:"Table"},r),{},{name:a,description:i})})),q(this,"savePanelState",ut(()=>{var r=this.irisGridState,i=this.gridState,a=this.pluginState;_(r);var l=this.props.onPanelStateUpdate,s=this.state,o=s.model,u=s.panelState,d=s.isSelectingPartition,c=s.partitions,p=s.advancedSettings;_(this.irisGridUtils),_(o),_(i);var m=this.getCachedPanelState(this.getDehydratedIrisGridPanelState(o,d,c,p),this.irisGridStateDehydrator(o,r),this.gridStateDehydrator(o,i),a);m!==u&&(Te.debug("Saving panel state",this,m),this.setState({panelState:m}),l==null||l(m))},Cu)),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.handleGridSelectionChange=this.handleGridSelectionChange.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.handleErrorAction=this.handleErrorAction.bind(this),this.irisGrid=ve.createRef(),this.pluginRef=ve.createRef();var t=e.panelState;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(cs.DEFAULTS),customColumns:[],customColumnFormatMap:new Map,columnAlignmentMap:new Map,isFilterBarShown:!1,quickFilters:new Map,sorts:[],userColumnWidths:new Map,userColumnWidthsByName: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:[],gridSelection:null}}componentDidMount(){this.initModel()}componentDidUpdate(e,t){var r=this.state.model,i=this.props.makeModel;r!==t.model&&(t.model!=null&&(this.stopModelListening(t.model),t.model.close()),r!=null&&this.startModelListening(r)),i!==e.makeModel&&this.initModel()}componentWillUnmount(){this.savePanelState.cancel(),this.modelPromise!=null&&(this.modelPromise.cancel(),this.modelPromise=void 0);var e=this.state.model;e&&(this.stopModelListening(e),e.close())}getTableName(){var e=this.props.metadata;return Lr(e)}initModel(){this.setState({isModelReady:!1,isLoading:!0,error:null,isDisconnected:!1});var e=this.props,t=e.makeModel,r=e.transformModel;this.modelPromise!=null&&this.modelPromise.cancel();var i=r!=null?Promise.resolve(t()).then(function(){var a=bu(function*(l){try{var s=yield r(l);return s}catch(o){throw l.close(),o}});return function(l){return a.apply(this,arguments)}}()):Promise.resolve(t());this.modelPromise=Ve.makeCancelable(i,a=>a.close()),this.modelPromise.then(this.handleLoadSuccess).catch(this.handleLoadError)}handleLoadSuccess(e){var t=e,r=this.state,i=r.panelState,a=r.irisGridStateOverrides,l=[];if(this.irisGridUtils=new Z(t.dh),i!=null){var s=i.irisGridState,o=de(de({},s),a),u=o.aggregationSettings,d=o.customColumns,c=o.selectDistinctColumns,p=c===void 0?[]:c,m=o.rollupConfig;d.length>0&&l.push(v=>{v.customColumns=d}),m!=null&&m.columns.length>0&&l.push(v=>{v.rollupConfig=Z.getModelRollupConfig(v.originalColumns,m,u)}),p.length>0&&l.push(v=>{v.selectDistinctColumns=p})}this.setState({model:t,modelQueue:l}),this.initModelQueue(t,l)}initModelQueue(e,t){var r=e;if(t.length===0){this.modelInitialized(r);return}var i=t.shift();Te.debug("initModelQueue",i),i&&i(r),this.setState({modelQueue:t})}handleAdvancedSettingsChange(e,t){Te.debug("handleAdvancedSettingsChange",e,t),this.setState(r=>{var i=r.advancedSettings;return i.get(e)===t?null:{advancedSettings:new Map(i).set(e,t)}})}handlePluginFilter(e){var t,r,i=this.state.model;_(i);var a=i.columns,l=i.formatter,s=(t=(r=this.irisGridUtils)===null||r===void 0?void 0:r.getFiltersFromInputFilters(a,e,l.timeZone))!==null&&t!==void 0?t:[];this.setState({pluginFilters:s})}handlePluginFetchColumns(e){this.setState({pluginFetchColumns:e})}handleContextMenu(e){var t,r,i;return(t=(r=this.pluginRef.current)===null||r===void 0||(i=r.getMenu)===null||i===void 0?void 0:i.call(r,e))!==null&&t!==void 0?t:[]}isColumnSelectionValid(e){var t=this.props.columnSelectionValidator;return t&&e?t(this,e,{type:"tableLink"}):!1}handleGridStateChange(e,t){this.irisGridState=e,this.gridState=t,this.setState({isLoaded:!0,isLoading:!1}),this.savePanelState();var r=this.props,i=r.glEventHub,a=r.onStateChange;i.emit(ae.STATE_CHANGED,this),a==null||a(e,t)}handleGridSelectionChange(e){this.setState({gridSelection:e})}handlePluginStateChange(e){var t=this.irisGridState,r=this.gridState;this.pluginState=e,t!==null&&r!==null&&this.savePanelState()}handleColumnsChanged(e){var t=this.state,r=t.isModelReady,i=t.model,a=t.modelQueue;r?this.sendColumnsChange(e.detail):(_(i),this.initModelQueue(i,a))}handleTableChanged(e){Te.debug("handleTableChanged",e);var t=this.props.glEventHub,r=e,i=r.detail,a=L.getIdFromPanel(this);_(a),Ht(t,a,i)}handleCreateChart(e,t){this.savePanelState.flush(),this.setState(()=>null,()=>{var r=this.props,i=r.glEventHub,a=r.inputFilters,l=r.metadata,s=this.getTableName(),o=this.state.panelState,u=L.getIdFromPanel(this),d;o&&(d=Z.extractTableSettings(o,a)),i.emit(ae.CREATE_CHART,{metadata:de(de({},l),{},{settings:e,sourcePanelId:u,table:s,tableSettings:d}),table:Ae(t)?t.table:void 0})})}handleColumnSelected(e){var t=this.props.glEventHub,r=L.getIdFromPanel(this);_(r),Xt(t,r,e,{type:"tableLink"})}handleDataSelected(e,t){var r=this.props.glEventHub,i=L.getIdFromPanel(this);_(i),ia(r,i,t)}handleShow(){this.updateGrid()}handleTabClicked(){this.irisGrid.current&&this.irisGrid.current.focus()}handleError(e){Te.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){Ve.isCanceled(e)||this.handleError(e)}modelInitialized(e){var t=this.props,r=t.glEventHub,i=t.loadPlugin,a=t.onModelChanged;if(this.modelPromise=void 0,this.loadPanelState(e),this.setState({isModelReady:!0}),a==null||a(e),Ae(e)){var l=e.table,s=l.pluginName;if(s!==""&&i!=null&&s!=null){var o=i(s);this.setState({Plugin:o})}var u=L.getIdFromPanel(this);_(u),Ht(r,u,l)}this.sendColumnsChange(e.columns)}handleClearAllFilters(){var e=this.irisGrid.current,t=this.state.isDisconnected;e!=null&&!t&&e.clearAllFilters()}handleErrorAction(){this.irisGrid.current!=null&&(this.irisGrid.current.rollback(),this.setState({error:null,isLoading:!1}))}sendColumnsChange(e){Te.debug2("sendColumnsChange",e);var t=this.props.glEventHub,r=L.getIdFromPanel(this);_(r),Gt(t,r,e)}startModelListening(e){e.addEventListener(G.EVENT.DISCONNECT,this.handleDisconnect),e.addEventListener(G.EVENT.RECONNECT,this.handleReconnect),e.addEventListener(G.EVENT.COLUMNS_CHANGED,this.handleColumnsChanged),e.addEventListener(G.EVENT.TABLE_CHANGED,this.handleTableChanged)}stopModelListening(e){e.removeEventListener(G.EVENT.DISCONNECT,this.handleDisconnect),e.removeEventListener(G.EVENT.RECONNECT,this.handleReconnect),e.removeEventListener(G.EVENT.COLUMNS_CHANGED,this.handleColumnsChanged),e.removeEventListener(G.EVENT.TABLE_CHANGED,this.handleTableChanged)}getCoordinateForColumn(e){var t,r,i,a=this.state.model;if(!a)return null;var l=this.irisGrid.current,s=l||{},o=s.gridWrapper,u=(t=o==null?void 0:o.getBoundingClientRect())!==null&&t!==void 0?t:null;if(u==null||u.width<=0||u.height<=0)return null;_(l);var d=l.state.metrics;_(d);var c=d.columnHeaderHeight,p=d.allColumnXs,m=d.allColumnWidths,v=d.right,b=d.columnHeaderMaxDepth,f=a.getColumnIndexByName(e);_(f);var g=l.getVisibleColumn(f),w=(r=p.get(g))!==null&&r!==void 0?r:0,P=(i=m.get(g))!==null&&i!==void 0?i:0,D=Ye(g>v?u.right:u.left+w+P*.5,u.left,u.right),E=u.top+c*b;return[D,E]}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 t=e.quickFilters,r=e.advancedFilters;Te.debug("setFilters",t,r);var i=this.state,a=i.model,l=i.isDisconnected,s=this.irisGrid.current;if(s==null||l){Te.debug("Ignore setFilters, model disconnected");return}_(a);var o=a.columns,u=a.formatter,d=Z.changeFilterColumnNamesToIndexes(a.columns,t).filter(p=>{var m=Mr(p,1),v=m[0];return a.isFilterable(v)}),c=Z.changeFilterColumnNamesToIndexes(a.columns,r).filter(p=>{var m=Mr(p,1),v=m[0];return a.isFilterable(v)});_(this.irisGridUtils),s.clearAllFilters(),s.setFilters({quickFilters:this.irisGridUtils.hydrateQuickFilters(o,d,u.timeZone),advancedFilters:this.irisGridUtils.hydrateAdvancedFilters(o,c,u.timeZone)})}setStateOverrides(e){Te.debug("setStateOverrides",e);var t=e.irisGridState,r=e.gridState;this.setState({irisGridStateOverrides:t,gridStateOverrides:r},()=>{this.initModel()})}unsetFilterValue(){}loadPanelState(e){var t=this.state,r=t.panelState,i=t.irisGridStateOverrides,a=t.gridStateOverrides;if(r!=null)try{var l=r.gridState,s=r.irisGridState,o=r.irisGridPanelState,u=de({},i),d=u.quickFilters,c=u.advancedFilters;d&&(u.quickFilters=Z.changeFilterColumnNamesToIndexes(e.columns,d)),c&&(u.advancedFilters=Z.changeFilterColumnNamesToIndexes(e.columns,c));var p=Z.hydrateIrisGridPanelState(e,o),m=p.isSelectingPartition,v=p.partitions,b=p.advancedSettings;_(this.irisGridUtils);var f=this.irisGridUtils.hydrateIrisGridState(e,de(de({},s),u)),g=f.advancedFilters,w=f.customColumns,P=f.customColumnFormatMap,D=f.columnAlignmentMap,E=f.isFilterBarShown,S=f.quickFilters,C=f.reverse,F=f.rollupConfig,T=f.aggregationSettings,M=f.sorts,k=f.userColumnWidths,O=f.userColumnWidthsByName,I=f.userRowHeights,j=f.showSearchBar,N=f.searchValue,U=f.selectDistinctColumns,R=f.selectedSearchColumns,x=f.invertSearchColumns,z=f.pendingDataMap,H=f.frozenColumns,Q=f.conditionalFormats,le=f.columnHeaderGroups,Ne=f.partitionConfig,J=Z.hydrateGridState(e,de(de({},l),a),s.customColumns),Ge=J.isStuckToBottom,ee=J.isStuckToRight,se=J.movedColumns,ce=J.movedRows;this.setState({advancedFilters:g,advancedSettings:b,conditionalFormats:Q,customColumns:w,customColumnFormatMap:P,columnAlignmentMap:D,isFilterBarShown:E,isSelectingPartition:m,movedColumns:se,movedRows:ce,partitions:v,quickFilters:S,reverse:C,rollupConfig:F,aggregationSettings:T,sorts:M,userColumnWidths:k,userColumnWidthsByName:O,userRowHeights:I,showSearchBar:j,searchValue:N,selectDistinctColumns:U,selectedSearchColumns:R,invertSearchColumns:x,pendingDataMap:z,frozenColumns:H,isStuckToBottom:Ge,isStuckToRight:ee,columnHeaderGroups:le,partitionConfig:Ne})}catch(Ce){Te.error("loadPanelState failed to load panelState",r,Ce)}}updateGrid(){var e,t,r=(e=(t=this.irisGrid.current)===null||t===void 0?void 0:t.grid)!==null&&e!==void 0?e:null;r&&r.handleResize()}render(){var e,t,r=this.props,i=r.children,a=r.glContainer,l=r.glEventHub,s=r.columnSelectionValidator,o=r.getDownloadWorker,u=r.inputFilters,d=r.links,c=r.metadata,p=r.panelState,m=r.user,v=r.settings,b=r.irisGridProps,f=r.transformTableOptions,g=this.state,w=g.advancedFilters,P=g.aggregationSettings,D=g.advancedSettings,E=g.conditionalFormats,S=g.customColumns,C=g.customColumnFormatMap,F=g.columnAlignmentMap,T=g.error,M=g.isDisconnected,k=g.isFilterBarShown,O=g.isSelectingPartition,I=g.isStuckToBottom,j=g.isStuckToRight,N=g.isLoaded,U=g.isLoading,R=g.isModelReady,x=g.model,z=g.movedColumns,H=g.movedRows,Q=g.partitions,le=g.partitionConfig,Ne=g.quickFilters,J=g.reverse,Ge=g.rollupConfig,ee=g.sorts,se=g.userColumnWidths,ce=g.userColumnWidthsByName,Ce=g.userRowHeights,qe=g.showSearchBar,en=g.searchValue,ja=g.selectDistinctColumns,Aa=g.selectedSearchColumns,Na=g.invertSearchColumns,xa=g.Plugin,Ra=g.pluginFilters,$a=g.pluginFetchColumns,Va=g.pendingDataMap,Ua=g.frozenColumns,Ga=g.columnHeaderGroups,Ha=T!=null?"Unable to open table. ".concat(T):void 0,Ba=(e=x==null?void 0:x.description)!==null&&e!==void 0?e:void 0,Wa=(t=p==null?void 0:p.pluginState)!==null&&t!==void 0?t:null,Ka=this.state.gridSelection,za=i??this.getPluginContent(xa,x,Wa,Ka),Wn=m.permissions,qa=Wn.canCopy,Xa=Wn.canDownloadCsv,Kn=this.getWidgetPanelDescriptor(c,Ba);return h.jsx(Lt,{errorMessage:Ha,isDisconnected:M,isLoading:U,isLoaded:N,onErrorAction:this.irisGrid.current!=null?this.handleErrorAction:void 0,className:"iris-grid-panel",glContainer:a,glEventHub:l,onClearAllFilters:this.handleClearAllFilters,onShow:this.handleShow,onTabFocus:this.handleShow,onTabClicked:this.handleTabClicked,componentPanel:this,descriptor:Kn,renderTabTooltip:()=>h.jsx(pu,{descriptor:Kn,model:x}),children:R&&x&&h.jsx(wn,de(de({advancedFilters:w,aggregationSettings:P,advancedSettings:D,alwaysFetchColumns:this.getAlwaysFetchColumns(d,$a),columnAllowedCursor:"linker",columnNotAllowedCursor:"linker-not-allowed",copyCursor:"copy",customColumns:S,customColumnFormatMap:C,columnAlignmentMap:F,columnSelectionValidator:this.isColumnSelectionValid,conditionalFormats:E,inputFilters:this.getGridInputFilters(x.columns,u),applyInputFiltersOnInit:p==null,isFilterBarShown:k,isSelectingColumn:s!=null,isSelectingPartition:O,isStuckToBottom:I,isStuckToRight:j,movedColumns:z,movedRows:H,partitions:Q,partitionConfig:le,quickFilters:Ne,reverse:J,rollupConfig:Ge,settings:v,sorts:ee,userColumnWidths:se,userColumnWidthsByName:ce,userRowHeights:Ce,model:x,showSearchBar:qe,searchValue:en,selectedSearchColumns:Aa,selectDistinctColumns:ja,invertSearchColumns:Na,onColumnSelected:this.handleColumnSelected,onCreateChart:this.handleCreateChart,onDataSelected:this.handleDataSelected,onError:this.handleError,onStateChange:this.handleGridStateChange,onSelectionChange:this.handleGridSelectionChange,onContextMenu:this.handleContextMenu,onAdvancedSettingsChange:this.handleAdvancedSettingsChange,customFilters:Ra,pendingDataMap:Va,canCopy:qa,canDownloadCsv:Xa,ref:this.irisGrid,getDownloadWorker:o,frozenColumns:Ua,columnHeaderGroups:Ga,transformTableOptions:f},b),{},{children:za}))})}}q(lt,"defaultProps",{onStateChange:()=>{},onPanelStateUpdate:()=>{}});q(lt,"displayName","IrisGridPanel");q(lt,"COMPONENT","IrisGridPanel");var wu=(n,e)=>{var t=e.localDashboardId,r=t===void 0?il:t;return e.glContainer,{inputFilters:Dt(n,r),links:ct(n,r),columnSelectionValidator:Ft(n,r),user:rl(n),settings:Mt(n)}},An=ze(wu,null,null,{forwardRef:!0})(lt);function yt(n,e,t){return(e=Pu(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Pu(n){var e=Eu(n,"string");return typeof e=="symbol"?e:e+""}function Eu(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ir=Y.module("InputFilter"),Tu=150;class st extends y.Component{constructor(e){super(e),yt(this,"inputRef",void 0),yt(this,"getItemLabel",ge((a,l)=>{var s=a[l],o=s.name,u=s.type;if(l>0&&a[l-1].name===o||l<a.length-1&&a[l+1].name===o){var d=u.substring(u.lastIndexOf(".")+1);return"".concat(o," (").concat(d,")")}return o},{max:1e3})),yt(this,"sendUpdate",ut(()=>{var a=this.props.onChange,l=this.state,s=l.column,o=l.value,u=l.isValueShown;a({column:s,isValueShown:u,value:o})},Tu)),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=ve.createRef();var t=e.column,r=e.isValueShown,i=e.value;this.state={column:t,selectedColumn:t,value:i,isValueShown:r}}componentDidUpdate(e,t){var r=this.props.column,i=this.state,a=i.column,l=i.value,s=i.isValueShown;r!==e.column&&this.setState({column:r,selectedColumn:r}),s!==void 0&&s&&s!==t.isValueShown&&this.focusInput(),(a!==t.column||l!==t.value||s!==t.isValueShown)&&this.sendUpdate()}componentWillUnmount(){this.sendUpdate.flush()}handleColumnChange(e){var t=this.props.columns,r=t[parseInt(e,10)];Ir.debug2("handleColumnChange",r),this.setState({selectedColumn:r,value:void 0})}handleInputKeyPress(e){e.key==="Enter"&&(e.preventDefault(),e.stopPropagation(),this.setState(t=>{var r=t.value;return r==null?{value:""}:null},()=>{this.sendUpdate(),this.sendUpdate.flush()}))}handleValueChange(e){var t=e.target.value;Ir.debug2("handleValueChange",t),this.setState({value:t})}handleSettingsCancel(){var e=this.state.column;this.setState({selectedColumn:e,isValueShown:!0})}handleSettingsSave(){var e=this.state.selectedColumn;this.setState({column:e,isValueShown:!0})}handleSettingsClick(e){var t=this.state.column;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 t=e.name,r=e.type,i=e.value,a=e.isValueShown,l=t!=null&&r!=null?{name:t,type:r}:void 0,s=a===void 0?{column:l,value:i}:{column:l,value:i,isValueShown:a};this.setState(s)}render(){var e=this.props.columns,t=this.state,r=t.column,i=t.isValueShown,a=t.selectedColumn,l=t.value,s=l==null||l.length===0?st.PLACEHOLDER.length:l.length,o=null;if(r!=null){var u=e.findIndex(d=>d.name===r.name&&d.type===r.type);o=u>=0?this.getItemLabel(e,u):r.name}return h.jsxs(Pn,{className:"input-filter fill-parent-absolute",isFlipped:i??!1,children:[h.jsx("div",{className:"input-filter-settings-card",children:h.jsxs("div",{className:"input-filter-settings-content",children:[h.jsxs("div",{className:"input-filter-settings-grid",children:[h.jsx("label",{children:"Filter Column"}),h.jsxs(Ct,{value:String(e.findIndex(d=>d.name===(a==null?void 0:a.name)&&d.type===(a==null?void 0:a.type))),className:"custom-select",onChange:this.handleColumnChange,children:[e.map((d,c)=>h.jsx("option",{value:c,children:this.getItemLabel(e,c)},"".concat(d.name,"/").concat(d.type))),e.length===0&&h.jsx("option",{value:"-1",disabled:!0,children:"No Available Columns"})]}),h.jsx("div",{className:"text-muted small",children:"Input filter control will apply its filter to all columns matching this name in this dashboard."})]}),h.jsxs("div",{className:"input-filter-settings-buttons",children:[h.jsx($,{kind:"secondary",onClick:this.handleSettingsCancel,disabled:r==null,children:"Cancel"}),h.jsx($,{kind:"primary",className:"ml-2",onClick:this.handleSettingsSave,disabled:a==null,children:"Save"})]})]})}),h.jsxs("div",{className:"input-filter-value-card",onClick:this.handleBackgroundClick,children:[h.jsx("div",{className:"input-filter-column",children:h.jsxs("div",{className:"input-filter-column-title",children:[o," Filter"]})}),h.jsx("div",{className:"d-flex justify-content-center align-items-center h-100 w-100",children:h.jsx("div",{className:"input-filter-value-input d-flex flex-column justify-content-center",children:h.jsx("input",{type:"text",ref:this.inputRef,placeholder:st.PLACEHOLDER,value:l??"",onChange:this.handleValueChange,onKeyPress:this.handleInputKeyPress,style:{width:"".concat(s+3,"ch")},spellCheck:"false"})})}),h.jsx("div",{className:"input-filter-menu",children:h.jsx($,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:h.jsx(be,{icon:Sn,transform:"grow-4"}),tooltip:"Input Filter Settings"})})]})]})}}yt(st,"PLACEHOLDER","Enter value...");yt(st,"defaultProps",{column:null,isValueShown:!1,value:null});function Yt(n,e,t){return(e=Mu(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Mu(n){var e=Du(n,"string");return typeof e=="symbol"?e:e+""}function Du(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Fu=250;class Qt extends y.Component{constructor(e){super(e),Yt(this,"inputFilterRef",void 0),this.handleChange=ut(this.handleChange.bind(this),Fu),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.inputFilterRef=ve.createRef();var t=e.panelState,r=t??{},i=r.value,a=r.isValueShown,l=a===void 0?!1:a,s=r.name,o=r.type,u=r.timestamp,d=u===void 0?Date.now():u;this.state={columns:[],column:s!=null&&o!=null?{name:s,type:o}:void 0,value:i,timestamp:d,isValueShown:l,wasFlipped:!1,skipUpdate:!1,panelState:t}}componentDidMount(){this.updateColumns();var e=this.state,t=e.column,r=e.value,i=e.timestamp;if(t!=null){var a=t.name,l=t.type;this.sendUpdate(a,l,r,i)}}componentDidUpdate(e){var t=this.props.columns;t!==e.columns&&this.updateColumns()}handleChange(e){var t=e.column,r=e.isValueShown,i=r===void 0?!1:r,a=e.value,l,s;t!=null&&(l=t.name,s=t.type);var o=!0,u=Date.now();this.setState(d=>{var c,p=d.panelState,m=d.timestamp,v=d.wasFlipped,b=d.skipUpdate,f=p!=null&&i!==p.isValueShown&&l===p.name&&s===p.type&&a===p.value;return o=(c=!b&&i&&(!f||!v))!==null&&c!==void 0?c:!1,o||(u=m),{panelState:{isValueShown:i,name:l,type:s,value:a,timestamp:u},timestamp:u,wasFlipped:f,skipUpdate:!1}},()=>{o&&this.sendUpdate(l,s,a,u)})}handleClearAllFilters(){var e;(e=this.inputFilterRef.current)===null||e===void 0||e.clearFilter()}sendUpdate(e,t,r,i){var a=this.props.glEventHub,l=L.getIdFromPanel(this);_(l),ra(a,l,e!=null&&t!=null&&r!=null&&i!=null?{name:e,type:t,value:r,timestamp:i}:null)}setPanelState(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;this.setState({skipUpdate:!r}),(t=this.inputFilterRef.current)===null||t===void 0||t.setFilterState(e)}updateColumns(){var e=this.props.columns;e!=null&&this.setState(t=>{var r=t.column;return r==null&&e.length>0?{columns:[...e],column:e[0]}:r!=null&&!e.find(i=>{var a=i.name,l=i.type;return r.name===a&&r.type===l})?{columns:[...e,r]}:{columns:[...e]}})}render(){var e=this.props,t=e.glContainer,r=e.glEventHub,i=this.state,a=i.column,l=i.columns,s=i.isValueShown,o=i.value;return h.jsx(dt,{className:"iris-input-filter-panel",componentPanel:this,glContainer:t,glEventHub:r,onClearAllFilters:this.handleClearAllFilters,isClonable:!0,isRenamable:!0,children:h.jsx(st,{ref:this.inputFilterRef,column:a,columns:l,onChange:this.handleChange,isValueShown:s,value:o})})}}Yt(Qt,"defaultProps",{panelState:null});Yt(Qt,"COMPONENT","InputFilterPanel");Yt(Qt,"displayName","InputFilterPanel");var ku=(n,e)=>{var t=e.localDashboardId;return{columns:yn(n,t)}},tt=ze(ku,null,null,{forwardRef:!0})(Qt);function Or(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Nt(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Or(Object(t),!0).forEach(function(r){Nn(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Or(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Lu(n,e){return ju(n)||_u(n,e)||Ou(n,e)||Iu()}function Iu(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
14
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Ou(n,e){if(n){if(typeof n=="string")return _r(n,e);var t={}.toString.call(n).slice(8,-1);return t==="Object"&&n.constructor&&(t=n.constructor.name),t==="Map"||t==="Set"?Array.from(n):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?_r(n,e):void 0}}function _r(n,e){(e==null||e>n.length)&&(e=n.length);for(var t=0,r=Array(e);t<e;t++)r[t]=n[t];return r}function _u(n,e){var t=n==null?null:typeof Symbol<"u"&&n[Symbol.iterator]||n["@@iterator"];if(t!=null){var r,i,a,l,s=[],o=!0,u=!1;try{if(a=(t=t.call(n)).next,e!==0)for(;!(o=(r=a.call(t)).done)&&(s.push(r.value),s.length!==e);o=!0);}catch(d){u=!0,i=d}finally{try{if(!o&&t.return!=null&&(l=t.return(),Object(l)!==l))return}finally{if(u)throw i}}return s}}function ju(n){if(Array.isArray(n))return n}function Nn(n,e,t){return(e=Au(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Au(n){var e=Nu(n,"string");return typeof e=="symbol"?e:e+""}function Nu(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ie=Y.module("FilterSetManagerPanel");function xu(n){return n.setPanelState!=null}class ot extends y.Component{static changeFilterIndexesToColumnNames(e,t){return t.map(r=>{var i=Lu(r,2),a=i[0],l=i[1];if(a>=e.columns.length)return null;var s=e.columns[a].name;return{name:s,filter:l}}).filter(r=>r!=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 t=e.panelState,r=e.filterSets,i=t??{},a=i.selectedId,l=a===void 0?r.length>0?r[0].id:void 0:a,s=i.isValueShown,o=s===void 0?!1:s;this.state={selectedId:l,isValueShown:o,panelState:t}}getFilterState(){var e=this.props.dashboardOpenedPanelMap,t=[];return[...e.keys()].forEach(r=>{var i=e.get(r);if(i===void 0){ie.error("Could not get panel",i);return}var a=L.getComponentNameFromPanel(i),l=L.getIdFromPanel(i);ie.debug("Panel:",i,a);var s=i.props.glContainer,o=s===void 0?null:s;if(o==null){ie.error("Could not get panel container",i);return}var u=L.getComponentConfigFromContainer(o);if(u==null){ie.error("Could not get component config from container",o);return}var d=L.getPanelComponentState(u);if(d==null){ie.debug("Panel state is null ".concat(l));return}switch(a){case L.getComponentName(lt):{var c;l!=null&&(c=this.getIrisGridPanelFilters(l,d)),c!=null&&t.push({panelId:l,type:a,state:c});break}case L.getComponentName(tt):case L.getComponentName(et):{var p=d.isValueShown,m=d.name,v=d.type,b=d.value;t.push({panelId:l,type:a,state:{isValueShown:p,name:m,type:v,value:b}});break}}}),t}getIrisGridPanelFilters(e,t){var r=this.props.panelTableMap,i=r.get(e);if(i==null)return ie.error("Unable to get table for panel ".concat(e,".")),null;var a=t.irisGridState,l=a===void 0?{advancedFilters:void 0,quickFilters:void 0}:a,s=t.gridState,o=s===void 0?{}:s,u=l.advancedFilters,d=l.quickFilters,c;u&&(c=ot.changeFilterIndexesToColumnNames(i,u));var p;return d&&(p=ot.changeFilterIndexesToColumnNames(i,d)),{irisGridState:Nt(Nt({},l),{},{advancedFilters:c,quickFilters:p}),gridState:Nt({},o)}}handleGetFilterState(){return this.getFilterState()}handleChange(e){var t=e.isValueShown,r=e.selectedId;ie.debug("handleChange",t,r),this.setState({isValueShown:t,selectedId:r}),this.updatePanelState()}handleFilterApply(e){var t=this.props.dashboardOpenedPanelMap,r=e.panels,i=e.restoreFullState,a=i===void 0?!1:i;ie.debug("Apply filters from filter set",e),r.forEach(l=>{var s=l.panelId,o=l.type,u=l.state;if(s==null){ie.debug("panel is null",s);return}if(!t.has(s)){ie.debug("Ignore closed panel",s);return}ie.debug("Apply panel filters",s,o,u);var d=t.get(s);switch(o){case L.getComponentName(lt):this.restoreIrisGridFilters(d,u,a);break;case L.getComponentName(tt):case L.getComponentName(et):this.restoreInputFilterState(d,u);break}})}handleSetsUpdate(e){var t=this.props,r=t.setDashboardFilterSets,i=t.localDashboardId;ie.debug("Saving updated sets",e),r(i,[...e])}updatePanelState(){this.setState(e=>{var t=e.selectedId,r=e.isValueShown;return{panelState:{selectedId:t,isValueShown:r}}})}restoreIrisGridFilters(e,t,r){var i=t.irisGridState,a=i===void 0?{}:i,l=t.advancedFilters,s=l===void 0?[]:l,o=t.quickFilters,u=o===void 0?[]:o,d=a.advancedFilters,c=d===void 0?s:d,p=a.quickFilters,m=p===void 0?u:p,v=this.props.panelTableMap,b=L.getIdFromPanel(e);if(b==null){ie.error("Panel Id is null.");return}var f=v.get(b);if(f==null){ie.error("Unable to get table for panel ".concat(b,"."));return}ie.debug("restoreIrisGridFilters",b,t,r),r?e.setStateOverrides(t):e.setFilters({quickFilters:m,advancedFilters:c})}restoreInputFilterState(e,t){var r=Nt({},t);delete r.isValueShown,ie.debug("restoreInputFilterState",e,r),e&&xu(e)&&e.setPanelState(r)}render(){var e=this.props,t=e.glContainer,r=e.glEventHub,i=e.filterSets,a=this.state,l=a.isValueShown,s=a.selectedId;return h.jsx(dt,{className:"filter-set-manager-panel",componentPanel:this,glContainer:t,glEventHub:r,isClonable:!0,isRenamable:!0,children:h.jsx("div",{className:"input-filter-container h-100 w-100 container",children:h.jsx(Et,{onChange:this.handleChange,onApply:this.handleFilterApply,onUpdateSets:this.handleSetsUpdate,isValueShown:l,filterSets:i,selectedId:s,getFilterState:this.handleGetFilterState})})})}}Nn(ot,"defaultProps",{panelState:null});Nn(ot,"COMPONENT","FilterSetManagerPanel");var Ru=(n,e)=>{var t=e.localDashboardId;return{filterSets:Oi(n,t),dashboardOpenedPanelMap:Di(n,t),dashboardInputFilters:Dt(n,t),panelTableMap:Wt(n,t)}},$t=ze(Ru,{setDashboardFilterSets:Ii},null,{forwardRef:!0})(ot);function $u(n,e,t){return(e=Vu(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Vu(n){var e=Uu(n,"string");return typeof e=="symbol"?e:e+""}function Uu(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class sa extends y.PureComponent{render(){var e=this.props,t=e.isEditing,r=e.children,i=e.onDoubleClick;return h.jsxs("div",{className:"markdown-editor-container h-100 w-100",onDoubleClick:i,children:[h.jsx("div",{className:ye("text-muted","edit-hint",{viewing:t===void 0||!t}),children:h.jsxs("span",{children:["double-click to edit ",h.jsx(be,{icon:Hi})]})}),r]})}}$u(sa,"defaultProps",{isEditing:!1});function Gu(n,e,t){return(e=Hu(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Hu(n){var e=Bu(n,"string");return typeof e=="symbol"?e:e+""}function Bu(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Wu=Y.module("MarkdownStartPage");class oa extends y.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(Wu.debug("delete markdown: ",e),e!==void 0){var t=this.props.onDelete;t(e)}this.setState({isDeleteModalShown:!1,toBeDeleted:void 0})}render(){var e=this.props,t=e.closedMarkdowns,r=e.onOpen,i=e.onCreate,a=this.state,l=a.isDeleteModalShown,s=a.toBeDeleted;return h.jsx("div",{className:"markdown-panel-start-page h-100 w-100",children:h.jsxs("div",{className:"markdown-panel-start-page-container",children:[h.jsxs("div",{className:"markdown-panel-start-list",children:[h.jsx("h3",{className:"list-title",children:"Start"}),h.jsx("div",{className:"list-item",children:h.jsx($,{kind:"ghost",className:"title",onClick:i,children:"New Markdown Note"})})]}),h.jsxs("div",{className:"markdown-panel-start-list",children:[h.jsx("h3",{className:"list-title",children:"Recently Closed from Dashboard"}),t.map(o=>h.jsxs("div",{className:"list-item",children:[h.jsx($,{kind:"ghost",className:"title",onClick:()=>r(o),children:o.title}),h.jsx("button",{className:"btn-link icon",type:"button",onClick:()=>{this.handleDeleteButtonClick(o)},children:h.jsx(be,{icon:Cn})})]},o.id)),h.jsxs(Yl,{isOpen:l,toggle:this.handleDeleteModalClose,className:"modal-dialog-centered markdown-delete-modal",children:[h.jsx(Ql,{children:"Are you sure you want to permanently delete this note?"}),h.jsx(Jl,{children:"You can't undo this action."}),h.jsxs(al,{children:[h.jsx($,{kind:"secondary",onClick:this.handleDeleteModalClose,children:"Cancel"}),h.jsx($,{kind:"danger",onClick:()=>{this.handleDeleteMarkdown(s)},children:"Delete"})]})]})]})]})})}}Gu(oa,"defaultProps",{closedMarkdowns:[],onOpen:()=>{},onCreate:()=>{},onDelete:()=>{}});function xn(n,e,t){return(e=Ku(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ku(n){var e=zu(n,"string");return typeof e=="symbol"?e:e+""}function zu(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class ke{static getNewMarkdownTitle(e){for(var t="".concat(ke.DEFAULT_TITLE),r=0;e.indexOf(t)>=0;)r+=1,t="".concat(ke.DEFAULT_TITLE,"-").concat(r);return t}}xn(ke,"DEFAULT_TITLE","Note");xn(ke,"DEFAULT_CONTENT",`# Markdown Note
15
+
16
+ This note can be edited using **markdown** for styling.`);xn(ke,"getClosedMarkdowns",A(n=>n.filter(e=>e.component==="MarkdownPanel"&&e.props.panelState.content!==""&&e.props.panelState.content!==null).reverse()));function St(n,e,t){return(e=qu(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function qu(n){var e=Xu(n,"string");return typeof e=="symbol"?e:e+""}function Xu(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Zu=y.lazy(()=>fs(()=>import("./MarkdownEditor-Cb40ZdjN.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10]),import.meta.url)),xt=Y.module("MarkdownPanel");class Rn extends y.Component{constructor(e){super(e),St(this,"markdownEditor",void 0),St(this,"editor",void 0),St(this,"getClosedMarkdowns",A(ke.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 t=e.panelState,r=null;t!=null&&t.content!=null&&(t.content!==""?r=t.content:r=ke.DEFAULT_CONTENT),this.state={isStartPageShown:r==null&&this.getClosedMarkdowns(e.closedPanels).length!==0,isEditing:!1,content:r,panelState:t},this.markdownEditor=null}setEditorPosition(e){_(this.markdownEditor);var t=this.markdownEditor.container;if(this.editor&&t!=null){var r,i,a=t.getBoundingClientRect().top,l=t.scrollTop,s=t.scrollHeight,o=(r=(i=this.editor.getModel())===null||i===void 0?void 0:i.getLineCount())!==null&&r!==void 0?r:0,u=Math.round((l+e-a)/s*o);u>o&&(u=o),this.editor.revealLine(u),this.editor.setPosition({lineNumber:u,column:1}),this.editor.focus()}}handleContainerDoubleClick(e){var t=this.state.isEditing,r=e.clientY;t||this.setState({isEditing:!0},()=>{this.setEditorPosition(r)})}handleEditorInitialized(e){xt.debug("Markdown Editor Initialized..."),this.editor=e}handleCreateMarkdown(){xt.debug("create markdown..."),this.setState({isStartPageShown:!1,content:"",isEditing:!0,panelState:{content:""}},()=>{this.editor!=null&&this.editor.focus!=null&&this.editor.focus()})}handleOpenMarkdown(e){xt.debug("open markdown...",e);var t=this.props,r=t.glContainer,i=t.glEventHub,a=L.getComponentConfigFromContainer(r);i.emit(pe.REOPEN,e,a)}handleDeleteMarkdown(e){var t=this.props.glEventHub;t.emit(pe.DELETE,e)}handleEditorBlur(e){var t;xt.debug("markdown content changed, saving...");var r=this.state.isEditing;if(!(!r||this.markdownEditor!=null&&this.markdownEditor.container!=null&&this.markdownEditor.container.contains(e.relatedTarget))){var i=(t=this.editor)===null||t===void 0?void 0:t.getValue();this.setState({content:i,isEditing:!1,panelState:{content:i}})}}handleEditorResize(){var e=this.state.isEditing;e&&this.editor&&this.editor.layout()}render(){var e=this.props,t=e.glContainer,r=e.glEventHub,i=e.closedPanels,a=this.state,l=a.isEditing,s=a.isStartPageShown,o=a.content,u=this.getClosedMarkdowns(i);return h.jsx(dt,{glContainer:t,glEventHub:r,className:"markdown-panel",componentPanel:this,onResize:this.handleEditorResize,onBlur:this.handleEditorBlur,isClonable:!0,isRenamable:!0,children:s?h.jsx(oa,{closedMarkdowns:u,onCreate:this.handleCreateMarkdown,onOpen:this.handleOpenMarkdown,onDelete:this.handleDeleteMarkdown}):h.jsx(sa,{isEditing:l,onDoubleClick:this.handleContainerDoubleClick,children:h.jsx(y.Suspense,{fallback:h.jsx(wt,{"data-testid":"markdown-panel-loading"}),children:h.jsx(Zu,{ref:d=>{this.markdownEditor=d},isEditing:l,content:o??ke.DEFAULT_CONTENT,onEditorInitialized:this.handleEditorInitialized})})})})}}St(Rn,"defaultProps",{panelState:null});St(Rn,"COMPONENT","MarkdownPanel");var Yu=(n,e)=>{var t=e.localDashboardId;return{closedPanels:ll(n,t)}},bt=ze(Yu,null,null,{forwardRef:!0})(Rn);function ua(n){var e=n.onClick,t=y.useRef(null),r=y.useCallback(i=>{var a;(a=t.current)===null||a===void 0||a.blur(),e(i)},[e]);return h.jsxs($,{ref:t,kind:"primary",className:"btn-pandas",onClick:r,tooltip:"Click to refresh pandas dataframe, updates do not occur automatically.",children:["pandas dataframe",h.jsxs("span",{children:[h.jsx(be,{icon:Bi,transform:"shrink-1",className:"mr-1"}),"Reload"]})]})}function jr(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Ar(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?jr(Object(t),!0).forEach(function(r){Tt(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):jr(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Nr(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function Qu(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Nr(a,r,i,l,s,"next",o)}function s(o){Nr(a,r,i,l,s,"throw",o)}l(void 0)})}}function Tt(n,e,t){return(e=Ju(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ju(n){var e=ed(n,"string");return typeof e=="symbol"?e:e+""}function ed(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Jt extends y.Component{constructor(e){super(e),Tt(this,"irisGridRef",void 0),Tt(this,"model",null),this.irisGridRef=ve.createRef(),this.handleDisconnect=this.handleDisconnect.bind(this),this.handleReload=this.handleReload.bind(this),this.handleGridStateChange=this.handleGridStateChange.bind(this),this.handlePanelStateUpdate=this.handlePanelStateUpdate.bind(this);var t=e.panelState;this.state={shouldFocusGrid:!1,panelState:t,makeModel:this.wrapMakeModel(e.makeModel)}}componentDidUpdate(e){var t=e.makeModel,r=this.props.makeModel;t!==r&&this.setState({makeModel:this.wrapMakeModel(r)})}componentWillUnmount(){this.model!=null&&this.stopListening(this.model)}wrapMakeModel(e){var t=this;return Qu(function*(){var r=yield e();return t.model!=null&&t.stopListening(t.model),t.model=r,t.startListening(r),r})}startListening(e){e.addEventListener(G.EVENT.DISCONNECT,this.handleDisconnect)}stopListening(e){e.removeEventListener(G.EVENT.DISCONNECT,this.handleDisconnect)}handleDisconnect(){var e;(e=this.irisGridRef.current)===null||e===void 0||e.setState({model:void 0})}handleReload(){var e;(e=this.irisGridRef.current)===null||e===void 0||e.initModel(),this.setState({shouldFocusGrid:!0})}handleGridStateChange(){var e,t=this.state.shouldFocusGrid;t&&(e=this.irisGridRef.current)!==null&&e!==void 0&&(e=e.irisGrid)!==null&&e!==void 0&&(e=e.current)!==null&&e!==void 0&&e.grid&&(this.irisGridRef.current.irisGrid.current.grid.focus(),this.setState({shouldFocusGrid:!1}))}handlePanelStateUpdate(e){this.setState({panelState:e})}render(){var e=this.state.makeModel;return h.jsx(An,Ar(Ar({ref:this.irisGridRef,onStateChange:this.handleGridStateChange,onPanelStateUpdate:this.handlePanelStateUpdate},this.props),{},{makeModel:e,children:h.jsx(ua,{onClick:this.handleReload})}))}}Tt(Jt,"defaultProps",{panelState:null});Tt(Jt,"COMPONENT","PandasPanel");function xr(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function Rr(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){xr(a,r,i,l,s,"next",o)}function s(o){xr(a,r,i,l,s,"throw",o)}l(void 0)})}}function $r(n,e,t){return(e=td(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function td(n){var e=nd(n,"string");return typeof e=="symbol"?e:e+""}function nd(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class rd{constructor(e){$r(this,"items",void 0),$r(this,"onUpdateCallback",void 0),this.items=e}setSearch(e){}setExpanded(e,t){if(e.charAt(e.length-1)==="/")for(var r=0;r<this.items.length;r+=1){var i=this.items[r];Xn(i)&&("".concat(i.filename,"/")===e||i.filename===e)&&(i.isExpanded=t)}return Promise.resolve()}collapseAll(){for(var e=0;e<this.items.length;e+=1){var t=this.items[e];Xn(t)&&(t.isExpanded=!1)}return Promise.resolve()}getViewportData(){return Promise.resolve({items:this.items,offset:0})}getSnapshot(e){return Rr(function*(){throw new Error("Method not implemented.")})()}setViewport(e){var t=this;return Rr(function*(){var r,i=yield t.getViewportData();(r=t.onUpdateCallback)===null||r===void 0||r.call(t,i)})()}setFilters(e){}setSorts(e){}setReversed(e){}close(){}onUpdate(e){return this.onUpdateCallback=e,jest.fn()}get size(){return this.items.length}}function Vr(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function vt(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Vr(a,r,i,l,s,"next",o)}function s(o){Vr(a,r,i,l,s,"throw",o)}l(void 0)})}}function id(n,e,t){return(e=ad(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ad(n){var e=ld(n,"string");return typeof e=="symbol"?e:e+""}function ld(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class sd{constructor(e){id(this,"items",void 0),this.items=e}getTable(){var e=this;return vt(function*(){return new rd(e.items)})()}saveFile(e){throw new Error("Method not implemented.")}loadFile(e){throw new Error("Method not implemented.")}copyFile(e,t){return vt(function*(){throw new Error("Method not implemented.")})()}deleteFile(e){var t=this;return vt(function*(){t.items=t.items.filter(r=>r.filename!==e)})()}moveFile(e,t){var r=this;return vt(function*(){for(var i=0;i<r.items.length;i+=1)if(r.items[i].filename===e){r.items[i].filename=t,r.items[i].basename=sl.getBaseName(t),r.items[i].id=t;break}})()}info(e){var t=this;return vt(function*(){var r=t.items.filter(a=>a.filename===e);if(r.length===0)throw new ol;if(r.length>1)throw new Error("More than one matching file found");var i=r[0];return{filename:i.filename,basename:i.basename,id:i.filename,type:i.type}})()}createDirectory(e){throw new Error("Method not implemented.")}}var od=dt,ud=dt;function Ur(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Bt(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ur(Object(t),!0).forEach(function(r){dd(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ur(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function dd(n,e,t){return(e=hd(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function hd(n){var e=cd(n,"string");return typeof e=="symbol"?e:e+""}function cd(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function pd(n,e){return gd(n)||fd(n,e)||md(n,e)||vd()}function vd(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
17
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function md(n,e){if(n){if(typeof n=="string")return Gr(n,e);var t={}.toString.call(n).slice(8,-1);return t==="Object"&&n.constructor&&(t=n.constructor.name),t==="Map"||t==="Set"?Array.from(n):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?Gr(n,e):void 0}}function Gr(n,e){(e==null||e>n.length)&&(e=n.length);for(var t=0,r=Array(e);t<e;t++)r[t]=n[t];return r}function fd(n,e){var t=n==null?null:typeof Symbol<"u"&&n[Symbol.iterator]||n["@@iterator"];if(t!=null){var r,i,a,l,s=[],o=!0,u=!1;try{if(a=(t=t.call(n)).next,e!==0)for(;!(o=(r=a.call(t)).done)&&(s.push(r.value),s.length!==e);o=!0);}catch(d){u=!0,i=d}finally{try{if(!o&&t.return!=null&&(l=t.return(),Object(l)!==l))return}finally{if(u)throw i}}return s}}function gd(n){if(Array.isArray(n))return n}function Hr(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function da(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Hr(a,r,i,l,s,"next",o)}function s(o){Hr(a,r,i,l,s,"throw",o)}l(void 0)})}}function bd(n,e,t,r){return mn.apply(this,arguments)}function mn(){return mn=da(function*(n,e,t,r){var i={},a="",l={};if(Je(e)&&(i=e.settings,a=e.table,l=e.tableSettings),r!=null&&(r.tableSettings!=null&&(l=r.tableSettings),r.table!=null&&(a=r.table),r.settings!=null&&(i=Bt(Bt({},i),r.settings))),a!=null&&a!==""){var s=yield t();return new Z(n).applyTableSettings(s,l,_i(es.getState())),rt.makeModelFromSettings(n,i,s)}var o=yield t();return rt.makeModel(n,i,o)}),mn.apply(this,arguments)}var $n=y.forwardRef((n,e)=>{var t=na(n)?n.panelState:void 0,r=n.fetch,i=n.metadata,a=n.localDashboardId;_(i);var l=ws(i),s=pd(l,2),o=s[0],u=s[1],d=y.useCallback(da(function*(){if(u!=null)throw u;return o==null?new Promise(()=>{}):bd(o,i,r,t)}),[o,u,i,r,t]);return h.jsx(jn,Bt(Bt({ref:e},n),{},{metadata:i,localDashboardId:a,makeModel:d}))});$n.displayName="ChartPanelPlugin";function Br(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function yd(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Br(a,r,i,l,s,"next",o)}function s(o){Br(a,r,i,l,s,"throw",o)}l(void 0)})}}function Sd(n,e){return Ed(n)||Pd(n,e)||wd(n,e)||Cd()}function Cd(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
18
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function wd(n,e){if(n){if(typeof n=="string")return Wr(n,e);var t={}.toString.call(n).slice(8,-1);return t==="Object"&&n.constructor&&(t=n.constructor.name),t==="Map"||t==="Set"?Array.from(n):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?Wr(n,e):void 0}}function Wr(n,e){(e==null||e>n.length)&&(e=n.length);for(var t=0,r=Array(e);t<e;t++)r[t]=n[t];return r}function Pd(n,e){var t=n==null?null:typeof Symbol<"u"&&n[Symbol.iterator]||n["@@iterator"];if(t!=null){var r,i,a,l,s=[],o=!0,u=!1;try{if(a=(t=t.call(n)).next,e!==0)for(;!(o=(r=a.call(t)).done)&&(s.push(r.value),s.length!==e);o=!0);}catch(d){u=!0,i=d}finally{try{if(!o&&t.return!=null&&(l=t.return(),Object(l)!==l))return}finally{if(u)throw i}}return s}}function Ed(n){if(Array.isArray(n))return n}function ha(n){var e=zt(),t=y.useState(),r=Sd(t,2),i=r[0],a=r[1],l=Pi(Mt),s=n.fetch;return y.useEffect(()=>{var o=!1;function u(){return d.apply(this,arguments)}function d(){return d=yd(function*(){var c=yield s(),p=yield rt.makeModel(e,void 0,c);o||a(p)}),d.apply(this,arguments)}return u(),()=>{o=!0}},[e,s]),i?h.jsx(Ki,{model:i,settings:l}):null}var Td={name:"ChartPanel",title:"Chart",type:Ue.WIDGET_PLUGIN,component:ha,panelComponent:$n,supportedTypes:"Figure",icon:ts};function Kr(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function Md(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Kr(a,r,i,l,s,"next",o)}function s(o){Kr(a,r,i,l,s,"throw",o)}l(void 0)})}}function ca(n){kt(n);var e=n.id,t=n.layout,r=y.useCallback(i=>{var a=i.metadata,l=i.panelId,s=l===void 0?Se():l,o=i.table,u=a.settings,d=function(){var v=Md(function*(){return o});return function(){return v.apply(this,arguments)}}(),c=he.titleFromSettings(u),p={type:"react-component",component:jn.COMPONENT,props:{localDashboardId:e,id:s,metadata:a,fetch:d},title:c,id:s},m=t.root;L.openComponent({root:m,config:p})},[e,t]);return We(t.eventHub,ae.CREATE_CHART,r),null}var Dd={name:"ChartBuilderPlugin",type:Ue.DASHBOARD_PLUGIN,component:ca};function rn(n,e){return Id(n)||Ld(n,e)||kd(n,e)||Fd()}function Fd(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
19
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function kd(n,e){if(n){if(typeof n=="string")return zr(n,e);var t={}.toString.call(n).slice(8,-1);return t==="Object"&&n.constructor&&(t=n.constructor.name),t==="Map"||t==="Set"?Array.from(n):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?zr(n,e):void 0}}function zr(n,e){(e==null||e>n.length)&&(e=n.length);for(var t=0,r=Array(e);t<e;t++)r[t]=n[t];return r}function Ld(n,e){var t=n==null?null:typeof Symbol<"u"&&n[Symbol.iterator]||n["@@iterator"];if(t!=null){var r,i,a,l,s=[],o=!0,u=!1;try{if(a=(t=t.call(n)).next,e!==0)for(;!(o=(r=a.call(t)).done)&&(s.push(r.value),s.length!==e);o=!0);}catch(d){u=!0,i=d}finally{try{if(!o&&t.return!=null&&(l=t.return(),Object(l)!==l))return}finally{if(u)throw i}}return s}}function Id(n){if(Array.isArray(n))return n}var mt=Y.module("FilterPlugin");function pa(n){kt(n);var e=n.id,t=n.layout,r=n.registerComponent,i=Ya(),a=y.useState(()=>new Map),l=rn(a,1),s=l[0],o=y.useState(()=>new Map),u=rn(o,1),d=u[0],c=y.useState(()=>new Map),p=rn(c,1),m=p[0],v=y.useCallback(()=>{var S=Array.from(s.values()).flat().sort((T,M)=>{var k=Me.toLower(T.name),O=Me.toLower(M.name);if(k!==O)return k>O?1:-1;var I=Me.toLower(T.type),j=Me.toLower(M.type);return I!==j?I>j?1:-1:0}).reduce((T,M)=>((T.length===0||Me.toLower(T[T.length-1].name)!==Me.toLower(M.name)||Me.toLower(T[T.length-1].type)!==Me.toLower(M.type))&&T.push(M),T),[]),C=Array.from(d.values()).flat().sort((T,M)=>T.timestamp-M.timestamp),F=new Map(m);mt.debug("sendUpdate",{columns:S,filters:C,tableMap:F}),i(ul(e,{columns:S,filters:C,tableMap:F}))},[i,e,s,d,m]),b=y.useCallback((S,C)=>{mt.debug2("handleColumnsChanged",S,C),C==null?s.delete(S):s.set(S,[].concat(C)),v()},[s,v]),f=y.useCallback((S,C)=>{mt.debug2("handleFiltersChanged",S,C),C==null?d.delete(S):d.set(S,[].concat(C??[])),v()},[d,v]),g=y.useCallback((S,C)=>{mt.debug2("handleTableChanged",S,C),C==null?m.delete(S):m.set(S,C),v()},[m,v]),w=y.useCallback(S=>{mt.debug2("handlePanelUnmount",S);var C=L.getIdFromPanel(S);C!=null&&(s.delete(C),m.delete(C),d.delete(C)),v()},[s,d,m,v]),P=y.useCallback(S=>{var C=S.title,F=C===void 0?"DropdownFilter":C,T=S.metadata,M=T===void 0?{}:T,k=S.panelState,O=k===void 0?null:k,I=S.id,j=I===void 0?Se():I,N=S.focusElement,U=N===void 0?L.DEFAULT_FOCUS_SELECTOR:N,R=S.createNewStack,x=R===void 0?!1:R,z=S.dragEvent,H=z===void 0?void 0:z,Q={type:"react-component",component:et.COMPONENT,props:{id:j,metadata:M,panelState:O,localDashboardId:e},title:F,id:j},le=t.root;L.openComponent({root:le,config:Q,focusElement:U,createNewStack:x,dragEvent:H})},[t,e]),D=y.useCallback(S=>{var C=S.title,F=C===void 0?"InputFilter":C,T=S.metadata,M=T===void 0?{}:T,k=S.panelState,O=k===void 0?null:k,I=S.id,j=I===void 0?Se():I,N=S.focusElement,U=N===void 0?L.DEFAULT_FOCUS_SELECTOR:N,R=S.createNewStack,x=R===void 0?!1:R,z=S.dragEvent,H=z===void 0?void 0:z,Q={type:"react-component",component:tt.COMPONENT,props:{id:j,metadata:M,panelState:O,localDashboardId:e},title:F,id:j},le=t.root;L.openComponent({root:le,config:Q,focusElement:U,createNewStack:x,dragEvent:H})},[t,e]),E=y.useCallback(S=>{var C=S.title,F=C===void 0?"FilterSets":C,T=S.metadata,M=T===void 0?{}:T,k=S.panelState,O=k===void 0?null:k,I=S.id,j=I===void 0?Se():I,N=S.focusElement,U=N===void 0?L.DEFAULT_FOCUS_SELECTOR:N,R=S.createNewStack,x=R===void 0?!1:R,z=S.dragEvent,H=z===void 0?void 0:z,Q={type:"react-component",component:$t.COMPONENT,props:{id:j,metadata:M,panelState:O,localDashboardId:e},title:F,id:j},le=t.root;L.openComponent({root:le,config:Q,focusElement:U,createNewStack:x,dragEvent:H})},[t,e]);return y.useEffect(function(){var C=[r(et.COMPONENT,et),r(tt.COMPONENT,tt),r($t.COMPONENT,$t)];return()=>{C.forEach(F=>F())}},[r]),To(t.eventHub,b),Do(t.eventHub,f),Mo(t.eventHub,g),We(t.eventHub,je.OPEN_DROPDOWN,P),We(t.eventHub,je.OPEN_INPUT,D),We(t.eventHub,je.OPEN_FILTER_SET_MANAGER,E),We(t.eventHub,pe.UNMOUNT,w),null}var Od={name:"FilterPlugin",type:Ue.DASHBOARD_PLUGIN,component:pa},Vn=y.createContext(null);Vn.displayName="TablePluginLoaderContext";var _d=Y.module("@deephaven/app-utils/useTablePlugin");function Un(){var n=ji(),e=y.useContext(Vn),t=y.useCallback(r=>{var i=n.get(r);if(i!=null){if(dl(i))return i.component;if(hl(i))return i.TablePlugin}if(e!=null)return e(r);var a="Unable to find table plugin ".concat(r,".");throw _d.error(a),new Error(a)},[n,e]);return t}function qr(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function jd(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){qr(a,r,i,l,s,"next",o)}function s(o){qr(a,r,i,l,s,"throw",o)}l(void 0)})}}function va(n,e,t){var r=zt(),i=Un(),a=y.useMemo(()=>({loadPlugin:i,localDashboardId:e,makeModel:function(){var l=jd(function*(){var o=yield n();return qi.makeModel(r,o)});function s(){return l.apply(this,arguments)}return s}(),metadata:t}),[r,n,e,i,t]);return a}function Xr(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Zr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Xr(Object(t),!0).forEach(function(r){Ad(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Xr(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Ad(n,e,t){return(e=Nd(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Nd(n){var e=xd(n,"string");return typeof e=="symbol"?e:e+""}function xd(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Gn=y.forwardRef((n,e)=>{var t=n.localDashboardId,r=n.fetch,i=n.metadata,a=va(r,t,i);return h.jsx(An,Zr(Zr({ref:e},n),a))});Gn.displayName="GridPanelPlugin";function Yr(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function an(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Yr(a,r,i,l,s,"next",o)}function s(o){Yr(a,r,i,l,s,"throw",o)}l(void 0)})}}function ln(n,e){return Ud(n)||Vd(n,e)||$d(n,e)||Rd()}function Rd(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
20
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function $d(n,e){if(n){if(typeof n=="string")return Qr(n,e);var t={}.toString.call(n).slice(8,-1);return t==="Object"&&n.constructor&&(t=n.constructor.name),t==="Map"||t==="Set"?Array.from(n):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?Qr(n,e):void 0}}function Qr(n,e){(e==null||e>n.length)&&(e=n.length);for(var t=0,r=Array(e);t<e;t++)r[t]=n[t];return r}function Vd(n,e){var t=n==null?null:typeof Symbol<"u"&&n[Symbol.iterator]||n["@@iterator"];if(t!=null){var r,i,a,l,s=[],o=!0,u=!1;try{if(a=(t=t.call(n)).next,e!==0)for(;!(o=(r=a.call(t)).done)&&(s.push(r.value),s.length!==e);o=!0);}catch(d){u=!0,i=d}finally{try{if(!o&&t.return!=null&&(l=t.return(),Object(l)!==l))return}finally{if(u)throw i}}return s}}function Ud(n){if(Array.isArray(n))return n}function ma(n,e){var t=zt(),r=y.useState(),i=ln(r,2),a=i[0],l=i[1],s=y.useState(),o=ln(s,2),u=o[0],d=o[1],c=y.useState(!0),p=ln(c,2),m=p[0],v=p[1],b=y.useCallback(an(function*(){var w=yield n(),P=yield qi.makeModel(t,w);if(e==null)return P;try{var D=yield e(P);return D}catch(E){throw P.close(),E}}),[t,n,e]),f=y.useCallback(an(function*(){v(!0),d(void 0);try{var w=yield b();l(w),v(!1)}catch(P){d(P),v(!1)}}),[b]);y.useEffect(()=>{var w=!1;function P(){return D.apply(this,arguments)}function D(){return D=an(function*(){v(!0),d(void 0);try{var E=yield b();w||(l(E),v(!1))}catch(S){w||(d(S),v(!1))}}),D.apply(this,arguments)}return P(),()=>{w=!0}},[b]),y.useEffect(function(){if(!a)return;function P(){d(new Error("Table disconnected")),l(void 0),v(!1)}return a.addEventListener(G.EVENT.DISCONNECT,P),()=>{a.removeEventListener(G.EVENT.DISCONNECT,P)}},[a]);var g=y.useMemo(()=>{if(m)return{reload:f,status:"loading"};if(u!=null)return{error:u,reload:f,status:"error"};if(a!=null)return{model:a,reload:f,status:"success"};throw new Error("Invalid state")},[u,m,a,f]);return g}function fa(n,e){var t=qt(),r=t.eventHub,i=Ai(),a=fn();y.useEffect(function(){a==null||n==null||Gt(r,a,n)},[r,a,n]),y.useEffect(function(){e==null||a==null||Ht(r,a,e)},[r,a,e]),y.useEffect(function(){if(a!=null)return()=>{Gt(r,a,null),Ht(r,a,null)}},[r,a]);var l=y.useCallback(u=>Dt(u,i),[i]),s=cn(l),o=y.useMemo(()=>Z.getInputFiltersForColumns(n??[],s.filter(u=>{var d=u.value,c=u.excludePanelIds;return d!=null&&(c==null||a!=null&&!c.includes(a))})),[n,a,s]);return o}function ga(n,e){var t=qt(),r=t.eventHub,i=Ai(),a=fn(),l=Ni(),s=y.useCallback(g=>ct(g,i),[i]),o=cn(s),u=y.useMemo(()=>{var g=new Set;return o.forEach(w=>{w.start.panelId===a&&g.add(w.start.columnName)}),[...g]},[o,a]),d=y.useCallback(g=>Ft(g,i),[i]),c=cn(d),p=y.useCallback(g=>c&&g&&a!=null?c(a,g,{type:"tableLink"}):!1,[c,a]),m=c!=null,v=y.useCallback((g,w)=>{a!=null&&ia(r,a,w)},[r,a]),b=y.useCallback(g=>{var w,P,D;if(!n||!e)return null;var E=e.gridWrapper,S=(w=E==null?void 0:E.getBoundingClientRect())!==null&&w!==void 0?w:null;if(S==null||S.width<=0||S.height<=0)return null;var C=e.state.metrics;_(C);var F=C.columnHeaderHeight,T=C.allColumnXs,M=C.allColumnWidths,k=C.right,O=C.columnHeaderMaxDepth,I=n.getColumnIndexByName(g);_(I);var j=e.getVisibleColumn(I),N=(P=T.get(j))!==null&&P!==void 0?P:0,U=(D=M.get(j))!==null&&D!==void 0?D:0,R=Ye(j>k?S.right:S.left+N+U*.5,S.left,S.right),x=S.top+F*O;return[R,x]},[n,e]),f=y.useCallback(g=>{a!=null&&Xt(r,a,g,{type:"tableLink"})},[r,a]);return y.useEffect(function(){if(!(!e||l==null||a==null))return gr(r,a,{getCoordinates:b,setFilterValues:e.setFilterMap,unsetFilterValue:()=>{},panelId:l}),()=>{gr(r,a,null)}},[r,a,b,e,l]),{alwaysFetchColumns:u,columnSelectionValidator:p,isSelectingColumn:m,onColumnSelected:f,onDataSelected:v}}var ba=y.forwardRef((n,e)=>{var t=n.name,r=n.model,i=n.filter,a=n.fetchColumns,l=n.selectedRanges,s=n.selection,o=n.irisGridRef,u=n.pluginState,d=n.onStateChange,c=Un(),p=y.useMemo(()=>c(t),[c,t]),m=qt(),v=Ni(),b=y.useMemo(()=>{var g;if(v==null)return"unknown";var w=L.getContentItemById(m.root,v);return(g=w==null?void 0:w.config.title)!==null&&g!==void 0?g:"unknown"},[m.root,v]),f=y.useMemo(()=>({irisGrid:o,getTableName:()=>b}),[o,b]);return h.jsx("div",{className:"iris-grid-plugin",children:h.jsx(p,{ref:e,filter:i,fetchColumns:a,model:r,table:r.table,tableName:b,selectedRanges:l,selection:s,onStateChange:d,pluginState:u,panel:f})})});ba.displayName="TablePluginWrapper";function sn(n,e){return Wd(n)||Bd(n,e)||Hd(n,e)||Gd()}function Gd(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
21
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Hd(n,e){if(n){if(typeof n=="string")return Jr(n,e);var t={}.toString.call(n).slice(8,-1);return t==="Object"&&n.constructor&&(t=n.constructor.name),t==="Map"||t==="Set"?Array.from(n):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?Jr(n,e):void 0}}function Jr(n,e){(e==null||e>n.length)&&(e=n.length);for(var t=0,r=Array(e);t<e;t++)r[t]=n[t];return r}function Bd(n,e){var t=n==null?null:typeof Symbol<"u"&&n[Symbol.iterator]||n["@@iterator"];if(t!=null){var r,i,a,l,s=[],o=!0,u=!1;try{if(a=(t=t.call(n)).next,e!==0)for(;!(o=(r=a.call(t)).done)&&(s.push(r.value),s.length!==e);o=!0);}catch(d){u=!0,i=d}finally{try{if(!o&&t.return!=null&&(l=t.return(),Object(l)!==l))return}finally{if(u)throw i}}return s}}function Wd(n){if(Array.isArray(n))return n}function ya(n){var e=n.model,t=n.irisGridRef,r=n.irisGridUtils,i=n.selectedRanges,a=n.selection,l=y.useState([]),s=sn(l,2),o=s[0],u=s[1],d=y.useMemo(()=>e!=null&&r!=null&&Ae(e)?r.getFiltersFromInputFilters(e.table.columns,o,e.formatter.timeZone):[],[e,r,o]),c=y.useState([]),p=sn(c,2),m=p[0],v=p[1],b=y.useRef(null),f=Yi(void 0,{version:1,type:"GridWidgetTablePluginState"}),g=sn(f,2),w=g[0],P=g[1],D=y.useMemo(()=>e!=null&&Ae(e)&&e.table.pluginName!=null?h.jsx(ba,{ref:b,name:e.table.pluginName,model:e,filter:u,fetchColumns:v,selectedRanges:i,selection:a,irisGridRef:t,pluginState:w,onStateChange:P}):null,[e,i,a,t,w,P]),E=y.useCallback(S=>{var C,F,T;return(C=(F=b.current)===null||F===void 0||(T=F.getMenu)===null||T===void 0?void 0:T.call(F,S))!==null&&C!==void 0?C:[]},[]);return{Plugin:D,customFilters:d,alwaysFetchColumns:m,onContextMenu:E}}var Kd=["alwaysFetchColumns"];function zd(n,e){if(n==null)return{};var t,r,i=qd(n,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(n);for(r=0;r<a.length;r++)t=a[r],e.indexOf(t)===-1&&{}.propertyIsEnumerable.call(n,t)&&(i[t]=n[t])}return i}function qd(n,e){if(n==null)return{};var t={};for(var r in n)if({}.hasOwnProperty.call(n,r)){if(e.indexOf(r)!==-1)continue;t[r]=n[r]}return t}function ei(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Ze(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ei(Object(t),!0).forEach(function(r){Xd(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ei(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Xd(n,e,t){return(e=Zd(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Zd(n){var e=Yd(n,"string");return typeof e=="symbol"?e:e+""}function Yd(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function on(n,e){return th(n)||eh(n,e)||Jd(n,e)||Qd()}function Qd(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
22
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Jd(n,e){if(n){if(typeof n=="string")return ti(n,e);var t={}.toString.call(n).slice(8,-1);return t==="Object"&&n.constructor&&(t=n.constructor.name),t==="Map"||t==="Set"?Array.from(n):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?ti(n,e):void 0}}function ti(n,e){(e==null||e>n.length)&&(e=n.length);for(var t=0,r=Array(e);t<e;t++)r[t]=n[t];return r}function eh(n,e){var t=n==null?null:typeof Symbol<"u"&&n[Symbol.iterator]||n["@@iterator"];if(t!=null){var r,i,a,l,s=[],o=!0,u=!1;try{if(a=(t=t.call(n)).next,e!==0)for(;!(o=(r=a.call(t)).done)&&(s.push(r.value),s.length!==e);o=!0);}catch(d){u=!0,i=d}finally{try{if(!o&&t.return!=null&&(l=t.return(),Object(l)!==l))return}finally{if(u)throw i}}return s}}function th(n){if(Array.isArray(n))return n}function Sa(n){var e,t=n.fetch,r=n.transformTableOptions,i=n.transformModel,a=n.irisGridProps,l=n.onModelChanged,s=Pi(Mt),o=qt(),u=o.eventHub,d=ma(t,i),c=d.status==="success"?d.model:void 0;y.useEffect(()=>{c!=null&&(l==null||l(c))},[c,l]);var p=zt(),m=y.useMemo(()=>new Z(p),[p]),v=Yi(void 0,{version:1,type:"GridWidgetPlugin"}),b=on(v,2),f=b[0],g=b[1],w=y.useRef(f),P=y.useMemo(()=>{if(!(d.status!=="success"||w.current===void 0))return Ze(Ze({},m.hydrateIrisGridState(d.model,w.current)),Z.hydrateGridState(d.model,w.current))},[d,m]),D=y.useMemo(()=>pn.makeMemoizedCombinedGridStateDehydrator(),[]),E=y.useCallback((ee,se)=>{if(!(d.status!=="success"||ee==null||se==null)){var ce=D(d.model,ee,se);g(ce)}},[d,g,D]),S=fa((e=c==null?void 0:c.columns)!==null&&e!==void 0?e:null,c!=null&&Ae(c)?c.table:void 0),C=y.useRef(null),F=ga(d.status==="success"?d.model:null,C.current),T=F.alwaysFetchColumns,M=zd(F,Kd),k=y.useCallback(()=>{C.current!=null&&C.current.clearAllFilters()},[]);We(u,je.CLEAR_ALL_FILTERS,k);var O=y.useState([]),I=on(O,2),j=I[0],N=I[1],U=y.useState(null),R=on(U,2),x=R[0],z=R[1],H=ya({model:c,irisGridRef:C,irisGridUtils:m,selectedRanges:j,selection:x}),Q=H.Plugin,le=H.customFilters,Ne=H.alwaysFetchColumns,J=H.onContextMenu,Ge=y.useMemo(()=>{var ee=new Set([...T,...Ne]);return[...ee]},[T,Ne]);return d.status==="loading"?h.jsx(wt,{isLoading:!0,"data-testid":"grid-widget-plugin-loading"}):d.status==="error"?h.jsx(wt,{"data-testid":"grid-widget-plugin-loading-error",errorMessage:xi(d.error),isLoading:!1}):(_(c,"Model should be defined when fetch is successful"),h.jsx(wn,Ze(Ze(Ze(Ze({ref:C,model:c,settings:s,onStateChange:E,onSelectionChanged:N,onSelectionChange:z,onContextMenu:J,inputFilters:S,customFilters:le,transformTableOptions:r},a),M),{},{alwaysFetchColumns:Ge},P),{},{children:Q})))}var nh={name:"IrisGridPanel",title:"Table",type:Ue.WIDGET_PLUGIN,component:Sa,panelComponent:Gn,supportedTypes:["Table","TreeTable","HierarchicalTable","PartitionedTable"],icon:ns};function ni(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Re(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ni(Object(t),!0).forEach(function(r){rh(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ni(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function rh(n,e,t){return(e=ih(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ih(n){var e=ah(n,"string");return typeof e=="symbol"?e:e+""}function ah(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Ca(n){var e=n;return typeof e.getCoordinateForColumn=="function"}function ri(n){var e=n;return Ca(n)&&typeof e.setFilterMap=="function"&&typeof e.unsetFilterValue=="function"}function ii(n){return n.description==null||!n.description.startsWith("Preview of type: ")}var ai=Y.module("LinkerUtils");class Be{static isLinkValid(e,t,r){if(e.panelId==null||t.panelId==null||e.panelId===t.panelId||r!=null&&r!==e.panelId&&r!==t.panelId)return ai.debug2("Incompatible panel ids",e,t,r),!1;var i=e.columnType,a=t.columnType,l=a===null||te.isCompatibleType(i,a);return l?!0:(ai.debug2("Incompatible type",i,a),!1)}static findColumn(e,t){var r=t.columnName,i=t.columnType;return e.find(a=>{var l=a.name,s=a.type;return l===r&&s===i})}static cloneLinksForPanel(e,t,r){var i=[];return e.forEach(a=>{var l;a.start.panelId===t&&a.type!=="filterSource"?i.push(Re(Re({},a),{},{id:Se(),start:Re(Re({},a.start),{},{panelId:r})})):((l=a.end)===null||l===void 0?void 0:l.panelId)===t&&i.push(Re(Re({},a),{},{id:Se(),end:Re(Re({},a.end),{},{panelId:r})}))}),i}}function wa(n,e,t){return(e=lh(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function lh(n){var e=sh(n,"string");return typeof e=="symbol"?e:e+""}function sh(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var oh=Y.module("LinkerLink"),li=.015,si=1.5,Pa=12,Ea=12,oi=2,Rt=Math.sqrt((Ea*.5)**2+Pa**2),ui=Math.asin(Ea*.5/Pa),di=15,$e=Math.PI*.5;class nt extends y.Component{static makeCirclePath(e,t,r){return"M ".concat(e," ").concat(t," m -").concat(r,",0 a ").concat(r,",").concat(r," 0 1,0 ").concat(r*2,",0 a ").concat(r,",").concat(r," 0 1,0 -").concat(r*2,",0 z")}static getLabelForLinkFilter(e,t){try{if(te.isNumberType(e)||te.isCharType(e))return ps(t);if(te.isTextType(e))return vs(t);if(te.isDateType(e))return ms(t);if(te.isBooleanType(e)){if(t===Qe.eq)return"is equal to";if(t===Qe.notEq)return"is not equal to"}throw new Error("Unrecognized column type: ".concat(e))}catch(r){return oh.warn(r),""}}constructor(e){super(e),wa(this,"getOperators",A((t,r)=>{var i=this.props.onOperatorChanged,a=te.getFilterTypes(r);return te.isBooleanType(r)&&(a=[Qe.eq,Qe.notEq]),a.flatMap((l,s)=>{if(l==="eqIgnoreCase"||l==="notEqIgnoreCase")return[];var o="";return l==="startsWith"?o="a*":l==="endsWith"?o="*z":o=te.getFilterOperatorString(l),[{title:nt.getLabelForLinkFilter(r,l),icon:h.jsx("b",{children:o}),action:()=>i(t,l),order:s}]})})),this.handleClick=this.handleClick.bind(this),this.handleMouseEnter=this.handleMouseEnter.bind(this),this.handleMouseLeave=this.handleMouseLeave.bind(this),this.handleDelete=this.handleDelete.bind(this),this.getDropdownActions=this.getDropdownActions.bind(this),this.state={isHovering:void 0}}handleClick(e){e.stopPropagation(),e.preventDefault();var t=this.props,r=t.id,i=t.onClick,a=t.onDelete;e.altKey?a(r):i(r)}handleMouseEnter(){this.setState({isHovering:!0})}handleMouseLeave(){this.setState({isHovering:!1})}handleDelete(){var e=this.props,t=e.id,r=e.onDelete;r(t)}getDropdownActions(){var e=this.props,t=e.id,r=e.startColumnType;return r!=null?this.getOperators(t,r):[]}render(){var e=this.props,t=e.className,r=e.operator,i=e.isSelected,a=e.x1,l=e.y1,s=e.x2,o=e.y2,u=e.id,d=e.startColumnType,c=e.type,p=this.state.isHovering,m=Math.sqrt((a-s)**2+(l-o)**2),v=Math.atan2(o-l,s-a),b=Math.sin(v),f=Math.cos(v)+2,g=window.innerWidth,w=window.innerHeight,P=0,D=0,E=Math.max(P,Math.min(a+(s-a)/2+b*(m*li)**si,g)),S=Math.max(D,Math.min(l+(o-l)/2+f*(m*li)**si,w)),C="M ".concat(a," ").concat(l," Q ").concat(E," ").concat(S," ").concat(s," ").concat(o),F="M ".concat(P," ").concat(D," L ").concat(P," ").concat(w," L ").concat(g," ").concat(w," L ").concat(g," ").concat(D,` z
23
+ `).concat(nt.makeCirclePath(a,l,di),`
24
+ `).concat(nt.makeCirclePath(s,o,di)),T="link-select-clip-".concat(u),M=Math.atan2(o-S,s-E),k=M-ui+Math.PI,O=M+ui+Math.PI,I=s+Math.cos(M)*oi,j=o+Math.sin(M)*oi,N=I+Math.cos(k)*Rt,U=j+Math.sin(k)*Rt,R=I+Math.cos(O)*Rt,x=j+Math.sin(O)*Rt,z="".concat(I,",").concat(j," ").concat(N,",").concat(U," ").concat(R,",").concat(x),H=.25*a+.5*E+.25*s,Q=.25*l+.5*S+.25*o,le=E-a+(s-E),Ne=S-l+(o-S),J=Ne/le,Ge=20,ee=Ge/Math.sqrt(1+J**2),se=ee*J,ce=ee*-1,Ce=se*-1;Number.isFinite(J)?J>0?(ee*=-1,se*=-1,ce*=-1,Ce*=-1,ce-=50-10*(Math.abs(v)%$e),Ce+=10*(Math.abs(v)%$e),ee-=50-10*(Math.abs(v)%$e),se+=10*(Math.abs(v)%$e)):J<0?(ce+=10*(Math.abs(v)%$e),Ce+=10*(Math.abs(v)%$e),ee+=10*(Math.abs(v)%$e),se+=10*(Math.abs(v)%$e)):(ce=15,Ce=10,ee=-25,se=10):(ce=10,Ce=5,ee=10,se=-35);var qe="";r!==void 0&&(r==="startsWith"?qe="a*":r==="endsWith"?qe="*z":qe=te.getFilterOperatorString(r));var en=c!=="chartLink"&&c!=="filterSource";return h.jsxs(h.Fragment,{children:[h.jsxs("svg",{className:ye(t,{hovering:p}),children:[h.jsx("clipPath",{id:T,children:h.jsx("path",{d:F,clipRule:"evenodd"})}),h.jsx("path",{className:"link-select",d:C,onClick:this.handleClick,onMouseEnter:this.handleMouseEnter,onMouseLeave:this.handleMouseLeave,clipPath:"url(#".concat(T,")"),"data-testid":"link-select"}),h.jsx("path",{className:"link-background",d:C}),h.jsx("path",{className:"link-foreground",d:C}),h.jsx("circle",{className:"link-dot",cx:a,cy:l,r:"5"}),h.jsx("polygon",{className:"link-triangle",points:z})]}),d!=null&&i&&h.jsxs(h.Fragment,{children:[en&&h.jsx($,{kind:"primary",className:"btn-fab btn-operator",style:{top:Q+(J>=0?se:Ce),left:H+(J>=0?ee:ce)},onClick:()=>{},icon:h.jsxs("div",{className:"fa-md fa-layers",children:[h.jsx("b",{children:qe}),h.jsx(be,{icon:rs,transform:"right-8 down-9 shrink-5"})]}),tooltip:"Change comparison operator",children:h.jsx(cl,{actions:this.getDropdownActions,popperOptions:{placement:"bottom-start"}})}),h.jsx($,{kind:"primary",className:"btn-fab btn-delete",style:{top:Q+(J<0?se:Ce),left:H+(J<0?ee:ce)},onClick:this.handleDelete,icon:Cn,tooltip:"Delete"})]})]})}}wa(nt,"defaultProps",{className:"",isSelected:!1,onClick(){},onDelete(){}});function hi(n,e){return ch(n)||hh(n,e)||dh(n,e)||uh()}function uh(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
25
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function dh(n,e){if(n){if(typeof n=="string")return ci(n,e);var t={}.toString.call(n).slice(8,-1);return t==="Object"&&n.constructor&&(t=n.constructor.name),t==="Map"||t==="Set"?Array.from(n):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?ci(n,e):void 0}}function ci(n,e){(e==null||e>n.length)&&(e=n.length);for(var t=0,r=Array(e);t<e;t++)r[t]=n[t];return r}function hh(n,e){var t=n==null?null:typeof Symbol<"u"&&n[Symbol.iterator]||n["@@iterator"];if(t!=null){var r,i,a,l,s=[],o=!0,u=!1;try{if(a=(t=t.call(n)).next,e!==0)for(;!(o=(r=a.call(t)).done)&&(s.push(r.value),s.length!==e);o=!0);}catch(d){u=!0,i=d}finally{try{if(!o&&t.return!=null&&(l=t.return(),Object(l)!==l))return}finally{if(u)throw i}}return s}}function ch(n){if(Array.isArray(n))return n}function pi(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function vi(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?pi(Object(t),!0).forEach(function(r){Hn(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):pi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Hn(n,e,t){return(e=ph(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ph(n){var e=vh(n,"string");return typeof e=="symbol"?e:e+""}function vh(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var un=Y.module("LinkerOverlayContent");class Ta extends y.Component{constructor(e){super(e),Hn(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=ve.createRef(),this.state={mouse:void 0,dialog:void 0,offset:{x:0,y:0},isDragging:!1,mode:"select"}}componentDidMount(){window.addEventListener("blur",this.handleBlur,!0),window.addEventListener("mousemove",this.handleMouseMove,!0),window.addEventListener("mouseup",this.handleMouseUp,!0),window.addEventListener("keydown",this.handleKeyDown,!0),window.addEventListener("keyup",this.handleKeyUp,!0),window.addEventListener("resize",this.handleResize,!0)}componentDidCatch(e,t){un.error("componentDidCatch",e,t)}componentWillUnmount(){window.removeEventListener("blur",this.handleBlur,!0),window.removeEventListener("mousemove",this.handleMouseMove,!0),window.removeEventListener("mouseup",this.handleMouseUp,!0),window.removeEventListener("keydown",this.handleKeyDown,!0),window.removeEventListener("keyup",this.handleKeyUp,!0),window.removeEventListener("resize",this.handleResize,!0)}getPointFromLinkPoint(e){var t=this.props,r=t.panelManager,i=t.linkTargetPropMap,a=e.panelId,l=e.columnName,s=a,o=i.get(a);if(o!=null){s=o.panelId;var u=o.getCoordinates(l);if(u!=null)return u}var d=r.getOpenedPanelById(s);if(o==null&&d!=null){if(!Ca(d))throw new Error("Panel does not have getCoordinateForColumn method: ".concat(s));try{var c=d.getCoordinateForColumn(l);if(c!=null)return c}catch{un.error("Could not get coordinate for column",l,d)}}var p=r.getContainerByPanelId(s);if(p==null)throw new Error("Unable to find panel container for id: ".concat(s));return L.getTabPoint(p)}handleOperatorChanged(e,t){var r=this.props,i=r.links,a=r.onLinksUpdated,l=i.map(s=>s.id===e?vi(vi({},s),{},{operator:t}):s);a(l)}handleBlur(){this.setState({mode:"select"})}handleResize(){var e=this.state.dialog;if(e&&this.dialogRef.current){var t=this.dialogRef.current.getBoundingClientRect(),r=Ye(e.x,0,window.innerWidth-t.width),i=Ye(e.y,0,window.innerHeight-t.height);this.setState({dialog:{x:r,y:i}})}}handleMouseMove(e){var t=this.state,r=t.offset,i=t.isDragging;if(this.setState({mouse:{x:e.clientX,y:e.clientY}}),i&&this.dialogRef.current){var a=this.dialogRef.current.getBoundingClientRect(),l=Ye(window.innerWidth-(e.clientX+a.width+r.x),0,window.innerWidth-a.width),s=Ye(window.innerHeight-(e.clientY+a.height+r.y),0,window.innerHeight-a.height);this.setState({dialog:{x:l,y:s}})}}handleMouseDown(e){e.preventDefault();var t={x:0,y:0};if(this.dialogRef.current){var r=this.dialogRef.current.getBoundingClientRect();t.x=r.right-(r.width+e.clientX),t.y=r.bottom-(r.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 t=this.props,r=t.selectedIds,i=t.onLinkDeleted;e.preventDefault(),r.forEach(a=>i(a))}}handleKeyUp(e){e.key==="Alt"&&(e.preventDefault(),this.setState({mode:"select"}))}handleEscapePressed(){var e=this.props.onCancel;e()}render(){var e=this.props,t=e.disabled,r=e.links,i=e.selectedIds,a=e.messageText,l=e.onLinkSelected,s=e.onLinkDeleted,o=e.onAllLinksDeleted,u=e.onDone,d=this.state,c=d.mouse,p=d.dialog,m=d.isDragging,v=d.mode,b=r.map(f=>{try{var g,w,P=f.id,D=f.type,E=f.isReversed,S=f.start,C=f.end,F=f.operator,T=S.columnType,M=this.getPointFromLinkPoint(S),k=hi(M,2),O=k[0],I=k[1],j=(g=c==null?void 0:c.x)!==null&&g!==void 0?g:O,N=(w=c==null?void 0:c.y)!==null&&w!==void 0?w:I;if(C!=null){var U=this.getPointFromLinkPoint(C),R=hi(U,2);j=R[0],N=R[1]}if(E!=null&&E){var x=O,z=I;O=j,I=N,j=x,N=z}var H=ye("linker-link",{disabled:t},{"link-filter-source":D==="filterSource"},{"link-invalid":D==="invalid"},{interactive:f.end==null},{"link-is-selected":i.has(P)},{"danger-delete":v==="delete"});return{x1:O,y1:I,x2:j,y2:N,id:P,className:H,operator:F,startColumnType:T,type:D}}catch(Q){return un.warn("Unable to get point for link",f,Q),null}}).filter(f=>f!=null);return h.jsxs("div",{className:ye("linker-overlay",{"danger-delete":v==="delete"}),children:[b.map(f=>{var g=f.x1,w=f.y1,P=f.x2,D=f.y2,E=f.id,S=f.className,C=f.operator,F=f.startColumnType,T=f.type;return h.jsx(nt,{className:S,id:E,x1:g,y1:w,x2:P,y2:D,onClick:l,onDelete:s,isSelected:i.has(E),operator:C??Qe.eq,startColumnType:F,type:T,onOperatorChanged:this.handleOperatorChanged},E)}),h.jsxs("div",{className:ye("linker-toast-dialog",{dragging:m}),ref:this.dialogRef,style:{bottom:p==null?void 0:p.y,right:p==null?void 0:p.x},"data-testid":"linker-toast-dialog",children:[h.jsx($,{draggable:!0,kind:"inline",className:"btn-drag-handle",icon:is,onClick:()=>{},onMouseDown:this.handleMouseDown,children:!m&&h.jsx(pl,{children:"Drag to reposition"})}),h.jsx("div",{className:"toast-body",children:a}),h.jsxs("div",{className:"toast-footer",children:[h.jsx($,{kind:"secondary",onClick:o,children:"Clear All"}),h.jsx($,{kind:"primary",onClick:u,children:"Done"})]})]}),h.jsx(Ti,{actions:[{action:this.handleEscapePressed,shortcut:vl.LINKER_CLOSE,isGlobal:!0}]})]})}}Hn(Ta,"defaultProps",{disabled:"false"});function mi(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function fi(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?mi(Object(t),!0).forEach(function(r){Vt(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):mi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Vt(n,e,t){return(e=mh(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function mh(n){var e=fh(n,"string");return typeof e=="symbol"?e:e+""}function fh(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var re=Y.module("Linker"),gh=(n,e)=>({activeTool:bn(n),dh:Li(n),isolatedLinkerPanelId:Kt(n,e.localDashboardId),links:ct(n,e.localDashboardId),timeZone:_i(n)}),bh=ze(gh,{setActiveTool:Mi,setDashboardLinks:Ui,addDashboardLinks:Vi,deleteDashboardLinks:$i,setDashboardIsolatedLinkerPanelId:gn,setDashboardColumnSelectionValidator:Ri});class yh extends y.Component{constructor(e){super(e),Vt(this,"linkTargetPropMap",new Map),Vt(this,"removerFns",[]),Vt(this,"getCachedLinks",A((t,r,i)=>{var a=[...t];return r!=null&&r.start!=null&&a.push(r),i!==void 0?a.filter(l=>{var s,o;return(l==null||(s=l.start)===null||s===void 0?void 0:s.panelId)===i||(l==null||(o=l.end)===null||o===void 0?void 0:o.panelId)===i||(l==null?void 0:l.end)==null}):a})),this.handleCancel=this.handleCancel.bind(this),this.handleDone=this.handleDone.bind(this),this.handlePanelCloned=this.handlePanelCloned.bind(this),this.handleColumnsChanged=this.handleColumnsChanged.bind(this),this.handlePanelClosed=this.handlePanelClosed.bind(this),this.handleLayoutStateChanged=this.handleLayoutStateChanged.bind(this),this.handleAllLinksDeleted=this.handleAllLinksDeleted.bind(this),this.handleLinkDeleted=this.handleLinkDeleted.bind(this),this.handleLinksUpdated=this.handleLinksUpdated.bind(this),this.handleChartColumnSelect=this.handleChartColumnSelect.bind(this),this.handleGridColumnSelect=this.handleGridColumnSelect.bind(this),this.handleUpdateValues=this.handleUpdateValues.bind(this),this.handleStateChange=this.handleStateChange.bind(this),this.handleExited=this.handleExited.bind(this),this.handleLinkPointSelected=this.handleLinkPointSelected.bind(this),this.handleTargetRegistered=this.handleTargetRegistered.bind(this),this.handleLinkSelected=this.handleLinkSelected.bind(this),this.handlePanelDragging=this.handlePanelDragging.bind(this),this.handlePanelDropped=this.handlePanelDropped.bind(this),this.isColumnSelectionValid=this.isColumnSelectionValid.bind(this),this.state={linkInProgress:void 0,selectedIds:new Set,isDraggingPanel:!1}}componentDidMount(){var e=this.props.layout;this.startListening(e),this.updateSelectionValidators()}componentDidUpdate(e){var t=this.props,r=t.activeTool,i=t.layout;i!==e.layout&&(this.stopListening(e.layout),this.startListening(i)),r!==e.activeTool&&(this.updateSelectionValidators(),r===Pe.DEFAULT&&this.reset())}componentDidCatch(e,t){re.error("componentDidCatch",e,t)}componentWillUnmount(){var e=this.props.layout;this.stopListening(e)}startListening(e){e.on("stateChanged",this.handleLayoutStateChanged);var t=e.eventHub;t.on(ae.COLUMN_SELECTED,this.handleGridColumnSelect),t.on(ae.DATA_SELECTED,this.handleUpdateValues),t.on(ae.STATE_CHANGED,this.handleStateChange),t.on(at.COLUMN_SELECTED,this.handleChartColumnSelect),t.on(pe.CLONED,this.handlePanelCloned),this.removerFns=[Eo(t,this.handleColumnsChanged),Fo(t,this.handleLinkPointSelected),ko(t,this.handleUpdateValues),Lo(t,this.handleTargetRegistered)],t.on(pe.CLOSE,this.handlePanelClosed),t.on(pe.CLOSED,this.handlePanelClosed),t.on(pe.DRAGGING,this.handlePanelDragging),t.on(pe.DROPPED,this.handlePanelDropped)}stopListening(e){e.off("stateChanged",this.handleLayoutStateChanged);var t=e.eventHub;t.off(ae.COLUMN_SELECTED,this.handleGridColumnSelect),t.off(ae.DATA_SELECTED,this.handleUpdateValues),t.off(ae.STATE_CHANGED,this.handleStateChange),t.off(at.COLUMN_SELECTED,this.handleChartColumnSelect),t.off(pe.CLONED,this.handlePanelCloned),t.off(pe.CLOSE,this.handlePanelClosed),t.off(pe.CLOSED,this.handlePanelClosed),t.off(pe.DRAGGING,this.handlePanelDragging),t.off(pe.DROPPED,this.handlePanelDropped),this.removerFns.forEach(r=>r()),this.removerFns=[]}reset(){this.setState({linkInProgress:void 0,selectedIds:new Set})}handleCancel(){var e=this.state.linkInProgress;if(e==null){var t=this.props.setActiveTool;t(Pe.DEFAULT)}this.setState({linkInProgress:void 0})}handleDone(){var e=this.props.setActiveTool;e(Pe.DEFAULT)}handleChartColumnSelect(e,t){var r=L.getIdFromPanel(e);_(r),this.columnSelected(r,t,"chartLink",!0)}handleColumnsChanged(e,t){re.debug("handleColumnsChanged",e,t);var r=this.props.links;if(e==null){re.error("Invalid filter columns source id",e);return}if(t==null){this.deleteLinksForPanelId(e);return}var i=r.filter(a=>{var l=a.start,s=a.end;return l.panelId===e&&Be.findColumn(t,l)==null||s!=null&&s.panelId===e&&Be.findColumn(t,s)==null});this.deleteLinks(i)}handleGridColumnSelect(e,t){if(!ii(t)){re.debug2("Column is not filterable");return}var r=L.getIdFromPanel(e);_(r),this.columnSelected(r,t,"tableLink")}handleLinkPointSelected(e,t,r){var i=r.type,a=i==="filterSource",l=i==="chartLink"||i==="filterSource";if(!this.isOverlayShown()&&e!=null&&a){var s=this.props,o=s.links,u=s.localDashboardId,d=s.setActiveTool,c=s.setDashboardIsolatedLinkerPanelId,p=o.filter(m=>{var v,b;return((v=m.start)===null||v===void 0?void 0:v.panelId)===e||((b=m.end)===null||b===void 0?void 0:b.panelId)===e});d(Pe.LINKER),c(u,e),p.length===0&&this.columnSelected(e,t,i,l,e);return}this.columnSelected(e,t,i,l)}columnSelected(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,a=arguments.length>4?arguments[4]:void 0;if(!(a===void 0&&!this.isOverlayShown())){var l=this.props.isolatedLinkerPanelId,s=this.state.linkInProgress,o=t.name,u=t.type;if(s==null||s.start==null){var d={id:Se(),start:{panelId:e,columnName:o,columnType:u},type:"invalid",isReversed:i};i&&(d.endType=r),re.debug("starting link",d),this.setState({linkInProgress:d})}else{var c,p=this.props.links,m=s.start,v=s.id,b=s.isReversed,f=b===void 0?!1:b,g={panelId:e,columnName:o,columnType:u},w=!(f&&i)&&Be.isLinkValid(f?g:m,f?m:g,a??l);if(!w){re.debug("Ignore invalid link connection",s,g);return}var P=(c=s.endType)!==null&&c!==void 0?c:r;switch(P){case"invalid":re.debug("Ignore invalid link connection",s,g);return;case"filterSource":{var D=f!==void 0&&f?m.panelId:g.panelId,E=p.filter(M=>{var k=M.end;return(k==null?void 0:k.panelId)===D});this.deleteLinks(E);break}case"chartLink":{var S=f===!0?m:g,C=f===!0?g:m;re.debug("creating chartlink",{existingLinkEnd:S,start:m,end:g});var F=p.filter(M=>{var k=M.end,O=M.start;return(O==null?void 0:O.panelId)===C.panelId&&(k==null?void 0:k.panelId)===S.panelId&&(k==null?void 0:k.columnName)===S.columnName&&(k==null?void 0:k.columnType)===S.columnType});this.deleteLinks(F);break}}var T={start:f?g:m,end:f?m:g,id:v,type:P,operator:Qe.eq};re.info("creating link",T),this.setState({linkInProgress:void 0,selectedIds:new Set([v])},()=>{this.addLinks([T])})}}}unsetFilterValueForLink(e){var t=this.props.panelManager;if(e.end){var r,i=e.end,a=i.panelId,l=i.columnName,s=i.columnType,o=this.linkTargetPropMap,u=(r=o.get(a))===null||r===void 0?void 0:r.unsetFilterValue;if(u){u(l,s);return}var d=t.getOpenedPanelById(a);d?ri(d)?d.unsetFilterValue(l,s):re.debug("endPanel.unsetFilterValue not implemented",d):re.debug("endPanel no longer exists or target is not a panel. Ignoring unsetFilterValue",a)}}setPanelFilterMap(e,t){var r;re.debug("Set filter data for panel:",e,t);var i=this.props.panelManager,a=this.linkTargetPropMap,l=(r=a.get(e))===null||r===void 0?void 0:r.setFilterValues;if(l){l(t);return}var s=i.getOpenedPanelById(e);s?ri(s)?s.setFilterMap(t):re.debug("panel.setFilterMap not implemented",e,s):re.debug("panel no longer exists or target is not a panel. Ignoring setFilterMap",e)}addLinks(e){var t=this.props,r=t.addDashboardLinks,i=t.localDashboardId;r(i,e)}deleteLinks(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,r=this.props.localDashboardId;if(e.forEach(l=>this.unsetFilterValueForLink(l)),t){var i=this.props.setDashboardLinks;i(r,[])}else if(e.length>0){var a=this.props.deleteDashboardLinks;a(r,e.map(l=>{var s=l.id;return s}))}}handleAllLinksDeleted(){var e=this.props,t=e.links,r=e.isolatedLinkerPanelId;if(r===void 0)this.deleteLinks(t,!0);else{var i=t.filter(a=>{var l,s;return(a==null||(l=a.start)===null||l===void 0?void 0:l.panelId)===r||(a==null||(s=a.end)===null||s===void 0?void 0:s.panelId)===r});this.deleteLinks(i)}this.reset()}handleLinkDeleted(e){var t=this.props.links,r=t.find(i=>i.id===e);r?this.deleteLinks([r]):re.error("Unable to find link to delete",e)}handleTargetRegistered(e,t){var r=this.linkTargetPropMap;t==null?r.delete(e):r.set(e,t)}handleUpdateValues(e,t){for(var r=this.props,i=r.dh,a=r.links,l=r.timeZone,s=new Map,o=0;o<a.length;o+=1){var u=a[o],d=u.start,c=u.end,p=u.operator;if(d.panelId===e&&c!=null){var m,v,b=c.panelId,f=c.columnName,g=c.columnType,w=s.get(b),P=w??new Map,D=(m=(v=P.get(f))===null||v===void 0?void 0:v.filterList)!==null&&m!==void 0?m:[],E=t[d.columnName],S=E.visibleIndex,C=E.isExpandable,F=E.isGrouped,T=t[d.columnName].value,M="".concat(T);if(T===null&&C&&F&&(T=void 0),g!=null&&te.isDateType(g)){var k=new ki(i,{timeZone:l,showTimeZone:!1,showTSeparator:!0,defaultDateTimeFormatString:ml.FULL_DATE_FORMAT});M=k.format(T)}D.push({operator:p,text:M,value:T,startColumnIndex:S}),P.set(f,{columnType:g,filterList:D}),s.set(b,P)}}s.forEach((O,I)=>{this.setPanelFilterMap(I,O)})}handlePanelCloned(e,t){var r=this.props.links,i=L.getIdFromPanel(e),a=t.id;if(i!=null){var l=Be.cloneLinksForPanel(r,i,a);this.addLinks(l)}}handlePanelDragging(e){for(var t=this.props.links,r=0;r<t.length;r+=1){var i=t[r],a=i.start,l=i.end;if(a.panelId===e||(l==null?void 0:l.panelId)===e){this.setState({isDraggingPanel:!0});return}}}handlePanelDropped(){this.setState({isDraggingPanel:!1})}handlePanelClosed(e){re.debug("Panel ".concat(e," closed, deleting links.")),this.deleteLinksForPanelId(e)}handleLinkSelected(e){this.setState({selectedIds:new Set([e])})}handleLinksUpdated(e){var t=this.props,r=t.localDashboardId,i=t.setDashboardLinks;i(r,e)}handleLayoutStateChanged(){this.forceUpdate()}handleStateChange(){this.forceUpdate()}handleExited(){var e=this.props,t=e.localDashboardId,r=e.setDashboardIsolatedLinkerPanelId;r(t,void 0)}deleteLinksForPanelId(e){for(var t=this.props.links,r=0;r<t.length;r+=1){var i=t[r],a=i.start,l=i.end,s=i.id;(a.panelId===e||(l==null?void 0:l.panelId)===e)&&this.handleLinkDeleted(s)}}isOverlayShown(){var e=this.props.activeTool;return e===Pe.LINKER}updateSelectionValidators(){var e=this.props,t=e.activeTool,r=e.setDashboardColumnSelectionValidator,i=e.localDashboardId;switch(t){case Pe.LINKER:r(i,this.isColumnSelectionValid);break;default:r(i,void 0);break}}updateLinkInProgressType(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"invalid";this.setState(t=>{var r=t.linkInProgress;return r!==void 0?{linkInProgress:fi(fi({},r),{},{type:e})}:null})}isColumnSelectionValid(e,t,r){var i,a=this.state.linkInProgress,l=this.props.isolatedLinkerPanelId,s=typeof e=="string"?r.type==="filterSource"||r.type==="chartLink":L.getComponentNameFromPanel(e)!=="IrisGridPanel";if(t==null)return(a==null?void 0:a.start)!=null&&this.updateLinkInProgressType("invalid"),!1;if(!ii(t))return re.debug2("Column is not filterable",t.description),(a==null?void 0:a.start)!=null&&this.updateLinkInProgressType("invalid"),!1;if((a==null?void 0:a.start)==null)return!0;var o=a.isReversed,u=o===void 0?!1:o,d=a.start,c=typeof e=="string"?e:L.getIdFromPanel(e);if(c==null)return!1;if(u&&s)return this.updateLinkInProgressType("invalid"),!1;var p={panelId:c,columnName:t.name,columnType:t.type},m=u?Be.isLinkValid(p,d,l):Be.isLinkValid(d,p,l);return this.updateLinkInProgressType(m?(i=a.endType)!==null&&i!==void 0?i:r.type:"invalid"),m}render(){var e=this.props,t=e.links,r=e.isolatedLinkerPanelId,i=e.panelManager,a=this.state,l=a.linkInProgress,s=a.selectedIds,o=a.isDraggingPanel,u=this.isOverlayShown(),d=l!=null&&l.start!=null,c=r===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 o?null:h.jsx(hn,{in:u,mountOnEnter:!0,unmountOnExit:!0,onExited:this.handleExited,children:h.jsx(Ta,{disabled:d,panelManager:i,links:this.getCachedLinks(t,l,r),selectedIds:s,messageText:c,onLinkSelected:this.handleLinkSelected,onLinkDeleted:this.handleLinkDeleted,onAllLinksDeleted:this.handleAllLinksDeleted,onLinksUpdated:this.handleLinksUpdated,onDone:this.handleDone,onCancel:this.handleCancel,linkTargetPropMap:this.linkTargetPropMap})})}}var Sh=bh(yh);function Ma(n){kt(n);var e=n.id,t=n.layout,r=n.panelManager;return h.jsx(Sh,{layout:t,localDashboardId:e,panelManager:r})}var Ch={name:"LinkerPlugin",type:Ue.DASHBOARD_PLUGIN,component:Ma};function Da(n){kt(n);var e=n.id,t=n.layout,r=n.panelManager,i=n.registerComponent,a=y.useCallback(function(){var l=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},s=l.title,o=s===void 0?"":s,u=l.metadata,d=u===void 0?{}:u,c=l.id,p=c===void 0?Se():c,m=l.focusElement,v=m===void 0?L.DEFAULT_FOCUS_SELECTOR:m,b=l.createNewStack,f=b===void 0?!1:b,g=l.dragEvent,w=g===void 0?void 0:g,P=r.getOpenedPanelConfigsOfType(bt.COMPONENT),D=P.map(T=>{var M;return(M=T.title)!==null&&M!==void 0?M:""}),E=o!=null&&o!==""?o:ke.getNewMarkdownTitle(D),S=null,C={type:"react-component",component:bt.COMPONENT,props:{id:p,metadata:d,panelState:{content:S},localDashboardId:e},title:E,id:p},F=t.root;L.openComponent({root:F,config:C,focusElement:v,createNewStack:f,dragEvent:w})},[e,t,r]);return y.useEffect(function(){var s=[i(bt.COMPONENT,bt)];return()=>{s.forEach(o=>o())}},[i]),We(t.eventHub,Gi.OPEN,a),null}var wh={name:"MarkdownPlugin",type:Ue.DASHBOARD_PLUGIN,component:Da};function gi(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function bi(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?gi(Object(t),!0).forEach(function(r){Ph(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):gi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Ph(n,e,t){return(e=Eh(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Eh(n){var e=Th(n,"string");return typeof e=="symbol"?e:e+""}function Th(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Bn=y.forwardRef((n,e)=>{var t=n.localDashboardId,r=n.fetch,i=n.metadata,a=va(r,t,i);return h.jsx(Jt,bi(bi({ref:e},n),a))});Bn.displayName="PandasPanelPlugin";function Fa(n){var e=n.fetch,t=ma(e);if(t.status==="loading")return h.jsx(wt,{isLoading:!0,"data-testid":"pandas-widget-plugin-loading"});if(t.status==="error")return h.jsx(wt,{errorMessage:xi(t.error),isLoading:!1,"data-testid":"pandas-widget-plugin-loading-error"});var r=t.model,i=t.reload;return h.jsx(wn,{model:r,children:h.jsx(ua,{onClick:i})})}var Mh={name:"PandasPanel",title:"Pandas",type:Ue.WIDGET_PLUGIN,component:Fa,panelComponent:Bn,supportedTypes:"pandas.DataFrame",icon:as},ft=Y.module("WidgetLoaderUtils");function ka(n){var e=new Map;n.forEach(r=>{var i=fl(r);!gl(r)&&!i||[r.supportedTypes].flat().forEach(a=>{if(!(a==null||a==="")){var l=e.get(a);i?l!=null?(l.middleware.push(r),ft.debug("Adding middleware ".concat(r.name," to chain for type ").concat(a))):(e.set(a,{basePlugin:null,middleware:[r]}),ft.debug("Creating pending middleware chain for type ".concat(a," with ").concat(r.name))):(l!=null?(l.basePlugin!=null&&ft.warn("Multiple WidgetPlugins handling type ".concat(a,". ")+"Replacing ".concat(l.basePlugin.name," with ").concat(r.name," as base plugin")),l.basePlugin=r):e.set(a,{basePlugin:r,middleware:[]}),ft.debug("Set base plugin ".concat(r.name," for type ").concat(a)))}})});var t=new Map;return e.forEach((r,i)=>{r.basePlugin!=null?t.set(i,r):ft.warn("No base plugin found for type ".concat(i,", middleware will not be applied"))}),t}function La(n){var e=new Map;return n.forEach(t=>{var r=e.get(t.basePlugin.name);if(r==null){e.set(t.basePlugin.name,{basePlugin:t.basePlugin,middleware:[...t.middleware]});return}t.middleware.forEach(i=>{r.middleware.includes(i)||r.middleware.push(i)})}),e}function Dh(n,e){return Ih(n)||Lh(n,e)||kh(n,e)||Fh()}function Fh(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
26
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function kh(n,e){if(n){if(typeof n=="string")return yi(n,e);var t={}.toString.call(n).slice(8,-1);return t==="Object"&&n.constructor&&(t=n.constructor.name),t==="Map"||t==="Set"?Array.from(n):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?yi(n,e):void 0}}function yi(n,e){(e==null||e>n.length)&&(e=n.length);for(var t=0,r=Array(e);t<e;t++)r[t]=n[t];return r}function Lh(n,e){var t=n==null?null:typeof Symbol<"u"&&n[Symbol.iterator]||n["@@iterator"];if(t!=null){var r,i,a,l,s=[],o=!0,u=!1;try{if(a=(t=t.call(n)).next,e!==0)for(;!(o=(r=a.call(t)).done)&&(s.push(r.value),s.length!==e);o=!0);}catch(d){u=!0,i=d}finally{try{if(!o&&t.return!=null&&(l=t.return(),Object(l)!==l))return}finally{if(u)throw i}}return s}}function Ih(n){if(Array.isArray(n))return n}function Si(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function _e(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Si(Object(t),!0).forEach(function(r){Oh(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Si(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Oh(n,e,t){return(e=_h(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function _h(n){var e=jh(n,"string");return typeof e=="symbol"?e:e+""}function jh(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var dn=Y.module("WidgetLoaderPlugin");function Ia(n){var e;function t(r,i){var a,l,s=n.component,o=r.metadata,u=_e(_e({},o),{},{type:(a=o==null?void 0:o.type)!==null&&a!==void 0?a:n.type,name:(l=o==null?void 0:o.name)!==null&&l!==void 0?l:"Widget"}),d=Cl(s),c="widget-loader-".concat(u.type);return h.jsx(Lt,_e(_e({descriptor:u,className:c},r),{},{children:d?h.jsx(s,_e(_e({},r),{},{ref:i})):h.jsx(s,_e({},r))}))}return t.displayName="WidgetLoaderPlugin(".concat((e=n.component.displayName)!==null&&e!==void 0?e:n.name,")"),y.forwardRef(t)}function Oa(n){var e=ji(),t=y.useMemo(()=>ka(e),[e]);kt(n);var r=n.id,i=n.layout,a=n.registerComponent,l=y.useCallback(s=>{var o,u=s.dragEvent,d=s.panelId,c=d===void 0?Se():d,p=s.fetch,m=s.widget,v=m.type,b=v!=null?t.get(v):null;if(b!=null){var f=(o=m.name)!==null&&o!==void 0?o:v,g={localDashboardId:r,metadata:m,fetch:p},w={type:"react-component",component:b.basePlugin.name,props:g,title:f,id:c},P=i.root;L.openComponent({root:P,config:w,dragEvent:u})}},[r,i,t]);return y.useEffect(()=>{var s=La(t);dn.debug("Registering widget components",[...s.entries()].map(u=>{var d=Dh(u,2),c=d[0],p=d[1];return{plugin:c,middleware:p.middleware.map(m=>m.name),hasPanel:p.basePlugin.panelComponent!=null}}));var o=[...s.values()].map(u=>{var d=u.basePlugin,c=u.middleware,p=d.panelComponent;if(p==null){dn.debug("Chaining widget components for ".concat(d.name," (no panel component, using default wrapper)"));var m=bl(d.component,c),v=_e(_e({},d),{},{component:m});return a(d.name,Ia(v))}dn.debug("Chaining panel components for ".concat(d.name," (has custom panel component)"));var b=yl(p,c);return a(d.name,b)});return()=>{o.forEach(u=>u())}},[a,t]),Sl(i.eventHub,l),null}var Ah={name:"WidgetLoaderPlugin",type:Ue.DASHBOARD_PLUGIN,component:Oa},Nh=V.shape({state:V.shape({panelState:V.shape({})})}),xh=V.shape({panelId:V.string.isRequired,columnName:V.string.isRequired,columnType:V.string.isRequired}),Ci=V.shape({panelId:V.string.isRequired,columnName:V.string.isRequired}),_a=V.shape({start:Ci,end:Ci,id:V.string,isReversed:V.bool}),Rh=V.arrayOf(_a),$h=V.shape({name:V.string.isRequired,operateAs:V.string.isRequired,groups:V.arrayOf(V.string).isRequired,permissions:V.shape({canUsePanels:V.bool.isRequired,canCopy:V.bool.isRequired,canDownloadCsv:V.bool.isRequired,canLogout:V.bool.isRequired}).isRequired}),Vh=Object.freeze({LinkPoint:xh,Link:_a,Links:Rh,Panel:Nh,User:$h}),Uh=(n,e)=>n[e]===null?null:V.bool,Gh=(n,e)=>n[e]===null?null:V.string,Hh=Object.freeze({nullableBoolean:Uh,nullableString:Gh});const Yh=Object.freeze(Object.defineProperty({__proto__:null,ChartBuilderPlugin:ca,ChartBuilderPluginConfig:Dd,ChartEvent:at,ChartPanel:jn,ChartPanelPlugin:$n,ChartPluginConfig:Td,ChartWidgetPlugin:ha,CommandHistoryPanel:wl,CommonPropTypes:Hh,ConsoleEvent:Pl,ConsolePanel:El,ConsolePlugin:Tl,ControlType:Ml,CorePanel:od,DropdownFilterPanel:et,FileExplorerPanel:Dl,FilterPlugin:pa,FilterPluginConfig:Od,FilterSetManager:Et,FilterSetManagerPanel:$t,GridPanelPlugin:Gn,GridPluginConfig:nh,GridWidgetPlugin:Sa,InputFilterEvent:je,InputFilterPanel:tt,IrisGridEvent:ae,IrisGridPanel:An,LinkerPlugin:Ma,LinkerPluginConfig:Ch,LinkerUtils:Be,LogPanel:Fl,MarkdownEvent:Gi,MarkdownPanel:bt,MarkdownPlugin:Da,MarkdownPluginConfig:wh,MockFileStorage:sd,NotebookEvent:kl,NotebookPanel:Ll,PandasEvent:Tn,PandasPanel:Jt,PandasPanelPlugin:Bn,PandasPluginConfig:Mh,PandasWidgetPlugin:Fa,Panel:ud,TabEvent:yo,TablePluginLoaderContext:Vn,ToolType:Pe,UIPropTypes:Vh,WidgetLoaderPlugin:Oa,WidgetLoaderPluginConfig:Ah,WidgetPanel:Lt,WidgetPanelTooltip:Mn,WrapWidgetPlugin:Ia,addDashboardLinks:Vi,deleteDashboardLinks:$i,emitSessionClosed:Il,emitSessionOpened:Ol,getColumnSelectionValidatorForDashboard:Ft,getColumnsForDashboard:yn,getDashboardConnection:_l,getDashboardConsoleSettings:jl,getDashboardSessionWrapper:Al,getFilterSetsForDashboard:Oi,getInputFiltersForDashboard:Dt,getIsolatedLinkerPanelIdForDashboard:Kt,getLinksForDashboard:ct,getSupportedWidgetTypes:ka,getTableMapForDashboard:Wt,getUniqueWidgetPluginInfos:La,isChartPanelDehydratedProps:na,isChartPanelFigureMetadata:ea,isChartPanelTableMetadata:Je,isGLChartPanelState:ta,isIrisGridPanelMetadata:la,isLegacyIrisGridPanelMetadata:aa,listenForSessionClosed:Nl,listenForSessionOpened:xl,setDashboardColumnSelectionValidator:Ri,setDashboardConnection:Rl,setDashboardConsoleSettings:$l,setDashboardFilterSets:Ii,setDashboardIsolatedLinkerPanelId:gn,setDashboardLinks:Ui,setDashboardSessionWrapper:Vl,useConfigureRuff:Ul,useDashboardColumnFilters:fa,useGridLinker:ga,useLoadTablePlugin:Un,useSessionClosedListener:Gl,useSessionOpenedListener:Hl,useTablePlugin:ya},Symbol.toStringTag,{value:"Module"}));export{Pn as C,zi as D,Pt as F,qs as I,rt as a,pn as b,qi as c,Ws as d,xs as e,qt as f,Yi as g,Yh as h,sr as i,ws as u};
27
+ //# sourceMappingURL=index-dXs3zbSl.js.map