@deephaven/code-studio 0.49.2-theme-plugins.45 → 0.50.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 (29) hide show
  1. package/build/assets/AppRoot-594f9ef9.js +6 -0
  2. package/build/assets/AppRoot-594f9ef9.js.map +1 -0
  3. package/build/assets/ControlType-739cf14a.js +21 -0
  4. package/build/assets/ControlType-739cf14a.js.map +1 -0
  5. package/build/assets/{ControlType-61d50c36.css → ControlType-f220a027.css} +1 -1
  6. package/build/assets/index-07ade726.js +12 -0
  7. package/build/assets/index-07ade726.js.map +1 -0
  8. package/build/assets/{index-7c4decfc.js → index-22fa6865.js} +2 -2
  9. package/build/assets/{index-7c4decfc.js.map → index-22fa6865.js.map} +1 -1
  10. package/build/assets/{index-303a0543.js → index-4d662ebf.js} +11 -11
  11. package/build/assets/index-4d662ebf.js.map +1 -0
  12. package/build/assets/{index-3d62f2d2.css → index-824ffbc8.css} +1 -1
  13. package/build/assets/index-d04a1c67.css +1 -0
  14. package/build/assets/{useConnection-da79e332.js → useConnection-c5e2e341.js} +4 -4
  15. package/build/assets/{useConnection-da79e332.js.map → useConnection-c5e2e341.js.map} +1 -1
  16. package/build/assets/{useLoadTablePlugin-3c85f5cb.js → useLoadTablePlugin-6c4802c1.js} +2 -2
  17. package/build/assets/{useLoadTablePlugin-3c85f5cb.js.map → useLoadTablePlugin-6c4802c1.js.map} +1 -1
  18. package/build/assets/{useUser-df945b40.js → useUser-99bf68df.js} +2 -2
  19. package/build/assets/{useUser-df945b40.js.map → useUser-99bf68df.js.map} +1 -1
  20. package/build/index.html +3 -3
  21. package/package.json +31 -31
  22. package/build/assets/AppRoot-a1b43580.js +0 -6
  23. package/build/assets/AppRoot-a1b43580.js.map +0 -1
  24. package/build/assets/ControlType-6b65518d.js +0 -21
  25. package/build/assets/ControlType-6b65518d.js.map +0 -1
  26. package/build/assets/index-2d0a26d1.js +0 -8
  27. package/build/assets/index-2d0a26d1.js.map +0 -1
  28. package/build/assets/index-303a0543.js.map +0 -1
  29. package/build/assets/index-cb5a2514.css +0 -1
@@ -1,6 +1,6 @@
1
- import{_ as Vd,r as R,H as Me,$ as ht,C as c,S as be,K as ct,L as we,a0 as Ae,a1 as jc,a2 as Vl,F as re,N as Z,E as _c,D as vr,G as ae,a3 as nt,a4 as La,a5 as Bd,a6 as ns,a7 as Hc,a8 as Tr,a9 as Uc,aa as Vc,ab as Bc,ac as Gc,ad as Bl,ae as $c,af as Wc,ag as zc,ah as so,ai as Kc,aj as oo,ak as Yc,al as qc,am as Xc,an as Qc,ao as Zc,ap as Jc,I as wa,M as On,aq as ev,ar as tv}from"./vendor-c6a8042a.js";import{a8 as ar,I as dr,b as is,a9 as Gd,aa as as,a6 as rv,ab as nv,L as me,ac as iv,ad as br,R as At,ae as $d,af as ka,u as Wd,ag as zd,T as wr,J as lt,ah as ls,ai as Kd,x as ss,aj as os,ak as us,al as ds,am as ja,l as hs,an as Yd,f as qd,ao as av,E as lv,G as sv,Q as ov,ap as uv,aq as dv,ar as hv,as as cv,at as uo,U as vv,V as mv,au as Pn,k as Xd,n as fv,v as gv,av as pv,aw as Cv,ax as Sv,ay as bv,az as wv,aA as yv,M as Tv}from"./ControlType-6b65518d.js";import{t as fO,p as gO,S as pO,C as CO,F as SO,q as bO,N as wO,K as yO,aB as TO,A as EO,aD as OO,B as PO,_ as RO,aC as DO,$ as FO}from"./ControlType-6b65518d.js";import{T as Ce,b as x,ac as kr,F as Pr,ad as Tn,ae as Re,af as Qd,B as Y,ag as xr,ah as _a,P as st,x as Zd,g as Kn,f as Jt,ai as pa,a as wn,D as Yt,I as cn,p as ce,G as Jd,j as cs,aj as Ev,O as di,ak as Ov,al as cr,am as lr,an as Pv,ao as Rv,ap as Ha,aq as jr,C as un,ar as Gl,l as vs,c as Dv,as as sr,o as eh,k as ms,at as th,au as rh,av as Fv,aw as Nv,ax as ho,ay as je,az as co,aA as nh,aB as fs,w as Iv,aC as Av,u as _i,z as ih,aD as Rn}from"./useConnection-da79e332.js";import{L as ge,e as L,H as ah,I as Mv,J as xv,K as M,T as ze,N as Wn,F as Dn,O as gs,P as ps,Q as ya,R as Lv,S as Nr,U as Ta,V as kv,W as jv,d as Cs,X as _v,Y as Hv,Z as Uv,_ as Vv,$ as Bv,a0 as Ss,f as fr,g as Fn,a1 as vo,a2 as Hi,a3 as bs,a4 as ws,a5 as Gv,a6 as Ai,t as $v,a7 as Wv,a8 as Ua,a9 as zv,D as Ea,aa as Kv,ab as ys,ac as lh,v as Yv,ad as qv,ae as Xv,af as Qv,ag as Zv,ah as Jv,ai as em,aj as mo,ak as yl,al as tm,am as rm,j as Ts,an as nm,M as sh,b as oh,ao as im,ap as am,c as uh,z as lm,aq as sm,ar as om,as as um,q as dm,at as hm,au as cm,av as vm,aw as mm,ax as fm,ay as gm,az as pm,C as Es,aA as Cm,aB as Sm,s as fo,y as bm}from"./index-2d0a26d1.js";import{c as wm,P as ym}from"./plotly-e8f43474.js";import{e as Tm}from"./monaco-3857fcdf.js";import{u as Em}from"./useLoadTablePlugin-3c85f5cb.js";import"./helpers-042e6b4d.js";class Os{static isDark(e){var t=document.createElement("div");t.style.display="none",t.style.color=e;var r=getComputedStyle(document.body.appendChild(t)).color,i=r.match(/\d+/g),a=[];if(i)a=i.map(s=>parseInt(s,10));else throw new Error("Invalid color received. Got ".concat(r));document.body.removeChild(t);var l=Os.getBrightness(a);return l<125}static getBrightness(e){return Math.round((e[0]*299+e[1]*587+e[2]*114)/1e3)}}const dh=Os;function hh(n){switch(n){case Ce.eq:return"is exactly";case Ce.eqIgnoreCase:return"is exactly (ignore case)";case Ce.notEq:return"is not exactly";case Ce.notEqIgnoreCase:return"is not exactly (ignore case)";case Ce.contains:return"contains";case Ce.notContains:return"does not contain";case Ce.startsWith:return"starts with";case Ce.endsWith:return"ends with";default:throw new Error("Unrecognized text filter type ".concat(n))}}function ch(n){switch(n){case Ce.eq:return"is equal to";case Ce.notEq:return"is not equal to";case Ce.greaterThan:return"greater than";case Ce.greaterThanOrEqualTo:return"greater than or equal to";case Ce.lessThan:return"less than";case Ce.lessThanOrEqualTo:return"less than or equal to";default:throw new Error("Unrecognized number filter type ".concat(n))}}function vh(n){switch(n){case Ce.eq:return"date is";case Ce.notEq:return"date is not";case Ce.notEqIgnoreCase:case Ce.greaterThan:return"date is after";case Ce.greaterThanOrEqualTo:return"date is after or equal";case Ce.lessThan:return"date is before";case Ce.lessThanOrEqualTo:return"date is before or equal";default:throw new Error("Unrecognized date filter type ".concat(n))}}function Om(n){switch(n){case Ce.isTrue:return"Is True";case Ce.isFalse:return"Is False";case Ce.isNull:return"Is Null";default:throw new Error("Unrecognized boolean filter type ".concat(n))}}function kt(n,e,t){return e=Pm(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Pm(n){var e=Rm(n,"string");return typeof e=="symbol"?e:String(e)}function Rm(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class at{constructor(e){kt(this,"dh",void 0),kt(this,"listeners",void 0),kt(this,"formatter",void 0),kt(this,"rect",void 0),kt(this,"isDownsamplingDisabled",void 0),kt(this,"title",void 0),this.dh=e,this.listeners=[],this.isDownsamplingDisabled=!1}getData(){return[]}getDefaultTitle(){return""}getLayout(){return{}}getFilterColumnMap(){return new Map}isFilterRequired(){return!1}setFilter(e){}close(){}setFormatter(e){this.formatter=e}setDownsamplingDisabled(e){this.isDownsamplingDisabled=e}setDimensions(e){this.rect=e}setTitle(e){this.title=e}subscribe(e){this.listeners.push(e)}unsubscribe(e){this.listeners=this.listeners.filter(t=>t!==e)}fireEvent(e){for(var t=0;t<this.listeners.length;t+=1)this.listeners[t](e)}fireUpdate(e){this.fireEvent(new CustomEvent(at.EVENT_UPDATED,{detail:e}))}fireDisconnect(){this.fireEvent(new CustomEvent(at.EVENT_DISCONNECT))}fireReconnect(){this.fireEvent(new CustomEvent(at.EVENT_RECONNECT))}fireDownsampleStart(e){this.fireEvent(new CustomEvent(at.EVENT_DOWNSAMPLESTARTED,{detail:e}))}fireDownsampleFinish(e){this.fireEvent(new CustomEvent(at.EVENT_DOWNSAMPLEFINISHED,{detail:e}))}fireDownsampleFail(e){this.fireEvent(new CustomEvent(at.EVENT_DOWNSAMPLEFAILED,{detail:e}))}fireDownsampleNeeded(e){this.fireEvent(new CustomEvent(at.EVENT_DOWNSAMPLENEEDED,{detail:e}))}fireLoadFinished(){this.fireEvent(new CustomEvent(at.EVENT_LOADFINISHED))}}kt(at,"EVENT_UPDATED","ChartModel.EVENT_UPDATED");kt(at,"EVENT_DISCONNECT","ChartModel.EVENT_DISCONNECT");kt(at,"EVENT_RECONNECT","ChartModel.EVENT_RECONNECT");kt(at,"EVENT_DOWNSAMPLESTARTED","ChartModel.EVENT_DOWNSAMPLESTARTED");kt(at,"EVENT_DOWNSAMPLEFINISHED","ChartModel.EVENT_DOWNSAMPLEFINISHED");kt(at,"EVENT_DOWNSAMPLEFAILED","ChartModel.EVENT_DOWNSAMPLEFAILED");kt(at,"EVENT_DOWNSAMPLENEEDED","ChartModel.EVENT_DOWNSAMPLENEEDED");kt(at,"EVENT_LOADFINISHED","ChartModel.EVENT_LOADFINISHED");const Mr=at;function go(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 Hn(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?go(Object(t),!0).forEach(function(r){vt(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):go(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function vt(n,e,t){return e=Dm(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Dm(n){var e=Fm(n,"string");return typeof e=="symbol"?e:String(e)}function Fm(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var hi=ge.module("ChartUtils"),po="io.deephaven.time.DateTime",Nm=36e5,Im=1e6;function Am(n){return n.asDate!==void 0}function Mm(n){return n.asNumber!==void 0}function Co(n){return n.dhTimeZone!==void 0}function xm(n){return n!=null&&n.range!=null&&(n.autorange===!1||n.autorange===void 0)}class J{static getPlotlyErrorBars(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:ar,a=r.map((s,o)=>s-e[o]),l=t.map((s,o)=>e[o]-s);return{type:"data",symmetric:!1,array:a,arrayminus:l,color:i.error_band_line_color}}static convertNumberPrefix(e){return e.replace(/\u00A4\u00A4/g,"USD").replace(/\u00A4/g,"$")}static getPlotlyNumberFormat(e,t,r){if(!r)return null;var i=r.split(";"),a=i[0].match(/^([^#,0.]*)([#,]*)([0,]*)(\.?)(0*)(#*)(E?0*)(%?)(.*)/);L(a);var[,l,s,o,,u,d,h,v,m]=a,f=o.replace(",","").length,g=s.indexOf(",")>=0||o.indexOf(",")>=0,p=g?",":"",C=h!=null&&h!==""?"e":"f",S=v!==""?v:C,b=u.length+d.length,w="",y="0".concat(f).concat(p,".").concat(b).concat(w).concat(S),T=J.convertNumberPrefix(l),E=J.convertNumberPrefix(m);return{tickformat:y,tickprefix:T,ticksuffix:E,automargin:!0}}static addTickSpacing(e,t,r){var{gapBetweenMajorTicks:i}=t;if(i>0){var a=e||{},l=i;return r&&(l=i/Im),t.log&&(l=Math.log(l)),a.tickmode="linear",a.dtick=l,a}return e}static getSourceForAxis(e,t){for(var r=0;r<e.series.length;r+=1)for(var i=e.series[r],a=0;a<i.sources.length;a+=1){var l=i.sources[a];if(l.axis===t)return l}return null}static getSeriesVisibility(e,t){return t!=null&&t.hiddenSeries!=null&&t.hiddenSeries.includes(e)?"legendonly":!0}static getHiddenLabels(e){return e!=null&&e.hiddenSeries?[...e.hiddenSeries]:[]}static makeSeriesData(e,t,r,i){var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:J.ORIENTATION.VERTICAL;return{type:e,mode:t,name:r,orientation:a,showlegend:i??void 0}}static getMarkerSymbol(e){switch(e){case"SQUARE":return"square";case"CIRCLE":return"circle";case"DIAMOND":return"diamond";case"UP_TRIANGLE":return"triangle-up";case"DOWN_TRIANGLE":return"triangle-down";case"RIGHT_TRIANGLE":return"triangle-right";case"LEFT_TRIANGLE":return"triangle-left";case"ELLIPSE":case"HORIZONTAL_RECTANGLE":case"VERTICAL_RECTANGLE":default:throw new Error("Unrecognized shape ".concat(e))}}static getAllAxes(e){return e.charts.reduce((t,r)=>[...t,...r.axes],[])}static getChartForSeries(e,t){for(var{charts:r}=e,i=0;i<r.length;i+=1)for(var a=r[i],l=0;l<a.series.length;l+=1)if(t===a.series[l])return a;return null}static getLayoutRanges(e){for(var t={},r=Object.keys(e).filter(s=>s.indexOf("axis")>=0),i=0;i<r.length;i+=1){var a=r[i],l=e[a];xm(l)&&(t[a]=[...l.range])}return t}static getAxisLayoutProperty(e,t){var r=t>0?"".concat(t+1):"";return"".concat(e??"","axis").concat(r)}static periodToDecimal(e){var t=e.split(":");return Number(t[0])+Number(t[1])/60}static groupArray(e,t){return e.reduce((r,i)=>{var a,l=i[t],s=(a=r.get(l))!==null&&a!==void 0?a:[];return s.push(i),r.set(l,s),r},new Map)}static getColorwayFromTheme(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:ar,t=[];return e.colorway&&(Array.isArray(e.colorway)?t=e.colorway:typeof e.colorway=="string"?t=e.colorway.split(" "):hi.warn("Unable to handle colorway property: ".concat(e.colorway))),t}static titleFromSettings(e){var{series:t,xAxis:r,title:i="".concat((t??[]).join(", ")," by ").concat(r)}=e;return i}constructor(e){vt(this,"dh",void 0),vt(this,"daysOfWeek",void 0),this.dh=e,this.daysOfWeek=Object.freeze(e.calendar.DayOfWeek.values())}getAxisFormats(e,t){for(var r=this,i=new Map,a={tickformat:null,ticksuffix:null},l=J.getAllAxes(e),s=J.groupArray(l,"type"),{charts:o}=e,u=0;u<o.length;u+=1)for(var d=o[u],h=0;h<d.series.length;h+=1)for(var v=d.series[h],{sources:m}=v,f=m.filter(S=>S.axis),g=function(){var b=f[p],{axis:w}=b,{type:y}=w,T=s.get(y);L(T);var E=T.indexOf(w),P=r.getAxisPropertyName(y);if(P!=null){var O=J.getAxisLayoutProperty(P,E);if(i.has(O))hi.debug("".concat(O," already added."));else{hi.debug("Adding ".concat(O," to axisFormats."));var D=r.getPlotlyAxisFormat(b,t);if(D===null)i.set(O,a);else{i.set(O,D);var{businessCalendar:N}=w;if(N!=null){var F=[],{businessPeriods:A,businessDays:j,holidays:k,timeZone:B}=N,G=t?.getColumnTypeFormatter(po),W;Co(G)&&(W=G.dhTimeZone);var z=W?(B.standardOffset-W.standardOffset)/60:0;k.length>0&&F.push(...r.createRangeBreakValuesFromHolidays(k,B,W)),A.forEach(q=>F.push({pattern:"hour",bounds:[J.periodToDecimal(q.close)+z,J.periodToDecimal(q.open)+z]})),j.length<r.daysOfWeek.length&&r.createBoundsFromDays(j).forEach(q=>F.push({pattern:"day of week",bounds:q})),D.rangebreaks=F}if(i.size===d.axes.length)return{v:i}}}}},p=0;p<f.length;p+=1){var C=g();if(typeof C=="object")return C.v}return i}getPlotlyChartType(e,t){var{dh:r}=this;switch(e){case r.plot.SeriesPlotStyle.SCATTER:return t?"scatter":"scattergl";case r.plot.SeriesPlotStyle.LINE:return"scatter";case r.plot.SeriesPlotStyle.BAR:case r.plot.SeriesPlotStyle.STACKED_BAR:return"bar";case r.plot.SeriesPlotStyle.PIE:return"pie";case r.plot.SeriesPlotStyle.TREEMAP:return"treemap";case r.plot.SeriesPlotStyle.HISTOGRAM:return"histogram";case r.plot.SeriesPlotStyle.OHLC:return"ohlc";default:return}}getPlotlyChartMode(e,t,r){var{dh:i}=this,a=new Set;switch(e){case i.plot.SeriesPlotStyle.SCATTER:(t??!1)&&a.add(J.MODE_LINES),(r??!0)&&a.add(J.MODE_MARKERS);break;case i.plot.SeriesPlotStyle.LINE:(t??!0)&&a.add(J.MODE_LINES),(r??!1)&&a.add(J.MODE_MARKERS);break}return a.size>0?[...a].join("+"):void 0}getPlotlyProperty(e,t){var{dh:r}=this;switch(e){case r.plot.SeriesPlotStyle.PIE:switch(t){case r.plot.SourceType.X:return"labels";case r.plot.SourceType.Y:return"values"}break;case r.plot.SeriesPlotStyle.OHLC:switch(t){case r.plot.SourceType.TIME:return"x"}break;case r.plot.SeriesPlotStyle.TREEMAP:switch(t){case r.plot.SourceType.X:return"ids";case r.plot.SourceType.Y:return"values";case r.plot.SourceType.LABEL:return"labels";case r.plot.SourceType.PARENT:return"parents";case r.plot.SourceType.COLOR:return"marker.colors"}break}switch(t){case r.plot.SourceType.X:return"x";case r.plot.SourceType.Y:return"y";case r.plot.SourceType.Z:return"z";case r.plot.SourceType.X_LOW:return"xLow";case r.plot.SourceType.X_HIGH:return"xHigh";case r.plot.SourceType.Y_LOW:return"yLow";case r.plot.SourceType.Y_HIGH:return"yHigh";case r.plot.SourceType.TIME:return"time";case r.plot.SourceType.OPEN:return"open";case r.plot.SourceType.HIGH:return"high";case r.plot.SourceType.LOW:return"low";case r.plot.SourceType.CLOSE:return"close";case r.plot.SourceType.SHAPE:return"shape";case r.plot.SourceType.SIZE:return"size";case r.plot.SourceType.LABEL:return"label";case r.plot.SourceType.COLOR:return"color";case r.plot.SourceType.PARENT:return"parent";case r.plot.SourceType.HOVER_TEXT:return"hovertext";case r.plot.SourceType.TEXT:return"text";default:throw new Error("Unrecognized source type: ".concat(t))}}getPlotlySeriesOrientation(e){var t,r,{dh:i}=this,{sources:a}=e;return a.length===2&&((t=a[0])===null||t===void 0||(r=t.axis)===null||r===void 0?void 0:r.type)===i.plot.AxisType.Y?J.ORIENTATION.HORIZONTAL:J.ORIENTATION.VERTICAL}makeSeriesDataFromSeries(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:ar,{name:l,isLinesVisible:s,isShapesVisible:o,plotStyle:u,lineColor:d,shapeColor:h,sources:v,shape:m,shapeSize:f}=e,g=v.some(w=>{var y;return(y=w.axis)===null||y===void 0?void 0:y.businessCalendar}),p=this.getChartType(u,g),C=this.getPlotlyChartMode(u,s??void 0,o??void 0),S=this.getPlotlySeriesOrientation(e),b=J.makeSeriesData(p,C,l,i,S);return this.addSourcesToSeriesData(b,u,v,t),this.addStylingToSeriesData(b,u,a,d,h,m,f,r),b}addSourcesToSeriesData(e,t,r,i){for(var a=e,l=0;l<r.length;l+=1){var s=r[l],{axis:o,type:u}=s,d=this.getPlotlyProperty(t,u);Vd(a,d,[]);var h=o!=null?this.getAxisPropertyName(o.type):null;if(h!=null){var v=i.get(o.type);if(v){var m=v.indexOf(o),f=m>0?"".concat(m+1):"";a["".concat(h,"axis")]="".concat(h).concat(f)}}}}addStylingToSeriesData(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:ar,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:null,l=arguments.length>5&&arguments[5]!==void 0?arguments[5]:null,s=arguments.length>6&&arguments[6]!==void 0?arguments[6]:null,o=arguments.length>7&&arguments[7]!==void 0?arguments[7]:null,{dh:u}=this,d=e;if(d.marker={line:{}},d.line={width:1},t===u.plot.SeriesPlotStyle.AREA?d.fill="tozeroy":t===u.plot.SeriesPlotStyle.STACKED_AREA?d.stackgroup="stack":t===u.plot.SeriesPlotStyle.STEP?d.line.shape="hv":t===u.plot.SeriesPlotStyle.HISTOGRAM?(d.width=[],d.marker.line!==void 0&&Object.assign(d.marker.line,{color:r.paper_bgcolor,width:1})):t===u.plot.SeriesPlotStyle.OHLC?(d.increasing={line:{color:r.ohlc_increasing}},d.decreasing={line:{color:r.ohlc_decreasing}}):t===u.plot.SeriesPlotStyle.PIE?(d.textinfo="label+percent",d.outsidetextfont={color:r.title_color}):t===u.plot.SeriesPlotStyle.TREEMAP&&(d.hoverinfo="text",d.textinfo="label+text",d.tiling={packing:"squarify",pad:0},d.textposition="middle center",d.outsidetextfont={color:r.title_color}),i!=null&&(t===u.plot.SeriesPlotStyle.BAR?d.marker.color=i:d.line.color=i),a!=null&&(d.marker.color=a),l!=null&&l.length>0)try{d.marker.symbol=J.getMarkerSymbol(l)}catch(h){hi.warn("Unable to handle shape",l,":",h)}s!=null&&(d.marker.size=s*J.DEFAULT_MARKER_SIZE),o!=null&&t!==u.plot.SeriesPlotStyle.PIE&&(d.visible=o)}getChartType(e,t){var{dh:r}=this;switch(e){case r.plot.SeriesPlotStyle.HISTOGRAM:return"bar";default:return this.getPlotlyChartType(e,t)}}getAxisPropertyName(e){var{dh:t}=this;switch(e){case t.plot.AxisType.X:return"x";case t.plot.AxisType.Y:return"y";default:return null}}getAxisSide(e){var{dh:t}=this;switch(e){case t.plot.AxisPosition.BOTTOM:return"bottom";case t.plot.AxisPosition.TOP:return"top";case t.plot.AxisPosition.LEFT:return"left";case t.plot.AxisPosition.RIGHT:return"right";default:return}}updateFigureAxes(e,t,r){for(var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,l=arguments.length>5&&arguments[5]!==void 0?arguments[5]:ar,s=e,o=J.getAllAxes(t),u=0;u<t.charts.length;u+=1){var d=t.charts[u],h=r?.(d),v=this.getChartBounds(t,d,i,a);this.updateLayoutAxes(s,d.axes,o,i,a,v,h,l)}this.removeStaleAxes(s,o)}getChartBounds(e,t,r,i){var a,{dh:l}=this,{cols:s,rows:o}=e,{column:u,colspan:d,row:h,rowspan:v}=t,m=u+d,f=h+v,g=1/s,p=1/o,C=J.AXIS_SIZE_PX/r,S=J.AXIS_SIZE_PX/i,b={bottom:(o-f)*p+(f<o?S/2:0),top:(o-h)*p-(h>0?S/2:0),left:u*g+(u>0?C/2:0),right:m*g-(m<s?C/2:0)},w=J.groupArray(t.axes,"position"),y=(a=w.get(l.plot.AxisPosition.RIGHT))!==null&&a!==void 0?a:[];return y.length>0&&(r>0?b.right-=(b.right-b.left)*Math.max(0,Math.min(J.LEGEND_WIDTH_PX/r,J.MAX_LEGEND_SIZE)):b.right-=(b.right-b.left)*J.DEFAULT_AXIS_SIZE),b}getPlotlyDateFormat(e,t,r){var{dh:i}=this,a=r?.replace("%","%%").replace(/S{9}/g,"%9f").replace(/S{8}/g,"%8f").replace(/S{7}/g,"%7f").replace(/S{6}/g,"%6f").replace(/S{5}/g,"%5f").replace(/S{4}/g,"%4f").replace(/S{3}/g,"%3f").replace(/S{2}/g,"%2f").replace(/S{1}/g,"%1f").replace(/y{4}/g,"%Y").replace(/y{2}/g,"%y").replace(/M{4}/g,"%B").replace(/M{3}/g,"%b").replace(/M{2}/g,"%m").replace(/M{1}/g,"%-m").replace(/E{4,}/g,"%A").replace(/E{1,}/g,"%a").replace(/d{2}/g,"%d").replace(/([^%]|^)d{1}/g,"$1%-d").replace(/H{2}/g,"%H").replace(/h{2}/g,"%I").replace(/h{1}/g,"%-I").replace(/m{2}/g,"%M").replace(/s{2}/g,"%S").replace("'T'","T").replace(" z",""),l,s=e?.getColumnTypeFormatter(t);return s!=null&&Co(s)&&s.dhTimeZone!=null&&s.showTimeZone&&(l=i.i18n.DateTimeFormat.format(" z",new Date,s.dhTimeZone)),{tickformat:a,ticksuffix:l,automargin:!0}}getPlotlyAxisFormat(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null,{dh:r}=this,{axis:i,columnType:a}=e,{formatPattern:l}=i,s=null;return x.isDateType(a)?(s=this.getPlotlyDateFormat(t,a,l),s=J.addTickSpacing(s,i,!0)):x.isNumberType(a)&&(s=J.getPlotlyNumberFormat(t,a,l),s=J.addTickSpacing(s,i,!1)),i.formatType===r.plot.AxisFormatType.CATEGORY&&(s?s.type="category":s={type:"category",tickformat:void 0,ticksuffix:void 0}),s}updateLayoutAxes(e,t,r){for(var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,l=arguments.length>5&&arguments[5]!==void 0?arguments[5]:{left:0,top:0,right:1,bottom:1},s=arguments.length>6?arguments[6]:void 0,o=arguments.length>7&&arguments[7]!==void 0?arguments[7]:ar,{dh:u}=this,d=i>0?Math.max(J.MIN_AXIS_SIZE,Math.min(J.AXIS_SIZE_PX/a,J.MAX_AXIS_SIZE)):J.DEFAULT_AXIS_SIZE,h=a>0?Math.max(J.MIN_AXIS_SIZE,Math.min(J.AXIS_SIZE_PX/i,J.MAX_AXIS_SIZE)):J.DEFAULT_AXIS_SIZE,v=e,m=J.groupArray(t,"position"),f=J.groupArray(t,"type"),g=[...f.keys()],p=J.groupArray(r,"type"),C=0;C<g.length;C+=1){var S=g[C],b=this.getAxisPropertyName(S);if(b!=null){var w=f.get(S),y=p.get(S),T=S===u.plot.AxisType.Y,E=T?a:i;L(w),L(y);for(var P=0;P<w.length;P+=1){var O=w[P],D=y.indexOf(O),N=J.getAxisLayoutProperty(b,D);v[N]==null&&(v[N]=this.makeLayoutAxis(S,o));var F=v[N];if(F!=null){this.updateLayoutAxis(F,O,P,m,d,h,l);var{range:A,autorange:j}=F;if(s!=null&&A!==void 0&&(j===void 0||j===!1)){var k=s(O),[B,G]=k(A);hi.debug("Setting downsample range",E,B,G),O.range(E,B,G)}else O.range(E)}}}}}removeStaleAxes(e,t){for(var r=e,i=J.groupArray(t,"type"),a=[...i.keys()],l=0;l<a.length;l+=1){var s=a[l],o=i.get(s);L(o);var u=o.length,d=this.getAxisPropertyName(s);if(d!=null)for(var h=J.getAxisLayoutProperty(d,u);r[h]!=null;)delete r[h],u+=1,h=J.getAxisLayoutProperty(d,u)}}updateLayoutAxis(e,t,r,i,a,l,s){var o,{dh:u}=this,d=t.type===u.plot.AxisType.Y,h=d?l:a,v=e,m=(o=t.label)!==null&&o!==void 0?o:"";if(v.title!==void 0&&typeof v.title!="string"?v.title.text=m:v.title={text:m},t.log&&(v.type="log"),v.side=this.getAxisSide(t.position),r>0){var f,g;v.overlaying=(f=this.getAxisPropertyName(t.type))!==null&&f!==void 0?f:void 0;var p=(g=i.get(t.position))!==null&&g!==void 0?g:[],C=p.indexOf(t);C>0&&(v.anchor="free",t.position===u.plot.AxisPosition.RIGHT?v.position=s.right+(C-p.length+1)*h:t.position===u.plot.AxisPosition.TOP?v.position=s.top+(C-p.length+1)*h:t.position===u.plot.AxisPosition.BOTTOM?v.position=s.bottom+(p.length-C+1)*h:t.position===u.plot.AxisPosition.LEFT&&(v.position=s.left+(p.length-C+1)*h))}else if(t.type===u.plot.AxisType.X){var S=i.get(u.plot.AxisPosition.LEFT)||[],b=i.get(u.plot.AxisPosition.RIGHT)||[],w=Math.max(s.left,s.left+(S.length-1)*l),y=Math.min(s.right-(b.length-1)*l,s.right);v.domain=[w,y]}else if(t.type===u.plot.AxisType.Y){var T=i.get(u.plot.AxisPosition.BOTTOM)||[],E=i.get(u.plot.AxisPosition.TOP)||[],P=Math.max(s.bottom,s.bottom+(T.length-1)*a),O=Math.min(s.top-(E.length-1)*a,s.top);v.domain=[P,O]}}createBoundsFromDays(e){var t=e.map(l=>this.daysOfWeek.indexOf(l)),r=this.daysOfWeek.filter(l=>!e.includes(l)).map(l=>this.daysOfWeek.indexOf(l)),i=new Set;r.forEach(l=>{for(var s=l+1;s<l+this.daysOfWeek.length;s+=1){var o=s%this.daysOfWeek.length;if(t.includes(o)){i.add(o);break}}});var a=[];return i.forEach(l=>{for(var s=l-1;s>l-this.daysOfWeek.length;s-=1){var o=s<0?s+this.daysOfWeek.length:s;if(t.includes(o)){var u=(o+1)%7;a.push([u,l]);break}}}),a}createRangeBreakValuesFromHolidays(e,t,r){var i=[],a=[];return e.forEach(l=>{l.businessPeriods.length>0?a.push(...this.createPartialHoliday(l,t,r)):i.push(this.createFullHoliday(l,t,r))}),[{values:i},...a]}createFullHoliday(e,t,r){return this.adjustDateForTimeZone("".concat(e.date.toString()," 00:00:00.000000"),t,r)}createPartialHoliday(e,t,r){var i=e.date.toString(),a=["00:00"];e.businessPeriods.forEach(v=>{a.push(v.open),a.push(v.close)}),a.push("24:00");for(var l=[],s=0;s<a.length;s+=2){var o=a[s],u=a[s+1];if(o!==u){var d=[this.adjustDateForTimeZone("".concat(i," ").concat(o,":00.000000"),t,r)],h=Nm*(J.periodToDecimal(u)-J.periodToDecimal(o));l.push({values:d,dvalue:h})}}return l}adjustDateForTimeZone(e,t,r){return r&&r.standardOffset!==t.standardOffset?this.unwrapValue(this.wrapValue(e,po,t),r):e}makeFigureSettings(e,t){var{dh:r}=this,{series:i,xAxis:a,type:l}=e,s=J.titleFromSettings(e),o={formatType:"".concat(r.plot.AxisFormatType.NUMBER),type:"".concat(r.plot.AxisType.X),position:"".concat(r.plot.AxisPosition.BOTTOM)},u={formatType:"".concat(r.plot.AxisFormatType.NUMBER),type:"".concat(r.plot.AxisType.Y),position:"".concat(r.plot.AxisPosition.LEFT)};return{charts:[{chartType:"".concat(r.plot.ChartType.XY),axes:[o,u],series:(i??[]).map(d=>({plotStyle:"".concat(l),name:d,dataSources:[{type:"".concat(r.plot.SourceType.X),columnName:a??"",axis:o,table:t},{type:"".concat(r.plot.SourceType.Y),columnName:d,axis:u,table:t}]}))}],title:s}}unwrapValue(e,t){var{dh:r}=this;if(e!=null){if(Am(e))return r.i18n.DateTimeFormat.format(J.DATE_FORMAT,e,t);if(Mm(e))return e.asNumber()}return e}wrapValue(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null,{dh:i}=this;if(x.isDateType(t)&&typeof e=="string"){var a=e,l=J.DATE_FORMAT.substr(0,e.length),s=i.i18n.DateTimeFormat.parse(l,a);if(!r)return s;var o="".concat(l," Z"),u=i.i18n.DateTimeFormat.format("Z",s,r),d=i.i18n.DateTimeFormat.parse(o,"".concat(a," ").concat(u)),h=i.i18n.DateTimeFormat.format("Z",d,r);return i.i18n.DateTimeFormat.parse(o,"".concat(a," ").concat(h))}return e}makeLayoutAxis(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:ar,{dh:r}=this,i={automargin:!0,gridcolor:t.gridcolor,linecolor:t.linecolor,rangeslider:{visible:!1},showline:!0,ticklen:5,tickcolor:t.paper_bgcolor,tickfont:{color:t.zerolinecolor},title:{font:{color:t.title_color}}};return e===r.plot.AxisType.X?Object.assign(i,{showgrid:!0}):e===r.plot.AxisType.Y&&Object.assign(i,{zerolinecolor:t.zerolinecolor,zerolinewidth:2}),i}makeDefaultLayout(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:ar,{dh:t}=this,r=Hn(Hn({},e),{},{autosize:!0,colorway:J.getColorwayFromTheme(e),font:{family:"'Fira Sans', sans-serif",color:e.title_color},title:{font:{color:e.title_color},yanchor:"top",pad:Hn({},J.DEFAULT_TITLE_PADDING),y:1},legend:{font:{color:e.title_color}},margin:Hn({},J.DEFAULT_MARGIN),xaxis:this.makeLayoutAxis(t.plot.AxisType.X,e),yaxis:this.makeLayoutAxis(t.plot.AxisType.Y,e),polar:{angularaxis:this.makeLayoutAxis(t.plot.AxisType.SHAPE,e),radialaxis:this.makeLayoutAxis(t.plot.AxisType.SHAPE,e),bgcolor:e.plot_bgcolor},scene:{xaxis:this.makeLayoutAxis(t.plot.AxisType.X,e),yaxis:this.makeLayoutAxis(t.plot.AxisType.Y,e),zaxis:this.makeLayoutAxis(t.plot.AxisType.Z,e)}});return r.datarevision=0,r}hydrateSettings(e){var{dh:t}=this;return Hn(Hn({},e),{},{type:e.type!=null?t.plot.SeriesPlotStyle[e.type]:void 0})}}vt(J,"DEFAULT_AXIS_SIZE",.15);vt(J,"MIN_AXIS_SIZE",.025);vt(J,"MAX_AXIS_SIZE",.2);vt(J,"AXIS_SIZE_PX",75);vt(J,"LEGEND_WIDTH_PX",50);vt(J,"MAX_LEGEND_SIZE",.25);vt(J,"ORIENTATION",Object.freeze({HORIZONTAL:"h",VERTICAL:"v"}));vt(J,"DATE_FORMAT","yyyy-MM-dd HH:mm:ss.SSSSSS");vt(J,"DEFAULT_MARGIN",Object.freeze({l:60,r:50,t:30,b:60,pad:0}));vt(J,"DEFAULT_TITLE_PADDING",Object.freeze({t:8}));vt(J,"SUBTITLE_LINE_HEIGHT",25);vt(J,"DEFAULT_MARKER_SIZE",6);vt(J,"MODE_MARKERS","markers");vt(J,"MODE_LINES","lines");const dt=J;function So(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 bo(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?So(Object(t),!0).forEach(function(r){Tt(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):So(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Tt(n,e,t){return e=Lm(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Lm(n){var e=km(n,"string");return typeof e=="symbol"?e:String(e)}function km(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var $r=ge.module("Chart");class Cn extends R.Component{static convertIcon(e){var[t,,,,r]=e.icon,i="".concat(r);return{width:t,path:i,ascent:t,descent:0,transform:"matrix(1, 0, 0, 1, 0, 0)"}}static downsampleButtonTitle(e,t){return e?"Downsampling in progress...":t?"Downsampling disabled, click to enable":"Downsampling enabled, click to disable"}static downsampleButtonAttr(e,t){return e?"animation-spin":t?void 0:"fill-active"}constructor(e){super(e),Tt(this,"currentSeries",void 0),Tt(this,"PlotComponent",void 0),Tt(this,"plot",void 0),Tt(this,"plotWrapper",void 0),Tt(this,"columnFormats",void 0),Tt(this,"dateTimeFormatterOptions",void 0),Tt(this,"decimalFormatOptions",void 0),Tt(this,"integerFormatOptions",void 0),Tt(this,"rect",void 0),Tt(this,"ranges",void 0),Tt(this,"isSubscribed",void 0),Tt(this,"isLoadedFired",void 0),Tt(this,"getCachedConfig",be((t,r,i,a,l)=>{var s=[],o=!!t;if(o&&s.push({name:"Downsampling failed: ".concat(t),title:"Downsampling failed",click:()=>{},icon:Cn.convertIcon(ah),attr:"fill-warning"}),r||i||a||o){var u=Cn.downsampleButtonTitle(i,a),d=Cn.downsampleButtonAttr(i,a),h=i?Mv:xv;s.push({name:u,title:"Downsampling status",icon:Cn.convertIcon(h),click:this.handleDownsampleClick,attr:d})}var v=l.some(p=>{var{type:C}=p;return C!=null&&!C.includes("3d")}),m=l.some(p=>{var{type:C}=p;return C!=null&&C.includes("3d")}),f=["zoomIn2d","zoomOut2d","autoScale2d","resetScale2d"],g=["orbitRotation","tableRotation","resetCameraDefault3d"];return{displaylogo:!1,displayModeBar:i||o?!0:"hover",modeBarButtons:[s,["toImage"],["zoom2d","pan2d"],[...v?f:[],...m?g:[]]]}})),this.handleAfterPlot=this.handleAfterPlot.bind(this),this.handleDownsampleClick=this.handleDownsampleClick.bind(this),this.handleModelEvent=this.handleModelEvent.bind(this),this.handlePlotUpdate=this.handlePlotUpdate.bind(this),this.handleRelayout=this.handleRelayout.bind(this),this.handleRestyle=this.handleRestyle.bind(this),this.PlotComponent=wm(e.Plotly),this.plot=Me.createRef(),this.plotWrapper=Me.createRef(),this.columnFormats=[],this.dateTimeFormatterOptions={},this.decimalFormatOptions={},this.integerFormatOptions={},this.isSubscribed=!1,this.isLoadedFired=!1,this.currentSeries=0,this.state={data:null,downsamplingError:null,isDownsampleFinished:!1,isDownsampleInProgress:!1,isDownsamplingDisabled:!1,layout:{datarevision:0},revision:0}}componentDidMount(){this.updateDimensions(),this.updateModelDimensions(),this.initData(),this.initFormatter();var{isActive:e}=this.props;e&&this.subscribe()}componentDidUpdate(e){var{isActive:t,settings:r}=this.props;this.updateFormatterSettings(r),t!==e.isActive&&(t?this.subscribe():this.unsubscribe())}componentWillUnmount(){this.unsubscribe()}getPlotRect(){var e,t;return(e=(t=this.plotWrapper.current)===null||t===void 0?void 0:t.getBoundingClientRect())!==null&&e!==void 0?e:null}initData(){var{model:e}=this.props,{layout:t}=this.state;this.setState({data:e.getData(),layout:bo(bo({},t),e.getLayout())})}subscribe(){if(!this.isSubscribed){var{model:e}=this.props;if(!this.rect||this.rect.width===0||this.rect.height===0){$r.debug2("Delaying subscription until model dimensions are set");return}e.subscribe(this.handleModelEvent),this.isSubscribed=!0}}unsubscribe(){if(this.isSubscribed){var{model:e}=this.props;e.unsubscribe(this.handleModelEvent),this.isSubscribed=!1}}handleAfterPlot(){this.plot.current!=null}handleDownsampleClick(){this.setState(e=>{var{isDownsamplingDisabled:t}=e;return{downsamplingError:null,isDownsampleInProgress:!1,isDownsampleFinished:!1,isDownsamplingDisabled:!t}},()=>{var{model:e}=this.props,{isDownsamplingDisabled:t}=this.state;e.setDownsamplingDisabled(t)})}handleModelEvent(e){var{type:t,detail:r}=e;switch($r.debug2("Received data update",t,r),t){case Mr.EVENT_UPDATED:{this.currentSeries+=1,this.setState(h=>{var{layout:v,revision:m}=h;return typeof v.datarevision=="number"&&(v.datarevision+=1),{data:r,layout:v,revision:m+1}});var{onUpdate:i}=this.props;i({isLoading:!this.isLoadedFired});break}case Mr.EVENT_LOADFINISHED:{var{onUpdate:a}=this.props;this.isLoadedFired=!0,a({isLoading:!1});break}case Mr.EVENT_DISCONNECT:{var{onDisconnect:l}=this.props;l();break}case Mr.EVENT_RECONNECT:{var{onReconnect:s}=this.props;s();break}case Mr.EVENT_DOWNSAMPLESTARTED:{this.setState({isDownsampleFinished:!1,isDownsampleInProgress:!0,downsamplingError:null});break}case Mr.EVENT_DOWNSAMPLEFINISHED:{this.setState({isDownsampleFinished:!0,isDownsampleInProgress:!1,downsamplingError:null});break}case Mr.EVENT_DOWNSAMPLENEEDED:case Mr.EVENT_DOWNSAMPLEFAILED:{var o,u=(o=r.message)!==null&&o!==void 0?o:r;this.setState({isDownsampleFinished:!1,isDownsampleInProgress:!1,isDownsamplingDisabled:!1,downsamplingError:u});var{onError:d}=this.props;d(new Error(u));break}default:$r.debug("Unknown event type",t,e)}}handlePlotUpdate(e){var{layout:t}=e,r=dt.getLayoutRanges(t),i=!ht(r,this.ranges);i&&(this.ranges=r,this.updateModelDimensions(!0))}handleRelayout(e){if($r.debug("handleRelayout",e),e.hiddenlabels!=null){var{onSettingsChanged:t}=this.props,r=[...e.hiddenlabels];t({hiddenSeries:r})}this.updateModelDimensions()}handleRestyle(e){var[t,r]=e;if($r.debug("handleRestyle",t,r),Object.keys(t).includes("visible")){var{data:i}=this.state,{onSettingsChanged:a}=this.props;if(i!=null){var l=i.reduce((s,o)=>{var{name:u,visible:d}=o;return u!=null&&d==="legendonly"?[...s,u]:s},[]);a({hiddenSeries:l})}}}updateModelDimensions(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,t=this.getPlotRect();if(!t){$r.warn("Unable to get plotting rect");return}var r=!this.rect||this.rect.width!==t.width||this.rect.height!==t.height;if(r||e){this.rect=t;var{isActive:i,model:a}=this.props;a.setDimensions(t),i&&this.subscribe()}}initFormatter(){var{settings:e}=this.props;this.updateFormatterSettings(e)}updateFormatterSettings(e){var t=kr.getColumnFormats(e),r=kr.getDateTimeFormatterOptions(e),{decimalFormatOptions:i={},integerFormatOptions:a={}}=e;(!ht(this.columnFormats,t)||!ht(this.dateTimeFormatterOptions,r)||!ht(this.decimalFormatOptions,i)||!ht(this.integerFormatOptions,a))&&(this.columnFormats=kr.getColumnFormats(e),this.dateTimeFormatterOptions=r,this.decimalFormatOptions=i,this.integerFormatOptions=a,this.updateFormatter())}updateFormatter(){var{model:e}=this.props,t=new Pr(e.dh,this.columnFormats,this.dateTimeFormatterOptions,this.decimalFormatOptions,this.integerFormatOptions);e.setFormatter(t)}updateDimensions(){var e=this.getPlotRect(),{Plotly:t}=this.props;this.plot.current!=null&&e!=null&&e.width>0&&e.height>0&&t.relayout(this.plot.current.el,{autosize:!0}).catch(r=>{$r.debug("Unable to resize, promise rejected",r)})}render(){var{PlotComponent:e}=this,{data:t,downsamplingError:r,isDownsampleFinished:i,isDownsampleInProgress:a,isDownsamplingDisabled:l,layout:s,revision:o}=this.state,u=this.getCachedConfig(r,i,a,l,t??[]),d=t!=null;return c.jsx("div",{className:"h-100 w-100 chart-wrapper",ref:this.plotWrapper,children:d&&c.jsx(e,{ref:this.plot,data:t,layout:s,revision:o,config:u,onAfterPlot:this.handleAfterPlot,onError:$r.error,onRelayout:this.handleRelayout,onUpdate:this.handlePlotUpdate,onRestyle:this.handleRestyle,useResizeHandler:!0,style:{height:"100%",width:"100%"}})})}}Tt(Cn,"defaultProps",{isActive:!0,settings:{timeZone:"America/New_York",defaultDateTimeFormat:Tn.FULL_DATE_FORMAT,showTimeZone:!1,showTSeparator:!0,formatter:[]},Plotly:ym,onDisconnect:()=>{},onReconnect:()=>{},onUpdate:()=>{},onError:()=>{},onSettingsChanged:()=>{}});const jm=Cn;function wo(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 yo(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?wo(Object(t),!0).forEach(function(r){Ge(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):wo(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Ge(n,e,t){return e=_m(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function _m(n){var e=Hm(n,"string");return typeof e=="symbol"?e:String(e)}function Hm(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var St=ge.module("FigureChartModel");class Va extends Mr{constructor(e,t){var r,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:ar;super(e),r=this,Ge(this,"chartUtils",void 0),Ge(this,"dh",void 0),Ge(this,"figure",void 0),Ge(this,"settings",void 0),Ge(this,"theme",void 0),Ge(this,"data",void 0),Ge(this,"layout",void 0),Ge(this,"seriesDataMap",void 0),Ge(this,"pendingSeries",void 0),Ge(this,"oneClicks",void 0),Ge(this,"filterColumnMap",void 0),Ge(this,"lastFilter",void 0),Ge(this,"isConnected",void 0),Ge(this,"seriesToProcess",void 0),Ge(this,"addPendingSeries",ct(()=>{for(var s=dt.getAllAxes(this.figure),{pendingSeries:o}=this,u=function(){var v,m=o[d],f=r.figure.charts.find(g=>g.series.includes(m));r.addSeries(m,s,(v=f?.showLegend)!==null&&v!==void 0?v:null),m.subscribe()},d=0;d<o.length;d+=1)u();this.pendingSeries=[]},Va.ADD_SERIES_DEBOUNCE)),Ge(this,"getTimeZone",we((s,o)=>{if(o!=null){var u=o.getColumnTypeFormatter(s);if(u!=null)return u.dhTimeZone}})),Ge(this,"getValueTranslator",we((s,o)=>{var u=this.getTimeZone(s,o);return d=>this.chartUtils.unwrapValue(d,u)})),Ge(this,"getValueParser",we((s,o)=>{var u=this.getTimeZone(s,o);return d=>this.chartUtils.wrapValue(d,s,u)})),Ge(this,"getRangeParser",we((s,o)=>u=>{var[d,h]=u,v=this.getValueParser(s,o);return d=v(d),h=v(h),[d,h]})),Ge(this,"getAxisRangeParser",we((s,o)=>u=>{var d=dt.getSourceForAxis(s,u);return d!=null?this.getRangeParser(d.columnType,o):h=>h})),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 dt(e),this.figure=t,this.settings=i,this.theme=a,this.data=[];var l={data:{},layout:this.chartUtils.makeDefaultLayout(a)};this.layout={grid:{rows:t.rows,columns:t.cols,pattern:"independent"},template:l},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.charts.length>0){var e=this.figure.charts[0];return e.title}return""}initAllSeries(){this.oneClicks=[],this.filterColumnMap.clear();for(var{charts:e}=this.figure,t=dt.getAllAxes(this.figure),r=[],i=0;i<e.length;i+=1)for(var a=e[i],l=0;l<a.series.length;l+=1){var s=a.series[l];r.push(s.name),this.addSeries(s,t,a.showLegend)}for(var o=[...this.seriesDataMap.keys()],u=o.filter(v=>r.indexOf(v)<0),d=0;d<u.length;d+=1){var h=u[d];this.seriesDataMap.delete(h)}this.seriesToProcess=new Set([...this.seriesDataMap.keys()])}addSeries(e,t,r){var{dh:i}=this,a=dt.groupArray(t,"type"),l=this.chartUtils.makeSeriesDataFromSeries(e,a,dt.getSeriesVisibility(e.name,this.settings),r,this.theme);if(this.seriesDataMap.set(e.name,l),this.data=[...this.seriesDataMap.values()],e.plotStyle===i.plot.SeriesPlotStyle.STACKED_BAR?this.layout.barmode="stack":e.plotStyle===i.plot.SeriesPlotStyle.PIE&&(this.layout.hiddenlabels=dt.getHiddenLabels(this.settings)),this.layout.showlegend=this.data.length>1||e.plotStyle===i.plot.SeriesPlotStyle.PIE?r??void 0:!1,e.oneClick!=null){for(var{oneClick:s}=e,{columns:o}=s,u=0;u<o.length;u+=1)this.filterColumnMap.set(o[u].name,o[u]);this.oneClicks.push(s)}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){St.debug("Ignoring subscribe when figure in disconnected state");return}this.figure.subscribe(this.isDownsamplingDisabled?this.dh.plot.DownsampleOptions.DISABLE:this.dh.plot.DownsampleOptions.DEFAULT)}unsubscribeFigure(){this.figure.unsubscribe()}startListeningFigure(){var{dh:e}=this;this.figure.addEventListener(e.plot.Figure.EVENT_UPDATED,this.handleFigureUpdated),this.figure.addEventListener(e.plot.Figure.EVENT_SERIES_ADDED,this.handleFigureSeriesAdded),this.figure.addEventListener(e.plot.Figure.EVENT_DISCONNECT,this.handleFigureDisconnected),this.figure.addEventListener(e.plot.Figure.EVENT_RECONNECT,this.handleFigureReconnected),this.figure.addEventListener(e.plot.Figure.EVENT_DOWNSAMPLESTARTED,this.handleDownsampleStart),this.figure.addEventListener(e.plot.Figure.EVENT_DOWNSAMPLEFINISHED,this.handleDownsampleFinish),this.figure.addEventListener(e.plot.Figure.EVENT_DOWNSAMPLEFAILED,this.handleDownsampleFail),this.figure.addEventListener(e.plot.Figure.EVENT_DOWNSAMPLENEEDED,this.handleDownsampleNeeded),this.figure.addEventListener(e.Client.EVENT_REQUEST_FAILED,this.handleRequestFailed)}stopListeningFigure(){var{dh:e}=this;this.figure.removeEventListener(e.plot.Figure.EVENT_UPDATED,this.handleFigureUpdated),this.figure.removeEventListener(e.plot.Figure.EVENT_SERIES_ADDED,this.handleFigureSeriesAdded),this.figure.removeEventListener(e.plot.Figure.EVENT_DISCONNECT,this.handleFigureDisconnected),this.figure.removeEventListener(e.plot.Figure.EVENT_RECONNECT,this.handleFigureReconnected),this.figure.removeEventListener(e.plot.Figure.EVENT_DOWNSAMPLESTARTED,this.handleDownsampleStart),this.figure.removeEventListener(e.plot.Figure.EVENT_DOWNSAMPLEFINISHED,this.handleDownsampleFinish),this.figure.removeEventListener(e.plot.Figure.EVENT_DOWNSAMPLEFAILED,this.handleDownsampleFail),this.figure.removeEventListener(e.plot.Figure.EVENT_DOWNSAMPLENEEDED,this.handleDownsampleNeeded),this.figure.removeEventListener(e.Client.EVENT_REQUEST_FAILED,this.handleRequestFailed)}handleDownsampleStart(e){St.debug("Downsample started",e),this.fireDownsampleStart(e.detail)}handleDownsampleFinish(e){St.debug("Downsample finished",e),this.fireDownsampleFinish(e.detail)}handleDownsampleFail(e){St.error("Downsample failed",e),this.fireDownsampleFail(e.detail)}handleDownsampleNeeded(e){St.info("Downsample needed",e),this.fireDownsampleNeeded(e.detail)}handleFigureUpdated(e){var{detail:t}=e,{series:r}=t;St.debug2("handleFigureUpdated",r);for(var i=0;i<r.length;i+=1){var a=r[i];St.debug2("handleFigureUpdated updating series",a.name);for(var{sources:l}=a,s=0;s<l.length;s+=1){var o=l[s],{columnType:u,type:d}=o,h=this.getValueTranslator(u,this.formatter),v=t.getArray(a,d,h);this.setDataArrayForSeries(a,d,v)}this.seriesToProcess.delete(a.name),this.seriesToProcess.size===0&&this.fireLoadFinished(),this.cleanSeries(a)}var{data:m}=this;this.fireUpdate(m)}handleRequestFailed(e){St.error("Request failed",e)}resubscribe(){this.listeners.length>0&&(this.unsubscribeFigure(),this.subscribeFigure())}setFormatter(e){super.setFormatter(e),this.updateLayoutFormats(),this.resubscribe()}setDownsamplingDisabled(e){super.setDownsamplingDisabled(e),this.resubscribe()}handleFigureDisconnected(e){St.debug("Figure disconnected",e),this.isConnected=!1,this.listeners.length>0&&this.unsubscribeFigure(),this.fireDisconnect()}handleFigureReconnected(e){St.debug("Figure reconnected",e),this.isConnected=!0,this.initAllSeries(),this.fireReconnect(),this.listeners.length>0&&this.subscribeFigure()}handleFigureSeriesAdded(e){var{detail:t}=e;St.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=dt.DEFAULT_MARGIN.t+i*dt.SUBTITLE_LINE_HEIGHT;this.layout.margin?this.layout.margin.t=a:this.layout.margin={t:a},typeof this.layout.title=="string"?this.layout.title=e:(this.layout.title=yo({},this.layout.title),this.layout.title.text=e,this.layout.title.pad=yo({},this.layout.title.pad),this.layout.title.pad.t=dt.DEFAULT_TITLE_PADDING.t+i*dt.SUBTITLE_LINE_HEIGHT*.5)}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,this.theme)}updateLayoutFormats(){if(this.formatter){var e=this.chartUtils.getAxisFormats(this.figure,this.formatter);e.forEach((t,r)=>{St.debug("Assigning ".concat(r),this.layout[r],t);var i=this.layout[r];i!=null?Object.assign(i,t):St.debug("Ignoring null layout.".concat(r))})}}setDataArrayForSeries(e,t,r){var{name:i,plotStyle:a}=e,l=this.seriesDataMap.get(i),s=this.chartUtils.getPlotlyProperty(a,t);l&&Vd(l,s,r)}cleanSeries(e){var{dh:t}=this,{name:r,plotStyle:i}=e,a=this.seriesDataMap.get(r);if(a!=null){if(i===t.plot.SeriesPlotStyle.HISTOGRAM){var{xLow:l,xHigh:s}=a;if(l&&s&&l.length===s.length){for(var o=[],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{x:d,xLow:h,xHigh:v,y:m,yLow:f,yHigh:g}=a;h&&v&&h!==d&&(a.error_x=dt.getPlotlyErrorBars(d,h,v)),f&&g&&f!==m&&(a.error_y=dt.getPlotlyErrorBars(m,f,g))}else if(i===t.plot.SeriesPlotStyle.TREEMAP){var{ids:p,labels:C}=a;p!==void 0&&C===void 0&&(a.labels=p)}}}getData(){return this.data}getLayout(){return this.layout}getFilterColumnMap(){return new Map(this.filterColumnMap)}isFilterRequired(){return this.oneClicks.find(e=>e.requireAllFiltersToDisplay)!=null}setFilter(e){var t=this;if(this.oneClicks.length===0){St.warn("Trying to set a filter, but no one click!");return}St.debug("setFilter",e);for(var r=function(){var l=t.oneClicks[i],{columns:s}=l,o=new Set([...e.keys(),...t.lastFilter.keys()]);o.forEach(u=>{var d=e.get(u);t.lastFilter.get(u)!==d&&s.find(h=>h.name===u)!=null&&l.setValueForColumn(u,d)})},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}}Ge(Va,"ADD_SERIES_DEBOUNCE",50);const To=Va;function Eo(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function Tl(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Eo(a,r,i,l,s,"next",o)}function s(o){Eo(a,r,i,l,s,"throw",o)}l(void 0)})}}class Ps{static makeModelFromSettings(e,t,r){var i=arguments;return Tl(function*(){var a=i.length>3&&i[3]!==void 0?i[3]:ar,l=yield Ps.makeFigureFromSettings(e,t,r);return new To(e,l,t,a)})()}static makeFigureFromSettings(e,t,r){return Tl(function*(){var i=yield r.copy();return i.applyCustomColumns(r.customColumns),i.applyFilter(r.filter),i.applySort(r.sort),e.plot.Figure.create(new dt(e).makeFigureSettings(t,i))})()}static makeModel(e,t,r){var i=arguments;return Tl(function*(){var a=i.length>3&&i[3]!==void 0?i[3]:ar;return new To(e,r,t,a)})()}}const $l=Ps;function Oo(n){return n.setFigure!==void 0}function Um(n,e,t){return e=Vm(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Vm(n){var e=Bm(n,"string");return typeof e=="symbol"?e:String(e)}function Bm(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Gm extends Error{constructor(){super(...arguments),Um(this,"isAssertionFailed",!0)}}const mh=Gm;function Po(n){if(n==null)throw new mh("Expected 'val' to be defined, but received ".concat(n))}function $m(n,e,t){return e=Wm(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Wm(n){var e=zm(n,"string");return typeof e=="symbol"?e:String(e)}function zm(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Km extends Error{constructor(){super(...arguments),$m(this,"isPasteError",!0)}}const El=Km;function He(n){return n?.isEditable!==void 0}function Ro(n){if(!He(n))throw new mh("Expected 'model' to be editable, but received ".concat(n))}function xe(n){return n?.hasExpandableRows!==void 0}function Ti(n,e,t){return e=Ym(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ym(n){var e=qm(n,"string");return typeof e=="symbol"?e:String(e)}function qm(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var er;(function(n){n.DOWN="DOWN",n.UP="UP",n.LEFT="LEFT",n.RIGHT="RIGHT"})(er||(er={}));class U{static normalize(e,t,r,i){var a=e,l=t,s=r,o=i;return a!=null&&s!=null&&s<a&&(a=s,s=e),l!=null&&o!=null&&o<l&&(l=o,o=t),[a,l,s,o]}static makeNormalized(e,t,r,i){return new U(...U.normalize(e,t,r,i))}static makeCell(e,t){return new U(e,t,e,t)}static makeColumn(e){return new U(e,null,e,null)}static makeRow(e){return new U(null,e,null,e)}static minOrNull(e,t){return e==null||t==null?null:Math.min(e,t)}static maxOrNull(e,t){return e==null||t==null?null:Math.max(e,t)}static consolidate(e){for(var t=e.slice(),r=!0;r;){r=!1;for(var i=0;i<t.length&&!r;i+=1)for(var a=t[i],l=t.length-1;l>i;l-=1){var s=t[l];if(a.contains(s))t.splice(l,1);else if(s.contains(a)){r=!0,t[i]=s,t.splice(l,1);break}else if(a.startRow===s.startRow&&a.endRow===s.endRow){if(a.touches(s)){var{startRow:o,endRow:u}=a,d=U.minOrNull(a.startColumn,s.startColumn),h=U.maxOrNull(a.endColumn,s.endColumn);r=!0,t[i]=new U(d,o,h,u),t.splice(l,1);break}}else if(a.startColumn===s.startColumn&&a.endColumn===s.endColumn&&a.touches(s)){var{startColumn:v,endColumn:m}=a,f=U.minOrNull(a.startRow,s.startRow),g=U.maxOrNull(a.endRow,s.endRow);r=!0,t[i]=new U(v,f,m,g),t.splice(l,1);break}}}return t}static isAxisRangeTouching(e,t,r,i){return e==null?t==null||r==null?!0:r<=t+1:t==null?i==null?!0:i>=e-1:r==null?i==null?!0:e<=i+1:i==null?t>=r-1:r>=e-1?r<=t+1:i>=e-1}static rangeArraysEqual(e,t){if(e===t)return!0;if(e==null||t==null||e.length!==t.length)return!1;for(var r=0;r<e.length;r+=1)if(!e[r].equals(t[r]))return!1;return!0}static intersection(e,t){var r,i,a,l,s,o;if(e.equals(t))return e;var{startColumn:u,startRow:d,endColumn:h,endRow:v}=e;return u=u!=null&&t.startColumn!=null?Math.max(u,t.startColumn):(r=u)!==null&&r!==void 0?r:t.startColumn,h=h!=null&&t.endColumn!=null?Math.min(h,t.endColumn):(i=h)!==null&&i!==void 0?i:t.endColumn,d=d!=null&&t.startRow!=null?Math.max(d,t.startRow):(a=d)!==null&&a!==void 0?a:t.startRow,v=v!=null&&t.endRow!=null?Math.min(v,t.endRow):(l=v)!==null&&l!==void 0?l:t.endRow,u!=null&&u>((s=h)!==null&&s!==void 0?s:-1)||d!=null&&d>((o=v)!==null&&o!==void 0?o:-1)?null:new U(u,d,h,v)}static subtractFromRange(e,t){var r=[],i=U.intersection(e,t);return i==null?[e]:(i.startRow!=null&&(e.startRow==null||e.startRow<i.startRow)&&r.push(new U(e.startColumn,e.startRow,e.endColumn,i.startRow-1)),i.startColumn!=null&&(e.startColumn==null||e.startColumn<i.startColumn)&&r.push(new U(e.startColumn,i.startRow,i.startColumn-1,i.endRow)),i.endColumn!=null&&(e.endColumn==null||e.endColumn>i.endColumn)&&r.push(new U(i.endColumn+1,i.startRow,e.endColumn,i.endRow)),i.endRow!=null&&(e.endRow==null||e.endRow>i.endRow)&&r.push(new U(e.startColumn,i.endRow+1,e.endColumn,e.endRow)),r)}static subtractFromRanges(e,t){for(var r=[],i=0;i<e.length;i+=1)r.push(...U.subtractFromRange(e[i],t));return r}static subtractRangesFromRanges(e,t){for(var r=[...e],i=0;i<t.length;i+=1)r=U.subtractFromRanges(r,t[i]);return r}static isBounded(e){return e.startRow!=null&&e.startColumn!=null&&e.endRow!=null&&e.endColumn!=null}static boundedRange(e,t,r){var i,a,l,s;return U.isBounded(e)?e:new U((i=e.startColumn)!==null&&i!==void 0?i:0,(a=e.startRow)!==null&&a!==void 0?a:0,(l=e.endColumn)!==null&&l!==void 0?l:t-1,(s=e.endRow)!==null&&s!==void 0?s:r-1)}static boundedRanges(e,t,r){return e.map(i=>U.boundedRange(i,t,r))}static offset(e,t,r){return new U(e.startColumn!=null?e.startColumn+t:null,e.startRow!=null?e.startRow+r:null,e.endColumn!=null?e.endColumn+t:null,e.endRow!=null?e.endRow+r:null)}static nextCell(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:U.SELECTION_DIRECTION.DOWN;if(e.length===0)return null;var a=-1;if(t!=null&&r!=null&&(a=e.findIndex(v=>v.containsCell(t,r)),a>=0)){var l=e[a],s=l.nextCell(t,r,i);if(s!=null)return s}switch(i){case U.SELECTION_DIRECTION.DOWN:case U.SELECTION_DIRECTION.RIGHT:{var o=a<e.length-1?a+1:0,u=e[o];return u.startCell(i)}case U.SELECTION_DIRECTION.LEFT:case U.SELECTION_DIRECTION.UP:{var d=a>0?a-1:e.length-1,h=e[d];return h.startCell(i)}default:throw new Error("Invalid direction: ".concat(i))}}static cellCount(e){return e.reduce((t,r)=>{var i,a,l,s;return t+(((i=r.endRow)!==null&&i!==void 0?i:NaN)-((a=r.startRow)!==null&&a!==void 0?a:NaN)+1)*(((l=r.endColumn)!==null&&l!==void 0?l:NaN)-((s=r.startColumn)!==null&&s!==void 0?s:NaN)+1)},0)}static rowCount(e){return e.reduce((t,r)=>{var i,a;return t+((i=r.endRow)!==null&&i!==void 0?i:NaN)-((a=r.startRow)!==null&&a!==void 0?a:NaN)+1},0)}static columnCount(e){return e.reduce((t,r)=>{var i,a;return t+((i=r.endColumn)!==null&&i!==void 0?i:NaN)-((a=r.startColumn)!==null&&a!==void 0?a:NaN)+1},0)}static containsCell(e,t,r){for(var i=0;i<e.length;i+=1){var a=e[i];if(a.containsCell(t,r))return!0}return!1}static forEachCell(e,t){for(var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:U.SELECTION_DIRECTION.RIGHT,i=0;i<e.length;i+=1)e[i].forEach(t,r)}constructor(e,t,r,i){Ti(this,"startColumn",void 0),Ti(this,"startRow",void 0),Ti(this,"endColumn",void 0),Ti(this,"endRow",void 0),this.startColumn=e,this.startRow=t,this.endColumn=r,this.endRow=i}equals(e){return this.startColumn===e.startColumn&&this.startRow===e.startRow&&this.endColumn===e.endColumn&&this.endRow===e.endRow}contains(e){return(this.startColumn==null||e.startColumn!=null&&this.startColumn<=e.startColumn)&&(this.startRow==null||e.startRow!=null&&this.startRow<=e.startRow)&&(this.endColumn==null||e.endColumn!=null&&this.endColumn>=e.endColumn)&&(this.endRow==null||e.endRow!=null&&this.endRow>=e.endRow)}containsCell(e,t){return e==null||t==null?!1:(this.startColumn==null||this.startColumn<=e)&&(this.endColumn==null||this.endColumn>=e)&&(this.startRow==null||this.startRow<=t)&&(this.endRow==null||this.endRow>=t)}touches(e){return U.isAxisRangeTouching(this.startRow,this.endRow,e.startRow,e.endRow)&&U.isAxisRangeTouching(this.startColumn,this.endColumn,e.startColumn,e.endColumn)}subtract(e){return U.subtractFromRange(this,e)}startCell(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:U.SELECTION_DIRECTION.DOWN;if(!U.isBounded(this))throw new Error("Cannot get the startCell of an unbounded range");switch(e){case U.SELECTION_DIRECTION.DOWN:case U.SELECTION_DIRECTION.RIGHT:return{column:this.startColumn,row:this.startRow};case U.SELECTION_DIRECTION.LEFT:case U.SELECTION_DIRECTION.UP:return{column:this.endColumn,row:this.endRow};default:throw new Error("Invalid direction: ".concat(e))}}nextCell(e,t,r){if(!U.isBounded(this))throw new Error("Bounded range required");if(e==null||t==null)throw new Error("Require a non-null cursor");var{startColumn:i,endColumn:a,startRow:l,endRow:s}=this;switch(r){case U.SELECTION_DIRECTION.DOWN:if(t<s)return{column:e,row:Math.max(t+1,l)};if(e<a)return{column:Math.max(e+1,i),row:l};break;case U.SELECTION_DIRECTION.UP:if(t>l)return{column:e,row:Math.min(t-1,s)};if(e>i)return{column:Math.min(e-1,a),row:s};break;case U.SELECTION_DIRECTION.RIGHT:if(e<a)return{column:Math.max(e+1,i),row:t};if(t<s)return{column:i,row:Math.max(t+1,l)};break;case U.SELECTION_DIRECTION.LEFT:if(e>i)return{column:Math.min(e-1,a),row:t};if(t>l)return{column:a,row:Math.min(t-1,s)};break;default:throw new Error("Invalid direction: ".concat(r))}return null}forEach(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:U.SELECTION_DIRECTION.RIGHT,r=0,{column:i,row:a}=this.startCell(t);i!=null&&a!=null;){var l;e(i,a,r),r+=1,{column:i,row:a}=(l=this.nextCell(i,a,t))!==null&&l!==void 0?l:{}}}}Ti(U,"SELECTION_DIRECTION",er);function Xm(n){return Array.isArray(n)&&n.length===2&&(n[0]===null||typeof n[0]=="number")&&(n[1]===null||typeof n[1]=="number")}function Xi(n){return Xm(n)&&n[0]!=null&&n[1]!=null}function Do(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 Qi(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Do(Object(t),!0).forEach(function(r){fh(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Do(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function fh(n,e,t){return e=Qm(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Qm(n){var e=Zm(n,"string");return typeof e=="symbol"?e:String(e)}function Zm(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Oa(n){return n?.href!==void 0}class K{static getGridPointFromXY(e,t,r){var i=K.getColumnAtX(e,r),a=K.getRowAtY(t,r),l=K.getColumnHeaderDepthAtY(t,r);return{x:e,y:t,row:a,column:i,columnHeaderDepth:l}}static getCellInfoFromXY(e,t,r){var{row:i,column:a}=K.getGridPointFromXY(e,t,r),{allColumnWidths:l,allRowHeights:s,allColumnXs:o,allRowYs:u,modelColumns:d,modelRows:h}=r,v=i!==null?h.get(i):null,m=a!==null?d.get(a):null,f=a!==null?o.get(a):null,g=i!==null?u.get(i):null,p=a!==null?l.get(a):null,C=i!==null?s.get(i):null;return{row:i,column:a,modelRow:v??null,modelColumn:m??null,left:f??null,top:g??null,columnWidth:p??null,rowHeight:C??null}}static getColumnHeaderDepthAtY(e,t){var r=K.getRowAtY(e,t),{columnHeaderHeight:i,columnHeaderMaxDepth:a}=t;if(r===null&&e<=i*a)return Ae(a-Math.ceil(e/i),0,a-1)}static iterateFloatingStart(e,t,r){for(var i=0;i<e&&i<t;i+=1){var a=r(i);if(a!==void 0)return a}}static iterateFloatingEnd(e,t,r){for(var i=0;i<e&&t-(e-i)>=0;i+=1){var a=r(t-(e-i));if(a!==void 0)return a}}static iterateFloating(e,t,r,i){var a=K.iterateFloatingStart(e,r,i);return a!==void 0?a:K.iterateFloatingEnd(t,r,i)}static iterateAllItems(e,t,r,i,a,l){var s=Math.max(e,r),o=Math.min(t,a-i-1),u=K.iterateFloating(r,i,a,l);if(u!==void 0)return u;for(var d=s;d<=o;d+=1)if(u=l(d),u!==void 0)return u}static isInItem(e,t,r,i){var a,l,s=(a=t.get(e))!==null&&a!==void 0?a:0,o=(l=r.get(e))!==null&&l!==void 0?l:0;return s<=i&&i<=s+o}static getItemAtOffset(e,t,r,i,a,l,s){var o=arguments.length>7&&arguments[7]!==void 0?arguments[7]:!1,u=o?void 0:K.iterateFloating(r,i,t,v=>{if(K.isInItem(v,l,s,e))return v});if(!o&&u!==void 0)return u;for(var d=0;d<a.length;d+=1){var h=a[d];if(K.isInItem(h,l,s,e))return h}return null}static getColumnAtX(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{columnCount:i,floatingLeftColumnCount:a,floatingRightColumnCount:l,visibleColumns:s,allColumnXs:o,allColumnWidths:u,gridX:d}=t;return e<d?null:this.getItemAtOffset(e-d,i,a,l,s,o,u,r)}static getRowAtY(e,t){var{floatingTopRowCount:r,floatingBottomRowCount:i,rowCount:a,visibleRows:l,allRowYs:s,allRowHeights:o,gridY:u}=t;return e<u?null:this.getItemAtOffset(e-u,a,r,i,l,s,o)}static getNextShownItem(e,t,r,i){var a=r.findIndex(o=>o===e)||0;for(a-=1;a!=null&&a>=0;){var l=r[a],s=t.get(l);if(s!=null&&i.get(s)!==0)return l;a-=1}return null}static getNextShownColumn(e,t){var{modelColumns:r,visibleColumns:i,userColumnWidths:a}=t;return K.getNextShownItem(e,r,i,a)}static getNextShownRow(e,t){var{modelRows:r,visibleRows:i,userRowHeights:a}=t;return K.getNextShownItem(e,r,i,a)}static getColumnSeparatorIndex(e,t,r,i){var{rowHeaderWidth:a,columnHeaderHeight:l,floatingColumns:s,floatingLeftWidth:o,visibleColumns:u,allColumnXs:d,allColumnWidths:h,columnHeaderMaxDepth:v}=r,{allowColumnResize:m,headerSeparatorHandleSize:f}=i;if(v*l<t||!m||f<=0)return null;for(var g=e-a,p=f*.5,C=!1,S=s.length-1;S>=0;S-=1){var b,w,y=s[S],T=(b=d.get(y))!==null&&b!==void 0?b:0,E=(w=h.get(y))!==null&&w!==void 0?w:0,P=E===0;if(!C||!P){var O=T+E;P?O+=p:C&&(O-=p);var D=O-p,N=O+p;if(D<=g&&g<=N)return y;C=P}}C=!1;for(var F=u.length-1;F>=0;F-=1){var A,j,k=u[F],B=(A=d.get(k))!==null&&A!==void 0?A:0,G=(j=h.get(k))!==null&&j!==void 0?j:0,W=G===0;if(B<o-G)return null;if(!C||!W){var z=B+G;W?z+=p:C&&(z-=p);var q=z-p,V=z+p;if(q<=g&&g<=V)return k;C=W}}return null}static isItemHidden(e,t){return t.get(e)===0}static isColumnHidden(e,t){var{allColumnWidths:r}=t;return K.isItemHidden(e,r)}static isFloatingRow(e,t){if(e==null)return!1;var{floatingTopRowCount:r,floatingBottomRowCount:i,rowCount:a}=t;return e<r||e>=a-i}static isFloatingColumn(e,t){if(e==null)return!1;var{floatingLeftColumnCount:r,floatingRightColumnCount:i,columnCount:a}=t;return e<r||e>=a-i}static getHiddenItems(e,t,r){if(!K.isItemHidden(e,t))return[];for(var i=[e],a=r.findIndex(o=>o===e),l=a-1;l>=0;l-=1){var s=r[l];if(!K.isItemHidden(s,t))break;i.push(s)}return i}static getHiddenColumns(e,t){var{visibleColumns:r,allColumnWidths:i}=t;return K.getHiddenItems(e,i,r)}static getRowSeparatorIndex(e,t,r,i){var{rowHeaderWidth:a,columnHeaderHeight:l,visibleRows:s,allRowYs:o,allRowHeights:u}=r,{allowRowResize:d,headerSeparatorHandleSize:h}=i;if(a<e||!d||h<=0)return null;for(var v=t-l,m=h*.5,f=!1,g=s.length-1;g>=0;g-=1){var p,C,S=s[g],b=(p=o.get(S))!==null&&p!==void 0?p:0,w=(C=u.get(S))!==null&&C!==void 0?C:0,y=w===0;if(!f||!y){var T=b+w;y?T+=m:f&&(T-=m);var E=T-m,P=T+m;if(E<=v&&v<=P)return S;f=y}}return null}static isRowHidden(e,t){var{allRowHeights:r}=t;return K.isItemHidden(e,r)}static getHiddenRows(e,t){var{visibleRows:r,allRowHeights:i}=t;return K.getHiddenItems(e,i,r)}static moveItem(e,t,r){if(e===t)return[...r];var i=[...r],a=i[i.length-1];return a!=null&&!Xi(a.from)&&a.to===e?a.from===t?i.pop():i[i.length-1]=Qi(Qi({},a),{},{to:t}):i.push({from:e,to:t}),i}static moveRange(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(e[0]===e[1])return K.moveItem(e[0],t,r);var a=t;if(i&&e[0]<t&&(a-=e[1]-e[0]),e[0]===a)return[...r];var l=[...r],s=l[l.length-1];s!=null&&Xi(s.from)&&s.from[1]-s.from[0]===e[1]-e[0]&&s.to===e[0]?l[l.length-1]=Qi(Qi({},s),{},{to:a}):l.push({from:e,to:a});var o=l[l.length-1];return Xi(o.from)&&o.from[0]===o.to&&l.pop(),l}static moveItemOrRange(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;return Array.isArray(e)?K.moveRange(e,t,r,i):K.moveItem(e,t,r)}static applyItemMoves(e,t,r){for(var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,a=[[e,t]],l=function(){var{from:u,to:d}=r[s],h=1,v;Xi(u)?(h=u[1]-u[0]+1,[v]=u):v=u;for(var m=i?d:v,f=m+h-1,g=i?v:d,p=g-m,C=[],S=function(){var y,T,E=(y=a[b][0])!==null&&y!==void 0?y:Number.NEGATIVE_INFINITY,P=(T=a[b][1])!==null&&T!==void 0?T:Number.POSITIVE_INFINITY,O,D=[[E,m-1],[m,f],[f+1,P]].map(N=>{var[F,A]=N;return[Math.max(F,E),Math.min(A,P)]}).filter(N=>{var[F,A]=N;return F<=A}).map(N=>{var[F,A]=N;return m<=F&&f>=A?(O=[F+p,A+p],O):f<F?[F-h,A-h]:N}).map(N=>{var[F,A]=N;return g>F&&g<=A?[[F,g-1],[g+h,A+h]]:N===O?[N]:g<=F?[[F+h,A+h]]:[N]}).flat();C.push(...D)},b=0;b<a.length;b+=1)S();a=C.map(w=>{var[y,T]=w;return[Number.isFinite(y)?y:null,Number.isFinite(T)?T:null]})},s=i?r.length-1:0;i?s>=0:s<r.length;i?s-=1:s+=1)l();return a}static translateRange(e,t,r,i){for(var a=K.applyItemMoves(e.startColumn,e.endColumn,t,i),l=K.applyItemMoves(e.startRow,e.endRow,r,i),s=[],o=0;o<a.length;o+=1)for(var u=a[o],d=0;d<l.length;d+=1){var h=l[d];s.push(new U(u[0],h[0],u[1],h[1]))}return s}static getModelIndex(e,t){var r=K.applyItemMoves(e,e,t,!0)[0][0];return r}static getModelIndexes(e,t){return e.map(r=>K.getModelIndex(r,t))}static getModelRangeIndexes(e,t,r){return K.applyItemMoves(e,t,r,!0)}static getModelRange(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Re,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Re;return K.translateRange(e,t,r,!0)}static getModelRanges(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Re,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Re,i=[],a=0;a<e.length;a+=1)i.push(...K.getModelRange(e[a],t,r));return i}static getVisibleRangeIndexes(e,t,r){return K.applyItemMoves(e,t,r,!1)}static getVisibleRange(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Re,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Re;return this.translateRange(e,t,r,!1)}static getVisibleRanges(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Re,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Re,i=[],a=0;a<e.length;a+=1)i.push(...K.getVisibleRange(e[a],t,r));return i}static getVisibleIndex(e,t){var r=K.applyItemMoves(e,e,t)[0][0];return r}static getVisibleIndexes(e,t){return e.map(r=>K.getVisibleIndex(r,t))}static isMacPlatform(){var{platform:e}=window.navigator;return e.startsWith("Mac")}static getModifierKey(){return K.isMacPlatform()?"metaKey":"ctrlKey"}static isModifierKeyDown(e){var t=K.getModifierKey();return e[t]}static checkColumnHidden(e,t){return t.get(e)===0}static checkAllColumnsHidden(e,t){return t.size===0?!1:e.every(r=>t.get(r)===0)}static getScrollDragBounds(e,t,r){var{gridX:i,gridY:a,width:l,height:s,floatingTopRowCount:o,floatingBottomRowCount:u,floatingLeftColumnCount:d,floatingRightColumnCount:h,floatingLeftWidth:v,floatingRightWidth:m,floatingTopHeight:f,floatingBottomHeight:g,columnCount:p,rowCount:C}=e,S=i,b=a,w=l,y=s;return r!=null&&(r>d&&(S+=v),r<p-h&&(w-=m)),t!=null&&(t>o&&(b+=f),t<C-u&&(y-=g)),{x1:S,y1:b,x2:w,y2:y}}static getScrollDelta(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1024,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:768,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:20,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:20,{deltaX:l,deltaY:s}=e;return!K.isMacPlatform()&&e.shiftKey&&e.deltaX===0&&e.deltaY!==0&&(l=e.deltaY,s=e.deltaX),e?.deltaMode===WheelEvent.DOM_DELTA_PAGE?(l*=t,s*=r):e?.deltaMode===WheelEvent.DOM_DELTA_LINE&&(K.isMacPlatform()?(l=Math.round(l*i),s=Math.round(s*a)):(l=Math.round(l*this.PIXELS_PER_LINE),s=Math.round(s*this.PIXELS_PER_LINE))),{deltaX:l,deltaY:s}}static compareRanges(e,t){return e[0]==null||e[1]==null||t[0]==null||t[1]==null?0:e[0]!==t[0]?e[0]-t[0]:e[1]-t[1]}static mergeSortedRanges(e){for(var t=[],r=0;r<e.length;r+=1){var i=e[r],a=i[0],l=i[1];r===0?t.push([a,l]):a-1<=t[t.length-1][1]?t[t.length-1][1]=Math.max(t[t.length-1][1],l):t.push([a,l])}return t}static translateTokenBox(e,t){var{x1:r,y1:i,x2:a,y2:l}=e,{gridX:s,gridY:o,width:u,height:d,verticalBarWidth:h,horizontalBarHeight:v}=t,m=Ae(s+r,s,u-h),f=Ae(s+a,s,u-h),g=Ae(o+i,o,d-v),p=Ae(o+l,o,d-v);return{x1:m,y1:g,x2:f,y2:p,token:e.token}}static getTextRenderMetrics(e,t,r){var{metrics:i,model:a,theme:l}=e,{firstColumn:s,allColumnXs:o,allColumnWidths:u,allRowYs:d,allRowHeights:h,modelRows:v,modelColumns:m}=i,{cellHorizontalPadding:f,treeDepthIndent:g,treeHorizontalPadding:p}=l,C=M(v,r),S=M(m,t),b=a.textAlignForCell(S,C),w=M(o,t),y=M(d,r),T=M(u,t),E=M(h,r),P=t===s,O=0;xe(a)&&a.hasExpandableRows&&P&&(O=g*(a.depthForRow(r)+1)+p);var D=T-O,N=w+f,F=y+E*.5;return b==="right"?N=w+D-f:b==="center"&&(N=w+D*.5),N+=O,{width:D-f*2,x:N,y:F}}static findTokensWithProtocolInText(e){var t=jc(e);return t.filter(r=>r.type==="url"?/^https?:\/\//.test(r.value):!0)}}fh(K,"PIXELS_PER_LINE",100/3);const ee=K;function Ut(n,e,t){return e=Jm(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Jm(n){var e=ef(n,"string");return typeof e=="symbol"?e:String(e)}function ef(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Zi(n){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Nn.CACHE_SIZE,t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Math.floor(e/2);if(n.size>e)for(var r=n.keys();n.size>t;)n.delete(r.next().value)}function Fo(n,e,t,r,i){for(var a=new Map,l=0,s=0;s<n&&s<t;s+=1)a.set(s,l),l+=M(i,s);l=r;for(var o=0;o<e&&t-o-1>=0;o+=1)l-=M(i,t-o-1),a.set(t-o-1,l);return a}class Nn{constructor(){var{userColumnWidths:e=new Map,userRowHeights:t=new Map,calculatedColumnWidths:r=new Map,calculatedRowHeights:i=new Map,fontWidths:a=new Map,modelRows:l=new Map,modelColumns:s=new Map,movedRows:o=[],movedColumns:u=[],initialRowHeights:d=new Map,initialColumnWidths:h=new Map}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Ut(this,"initialRowHeights",void 0),Ut(this,"initialColumnWidths",void 0),Ut(this,"userColumnWidths",void 0),Ut(this,"userRowHeights",void 0),Ut(this,"calculatedColumnWidths",void 0),Ut(this,"calculatedRowHeights",void 0),Ut(this,"fontWidths",void 0),Ut(this,"modelRows",void 0),Ut(this,"modelColumns",void 0),Ut(this,"movedRows",void 0),Ut(this,"movedColumns",void 0),this.userColumnWidths=e,this.userRowHeights=t,this.calculatedRowHeights=i,this.calculatedColumnWidths=r,this.fontWidths=a,this.modelRows=l,this.modelColumns=s,this.movedRows=o,this.movedColumns=u,this.initialRowHeights=d,this.initialColumnWidths=h}getMetrics(e){var{left:t,top:r,leftOffset:i,topOffset:a,width:l,height:s,theme:o,model:u,movedRows:d,movedColumns:h,draggingColumn:v}=e,{rowHeight:m,rowHeaderWidth:f,rowFooterWidth:g,columnWidth:p,columnHeaderHeight:C,minScrollHandleSize:S,scrollBarSize:b}=o;d!==this.movedRows&&(this.movedRows=d,this.modelRows.clear()),h!==this.movedColumns&&(this.movedColumns=h,this.modelColumns.clear());var{columnCount:w,rowCount:y,floatingTopRowCount:T,floatingBottomRowCount:E,floatingLeftColumnCount:P,floatingRightColumnCount:O,columnHeaderMaxDepth:D}=u,N=this.getFirstRow(e),F=this.getFirstColumn(e),A=this.getGridX(e),j=this.getGridY(e),k=xe(u)&&u.hasExpandableRows?this.calculateTreePaddingX(e):0,B=0,G=this.getVisibleRowHeights(e),W=this.getVisibleColumnWidths(e,F,k),z=Array.from(G.keys()),q=Array.from(W.keys()),V=new Map([...G,...this.getFloatingRowHeights(e)]),I=new Map([...W,...this.getFloatingColumnWidths(e)]),_=this.getVisibleColumnXs(I,q,i),H=this.getVisibleRowYs(V,z,a),X=z.length>0?z[z.length-1]:r,Q=q.length>0?q[q.length-1]:t,ne=this.getBottomViewport(e,z,H,V),se=this.getRightViewport(e,q,_,I),ie=this.getFloatingTopHeight(e,V),de=this.getFloatingBottomHeight(e,V),he=this.getFloatingLeftWidth(e,I),Le=this.getFloatingRightWidth(e,I),Ze=Array.from(I.values()),Je=Array.from(V.values()),Ye=Ze.reduce((Fr,li)=>Fr+li,0)-i,Ue=Je.reduce((Fr,li)=>Fr+li,0)-a,et=i+Ye+g,De=a+Ue,it=l-A,mt=s-j,$t=this.getLastLeft(e,null,it-g),Pt=this.getLastLeft(e,null,it-g-b),Rr=this.getLastTop(e,null,mt-de),tr=this.getLastTop(e,null,mt-de-b),_t=Pt,ot=tr;$t===0&&Rr===0&&(_t=0,ot=0);var rr=_t>0,Wt=rr?b:0,pt=ot>0,Ht=pt?b:0,Rt=A,Ct=D*C,zt=l-Rt-Ht,Dt=s-Ct-Wt,Hr=w===1?zt/et:(w-_t)/w,Dr=y===1?Dt/De:(y-ot)/y,gr=rr?Ae(zt*Hr,S,zt-1):0,Kt=pt?Ae(Dt*Dr,S,Dt-1):0,pr=M(I,t,0),Ur=M(V,r,0),xn=pr>0?i/pr:0,ni=Ur>0?a/Ur:0,Ln=w===1?i/(et-it):(t+xn)/_t,kn=y===1?a/(De-mt):(r+ni)/ot,jn=rr?Ln*(zt-gr):0,_e=pt?kn*(Dt-Kt):0,Vi=[...Array(T).keys(),...[...Array(E).keys()].map(Fr=>y-Fr-1)],ii=new Map([...H,...this.getFloatingRowYs(e,V,Math.floor(s-j-Wt))]),Bi=[...Array(P).keys(),...[...Array(O).keys()].map(Fr=>w-Fr-1)],hn=new Map([..._,...this.getFloatingColumnXs(e,I,Math.floor(l-A-Ht))]),Gi=[];if(v)for(var Cr=v.range[0];Cr<=v.range[1];Cr+=1)Gi.push(Cr),I.has(Cr)||I.set(Cr,this.getVisibleColumnWidth(Cr,e)),hn.has(Cr)||hn.set(Cr,0);var Vr=z.concat(Vi),$i=q.concat(Bi).concat(Gi),ai=this.getModelRows(Vr,e),Ja=this.getModelColumns($i,e),el=this.getVisibleRowTreeBoxes(V,ai,e),tl=this.getTopVisible(e,ii,V,z),Wi=this.getLeftVisible(e,hn,I,q),zi=ot>0?this.getBottomVisible(e,ii,V,z,j):X,rl=_t>0?this.getRightVisible(e,hn,I,q,A):Q,{fontWidths:Ki,userColumnWidths:Yi,userRowHeights:nl,calculatedRowHeights:il,calculatedColumnWidths:al}=this;return{rowHeight:m,rowHeaderWidth:f,rowFooterWidth:g,rowCount:y,columnWidth:p,columnCount:w,columnHeaderHeight:C,floatingTopRowCount:T,floatingBottomRowCount:E,floatingLeftColumnCount:P,floatingRightColumnCount:O,gridX:A,gridY:j,firstRow:N,firstColumn:F,treePaddingX:k,treePaddingY:B,left:t,top:r,bottom:X,right:Q,topOffset:a,leftOffset:i,topVisible:tl,leftVisible:Wi,bottomVisible:zi,rightVisible:rl,bottomViewport:ne,rightViewport:se,width:l,height:s,maxX:Ye,maxY:Ue,lastLeft:_t,lastTop:ot,barHeight:Dt,barTop:Ct,barWidth:zt,barLeft:Rt,handleHeight:Kt,handleWidth:gr,hasHorizontalBar:rr,hasVerticalBar:pt,verticalBarWidth:Ht,horizontalBarHeight:Wt,scrollX:jn,scrollY:_e,scrollableContentWidth:et,scrollableContentHeight:De,scrollableViewportWidth:it,scrollableViewportHeight:mt,visibleRows:z,visibleColumns:q,visibleRowHeights:G,visibleColumnWidths:W,floatingRows:Vi,floatingColumns:Bi,allRows:Vr,allColumns:$i,allRowHeights:V,allColumnWidths:I,floatingTopHeight:ie,floatingBottomHeight:de,floatingLeftWidth:he,floatingRightWidth:Le,visibleRowYs:H,visibleColumnXs:_,allRowYs:ii,allColumnXs:hn,visibleRowTreeBoxes:el,modelRows:ai,modelColumns:Ja,movedRows:d,movedColumns:h,fontWidths:Ki,userColumnWidths:Yi,userRowHeights:nl,calculatedRowHeights:il,calculatedColumnWidths:al,columnHeaderMaxDepth:D}}getGridX(e){var{theme:t}=e,{rowHeaderWidth:r}=t;return r}getGridY(e){var{theme:t,model:r}=e,{columnHeaderHeight:i}=t,{columnHeaderMaxDepth:a}=r;return a*i}getVisibleHeight(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingRowHeights(e),{height:r,theme:i}=e,{scrollBarSize:a}=i,l=this.getGridY(e),s=this.getFloatingBottomHeight(e,t),o=this.getFloatingTopHeight(e,t);return r-s-o-l-a}getVisibleWidth(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingColumnWidths(e),{width:r,theme:i}=e,{scrollBarSize:a,rowFooterWidth:l}=i,s=this.getGridX(e),o=this.getFloatingRightWidth(e,t),u=this.getFloatingLeftWidth(e,t);return r-u-o-s-a-l}getFirstIndex(e,t,r){for(var i=e.size+1,a=0;a<i;a+=1){var l=t(a,r);if(e.get(l)!==0)return a}return 0}getFirstColumn(e){return this.getFirstIndex(this.userColumnWidths,this.getModelColumn.bind(this),e)}getFirstRow(e){return this.getFirstIndex(this.userRowHeights,this.getModelRow.bind(this),e)}getLastLeft(e,t,r){var{model:i}=e,{columnCount:a,floatingRightColumnCount:l}=i,s=Math.max(0,a-l-1);t!=null&&(s=t);for(var o=0;s>=0;){var u=this.getVisibleColumnWidth(s,e);if(o+=u,o>=r)return Ae(s+1,0,t??a-1);s-=1}return 0}getLastTop(e,t,r){var{model:i}=e,{rowCount:a,floatingBottomRowCount:l}=i,s=Math.max(0,a-l-1);t!=null&&(s=t);for(var o=0;s>=0;){var u=this.getVisibleRowHeight(s,e);if(o+=u,o>=r)return Ae(s+1,0,a-1);s-=1}return 0}getTopForTopVisible(e,t){for(var r=this.getFloatingTopHeight(e),i=t,a=0;i>0&&a<r;)i-=1,a+=this.getVisibleRowHeight(i,e);return i}getTopForBottomVisible(e,t){var{height:r}=e,i=this.getGridY(e),a=this.getFloatingBottomHeight(e),l=r-i-a;return this.getLastTop(e,t,l)}getLeftForLeftVisible(e,t){for(var r=this.getFloatingLeftWidth(e),i=t,a=0;i>0&&a<r;)i-=1,a+=this.getVisibleColumnWidth(i,e);return i}getLeftForRightVisible(e,t){var{width:r}=e,i=this.getGridX(e),a=this.getFloatingRightWidth(e),l=r-i-a;return this.getLastLeft(e,t,l)}getFloatingRowHeights(e){for(var{model:t}=e,{floatingTopRowCount:r,floatingBottomRowCount:i,rowCount:a}=t,l=new Map,s=0;s<r&&s<a;s+=1)l.set(s,this.getVisibleRowHeight(s,e));for(var o=0;o<i&&a-o-1>=0;o+=1){var u=a-o-1;l.set(u,this.getVisibleRowHeight(u,e))}return l}getVisibleRowHeights(e){for(var{top:t,topOffset:r,height:i,model:a}=e,l=0,s=t,o=new Map,{rowCount:u}=a;l<i+r&&s<u;){var d=this.getVisibleRowHeight(s,e);o.set(s,d),l+=d,s+=1}return o}getFloatingColumnWidths(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFirstColumn(e),r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.calculateTreePaddingX(e),{model:i}=e,{columnCount:a,floatingLeftColumnCount:l,floatingRightColumnCount:s}=i,o=new Map,u=0;u<l&&u<a;u+=1)o.set(u,this.getVisibleColumnWidth(u,e,t,r));for(var d=0;d<s&&a-d-1>=0;d+=1){var h=a-d-1;o.set(h,this.getVisibleColumnWidth(h,e,t,r))}return o}getVisibleColumnWidths(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFirstColumn(e),r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.calculateTreePaddingX(e),{left:i,leftOffset:a,width:l,model:s}=e,o=0,u=i,d=new Map,{columnCount:h}=s;o<l+a&&u<h;){var v=this.getVisibleColumnWidth(u,e,t,r);d.set(u,v),o+=v,u+=1}return d}getFloatingColumnXs(e,t,r){var{model:i}=e,{columnCount:a,floatingLeftColumnCount:l,floatingRightColumnCount:s}=i;return Fo(l,s,a,r,t)}getVisibleColumnXs(e,t,r){for(var i=new Map,a=-r,l=0;l<t.length;l+=1){var s=t[l],o=M(e,s);i.set(s,a),a+=o}return i}getFloatingRowYs(e,t,r){var{model:i}=e,{floatingTopRowCount:a,floatingBottomRowCount:l,rowCount:s}=i;return Fo(a,l,s,r,t)}getVisibleRowYs(e,t,r){for(var i=new Map,a=-r,l=0;l<t.length;l+=1){var s=t[l],o=M(e,s);i.set(s,a),a+=o}return i}getVisibleRowTreeBoxes(e,t,r){var i=new Map,{model:a,theme:l}=r,{treeDepthIndent:s,treeHorizontalPadding:o}=l;return xe(a)&&a.hasExpandableRows&&e.forEach((u,d)=>{var h=M(t,d);if(a.isRowExpandable(h)){var v=a.depthForRow(h),m=v*s+o,f=(v+1)*s+o,g=0,p=u;i.set(d,{x1:m,y1:g,x2:f,y2:p})}}),i}getFloatingLeftWidth(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingColumnWidths(e),{model:r}=e,{floatingLeftColumnCount:i}=r,a=0,l=0;l<i;l+=1)a+=M(t,l);return a}getFloatingRightWidth(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingColumnWidths(e),{model:r}=e,{floatingRightColumnCount:i,columnCount:a}=r,l=0,s=0;s<i;s+=1)l+=M(t,a-s-1);return l}getFloatingTopHeight(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingRowHeights(e),{model:r}=e,{floatingTopRowCount:i}=r,a=0,l=0;l<i;l+=1)a+=M(t,l);return a}getFloatingBottomHeight(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingRowHeights(e),{model:r}=e,{floatingBottomRowCount:i,rowCount:a}=r,l=0,s=0;s<i;s+=1)l+=M(t,a-s-1);return l}getTopVisible(e,t,r,i){for(var a=this.getFloatingTopHeight(e,r),l=0;l<i.length;l+=1){var s=i[l],o=M(t,s);if(o>=a)return s}return 0}getLeftVisible(e,t,r,i){for(var a=this.getFloatingLeftWidth(e,r),l=0;l<i.length;l+=1){var s=i[l],o=M(t,s);if(o>=a)return s}return 0}getBottomVisible(e,t,r,i,a){for(var{height:l,theme:s}=e,{scrollBarSize:o}=s,u=this.getFloatingBottomHeight(e,r),d=l-a-o-u,h=i.length-1;h>=0;h-=1){var v=i[h],m=M(t,v),f=M(r,v);if(m+f<=d)return v}return 0}getRightVisible(e,t,r,i,a){for(var{width:l,theme:s}=e,{scrollBarSize:o}=s,u=this.getFloatingRightWidth(e,r),d=l-a-o-u,h=i.length-1;h>=0;h-=1){var v=i[h],m=M(t,v),f=M(r,v);if(m+f<=d)return v}return 0}getBottomViewport(e,t,r,i){var{height:a,theme:l}=e,{rowHeight:s}=l;return this.getLastIndexViewport(t,r,i,a,s)}getRightViewport(e,t,r,i){var{width:a,theme:l}=e,{columnWidth:s}=l;return this.getLastIndexViewport(t,r,i,a,s)}getLastIndexViewport(e,t,r,i,a){var l=0,s=0;return e.length>0&&(l=e[e.length-1],s=M(t,l)+M(r,l)),s<i&&(l+=Math.ceil((i-s)/a)),l}getVisibleItemSize(e,t,r){var i;return(i=t.get(e))!==null&&i!==void 0?i:r()}getVisibleRowHeight(e,t){var r=this.getModelRow(e,t),i=this.calculateRowHeight(e,r,t);return this.getVisibleItemSize(r,this.userRowHeights,()=>{var a=this.initialRowHeights.get(r);return a!==void 0?a:i})}getVisibleColumnWidth(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.getFirstColumn(t),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:this.calculateTreePaddingX(t),a=this.getModelColumn(e,t),l=this.calculateColumnWidth(e,a,t,r,i);return this.getVisibleItemSize(a,this.userColumnWidths,()=>{var s=this.initialColumnWidths.get(a);return s!==void 0?s:l})}getModelRows(e,t){for(var r=new Map,i=0;i<e.length;i+=1){var a=e[i],l=this.getModelRow(a,t);r.set(a,l)}return r}getModelRow(e,t){if(this.modelRows.has(e))return M(this.modelRows,e);var{movedRows:r}=t,i=ee.getModelIndex(e,r);return this.modelRows.set(e,i),i}getModelColumns(e,t){for(var r=new Map,i=0;i<e.length;i+=1){var a=e[i],l=this.getModelColumn(a,t);r.set(a,l)}return r}getModelColumn(e,t){var r=this.modelColumns.has(e);if(r)return M(this.modelColumns,e);var{movedColumns:i}=t,a=ee.getModelIndex(e,i);return this.modelColumns.set(e,a),a}calculateRowHeight(e,t,r){var{theme:i}=r,{autoSizeRows:a,rowHeight:l}=i;if(!a)return l;var s=this.calculatedRowHeights.get(t);return s??(this.calculatedRowHeights.set(t,Math.ceil(l)),Zi(this.calculatedRowHeights),l)}calculateColumnWidth(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:this.getFirstColumn(r),a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:this.calculateTreePaddingX(r),{theme:l}=r,{autoSizeColumns:s,minColumnWidth:o}=l;if(!s){var{columnWidth:u}=l;return u}var d=this.calculateColumnHeaderWidth(t,r),h=this.calculateColumnDataWidth(t,r),v=this.calculatedColumnWidths.get(t),m=Math.ceil(Math.max(d,h));return m=Math.max(o,m),v!=null&&v>m?m=v:(this.calculatedColumnWidths.set(t,m),Zi(this.calculatedColumnWidths)),e===i&&(m+=a),m}calculateColumnHeaderWidth(e,t){var{model:r,theme:i}=t,{headerFont:a,headerHorizontalPadding:l}=i,s=r.textForColumnHeader(e,0);if(s!==void 0&&s!==""){var o=this.getWidthForFont(a,t);return s.length*o+l*2}return l*2}calculateColumnDataWidth(e,t){var{top:r,height:i,width:a,model:l,theme:s}=t,{floatingTopRowCount:o,floatingBottomRowCount:u,rowCount:d}=l,{font:h,cellHorizontalPadding:v,rowHeight:m,rowHeaderWidth:f,rowFooterWidth:g,scrollBarSize:p,dataBarHorizontalPadding:C}=s,S=0,b=this.getWidthForFont(h,t),w=i/m,y=Math.ceil(r+w);return ee.iterateAllItems(r,y,o,u,d,T=>{var E=this.getModelRow(T,t),P=l.textForCell(e,E),O=l.renderTypeForCell(e,E),D=0;if(P){var N=v*2;D=P.length*b+N}O==="dataBar"&&(D+=C),S=Math.max(S,D)}),S=Math.max(Math.min(S,(a-f-p-g)*Nn.MAX_COLUMN_WIDTH),v*2),S}calculateTreePaddingX(e){var{top:t,height:r,model:i,theme:a}=e,{rowHeight:l,treeDepthIndent:s}=a;if(!xe(i)||!i.hasExpandableRows)return 0;for(var o=0,u=r/l,d=Math.ceil(t+u),h=t;h<=d;h+=1){var v=this.getModelRow(h,e),m=i.depthForRow(v);o=Math.max(o,s*(m+1))}return o}getWidthForFont(e,t){if(this.fontWidths.has(e))return M(this.fontWidths,e);var{context:r}=t;r.font=e;var i=r.measureText("8"),{width:a}=i;return this.fontWidths.set(e,a),this.fontWidths.set(r.font,a),a}setColumnWidth(e,t){var r=new Map(this.userColumnWidths);r.set(e,Math.ceil(t)),Zi(r),this.userColumnWidths=r}resetColumnWidth(e){var t=new Map(this.userColumnWidths);t.delete(e),this.userColumnWidths=t}setRowHeight(e,t){var r=new Map(this.userRowHeights);r.set(e,Math.ceil(t)),Zi(r),this.userRowHeights=r}resetRowHeight(e){var t=new Map(this.userRowHeights);t.delete(e),this.userRowHeights=t,this.calculatedRowHeights.delete(e)}}Ut(Nn,"CACHE_SIZE",1e4);Ut(Nn,"MAX_COLUMN_WIDTH",.8);const tf=Nn;var rf=Object.freeze({allowColumnResize:!0,allowRowResize:!0,autoSelectRow:!1,autoSelectColumn:!1,autoSizeColumns:!0,autoSizeRows:!0,backgroundColor:"#000000",black:"#000000",white:"#ffffff",cellHorizontalPadding:5,headerHorizontalPadding:5,font:"12px Arial, sans serif",gridColumnColor:"#8f8f8f66",gridRowColor:"#8f8f8f66",headerBackgroundColor:"#222222",headerSeparatorColor:"#000000",headerSeparatorHoverColor:"#888888",headerSeparatorHandleSize:5,headerHiddenSeparatorSize:5,headerHiddenSeparatorHoverColor:"#8888FF",headerColor:"#d5d5d5",headerFont:"10px Arial, sans serif",columnHoverBackgroundColor:"#444444",selectedColumnHoverBackgroundColor:"#494949",rowBackgroundColors:"#333333 #222222",rowHoverBackgroundColor:"#444444",selectedRowHoverBackgroundColor:"#494949",minScrollHandleSize:50,scrollBarBackgroundColor:"#111111",scrollBarHoverBackgroundColor:"#333333",scrollBarCasingColor:"#000000",scrollBarCornerColor:"#000000",scrollBarColor:"#555555",scrollBarHoverColor:"#888888",scrollBarActiveColor:"#AAAAAA",scrollBarSize:12,scrollBarHoverSize:16,scrollBarCasingWidth:1,scrollSnapToColumn:!1,scrollSnapToRow:!1,selectionColor:"#4286f433",selectionOutlineColor:"#4286f4",selectionOutlineCasingColor:"#222222",scrollBarSelectionTick:!0,scrollBarSelectionTickColor:"#4286f433",scrollBarActiveSelectionTickColor:"#4286f480",shadowBlur:8,shadowColor:"#000000",textColor:"#ffffff",hyperlinkColor:"#4878ea",maxDepth:6,treeDepthIndent:10,treeHorizontalPadding:5,treeLineColor:"#888888",treeMarkerColor:"#cccccc",treeMarkerHoverColor:"#ffffff",rowHeight:20,columnWidth:100,minRowHeight:20,minColumnWidth:55,columnHeaderHeight:20,rowHeaderWidth:30,rowFooterWidth:0,headerResizeSnapThreshold:10,headerResizeHiddenSnapThreshold:8,allowColumnReorder:!0,allowRowReorder:!0,reorderOffset:2,floatingGridColumnColor:"#8f8f8f66",floatingGridRowColor:"#8f8f8f66",floatingRowBackgroundColors:"#393939 #292929",floatingDividerOuterColor:"#000000",floatingDividerInnerColor:"#cccccc",zeroLineColor:"#888888",positiveBarColor:"#00ff00",negativeBarColor:"#ff0000",dataBarHorizontalPadding:90});const nf=rf;function No(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 Io(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?No(Object(t),!0).forEach(function(r){af(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):No(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function af(n,e,t){return e=lf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function lf(n){var e=sf(n,"string");return typeof e=="symbol"?e:String(e)}function sf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var of=(n,e)=>{var t=!1,r=we(n,Io(Io({},e),{},{dispose:()=>{t||(t=!0,r.clear(),t=!1)}}));return r};const mr=of;function uf(n,e){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:6,r=Vl.hex.lab.raw(n);return r[0]=Math.max(r[0]-r[0]/t*e,0),"#".concat(Vl.lab.hex(r))}function df(n,e){var[t,r,i]=Vl.hex.rgb(n);return"rgba(".concat(t,", ").concat(r,", ").concat(i,", ").concat(e,")")}var hf=n=>{var{r:e,g:t,b:r}=n,i=.4122214708*e+.5363325363*t+.0514459929*r,a=.2119034982*e+.6806995451*t+.1073969566*r,l=.0883024619*e+.2817188376*t+.6299787005*r,s=Math.cbrt(i),o=Math.cbrt(a),u=Math.cbrt(l);return{L:.2104542553*s+.793617785*o-.0040720468*u,a:1.9779984951*s-2.428592205*o+.4505937099*u,b:.0259040371*s+.7827717662*o-.808675766*u}},cf=n=>{var{L:e,a:t,b:r}=n,i=e+.3963377774*t+.2158037573*r,a=e-.1055613458*t-.0638541728*r,l=e-.0894841775*t-1.291485548*r,s=i*i*i,o=a*a*a,u=l*l*l;return{r:Ae(4.0767416621*s-3.3077115913*o+.2309699292*u,0,255),g:Ae(-1.2684380046*s+2.6097574011*o-.3413193965*u,0,255),b:Ae(-.0041960863*s-.7034186147*o+1.707614701*u,0,255)}},vf=n=>{var e,t,r=(e=(t=n.replace(/^#?([a-f\d])([a-f\d])([a-f\d])$/i,(i,a,l,s)=>"#".concat(a).concat(a).concat(l).concat(l).concat(s).concat(s)).substring(1).match(/.{2}/g))===null||t===void 0?void 0:t.map(i=>parseInt(i,16)))!==null&&e!==void 0?e:[0,0,0];return{r:r[0],g:r[1],b:r[2]}},mf=n=>{var e=Math.round(n.r),t=Math.round(n.g),r=Math.round(n.b);return"#".concat([e,t,r].map(i=>{var a=i.toString(16);return a.length===1?"0".concat(a):a}).join(""))},ff=(n,e,t)=>{var{L:r,a:i,b:a}=n,{L:l,a:s,b:o}=e,u=r+(l-r)*t,d=i+(s-i)*t,h=a+(o-a)*t;return{L:u,a:d,b:h}};const gn={colorWithAlpha:df,darkenForDepth:uf,linearSRGBToOklab:hf,OklabToLinearSRGB:cf,hexToRgb:vf,rgbToHex:mf,lerpColor:ff};function Ao(n,e,t){return e=gf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function gf(n){var e=pf(n,"string");return typeof e=="symbol"?e:String(e)}function pf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Qe{constructor(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:5e3;Ao(this,"order",void 0),Ao(this,"cursor",null),this.order=e}onDown(e,t,r){return!1}onMove(e,t,r){return!1}onDrag(e,t,r){return!1}onLeave(e,t,r){return!1}onClick(e,t,r){return!1}onContextMenu(e,t,r){return!1}onDoubleClick(e,t,r){return!1}onUp(e,t,r){return!1}onWheel(e,t,r){return!1}}function ci(n,e,t){return e=Cf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Cf(n){var e=Sf(n,"string");return typeof e=="symbol"?e:String(e)}function Sf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class bf extends Qe{constructor(){super(...arguments),ci(this,"draggingIndex",void 0),ci(this,"resizingItems",[]),ci(this,"hiddenItems",[]),ci(this,"targetSizes",new Map),ci(this,"dragOffset",0)}onDown(e,t){var{metrics:r}=t,{model:i}=t.props,a=t.getTheme();if(!r)throw new Error("metrics not set");var l=this.getSeparator(e,r,i,a);if(l!=null){var s=l.index;return this.dragOffset=0,this.draggingIndex=s,this.resizingItems=[s],this.hiddenItems=this.getHiddenItems(s,r).reverse(),this.targetSizes.clear(),this.addTargetSize(r,s),this.updateCursor(r,s),this.updateSeparator(t,l),!0}return!1}onMove(e,t){var{metrics:r}=t,{model:i}=t.props,a=t.getTheme();if(!r)throw new Error("metrics not set");var l=this.getSeparator(e,r,i,a);return l!=null?(this.updateCursor(r,l.index),!0):!1}onDrag(e,t){if(this.draggingIndex==null)return!1;var r=e[this.pointProperty],{metricCalculator:i,metrics:a}=t;if(!a)throw new Error("metrics not set");for(var l=t.getTheme(),s=a[this.visibleOffsetProperty],o=a[this.marginProperty],u=a[this.calculatedSizesProperty],d=a[this.modelIndexesProperty],h=a[this.firstIndexProperty],v=a[this.treePaddingProperty],m=new Map,f=this.resizingItems[this.resizingItems.length-1];f!=null;){var g=M(s,f),p=r-o-g-this.dragOffset,C=M(d,f),S=this.targetSizes.get(C),b=this.resizingItems.length>1,w=this.hiddenItems.indexOf(f),y=M(u,C);f===h&&(y+=v);var T=p;if(Math.abs(p-y)<=l.headerResizeSnapThreshold?T=y:S!==void 0&&p>S&&(b&&w!==0||w>0)?T=S:p<=l.headerResizeHiddenSnapThreshold&&(T=0),m.set(C,T),p<-l.headerResizeSnapThreshold&&T===0)if(w>=0&&b){var E;this.resizingItems.pop(),this.removeTargetSize(a,f),f=this.resizingItems[this.resizingItems.length-1],this.dragOffset-=(E=this.targetSizes.get(M(d,f)))!==null&&E!==void 0?E:0}else f=this.getNextShownItem(f,a),f!==null&&(this.resizingItems.push(f),this.addTargetSize(a,f));else S!==void 0&&p>S+l.headerResizeSnapThreshold&&T===S?w>0?(this.dragOffset+=T,f=this.hiddenItems[w-1],this.resizingItems.push(f),this.addTargetSize(a,f)):b?(this.resizingItems.pop(),this.removeTargetSize(a,f),f=this.resizingItems[this.resizingItems.length-1]):f=null:f=null}return m.forEach((P,O)=>{var D,N=(D=i[this.initialSizesProperty].get(O))!==null&&D!==void 0?D:u.get(O);P===N?this.resetSize(i,O):this.setSize(i,O,P)}),this.updateCursor(a,this.draggingIndex),!0}onUp(e,t){return this.draggingIndex!=null&&(this.draggingIndex=void 0,this.resizingItems=[],this.hiddenItems=[],this.targetSizes.clear(),this.updateSeparator(t,null)),!1}onDoubleClick(e,t){var{metrics:r,metricCalculator:i}=t,{model:a}=t.props,l=t.getTheme();if(!r)throw new Error("metrics not set");var s=this.getSeparator(e,r,a,l);if(s!=null){var o=r[this.modelIndexesProperty],u=M(o,s.index),d=M(r[this.calculatedSizesProperty],u),h=i[this.initialSizesProperty].get(u);return d===h?this.resetSize(i,u):this.setSize(i,u,d),t.forceUpdate(),!0}return!1}updateCursor(e,t){var r=e[this.visibleSizesProperty],i=M(r,t);i===0?this.cursor=this.hiddenCursor:this.cursor=this.defaultCursor}addTargetSize(e,t){var r=e[this.modelIndexesProperty],i=e[this.userSizesProperty],a=e[this.calculatedSizesProperty],l=t===0?e[this.treePaddingProperty]:0,s=M(r,t),o=i.get(s);(o==null||o===0)&&(o=M(a,s)+l),this.targetSizes.set(s,o)}removeTargetSize(e,t){var r=e[this.modelIndexesProperty],i=M(r,t);this.targetSizes.delete(i)}}const gh=bf;function bt(n,e,t){return e=wf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function wf(n){var e=yf(n,"string");return typeof e=="symbol"?e:String(e)}function yf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Rs extends gh{constructor(){super(...arguments),bt(this,"hiddenCursor","e-resize"),bt(this,"defaultCursor","col-resize"),bt(this,"pointProperty","x"),bt(this,"userSizesProperty","userColumnWidths"),bt(this,"visibleOffsetProperty","visibleColumnXs"),bt(this,"visibleSizesProperty","visibleColumnWidths"),bt(this,"marginProperty","rowHeaderWidth"),bt(this,"calculatedSizesProperty","calculatedColumnWidths"),bt(this,"initialSizesProperty","initialColumnWidths"),bt(this,"modelIndexesProperty","modelColumns"),bt(this,"firstIndexProperty","firstColumn"),bt(this,"treePaddingProperty","treePaddingX"),bt(this,"getHiddenItems",ee.getHiddenColumns),bt(this,"getNextShownItem",ee.getNextShownColumn),bt(this,"getSeparator",Rs.getColumnSeparator)}static getColumnSeparator(e,t,r,i){if(!i.allowColumnResize)return null;var{x:a,y:l,columnHeaderDepth:s}=e,{modelColumns:o}=t,u=ee.getColumnSeparatorIndex(a,l,t,i);if(u==null||s==null||s>0)return null;var d=o.get(u);return d!=null?{index:u,depth:0}:null}setSize(e,t,r){e.setColumnWidth(t,r)}resetSize(e,t){e.resetColumnWidth(t)}updateSeparator(e,t){e.setState({draggingColumnSeparator:t,isDragging:t!==null})}}const ph=Rs;var En=10;function Tf(n,e,t){return e=Ef(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ef(n){var e=Of(n,"string");return typeof e=="symbol"?e:String(e)}function Of(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Pf{constructor(){Tf(this,"getCachedTruncatedString",mr((e,t,r,i,a)=>wh.truncateToWidth(e,t,r,i,a),{max:1e4}))}drawCellRowTreeMarker(e,t,r){var{metrics:i,model:a,mouseX:l,mouseY:s,theme:o}=t,{firstColumn:u,gridX:d,gridY:h,allColumnXs:v,allColumnWidths:m,allRowYs:f,allRowHeights:g,visibleRowTreeBoxes:p}=i,{treeMarkerColor:C,treeMarkerHoverColor:S}=o,b=M(v,u),w=M(m,u),y=M(f,r),T=M(g,r);if(!(!xe(a)||!a.isRowExpandable(r))){var E=M(p,r),P=l!=null&&s!=null&&l>=d+b&&l<=d+b+w&&s>=h+y&&s<=h+y+T?S:C;this.drawTreeMarker(e,t,b,y,E,P,a.isRowExpanded(r))}}drawTreeMarker(e,t,r,i,a,l,s){var{x1:o,y1:u,x2:d,y2:h}=a,v=s?"⊟":"⊞",m=r+(o+d)*.5+.5,f=i+(u+h)*.5+.5;e.fillStyle=l,e.textAlign="center",e.fillText(v,m,f)}}const Ch=Pf;function Mo(n){return n?.dataBarOptionsForCell!==void 0}function xo(n,e,t){return e=Rf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Rf(n){var e=Df(n,"string");return typeof e=="symbol"?e:String(e)}function Df(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Ff extends Ch{constructor(){super(...arguments),xo(this,"heightOfDigits",void 0),xo(this,"getCachedWidestValueForColumn",mr((e,t,r,i,a)=>{for(var l=0,s=0;s<t.length;s+=1){var o=t[s],u=M(r,o),d=i.textForCell(a,u);l=Math.max(l,e.measureText(d).width)}return l},{max:1e3}))}drawCellContent(e,t,r,i){var a,{metrics:l,model:s,theme:o}=t;if(Mo(s)){var{modelColumns:u,modelRows:d,allRowHeights:h,allRowYs:v,firstColumn:m,fontWidths:f}=l,g=r===m,p=M(h,i),C=M(d,i),S=M(u,r),b=M(v,i),w=s.textAlignForCell(S,C),y=s.textForCell(S,C),{x:T,width:E}=ee.getTextRenderMetrics(t,r,i),P=(a=f?.get(e.font))!==null&&a!==void 0?a:En,O=s.truncationCharForCell(S,C),D=this.getCachedTruncatedString(e,y,E,P,O),{columnMin:N,columnMax:F,axis:A,color:j,valuePlacement:k,opacity:B,markers:G,direction:W,value:z}=s.dataBarOptionsForCell(S,C),q=Array.isArray(j);if(!(N==null||F==null)){var{maxWidth:V,x:I,y:_,zeroPosition:H,leftmostPosition:X,markerXs:Q,totalValueRange:ne,dataBarWidth:se}=this.getDataBarRenderMetrics(e,t,r,i);if(this.heightOfDigits===void 0){var{actualBoundingBoxAscent:ie,actualBoundingBoxDescent:de}=e.measureText("1234567890");this.heightOfDigits=ie+de}if(e.save(),e.textAlign=w,q){var he=z>=0?j[j.length-1]:j[0];e.fillStyle=he}else e.fillStyle=j;if(e.textBaseline="top",e.font=o.font,k!=="hide"&&e.fillText(D,T,b+(p-this.heightOfDigits)/2),q){var Le=j.map(Kt=>gn.linearSRGBToOklab(gn.hexToRgb(Kt)));if(e.save(),e.beginPath(),e.roundRect(I,_,se,p-2,1),e.clip(),z<0){if(W==="LTR")for(var Ze=Math.round(Math.abs(N)/ne*V),Je=Ze/(j.length-1),Ye=Math.round(X),Ue=0;Ue<j.length-1;Ue+=1){var et=Le[Ue],De=Le[Ue+1];this.drawGradient(e,et,De,Ye,b+1,Je,p),Ye+=Je}else if(W==="RTL")for(var it=Math.round(V-Math.abs(F)/ne*V),mt=it/(j.length-1),$t=Math.round(H),Pt=j.length-1;Pt>0;Pt-=1){var Rr=Le[Pt],tr=Le[Pt-1];this.drawGradient(e,Rr,tr,$t,b+1,mt,p),$t+=mt}}else if(W==="LTR")for(var _t=Math.round(V-Math.abs(N)/ne*V)-1,ot=_t/(j.length-1),rr=Math.round(H),Wt=0;Wt<j.length-1;Wt+=1){var pt=Le[Wt],Ht=Le[Wt+1];this.drawGradient(e,pt,Ht,rr,b+1,ot,p-2),rr+=ot}else if(W==="RTL")for(var Rt=Math.round(Math.abs(F)/ne*V),Ct=Rt/(j.length-1),zt=Math.round(X),Dt=j.length-1;Dt>0;Dt-=1){var Hr=Le[Dt],Dr=Le[Dt-1];this.drawGradient(e,Hr,Dr,zt,b+1,Ct,p-2),zt+=Ct}e.restore()}else e.save(),e.globalAlpha=B,e.beginPath(),e.roundRect(I,_,se,p-2,1),e.fill(),e.restore();V>0&&Q.forEach((Kt,pr)=>{e.fillStyle=G[pr].color,e.fillRect(Kt,_,1,p-2)});var gr=!(A==="directional"&&(k==="beside"&&w==="right"&&W==="LTR"||k==="beside"&&w==="left"&&W==="RTL"||k!=="beside"));gr&&(e.strokeStyle=o.zeroLineColor,e.beginPath(),e.setLineDash([2,1]),e.moveTo(H,b),e.lineTo(H,b+p),e.stroke()),e.restore(),g&&xe(s)&&s.hasExpandableRows&&this.drawCellRowTreeMarker(e,t,i)}}}getDataBarRenderMetrics(e,t,r,i){var{metrics:a,model:l,theme:s}=t;if(!Mo(l))throw new Error("Grid model is not a data bar grid model");var{firstColumn:o,allColumnXs:u,allColumnWidths:d,allRowYs:h,modelColumns:v,modelRows:m,visibleRows:f}=a,{cellHorizontalPadding:g,treeDepthIndent:p,treeHorizontalPadding:C}=s,S=M(v,r),b=M(m,i),w=M(u,r),y=M(h,i),T=M(d,r),E=r===o,P=0;xe(l)&&l.hasExpandableRows&&E&&(P=p*(l.depthForRow(i)+1)+C);var O=l.textAlignForCell(S,b),{columnMin:D,columnMax:N,axis:F,valuePlacement:A,markers:j,direction:k,value:B}=l.dataBarOptionsForCell(S,b),G=this.getCachedWidestValueForColumn(e,f,m,l,S),W=2,z=A==="beside"&&O==="right"?2:1,q=N-D;N>=0&&D>=0||D===N?q=N:N<=0&&D<=0&&(q=Math.abs(D));var V=T-P-z-W;A==="beside"&&(V=V-g-G),V<0&&(V=0);var I=Math.max(Math.abs(D),Math.abs(N)),_=Math.abs(B)/q*V;V===0?_=0:F==="middle"?_=Math.abs(B)/I*(V/2):F==="directional"&&(_=Math.abs(B)/I*V);var H=D>=0?0:Math.abs(D)/q*V,X=B>=0?H:H-Math.abs(B)/q*V,Q=j.map(ie=>{var{column:de}=ie,he=Number(l.textForCell(de,b));return he>=0?H+Math.abs(he)/q*V:H-Math.abs(he)/q*V}),ne=A==="beside"&&O==="left"?g+G+W:W,se=A==="beside"&&O==="right"?T-g-G-z:z;return k==="RTL"&&(H=D>=0?T:T-Math.abs(D)/q*V,X=B>=0?H-B/q*V:H,Q=j.map(ie=>{var{column:de}=ie,he=Number(l.textForCell(de,b));return he>=0?H-Math.abs(he)/q*V:H+Math.abs(he)/q*V})),F==="middle"?(H=V/2,k==="LTR"?(X=B>=0?H:H-Math.abs(B)/I*(V/2),Q=j.map(ie=>{var{column:de}=ie,he=Number(l.textForCell(de,b));return he>=0?H+Math.abs(he)/I*(V/2):H-Math.abs(he)/I*(V/2)})):k==="RTL"&&(X=B<=0?H:H-Math.abs(B)/I*(V/2),Q=j.map(ie=>{var{column:de}=ie,he=Number(l.textForCell(de,b));return he<=0?H+Math.abs(he)/I*(V/2):H-Math.abs(he)/I*(V/2)}))):F==="directional"&&(k==="LTR"?(H=0,X=H,Q=j.map(ie=>{var{column:de}=ie,he=Number(l.textForCell(de,b));return H+Math.abs(he)/I*V})):k==="RTL"&&(H=T,X=H-Math.abs(B)/I*V,Q=j.map(ie=>{var{column:de}=ie,he=Number(l.textForCell(de,b));return H-Math.abs(he)/I*V}))),k==="LTR"?(H+=w+W+P,X+=w+W+P,Q=Q.map(ie=>ie+w+W+P),A==="beside"&&O==="left"&&(H+=G+g,X+=G+g,Q=Q.map(ie=>ie+G+g))):k==="RTL"&&(H=H+w-z,X=X+w-z,Q=Q.map(ie=>ie+w-z),A==="beside"&&O==="right"&&(H=H-g-G,X=X-g-G,Q=Q.map(ie=>ie-g-G))),ne+=w+P,se+=w,{maxWidth:V,x:X,y:y+1.5,zeroPosition:H,leftmostPosition:ne,rightmostPosition:se,totalValueRange:q,dataBarWidth:_,markerXs:Q}}drawGradient(e,t,r,i,a,l,s){for(var o=t,u=i;u<=i+l;u+=.5)this.drawGradientPart(e,u,a,1,s,gn.rgbToHex(gn.OklabToLinearSRGB(o))),o=gn.lerpColor(t,r,(u-i)/l)}drawGradientPart(e,t,r,i,a,l){e.fillStyle=l,e.fillRect(t,r,i,a)}}const Sh=Ff;function Nf(n,e,t){return e=If(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function If(n){var e=Af(n,"string");return typeof e=="symbol"?e:String(e)}function Af(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Mf extends Ch{constructor(){super(...arguments),Nf(this,"getCachedTokenBoxesForVisibleCell",mr((e,t,r,i,a,l)=>{for(var s=0,o=a,u=[],d=0,h=0,v=0;v<t.length;v+=1){var m=t[v],{start:f,end:g}=m,p=g>e.length?e.substring(f):m.value;h+=l.measureText(e.substring(d,f)).width;var C=l.measureText(p).width,S=h,b=S+C,w={x1:S,y1:s,x2:b,y2:o,token:m};u.push(w),d=g,h+=C}return u},{max:1e4}))}drawCellContent(e,t,r,i){var{metrics:a,model:l,theme:s}=t,{fontWidths:o,modelColumns:u,modelRows:d,allRowHeights:h,firstColumn:v}=a,m=r===v,{textColor:f}=s,g=M(h,i),p=M(d,i),C=M(u,r),S=l.textForCell(C,p),b=l.truncationCharForCell(C,p);if(S&&g>0){var w,y=l.textAlignForCell(C,p)||"left";e.textAlign=y;var T=l.colorForCell(C,p,s)||f;e.fillStyle=T,e.save();var{width:E,x:P,y:O}=ee.getTextRenderMetrics(t,r,i),D=(w=o.get(e.font))!==null&&w!==void 0?w:En,N=this.getCachedTruncatedString(e,S,E,D,b),F=l.tokensForCell(C,p,N.length);if(N)for(var A=0,j=0,k=P,{actualBoundingBoxDescent:B}=e.measureText(N);j<N.length;){var G,W,z=F[A],q=j===z?.start?z:null,V=(G=(W=q?.end)!==null&&W!==void 0?W:z?.start)!==null&&G!==void 0?G:N.length,I=N.substring(j,V),{width:_}=e.measureText(I),H=I.endsWith("…")?e.measureText(I.substring(0,I.length-1)).width:_;q!=null?(e.fillStyle=s.hyperlinkColor,e.fillText(I,k,O),e.fillRect(k,O+B,H,1)):(e.fillStyle=T,e.fillText(I,k,O)),k+=_,j=V,q!=null&&(A+=1)}e.restore()}m&&xe(l)&&l.hasExpandableRows&&this.drawCellRowTreeMarker(e,t,i)}getTokenBoxesForVisibleCell(e,t,r){var i,{metrics:a,context:l,model:s,theme:o}=r;if(l==null||a==null)return Re;var{modelRows:u,modelColumns:d}=a,h=M(u,t),v=M(d,e),m=s.textForCell(v,h),{width:f,x:g,y:p}=ee.getTextRenderMetrics(r,e,t),{fontWidths:C}=a;l.save(),this.configureContext(l,r);var S=(i=C?.get(l.font))!==null&&i!==void 0?i:En,b=s.truncationCharForCell(v,h),w=this.getCachedTruncatedString(l,m,f,S,b),{actualBoundingBoxAscent:y,actualBoundingBoxDescent:T}=l.measureText(w),E=y+T,P=s.tokensForCell(v,h,w.length);if(P.length===0)return l.restore(),Re;var O=this.getCachedTokenBoxesForVisibleCell(w,P,o.font,"middle",E,l).map(D=>({x1:D.x1+g,y1:D.y1+(p-y),x2:D.x2+g,y2:D.y2+(p-y),token:D.token}));return l.restore(),O}configureContext(e,t){var{theme:r}=t;e.font=r.font,e.textBaseline="middle",e.lineCap="butt"}}const bh=Mf;function pn(n,e,t){return e=xf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function xf(n){var e=Lf(n,"string");return typeof e=="symbol"?e:String(e)}function Lf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Er{constructor(){pn(this,"textCellRenderer",new bh),pn(this,"dataBarCellRenderer",new Sh),pn(this,"getCachedBackgroundColors",mr((e,t)=>e.split(" ").map(r=>{for(var i=[],a=0;a<t;a+=1)i.push(gn.darkenForDepth(r,a,t));return i}),{max:1e3})),pn(this,"getCachedColorWithAlpha",mr((e,t)=>gn.colorWithAlpha(e,t),{max:1e3})),pn(this,"getCachedColorIsDark",mr(e=>dh.isDark(e),{max:1e3}))}static truncate(e,t){return t<e.length?e.substr(0,t)+"…":e}static binaryTruncateToWidth(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:t.length,l=arguments.length>5?arguments[5]:void 0;if(a>=t.length&&e.measureText(t).width<=r)return t;if(l!==void 0){var s=e.measureText(l).width;return l.repeat(Math.max(1,Math.floor(r/s)))}for(var o=i,u=Math.min(t.length-1,a),d=t;u>=o;){var h=Math.ceil((u+o)/2),v=Er.truncate(t,h);if(e.measureText(v).width<=r){if(d=v,o===h)break;o=h}else if(h===0){d=v;break}else u=h-1}return d}static truncateToWidth(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:En,a=arguments.length>4?arguments[4]:void 0;if(r<=0||t.length<=0)return"";var l=Math.min(Math.max(0,Math.floor(r/i/2)-5),t.length),s=Math.min(Math.ceil(r/i*2),t.length);return Er.binaryTruncateToWidth(e,t,r,l,s,a)}drawCanvas(e){var{context:t}=e;t.save(),this.configureContext(t,e),this.drawBackground(t,e),this.drawGrid(t,e),this.drawHeaders(t,e),this.drawFooters(t,e),this.drawDraggingColumn(t,e),this.drawDraggingRow(t,e),this.drawScrollBars(t,e),t.restore()}configureContext(e,t){var{theme:r}=t;e.font=r.font,e.textBaseline="middle",e.lineCap="butt"}drawBackground(e,t){var{theme:r,metrics:i}=t,{width:a,height:l}=i;e.fillStyle=r.backgroundColor,e.fillRect(0,0,a,l)}drawGrid(e,t){var{metrics:r,draggingRow:i,draggingColumn:a}=t,{gridX:l,gridY:s}=r;e.translate(l,s),this.drawGridBackground(e,t,i==null&&a==null),this.drawCellContents(e,t),this.drawFloatingRows(e,t),this.drawFloatingColumns(e,t),e.translate(-l,-s)}drawFloatingRows(e,t){var{draggingRow:r,draggingColumn:i,metrics:a,theme:l}=t,{floatingTopRowCount:s,floatingBottomRowCount:o,floatingRows:u,rowCount:d,visibleColumns:h,allRowYs:v,allRowHeights:m}=a;if(u.length!==0){l.floatingRowBackgroundColors&&this.drawRowStripesForRows(e,t,u,l.floatingRowBackgroundColors),r==null&&i==null&&this.drawFloatingMouseRowHover(e,t),this.drawGridLinesForItems(e,t,h,u,l.floatingGridColumnColor,l.floatingGridRowColor),this.drawCellBackgroundsForItems(e,t,h,u),this.drawFloatingBorders(e,t),s>0&&this.drawSelectedRanges(e,t,{top:0,bottom:s-1,maxY:M(v,s-1)+M(m,s-1)-.5}),o>0&&this.drawSelectedRanges(e,t,{top:d-o-1,bottom:d-1,minY:M(v,d-o)+.5,maxY:M(v,d-1)+M(m,d-1)-.5});for(var f=0;f<h.length;f+=1)for(var g=h[f],p=0;p<u.length;p+=1){var C=u[p];this.drawCellContent(e,t,g,C)}}}drawFloatingColumns(e,t){var{draggingRow:r,draggingColumn:i,metrics:a,theme:l}=t,{floatingLeftColumnCount:s,floatingRightColumnCount:o,floatingLeftWidth:u,floatingRightWidth:d,floatingColumns:h,gridX:v,maxX:m,columnCount:f,visibleRows:g,allColumnXs:p,allColumnWidths:C,width:S,height:b}=a;if(h.length!==0){l.floatingRowBackgroundColors&&(this.drawRowStripesForRows(e,t,g,l.floatingRowBackgroundColors,0,u),this.drawRowStripesForRows(e,t,g,l.floatingRowBackgroundColors,S-v-d,m)),r==null&&i==null&&this.drawFloatingMouseRowHover(e,t),e.save(),e.beginPath(),e.rect(0,0,u,b),e.clip(),this.drawGridLinesForItems(e,t,h,g,l.floatingGridColumnColor,l.floatingGridRowColor),e.restore(),this.drawCellBackgroundsForItems(e,t,h,g),this.drawFloatingBorders(e,t),s>0&&this.drawSelectedRanges(e,t,{left:0,maxX:M(p,s-1)+M(C,s-1)}),o>0&&this.drawSelectedRanges(e,t,{left:f-o,right:f-1,minX:M(p,f-o)+.5,maxX:M(p,f-1)+M(C,f-1)});for(var w=0;w<h.length;w+=1)for(var y=h[w],T=0;T<g.length;T+=1){var E=g[T];this.drawCellContent(e,t,y,E)}}}drawFloatingBorders(e,t){var{metrics:r,theme:i}=t,{floatingTopRowCount:a,floatingBottomRowCount:l,floatingLeftColumnCount:s,floatingRightColumnCount:o,rowCount:u,columnCount:d,allRowYs:h,allColumnXs:v,allRowHeights:m,allColumnWidths:f,maxX:g,maxY:p}=r,{floatingDividerOuterColor:C,floatingDividerInnerColor:S}=i;if(e.lineWidth=3,e.beginPath(),e.strokeStyle=C,a>0){var b=M(h,a-1)+M(m,a-1)+.5;e.moveTo(0,b),e.lineTo(g,b)}if(l>0){var w=M(h,u-l)-.5;e.moveTo(0,w),e.lineTo(g,w)}if(s>0){var y=M(v,s-1)+M(f,s-1)+.5;e.moveTo(y,0),e.lineTo(y,p)}if(o>0){var T=M(v,d-o)-.5;e.moveTo(T,0),e.lineTo(T,p)}if(e.stroke(),e.beginPath(),e.lineWidth=1,e.strokeStyle=S,a>0){var E=M(h,a-1)+M(m,a-1)+.5;e.moveTo(0,E),e.lineTo(g,E)}if(l>0){var P=M(h,u-l)-.5;e.moveTo(0,P),e.lineTo(g,P)}if(s>0){var O=M(v,s-1)+M(f,s-1)+.5;e.moveTo(O,0),e.lineTo(O,p)}if(o>0){var D=M(v,d-o)-.5;e.moveTo(D,0),e.lineTo(D,p)}e.stroke()}drawGridBackground(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;this.drawRowStripes(e,t),r&&(this.drawMouseColumnHover(e,t),this.drawMouseRowHover(e,t)),this.drawGridLines(e,t),this.drawCellBackgrounds(e,t);var{metrics:i}=t,{bottom:a,right:l,floatingBottomRowCount:s,floatingLeftColumnCount:o,floatingRightColumnCount:u,floatingTopRowCount:d,columnCount:h,rowCount:v,allRowHeights:m,allRowYs:f,allColumnXs:g,allColumnWidths:p,width:C,height:S}=i;this.drawSelectedRanges(e,t,{bottom:Math.min(a,v-s-1),right:Math.min(l,h-u-1),minX:o>0&&g.has(o+1)?M(g,o+1):-10,minY:d>0&&f.has(d+1)?M(f,d+1):-10,maxX:u>0&&g.has(h-u-1)?M(g,h-u-1)+M(p,h-u-1)-.5:C+10,maxY:s>0&&f.has(v-s-1)?M(f,v-s-1)+M(m,v-s-1)-.5:S+10})}drawRowStripes(e,t){var{metrics:r,theme:i}=t,{visibleRows:a}=r,{rowBackgroundColors:l}=i;l&&this.drawRowStripesForRows(e,t,a,l)}drawRowStripesForRows(e,t,r,i){for(var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,l=arguments.length>5&&arguments[5]!==void 0?arguments[5]:t.metrics.maxX,{theme:s,metrics:o,model:u}=t,{maxDepth:d,shadowBlur:h,shadowColor:v}=s,m=this.getCachedBackgroundColors(i,d),{allRowYs:f,allRowHeights:g}=o,p=new Map,C=[],S=[],b=(V,I)=>{var _=xe(u)?u.depthForRow(V):0,H=m[V%m.length],X=H[Math.min(_,H.length-1)];if(p.has(X)||p.set(X,[]),p.get(X).push(V),I!=null){var Q=xe(u)?u.depthForRow(I):0;Q<_?C.push(V):Q>_&&S.push(I)}},w=0;w<r.length;w+=1){var y=r[w],T=w>0?r[w-1]:void 0;b(y,T)}if(p.forEach((V,I)=>{e.fillStyle=I,e.beginPath();for(var _=0;_<V.length;_+=1){var H=V[_],X=M(f,H),Q=M(g,H);e.rect(a,X,l,Q)}e.fill()}),C.length>0){e.save();var E=this.getCachedColorWithAlpha(v,.15),P=this.getCachedColorWithAlpha(v,0),O=e.createLinearGradient(0,0,0,h);O.addColorStop(0,E),O.addColorStop(1,P),e.fillStyle=O;for(var D=0;D<C.length;D+=1){var N=C[D],F=M(f,N);e.translate(0,F),e.fillRect(a,0,l,h),e.translate(0,-F)}e.restore()}if(S.length>0){e.save();var A=this.getCachedColorWithAlpha(v,0),j=this.getCachedColorWithAlpha(v,.15),k=e.createLinearGradient(0,0,0,h);k.addColorStop(0,A),k.addColorStop(1,j),e.fillStyle=k;for(var B=0;B<S.length;B+=1){var G=S[B],W=M(f,G),z=M(g,G),q=W+z-h;e.translate(0,q),e.fillRect(a,0,l,h),e.translate(0,-q)}e.restore()}}drawMouseColumnHover(e,t){var{mouseX:r,mouseY:i,theme:a,metrics:l}=t;if(!(r==null||i==null)){var s=ee.getColumnAtX(r,l);if(!(s==null||a.columnHoverBackgroundColor==null)){var{allColumnWidths:o,allColumnXs:u,maxY:d}=l;if(!(i>d)){var h=M(u,s),v=M(o,s);e.fillStyle=a.columnHoverBackgroundColor,e.fillRect(h,0,v,d)}}}}drawMouseRowHover(e,t){var{mouseX:r,mouseY:i,theme:a,metrics:l}=t;if(!(r==null||i==null)){var{maxX:s}=l;if(!(r>s||a.rowHoverBackgroundColor==null)){var o=ee.getRowAtY(i,l);o!=null&&this.drawMouseRowHoverForRow(e,t,o)}}}drawFloatingMouseRowHover(e,t){var{mouseX:r,mouseY:i,theme:a,metrics:l}=t,{maxX:s,floatingTopRowCount:o,floatingBottomRowCount:u,rowCount:d,rowFooterWidth:h}=l;if(!(r==null||i==null||r>s+h||a.rowHoverBackgroundColor==null)){var v=ee.getRowAtY(i,l);v!=null&&(v<o||d-u<=v)&&this.drawMouseRowHoverForRow(e,t,v)}}drawMouseRowHoverForRow(e,t,r){var{metrics:i,selectedRanges:a,theme:l}=t,{allRowHeights:s,allRowYs:o,maxX:u}=i,d=M(o,r),h=M(s,r);l.rowHoverBackgroundColor!=null&&(e.fillStyle=l.rowHoverBackgroundColor);for(var v=0;v<a.length;v+=1){var{startRow:m,endRow:f}=a[v];if(m!=null&&f!=null&&m<=r&&f>=r){l.selectedRowHoverBackgroundColor!=null&&(e.fillStyle=l.selectedRowHoverBackgroundColor);break}}e.fillRect(0,d,u,h)}drawGridLines(e,t){var{metrics:r,theme:i}=t,{visibleColumns:a,visibleRows:l}=r;this.drawGridLinesForItems(e,t,a,l,i.gridColumnColor,i.gridRowColor)}drawGridLinesForItems(e,t,r,i,a,l){a==null&&l==null||(e.lineWidth=1,e.beginPath(),a!=null&&(e.strokeStyle=a,this.drawGridLinesForColumns(e,t,r)),l!=null&&(e.strokeStyle=l,this.drawGridLinesForRows(e,t,i)),e.stroke())}drawGridLinesForColumns(e,t,r){for(var{metrics:i}=t,{allColumnXs:a,maxY:l}=i,s=0;s<r.length;s+=1){var o=r[s],u=M(a,o)+.5;e.moveTo(u,0),e.lineTo(u,l)}}drawGridLinesForRows(e,t,r){for(var{metrics:i}=t,{allRowYs:a,maxX:l}=i,s=l,o=0;o<r.length;o+=1){var u=r[o],d=M(a,u)+.5;e.moveTo(.5,d),e.lineTo(s-.5,d)}}drawCellBackgrounds(e,t){var{metrics:r}=t,{visibleColumns:i,visibleRows:a}=r;this.drawCellBackgroundsForItems(e,t,i,a)}drawCellBackgroundsForItems(e,t,r,i){e.save();for(var a=0;a<r.length;a+=1)for(var l=r[a],s=0;s<i.length;s+=1){var o=i[s],u=s+1<i.length?i[s+1]:void 0;this.drawCellBackground(e,t,l,o,u)}e.restore()}drawCellBackground(e,t,r,i,a){var{metrics:l,model:s,theme:o}=t,{firstColumn:u,modelColumns:d,modelRows:h,allColumnXs:v,allColumnWidths:m,allRowYs:f,allRowHeights:g}=l,p=M(h,i),C=M(d,r),S=s.backgroundColorForCell(C,p,o),b=r===u,w=xe(s)&&s.hasExpandableRows;if(S!=null){var y=M(v,r)+1,T=M(f,i)+1,E=M(m,r)-1,P=M(g,i)-1;e.fillStyle=S,e.fillRect(y,T,E,P)}b&&w&&this.drawCellRowTreeDepthLines(e,t,i,a)}drawCellContents(e,t){for(var{metrics:r}=t,{visibleColumns:i}=r,a=0;a<i.length;a+=1){var l=i[a];this.drawColumnCellContents(e,t,l)}}drawColumnCellContents(e,t,r){var{metrics:i}=t,{allColumnXs:a,allColumnWidths:l,visibleRows:s,height:o}=i,u=M(a,r),d=M(l,r);e.save(),e.beginPath(),e.rect(u,0,d,o),e.clip();for(var h=0;h<s.length;h+=1){var v=s[h];this.drawCellContent(e,t,r,v)}e.restore()}drawCellContent(e,t,r,i){var{metrics:a,model:l}=t,{modelColumns:s,modelRows:o}=a,u=M(o,i),d=M(s,r),h=l.renderTypeForCell(d,u),v=this.getCellRenderer(h);v.drawCellContent(e,t,r,i)}getCellRenderer(e){switch(e){case"dataBar":return this.dataBarCellRenderer;default:return this.textCellRenderer}}drawCellRowTreeDepthLines(e,t,r,i){var{metrics:a,model:l,theme:s}=t;if(xe(l)){var o=l.depthForRow(r);if(o!==0){var{firstColumn:u,allColumnXs:d,allRowYs:h,allRowHeights:v}=a,{treeDepthIndent:m,treeHorizontalPadding:f,treeLineColor:g}=s,p=M(d,u),C=M(h,r),S=M(v,r),b=i!==void 0?l.depthForRow(i):0,w=o>b?o-b:0;if(e.strokeStyle=g,e.lineWidth=1,o-w>0){e.beginPath();for(var y=0;y<o-w;y+=1){var T=p+y*m+m*.5+f+.5;e.moveTo(T,C),e.lineTo(T,C+S)}e.stroke()}if(w>0){e.beginPath();for(var E=o-w;E<o;E+=1){var P=p+E*m+m*.5+f+.5;e.moveTo(P,C),e.lineTo(P,C+Math.ceil(S/2)),e.moveTo(P-.5,C+Math.ceil(S/2)+.5),e.lineTo(P+m-.5,C+Math.ceil(S/2)+.5)}e.stroke()}}}}drawHeaders(e,t){var{theme:r}=t;e.font=r.headerFont,this.drawColumnHeaders(e,t),this.drawRowHeaders(e,t)}drawFooters(e,t){var{theme:r}=t;e.font=r.headerFont,this.drawRowFooters(e,t)}drawColumnHeaders(e,t){var{mouseX:r,mouseY:i,theme:a,metrics:l,draggingColumnSeparator:s,isDragging:o,model:u}=t,{columnHeaderHeight:d,floatingColumns:h,gridX:v,width:m,visibleColumns:f,allColumnWidths:g,allColumnXs:p,floatingLeftColumnCount:C,floatingLeftWidth:S,floatingRightWidth:b,modelColumns:w,columnHeaderMaxDepth:y}=l;if(!(d<=0)){var{headerHiddenSeparatorSize:T,headerHiddenSeparatorHoverColor:E,headerSeparatorColor:P,headerSeparatorHoverColor:O}=a,D=d*.5,N=d*(y-1)+d*.5-D*.5,F=C>0;if(e.save(),this.drawColumnHeadersForRange(e,t,[f[0],f[f.length-1]],{minX:v+S,maxX:m-b}),F&&this.drawColumnHeadersForRange(e,t,[h[0],h[h.length-1]],{minX:v,maxX:v+S}),P){e.strokeStyle=P;var A=[...g.entries()].filter(Ze=>{var[Je,Ye]=Ze;return Ye===0}).map(Ze=>{var[Je]=Ze;return Je});e.beginPath(),e.fillStyle=P;for(var j=0;j<A.length;j+=1){var k=A[j],B=M(p,k),G=M(g,k),W=v+B+G+.5-T*.5;e.rect(W,N,T,D)}e.fill()}if(O){var{index:z,depth:q}=s??{};if(z==null&&r!=null&&i!=null){var V=ph.getColumnSeparator(ee.getGridPointFromXY(r,i,l),l,u,a);z=V?.index,q=V?.depth}var I;if(z==null)I=!1;else{var _=w.get(z),H=w.get(z+1);_==null||H==null?I=!1:I=u.textForColumnHeader(_,q)!==u.textForColumnHeader(H,q)}if(I&&z!=null&&q!=null&&(!o||s!=null)){e.strokeStyle=O;var X=M(p,z),Q=M(g,z),ne=v+X+Q+.5,se=f.indexOf(z),ie=se<f.length-1?f[se+1]:null,de=ie!=null?g.get(ie):null,he=Q===0,Le=de!=null&&de===0;he?(e.strokeStyle=E,e.fillStyle=E,e.fillRect(ne,N,T*.5,D)):Le&&(e.fillStyle=O,e.fillRect(ne-T*.5,N,T*.5,D)),e.beginPath(),e.moveTo(ne,(y-q-1)*d),e.lineTo(ne,(y-q)*d-1),e.stroke()}}e.restore()}}drawColumnHeadersForRange(e,t,r,i){var{model:a}=t,{columnHeaderMaxDepth:l}=a;if(l!==0)for(var s=0;s<=l;s+=1)this.drawColumnHeadersAtDepth(e,t,r,i,s)}drawColumnHeadersAtDepth(e,t,r,i,a){var{metrics:l,model:s,theme:o}=t,{modelColumns:u,allColumnXs:d,gridX:h,userColumnWidths:v,allColumnWidths:m,movedColumns:f}=l,{columnHeaderHeight:g,columnWidth:p}=o,{columnHeaderMaxDepth:C}=s,{minX:S,maxX:b}=i,w=b-S;if(C!==0){var y=r[0],T=r[1];if(e.save(),e.translate(0,(C-a-1)*g),a===0){this.drawColumnHeader(e,t,"",S,b);for(var E=y;E<=T;E+=1)this.drawColumnHeaderAtIndex(e,t,E,i)}if(a>0)for(var P=y;P<=T;){var{columnCount:O}=l,D=M(u,P),N=s.textForColumnHeader(D,a),F=s.colorForColumnHeader(D,a),A=M(d,P)+h,j=A+M(m,P);if(N!=null){for(var k=P-1;k>=0&&(j-A<w||A>S);){var B,G,W,z=(B=u.get(k))!==null&&B!==void 0?B:ee.getModelIndex(k,f);if(z==null||s.textForColumnHeader(z,a)!==N)break;var q=(G=(W=v.get(z))!==null&&W!==void 0?W:m.get(k))!==null&&G!==void 0?G:p;A-=q,k-=1}for(var V=P+1;V<O&&(j-A<w||j<b);){var I,_,H,X=(I=u.get(V))!==null&&I!==void 0?I:ee.getModelIndex(V,f);if(s.textForColumnHeader(X,a)!==N)break;var Q=(_=(H=v.get(X))!==null&&H!==void 0?H:m.get(V))!==null&&_!==void 0?_:p;j+=Q,V+=1}P=V-1;var ne=j-A>=w,se=A;ne&&(j<b?se=j-w:A<S&&(se=S)),this.drawColumnHeader(e,t,N,se,Math.min(j-A,w),{backgroundColor:F??void 0},i)}P+=1}e.restore()}}drawColumnHeaderAtIndex(e,t,r,i){var a,{metrics:l,model:s}=t,{modelColumns:o,allColumnWidths:u,allColumnXs:d,gridX:h}=l,v=M(u,r),m=M(d,r)+h,f=M(o,r),g=s.textForColumnHeader(f);g!=null&&this.drawColumnHeader(e,t,g,m,v,{backgroundColor:(a=s.colorForColumnHeader(f))!==null&&a!==void 0?a:void 0},i)}drawColumnHeader(e,t,r,i,a,l,s){var o;if(!(a<=0)){var{metrics:u,theme:d}=t,{headerHorizontalPadding:h,columnHeaderHeight:v,headerBackgroundColor:m,headerColor:f,headerSeparatorColor:g,black:p,white:C}=d,{fontWidths:S,width:b}=u,w=(o=S.get(e.font))!==null&&o!==void 0?o:En,y=a-h*2,T=y/w,{backgroundColor:E=m,separatorColor:P=g}=l??{},{textColor:O=f}=l??{};try{var D=this.getCachedColorIsDark(E),N=this.getCachedColorIsDark(O);D&&N?O=C:!D&&!N&&(O=p)}catch{}var{minX:F=0,maxX:A=b}=s??{};e.save(),e.rect(F,0,A-F,v),e.clip(),E!=null&&(e.fillStyle=E,e.fillRect(i,0,a,v)),P!=null&&(e.strokeStyle=P,e.beginPath(),i>0&&(e.moveTo(i+.5,0),e.lineTo(i+.5,v)),e.moveTo(i+a+.5,0),e.lineTo(i+a+.5,v),e.moveTo(i,v-.5),e.lineTo(i+a,v-.5),e.stroke()),e.beginPath(),e.rect(i,0,a,v),e.clip(),e.fillStyle=O;var j=r;T<=0?j="":j.length>T&&(j="".concat(j.substring(0,T-1),"…"));var k=j.length*w,B=i+a*.5,G=v*.5;F+=h,A-=h;var W=i+h,z=Ae(W,F,A),q=i+a-h,V=Ae(q,F,A),I=V-z,_=B-k*.5<F,H=B+k*.5>A;_?k<I?B=F+k*.5:B=q-k*.5:H&&(k<I?B=A-k*.5:B=W+k*.5),e.textAlign="center",e.fillText(j,B,G),e.restore()}}drawRowHeaders(e,t){var{mouseX:r,mouseY:i,metrics:a,theme:l,draggingRowSeparator:s}=t,{gridY:o,rowHeaderWidth:u,height:d,visibleRows:h,allRowHeights:v,allRowYs:m}=a;if(!(u<=0)){var{headerBackgroundColor:f,headerColor:g,headerHiddenSeparatorSize:p,headerHiddenSeparatorHoverColor:C,headerSeparatorColor:S,headerSeparatorHoverColor:b}=l,w=u*.5,y=u*.5-w*.5;if(e.save(),e.beginPath(),e.fillStyle=f,e.fillRect(0,0,u,d),S){e.strokeStyle=S,e.beginPath(),e.moveTo(0,o+.5),e.lineTo(u,o+.5);for(var T=[],E=!1,P=0;P<h.length;P+=1){var O=h[P],D=M(m,O),N=M(v,O);if(N>0){var F=o+D+N+.5;e.moveTo(0,F),e.lineTo(u,F),E=!1}else E||(E=!0,T.push(O))}e.moveTo(u-.5,0),e.lineTo(u-.5,d),e.stroke(),e.beginPath(),e.fillStyle=S;for(var A=0;A<T.length;A+=1){var j=T[A],k=M(m,j),B=M(v,j),G=o+k+B+.5-p*.5;e.rect(y,G,w,p)}e.fill()}if(b){var{index:W=null}=s??{};if(W==null&&r!=null&&i!=null&&(W=ee.getRowSeparatorIndex(r,i,a,l)),W!=null){e.strokeStyle=b;var z=M(m,W),q=M(v,W),V=o+z+q+.5,I=h.indexOf(W),_=I<h.length-1?h[I+1]:null,H=_!=null?v.get(_):null,X=q===0,Q=H!=null&&H===0;X?(e.strokeStyle=C,e.fillStyle=C,e.fillRect(y,V,w,p*.5)):Q&&(e.fillStyle=b,e.fillRect(y,V-p*.5,w,p*.5)),e.beginPath(),e.moveTo(.5,V),e.lineTo(u+.5,V),e.stroke()}}e.beginPath(),e.rect(0,o,u,d),e.clip(),e.fillStyle=g,e.textAlign="right";for(var ne=0;ne<h.length;ne+=1){var se=h[ne],ie=M(v,se),de=M(m,se)+o;this.drawRowHeader(e,t,se,de,ie)}e.restore()}}drawRowHeader(e,t,r,i,a){if(!(a<=0)){var{metrics:l,model:s,theme:o}=t,{modelRows:u,rowHeaderWidth:d}=l,h=M(u,r),v=d-o.cellHorizontalPadding,m=i+a*.5;e.fillText(s.textForRowHeader(h),v,m)}}drawRowFooters(e,t){var{mouseX:r,mouseY:i,metrics:a,model:l,theme:s,draggingRowSeparator:o}=t,{gridY:u,gridX:d,maxX:h,modelRows:v,rowFooterWidth:m,height:f,verticalBarWidth:g,visibleRows:p,allRowHeights:C,allRowYs:S,width:b}=a;if(!(m<=0)){var{cellHorizontalPadding:w,headerBackgroundColor:y,headerColor:T,headerHiddenSeparatorSize:E,headerHiddenSeparatorHoverColor:P,headerSeparatorColor:O,headerSeparatorHoverColor:D}=s,N=m*.5,F=m*.5-N*.5,A=Math.min(d+h,b-m-g);if(e.save(),e.beginPath(),e.fillStyle=y,e.fillRect(A,u,m,f),O){e.strokeStyle=O,e.beginPath(),e.moveTo(A,u+.5),e.lineTo(m,u+.5);for(var j=[],k=!1,B=0;B<p.length;B+=1){var G=p[B],W=M(S,G),z=M(C,G);if(z>0){var q=u+W+z+.5;e.moveTo(A+.5,q),e.lineTo(A+m-.5,q),k=!1}else k||(k=!0,j.push(G))}e.moveTo(A+.5,u),e.lineTo(A+.5,f),e.stroke(),e.beginPath(),e.fillStyle=O;for(var V=0;V<j.length;V+=1){var I=j[V],_=M(S,I),H=M(C,I),X=u+_+H+.5-E*.5;e.rect(A+F,X,N,E)}e.fill()}if(D){var{index:Q=null}=o??{};if(Q==null&&r!=null&&i!=null&&(Q=ee.getRowSeparatorIndex(r,i,a,s)),Q!=null){e.strokeStyle=D;var ne=M(S,Q),se=M(C,Q),ie=u+ne+se+.5,de=p.indexOf(Q),he=de<p.length-1?p[de+1]:null,Le=he!=null?C.get(he):null,Ze=se===0,Je=Le!=null&&Le===0;Ze?(e.strokeStyle=P,e.fillStyle=P,e.fillRect(F,ie,N,E*.5)):Je&&(e.fillStyle=D,e.fillRect(F,ie-E*.5,N,E*.5)),e.beginPath(),e.moveTo(A+.5,ie),e.lineTo(A+m+.5,ie),e.stroke()}}e.beginPath(),e.rect(A,u,m,f),e.clip(),e.fillStyle=T,e.textAlign="left";for(var Ye=A+w,Ue=0;Ue<p.length;Ue+=1){var et=p[Ue],De=M(C,et);if(De>0){var it=M(S,et)+u,mt=M(v,et),$t=it+De*.5;e.fillText(l.textForRowFooter(mt),Ye,$t)}}e.restore()}}drawSelectedRanges(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},{cursorColumn:i,cursorRow:a,draggingRow:l,draggingColumn:s,editingCell:o,metrics:u,model:d,selectedRanges:h,theme:v}=t,{allColumnWidths:m,allColumnXs:f,allRowHeights:g,allRowYs:p,width:C,height:S}=u,{left:b=u.left,top:w=u.top,right:y=u.right,bottom:T=u.bottom,minY:E=-10,maxY:P=S+10,minX:O=-10,maxX:D=C+10}=r;if(h.length!==0){var N=He(d)&&d.isEditable&&o==null&&l==null&&s==null&&i!=null&&a!=null&&f.has(i)&&p.has(a);if(N){var F=M(f,i),A=M(p,a),j=M(m,i),k=M(g,a);e.save(),e.beginPath(),e.rect(0,0,C,S),e.rect(F,A,j,k),e.clip("evenodd")}e.beginPath();for(var B=0;B<h.length;B+=1){var G=h[B],W=G.startColumn!==null?G.startColumn:b,z=G.startRow!==null?G.startRow:w,q=G.endColumn!==null?G.endColumn:y,V=G.endRow!==null?G.endRow:T;if(V>=w&&T>=z&&q>=b&&y>=W){var I=W>=b&&f.has(W)?Math.round(M(f,W))+.5:O,_=z>=w&&p.has(z)?Math.max(Math.round(M(p,z))+.5,.5):E,H=q<=y&&f.has(q)?Math.round(M(f,q)+M(m,q))-.5:D,X=V<=T&&p.has(V)?Math.round(M(p,V)+M(g,V))-.5:P;e.rect(I,_,H-I,X-_)}e.fillStyle=v.selectionColor,e.fill(),e.save(),e.clip(),e.strokeStyle=v.selectionOutlineCasingColor,e.lineWidth=3,e.stroke(),e.restore(),e.strokeStyle=v.selectionOutlineColor,e.lineWidth=1,e.stroke()}N&&i!=null&&a!=null&&(e.restore(),this.drawActiveCell(e,t,i,a))}}drawActiveCell(e,t,r,i){var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:Er.ACTIVE_CELL_BORDER_WIDTH,{metrics:l,theme:s}=t,{allColumnWidths:o,allColumnXs:u,allRowHeights:d,allRowYs:h}=l,v=M(u,r),m=M(h,i),f=M(o,r),g=M(d,i),p=v-a*.5,C=m-a*.5,S=f+a,b=g+a;p<=0&&(S+=p-1,p=1),C<=0&&(b+=C-1,C=1);var{lineWidth:w}=e;e.beginPath(),e.lineWidth=a,e.strokeStyle=s.selectionOutlineColor,this.drawRoundedRect(e,p,C,S,b),e.stroke(),e.lineWidth=w}drawRoundedRect(e,t,r,i,a){var l=arguments.length>5&&arguments[5]!==void 0?arguments[5]:Er.DEFAULT_EDGE_RADIUS;e.beginPath(),e.moveTo(t+l,r),e.lineTo(t+i-l,r),e.quadraticCurveTo(t+i,r,t+i,r+l),e.lineTo(t+i,r+a-l),e.quadraticCurveTo(t+i,r+a,t+i-l,r+a),e.lineTo(t+l,r+a),e.quadraticCurveTo(t,r+a,t,r+a-l),e.lineTo(t,r+l),e.quadraticCurveTo(t,r,t+l,r),e.closePath()}drawDraggingColumn(e,t){var r,{draggingColumn:i,metrics:a,mouseX:l,theme:s,model:o}=t;if(!(i==null||l==null)){var{range:u,depth:d}=i,{gridX:h,gridY:v,allColumnXs:m,allColumnWidths:f,height:g,width:p,columnHeaderMaxDepth:C,columnHeaderHeight:S,movedColumns:b,modelColumns:w,floatingLeftWidth:y}=a,T=(r=w.get(u[0]))!==null&&r!==void 0?r:ee.getModelIndex(u[0],b),E=o.getColumnHeaderGroup(T,d);if(!(d>0&&!E)){var[P,O]=u,D=M(m,P),N=M(m,O)+M(f,O),F=N-D,A=i.left,{backgroundColor:j,font:k,headerFont:B,reorderOffset:G,shadowBlur:W,shadowColor:z}=s,q=(C-d-1)*S;e.save(),e.translate(h,0),e.save(),e.beginPath(),e.rect(y,0,p,g),e.clip(),e.fillStyle=j,e.fillRect(D,q,F,g),e.restore(),e.translate(0,G),e.save(),e.shadowColor=z,e.shadowBlur=W,e.fillStyle=j,e.fillRect(i.left,q+G,i.width,g),e.restore(),e.beginPath(),e.rect(i.left,q,i.width+1,g),e.clip(),e.translate(A-D,0),e.font=B;for(var V=[],I=i.range[0];I<=i.range[1];I+=1)V.push(I);this.drawColumnHeaders(e,t),this.drawColumnHeadersForRange(e,t,[V[0],V[V.length-1]],{minX:D,maxX:p}),e.translate(0,v),e.font=k,this.drawGridBackground(e,t);for(var _=P;_<=O;_+=1)this.drawColumnCellContents(e,t,_);e.restore()}}}drawDraggingRow(e,t){var{draggingRow:r,draggingRowOffset:i,metrics:a,mouseY:l,theme:s}=t;if(!(r==null||l==null)){var{gridX:o,gridY:u,allRowYs:d,allRowHeights:h,width:v}=a,m=M(d,r),f=M(h,r)+1,{backgroundColor:g,font:p,headerFont:C,reorderOffset:S,shadowBlur:b,shadowColor:w}=s;e.save(),e.translate(0,u),e.fillStyle=g,e.fillRect(0,m,v,f),e.translate(o+S,l-m-u-(i??0)),e.save(),e.shadowColor=w,e.shadowBlur=b,e.fillStyle=g,e.fillRect(-o,m,v,f),e.restore(),e.beginPath(),e.rect(-o,m,v,f),e.clip(),e.font=p,this.drawGridBackground(e,t),this.drawCellContents(e,t),e.translate(-o,-u),e.font=C,this.drawRowHeaders(e,t),e.restore()}}drawScrollBars(e,t){var{isDraggingHorizontalScrollBar:r,isDraggingVerticalScrollBar:i,isDragging:a,metrics:l,mouseX:s,mouseY:o,theme:u}=t;if(!(u.scrollBarSize<=0)){var{width:d,height:h,handleHeight:v,handleWidth:m,scrollX:f,scrollY:g,hasHorizontalBar:p,hasVerticalBar:C,barWidth:S,barHeight:b,barLeft:w,barTop:y}=l,{scrollBarBackgroundColor:T,scrollBarHoverBackgroundColor:E,scrollBarCasingColor:P,scrollBarCornerColor:O,scrollBarColor:D,scrollBarHoverColor:N,scrollBarActiveColor:F,scrollBarSize:A,scrollBarHoverSize:j,scrollBarCasingWidth:k,scrollBarSelectionTick:B,scrollBarSelectionTickColor:G,scrollBarActiveSelectionTickColor:W,autoSelectRow:z,autoSelectColumn:q}=u,V=s!=null&&o!=null&&s<=d&&o<=h,I=i||C&&!r&&!a&&s!=null&&o!=null&&s>=d-j&&o>=y&&V,_=r||p&&!i&&!a&&!I&&s!=null&&o!=null&&o>=h-j&&s>=w&&V,H=_?j:A,X=I?j:A;if(e.translate(w,y),p&&C&&(e.fillStyle=P,e.fillRect(d-w-A,h-y-A,A,A),e.fillStyle=O,e.fillRect(d-w-A+k,h-y-A+k,A-k,A-k)),p){var Q=f,ne=h-y-H;if(e.fillStyle=P,e.fillRect(0,ne,S,H-k),e.fillStyle=_?E:T,e.fillRect(0,ne+k,S,H-k),r?e.fillStyle=F:_?e.fillStyle=N:e.fillStyle=D,e.fillRect(Q,ne+k,m,H-k),!z&&B&&G!=null&&W!=null){e.fillStyle=G;for(var{selectedRanges:se,cursorColumn:ie}=t,{lastLeft:de,columnCount:he}=l,Le=[...se].filter(_e=>_e.startColumn!=null&&_e.endColumn!=null),Ze=Le.map(_e=>[_e.startColumn,_e.endColumn]).sort(ee.compareRanges),Je=ee.mergeSortedRanges(Ze),Ye=_e=>_e<=de?_e/de*(S-m):S-m+(_e-de)/(he-de)*m,Ue=0;Ue<Je.length;Ue+=1){var et=Je[Ue],De=et[0],it=et[1];if(De!=null&&it!=null&&(De!==ie||it!==ie)){var mt=Ye(De),$t=Math.max(1,Math.round(Ye(it+1)-mt)),Pt=H-k;e.fillRect(mt,ne+k+Math.round(Pt/3),$t,Math.round(Pt/3))}}if(ie!=null){var Rr=Ye(ie),tr=2,_t=H-k;e.fillStyle=W,e.fillRect(Rr,ne+k,tr,_t)}}}if(C){var ot=d-w-X,rr=g;if(e.fillStyle=P,e.fillRect(ot,0,X-k,b),e.fillStyle=I?E:T,e.fillRect(ot+k,0,X-k,b),i?e.fillStyle=F:I?e.fillStyle=N:e.fillStyle=D,e.fillRect(ot+k,rr,X-k,v),!q&&B&&G!=null&&W!=null){var{selectedRanges:Wt,cursorRow:pt}=t,{lastTop:Ht,rowCount:Rt}=l,Ct=_e=>_e<=Ht?_e/Ht*(b-v):b-v+(_e-Ht)/(Rt-Ht)*v;e.fillStyle=G;for(var zt=[...Wt].filter(_e=>_e.startRow!=null&&_e.endRow!=null),Dt=zt.map(_e=>[_e.startRow,_e.endRow]).sort(ee.compareRanges),Hr=ee.mergeSortedRanges(Dt),Dr=0;Dr<Hr.length;Dr+=1){var gr=Hr[Dr],Kt=gr[0],pr=gr[1];if(Kt!=null&&pr!=null&&(Kt!==pt||pr!==pt)){var Ur=Ct(Kt),xn=X-k,ni=Math.max(1,Math.round(Ct(pr+1)-Ur));e.fillRect(ot+k+Math.round(xn/3),Ur,Math.round(xn/3),ni)}}if(pt!=null){var Ln=Math.round(Ct(pt)),kn=X-k,jn=2;e.fillStyle=W,e.fillRect(ot+k,Ln,kn,jn)}}}e.translate(-w,-y)}}}pn(Er,"DEFAULT_EDGE_RADIUS",2);pn(Er,"ACTIVE_CELL_BORDER_WIDTH",2);const wh=Er;function vi(n,e,t){return e=kf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function kf(n){var e=jf(n,"string");return typeof e=="symbol"?e:String(e)}function jf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Lo=100;class _f extends Qe{constructor(){super(...arguments),vi(this,"startPoint",void 0),vi(this,"hasExtendedFloating",!1),vi(this,"timer",void 0),vi(this,"lastTriggerTime",void 0),vi(this,"dragBounds",void 0)}onDown(e,t,r){var{x:i,y:a,column:l,row:s}=e,{metrics:o}=t;if(!o)throw new Error("metrics not set");var{gridX:u,gridY:d,maxX:h,maxY:v}=o,m=i-u,f=a-d;if(m<0||f<0||l==null&&m>h||s==null&&f>v)return!1;var g=ee.isModifierKeyDown(r),p=r.shiftKey;g||(p?t.trimSelectedRanges():t.clearSelectedRanges());var C=t.getTheme(),{autoSelectRow:S,autoSelectColumn:b}=C;return(l!==null||!b)&&(s!==null||!S)&&(t.focus(),t.moveCursorToPosition(l,s,p,!1,p&&g)),this.startPoint=e,this.hasExtendedFloating=!1,this.dragBounds=ee.getScrollDragBounds(o,s,l),!0}onDrag(e,t){if(this.startPoint===void 0)return!1;this.stopTimer();var{row:r,column:i}=this.startPoint,{x:a,y:l}=e,{row:s,column:o}=e,{metrics:u}=t;if(!u)throw new Error("metrics not set");var{left:d,lastLeft:h,top:v,lastTop:m,columnWidth:f,rowHeight:g}=u,p=ee.getScrollDragBounds(u,r,i),C=0,S=0;if(d<h&&(a<p.x1?C=a-p.x1:a>p.x2&&(C=a-p.x2)),v<m&&(l<p.y1?S=l-p.y1:l>p.y2&&(S=l-p.y2)),C!==0||S!==0)this.startTimer(t,e,C>0?Math.ceil(C/f):Math.floor(C/f),S>0?Math.ceil(S/g):Math.floor(S/g));else if(s!=null&&o!=null){var{floatingTopRowCount:b,floatingBottomRowCount:w,floatingLeftColumnCount:y,floatingRightColumnCount:T,columnCount:E,rowCount:P,bottom:O,right:D,topVisible:N,bottomVisible:F,leftVisible:A,rightVisible:j}=u;this.hasExtendedFloating||(r!==null&&r<b&&s>=b?(s=b,this.hasExtendedFloating=!0):r!==null&&r>=P-w&&s<P-w&&(s=P-w-1,this.hasExtendedFloating=!0),i!==null&&i<y&&o>=y?(o=y,this.hasExtendedFloating=!0):i!==null&&i>=E-T&&o<E-T&&(o=E-T-1,this.hasExtendedFloating=!0)),r!==null&&!ee.isFloatingRow(r,u)&&ee.isFloatingRow(s,u)&&(r>s&&s<v?s=N-1:r<s&&s>O&&(s=F+1)),i!==null&&!ee.isFloatingColumn(i,u)&&ee.isFloatingColumn(o,u)&&(i>o&&o<d?o=A-1:i<o&&o>D&&(o=j+1)),t.moveCursorToPosition(o,s,!0,!0)}return!0}onUp(e,t){return this.startPoint!==void 0&&(this.startPoint=void 0,this.dragBounds=void 0,this.stopTimer(),t.commitSelection()),!1}moveSelection(e,t,r,i){var{row:a,column:l}=t,{metrics:s}=e;if(!s)throw new Error("metrics not set");var{selectionEndRow:o,selectionEndColumn:u}=e.state;if(o==null||u==null)throw new Error("selection not set");var{rowCount:d,columnCount:h}=s,v=r<0&&l!=null?l:0,m=r>0&&l!=null?l:h-1,f=i<0&&a!=null?a:0,g=i>0&&a!=null?a:d-1;e.moveCursorToPosition(Math.min(Math.max(v,u+r),m),Math.min(Math.max(f,o+i),g),!0),this.lastTriggerTime=Date.now()}startTimer(e,t,r,i){this.stopTimer();var a=this.lastTriggerTime!=null?Lo-Math.min(Lo,Date.now()-this.lastTriggerTime):0;this.timer=setTimeout(()=>{this.moveSelection(e,t,r,i),this.startTimer(e,t,r,i)},a)}stopTimer(){this.timer!==void 0&&(clearTimeout(this.timer),this.timer=void 0)}}const Hf=_f;function ko(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 Ft(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ko(Object(t),!0).forEach(function(r){tn(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ko(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function tn(n,e,t){return e=Uf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Uf(n){var e=Vf(n,"string");return typeof e=="symbol"?e:String(e)}function Vf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var jo=5,Bf=1e3/60,Ji=10;function Wr(n,e,t,r){var i,{modelColumns:a,movedColumns:l,allColumnXs:s,columnCount:o,allColumnWidths:u,userColumnWidths:d,calculatedColumnWidths:h,floatingLeftWidth:v,maxX:m}=t;if(e==null||n==null||n>o||n<0)return null;var f=(i=a.get(n))!==null&&i!==void 0?i:ee.getModelIndex(n,l),g=r.getColumnHeaderGroup(f,e),p=g!=null,C,S,b;if(g!=null){var w,y,T,[E,P]=g.getVisibleRange(l);C=(w=s.get(E))!==null&&w!==void 0?w:v,S=((y=s.get(P))!==null&&y!==void 0?y:m)+((T=u.get(P))!==null&&T!==void 0?T:0),b=[E,P]}else{var O,D,N,F=s.get(n);if(F==null)return null;C=F,S=C+((O=(D=(N=u.get(n))!==null&&N!==void 0?N:d.get(f))!==null&&D!==void 0?D:h.get(f))!==null&&O!==void 0?O:0),b=[n,n]}return{visibleIndex:n,modelIndex:f,left:C,right:S,width:S-C,isColumnGroup:p,range:b,depth:e}}class Gf extends Qe{constructor(){super(...arguments),tn(this,"cursor",null),tn(this,"draggingOffset",void 0),tn(this,"initialOffset",void 0),tn(this,"initialGridPoint",void 0),tn(this,"scrollingInterval",void 0),tn(this,"scrollingDirection",void 0),tn(this,"draggingColumn",null)}setScrollInterval(e,t){this.scrollingInterval!=null&&t===this.scrollingDirection||(this.scrollingDirection=t,this.scrollingInterval=window.setInterval(()=>{var{metrics:r}=e;if(r){var{left:i,lastLeft:a,leftOffset:l,userColumnWidths:s,calculatedColumnWidths:o,movedColumns:u,allColumnWidths:d}=r,h=i,v=l;if(t==="left")for(v-=Ji;v<0;){var m;h-=1;var f=ee.getModelIndex(i-1,u),g=(m=s.get(f))!==null&&m!==void 0?m:o.get(f);g===void 0?v=0:v+=g,h<0&&(v=0,h=0)}else{v+=Ji;for(var p=d.get(i);p!==void 0&&v>p;){var C;h+=1,v-=p;var S=ee.getModelIndex(i+1,u);p=(C=s.get(S))!==null&&C!==void 0?C:o.get(S),h>a&&(v=0,h=a)}}var{mouseX:b,mouseY:w}=e.state;r==null||b==null||w==null||(this.moveDraggingColumn(b,e,t==="left"?-Ji:Ji),e.setState({left:h,leftOffset:v}),(t==="left"&&h===0&&l===0||t==="right"&&h===a)&&this.clearScrollInterval())}},Bf))}clearScrollInterval(){this.scrollingDirection=void 0,window.clearInterval(this.scrollingInterval),this.scrollingInterval=void 0}onLeave(){return this.clearScrollInterval(),!1}onDown(e,t){var{model:r}=t.props,{x:i,column:a,columnHeaderDepth:l}=e,{metrics:s}=t;if(!s)throw new Error("Metrics not set");var o=Wr(a,l,s,r);if(a==null||o==null||l==null||l>0&&!o.isColumnGroup)return!1;var{rowHeaderWidth:u}=s;return this.initialGridPoint=e,this.draggingColumn=null,this.cursor=null,o.modelIndex!=null&&l!=null&&r.isColumnMovable(o.modelIndex,l)&&(this.draggingOffset=i-o.left-u,this.initialOffset=this.draggingOffset),!1}onDrag(e,t,r){if(this.draggingOffset===void 0||this.initialGridPoint===void 0||this.initialOffset===void 0)return!1;var{x:i,y:a}=e,{columnHeaderDepth:l}=this.initialGridPoint,{model:s}=t.props,{draggingColumn:o}=this,{metrics:u}=t;if(!u)throw new Error("Metrics not set");if(!o&&Math.abs(this.initialGridPoint.x-i)<jo&&Math.abs(this.initialGridPoint.y-a)<jo)return!1;if(o==null){var d=Wr(this.initialGridPoint.column,l,u,s);if(!d||l==null||!s.isColumnMovable(d.modelIndex)||l>0&&!d.isColumnGroup||d.range[0]==null)return!1;o={range:d.range,depth:l,left:d.left,width:d.width};var h=Wr(o.range[0],0,u,s),v=Wr(o.range[1],0,u,s);if(!h||!v)return!1;this.draggingColumn=o,t.setState({draggingColumn:o,isDragging:!0})}return this.cursor="move",this.moveDraggingColumn(e.x,t,r.movementX),!0}moveDraggingColumn(e,t,r){var i;if(!(this.draggingOffset===void 0||this.initialGridPoint===void 0||this.initialOffset===void 0||this.draggingColumn==null||r===0)){if(this.initialOffset!==this.draggingOffset){this.draggingOffset<this.initialOffset&&this.initialOffset<this.draggingOffset+r||this.draggingOffset>this.initialOffset&&this.initialOffset>this.draggingOffset+r?this.draggingOffset=this.initialOffset:this.draggingOffset+=r,this.draggingColumn=Ft(Ft({},this.draggingColumn),{},{left:e-this.draggingOffset}),t.setState({draggingColumn:this.draggingColumn});return}var{depth:a}=this.draggingColumn,{model:l}=t.props,{movedColumns:s}=t.state,{metrics:o}=t;if(!o)throw new Error("Metrics not set");var{floatingLeftWidth:u,width:d,columnHeaderMaxDepth:h,allColumnXs:v}=o,m=r<0,f=Wr(this.draggingColumn.range[0],a,o,l);if(f){var g=e-this.draggingOffset,p=g+f.width;this.draggingColumn=Ft(Ft({},this.draggingColumn),{},{left:g}),t.setState({draggingColumn:this.draggingColumn});var C=Wr(ee.getColumnAtX(Ae(m?g:p,u,d),o,!0),a,o,l),S=l.getColumnHeaderParentGroup(f.modelIndex,f.depth);if(C){if(S!==void 0){var b=S.getVisibleRange(s);if(C.visibleIndex<b[0]){var w,y=this.moveColumn(f,b[0],s);this.draggingOffset=e-((w=v.get(b[0]))!==null&&w!==void 0?w:0),this.draggingColumn=Ft(Ft({},this.draggingColumn),{},{left:e-this.draggingOffset}),this.clearScrollInterval(),t.setState({draggingColumn:this.draggingColumn,movedColumns:y});return}if(C.visibleIndex>b[1]){var T,E=this.moveColumn(f,b[1]-(f.range[1]-f.range[0]),s),{right:P=0}=(T=Wr(b[1],0,o,l))!==null&&T!==void 0?T:{};this.draggingOffset=e-(P-f.width),this.draggingColumn=Ft(Ft({},this.draggingColumn),{},{left:e-this.draggingOffset}),this.clearScrollInterval(),t.setState({draggingColumn:this.draggingColumn,movedColumns:E});return}}if(!l.isColumnMovable(C.modelIndex)){var O=C.visibleIndex;if(m)for(O+=1;O<f.visibleIndex&&!l.isColumnMovable(ee.getModelIndex(O,s));)O+=1;else for(O-=1;O>f.visibleIndex&&!l.isColumnMovable(ee.getModelIndex(O,s));)O-=1;if(O!==f.visibleIndex){m||(O-=f.range[1]-f.range[0]);var D=this.moveColumn(f,O,s);t.setState({movedColumns:D,draggingColumn:this.draggingColumn})}var N=Wr(O,0,o,l);if(m){var F;this.draggingOffset=e-((F=N?.left)!==null&&F!==void 0?F:0)}else{var A;this.draggingOffset=e-(((A=N?.right)!==null&&A!==void 0?A:0)-f.width)}this.draggingColumn=Ft(Ft({},this.draggingColumn),{},{left:e-this.draggingOffset}),t.setState({draggingColumn:this.draggingColumn});return}if(g<=u?this.setScrollInterval(t,"left"):p>d?this.setScrollInterval(t,"right"):this.clearScrollInterval(),C.visibleIndex!==f.visibleIndex&&!(m&&f.visibleIndex<C.visibleIndex||!m&&f.visibleIndex>C.visibleIndex)){for(var j=C.left+C.width*.5,k=l.getColumnHeaderParentGroup(f.modelIndex,f.depth),B,G=((i=k?.depth)!==null&&i!==void 0?i:h)-1;G>=0&&B===void 0;)B=l.getColumnHeaderGroup(C.modelIndex,G),G-=1;var W;m&&g<j&&(!B||C.visibleIndex===B.getVisibleRange(s)[0])&&(W=this.moveColumn(f,C.range[0],s)),!m&&p>j&&(!B||C.visibleIndex===B.getVisibleRange(s)[1])&&(W=this.moveColumn(f,C.range[1]-(f.range[1]-f.range[0]),s)),W&&(this.draggingColumn=Ft(Ft({},this.draggingColumn),{},{left:g}),t.setState({movedColumns:W,draggingColumn:this.draggingColumn}))}}}}}moveColumn(e,t,r){var i=e.isColumnGroup?ee.moveRange(e.range,t,r):ee.moveItem(e.visibleIndex,t,r),a=t-e.range[0],l=[e.range[0]+a,e.range[1]+a];return this.draggingColumn&&(this.draggingColumn=Ft(Ft({},this.draggingColumn),{},{range:l})),i}onUp(e,t){return this.cursor=null,this.clearScrollInterval(),this.draggingOffset!=null?(this.draggingOffset=void 0,t.setState({draggingColumn:null,isDragging:!1}),!0):!1}}const $f=Gf;function _o(n,e,t){return e=Wf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Wf(n){var e=zf(n,"string");return typeof e=="symbol"?e:String(e)}function zf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Ds extends Qe{constructor(){super(...arguments),_o(this,"dragOffset",void 0),_o(this,"cursor","default")}static getLeftWithOffsetFromRawLeft(e,t){var r=e.getTheme(),{metrics:i,metricCalculator:a}=e;if(!i)throw new Error("metrics not set");if(r.scrollSnapToColumn){var l=Math.round(t),s=0;return{left:l,leftOffset:s}}var o=Math.floor(t),u=t-o,d=i.allColumnWidths.get(o);if(d==null){var h=e.getMetricState();d=a.getVisibleColumnWidth(o,h)}var v=d*u;return{left:o,leftOffset:v}}isInScrollBar(e,t){var r=t.getTheme(),{scrollBarSize:i,scrollBarHoverSize:a}=r,{metrics:l}=t;if(!l)throw new Error("metrics not set");var{x:s,y:o}=e,{barLeft:u,barWidth:d,height:h,hasHorizontalBar:v}=l;return v&&i>0&&o>=h-a&&o<h&&s>u&&s<u+d}getLeftWithOffset(e,t){var r,{metrics:i}=t;if(!i)throw new Error("metrics not set");var{x:a}=e,{barWidth:l,handleWidth:s,lastLeft:o,barLeft:u,columnCount:d,scrollableContentWidth:h,scrollableViewportWidth:v}=i,m=a-u,f=Ae((m-((r=this.dragOffset)!==null&&r!==void 0?r:0))/(l-s),0,1);if(d===1)return{left:0,leftOffset:f*(h-v)};var g=f*o;return Ds.getLeftWithOffsetFromRawLeft(t,g)}onDown(e,t){var{metrics:r}=t;if(!r)throw new Error("metrics not set");var{x:i}=e,{handleWidth:a,barLeft:l,scrollX:s}=r;if(!this.isInScrollBar(e,t))return!1;var o=i-l;if(o>=s&&o<=s+a)this.dragOffset=o-s,t.setState({isDraggingHorizontalScrollBar:!0});else{this.dragOffset=0;var{left:u,leftOffset:d}=this.getLeftWithOffset(e,t);t.setViewState({left:u,leftOffset:d,isDraggingHorizontalScrollBar:!0,isDragging:!0})}return!0}onDrag(e,t){if(this.dragOffset!=null){var{left:r,leftOffset:i}=this.getLeftWithOffset(e,t);return t.setViewState({left:r,leftOffset:i,isDraggingHorizontalScrollBar:!0,isDragging:!0}),!0}return!1}onMove(e,t){return this.isInScrollBar(e,t)}onUp(e,t){return this.dragOffset!==void 0&&(this.dragOffset=void 0,t.setState({isDraggingHorizontalScrollBar:!1,isDragging:!1})),this.isInScrollBar(e,t)}onClick(e,t){return this.isInScrollBar(e,t)}}const Kf=Ds;function Ho(n,e,t){return e=Yf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Yf(n){var e=qf(n,"string");return typeof e=="symbol"?e:String(e)}function qf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Xf extends Qe{constructor(){super(...arguments),Ho(this,"cursor","move"),Ho(this,"draggingOffset",void 0)}onDown(e,t){var{model:r}=t.props,{x:i,y:a,row:l}=e,{metrics:s}=t;if(!s)throw new Error("metrics not set");var{columnHeaderHeight:o,rowHeaderWidth:u,allRowYs:d}=s;if(i<=u&&l!==null&&r.isRowMovable(l)){var h=M(d,l);this.draggingOffset=a-h-o,t.setState({draggingRowOffset:this.draggingOffset})}return!1}onDrag(e,t){if(this.draggingOffset==null)return!1;var{model:r}=t.props,{draggingRow:i}=t.state,{mouseX:a,mouseY:l}=t.state;if(a==null||l==null)return!1;if(i==null){var{row:s}=t.getGridPointFromXY(a,l);if(s!=null&&!r.isRowMovable(s)||(i=s,t.setState({draggingRow:i,isDragging:!0}),i==null))return!1}var{metrics:o}=t;if(!o)throw new Error("metrics not set");var{top:u,lastTop:d,bottom:h,bottomVisible:v,rowCount:m,columnHeaderHeight:f,allRowHeights:g,allRowYs:p,height:C}=o,S=f;if(u<i){var b=i-1;S=M(p,b)+M(g,b)*.5+f}var w=C;if(i<h){var y=i+1;w=M(p,y)+M(g,y)*.5+f}var{movedRows:T}=t.state;l<S&&i>0&&r.isRowMovable(i-1)?(T=ee.moveItem(i,i-1,T),i-=1):w<l&&i<m-1&&r.isRowMovable(i+1)&&(T=ee.moveItem(i,i+1,T),i+=1),t.setState({movedRows:T,draggingRow:i});var E=f+M(g,u)*.5,P=f+M(p,v)+M(g,v)*.5;return l<E&&u>0?t.setState({top:u-1}):l>P&&u<d&&t.setState({top:u+1}),!0}onUp(e,t){return this.draggingOffset!==void 0?(this.draggingOffset=void 0,t.setState({draggingRowOffset:null,draggingRow:null,isDragging:!1}),!0):!1}}const Qf=Xf;function wt(n,e,t){return e=Zf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Zf(n){var e=Jf(n,"string");return typeof e=="symbol"?e:String(e)}function Jf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Fs extends gh{constructor(){super(...arguments),wt(this,"hiddenCursor","s-resize"),wt(this,"defaultCursor","row-resize"),wt(this,"pointProperty","y"),wt(this,"userSizesProperty","userRowHeights"),wt(this,"visibleOffsetProperty","visibleRowYs"),wt(this,"visibleSizesProperty","visibleRowHeights"),wt(this,"marginProperty","columnHeaderHeight"),wt(this,"calculatedSizesProperty","calculatedRowHeights"),wt(this,"initialSizesProperty","initialRowHeights"),wt(this,"modelIndexesProperty","modelRows"),wt(this,"firstIndexProperty","firstRow"),wt(this,"treePaddingProperty","treePaddingY"),wt(this,"getHiddenItems",ee.getHiddenRows),wt(this,"getNextShownItem",ee.getNextShownRow),wt(this,"getSeparator",Fs.getRowSeparator)}static getRowSeparator(e,t,r,i){if(!i.allowRowResize)return null;var{x:a,y:l}=e,s=ee.getRowSeparatorIndex(a,l,t,i);return s!=null?{index:s,depth:0}:null}setSize(e,t,r){e.setRowHeight(t,r)}resetSize(e,t){e.resetRowHeight(t)}updateSeparator(e,t){e.setState({draggingRowSeparator:t,isDragging:t!==null})}}const eg=Fs;class Pa extends Qe{static isInTreeBox(e,t){var{column:r,row:i,x:a,y:l}=e,{metrics:s}=t;if(!s)throw new Error("metrics not set");var{gridX:o,gridY:u,firstColumn:d,allColumnXs:h,allColumnWidths:v,allRowHeights:m,allRowYs:f,visibleRowTreeBoxes:g}=s;if(r===d&&i!=null&&g.get(i)!=null&&a>o&&l>u){var p=M(h,r),C=M(v,r),S=M(f,i),b=M(m,i);if(a>=o+p&&a<=o+p+C&&l>=u+S&&l<=u+S+b)return!0}return!1}onDown(e,t){return Pa.isInTreeBox(e,t)}onClick(e,t,r){if(Pa.isInTreeBox(e,t)){var{row:i}=e;if(i!==null)return t.toggleRowExpanded(i,ee.isModifierKeyDown(r)),!0}return!1}}const Wl=Pa;class tg extends Qe{isInCorner(e,t){var r=t.getTheme(),{scrollBarSize:i}=r,{metrics:a}=t;if(!a)throw new Error("metrics not set");var{x:l,y:s}=e,{width:o,height:u,hasVerticalBar:d,hasHorizontalBar:h}=a;return i>0&&d&&h&&l>=o-i&&s>=u-i&&l<=o&&s<=u}onDown(e,t){return this.isInCorner(e,t)}onUp(e,t){return this.isInCorner(e,t)}onClick(e,t){return this.isInCorner(e,t)}}const rg=tg;function Uo(n,e,t){return e=ng(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ng(n){var e=ig(n,"string");return typeof e=="symbol"?e:String(e)}function ig(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Ns extends Qe{constructor(){super(...arguments),Uo(this,"dragOffset",void 0),Uo(this,"cursor","default")}static getTopWithOffsetFromRawTop(e,t){var r=e.getTheme(),{metrics:i,metricCalculator:a}=e;if(!i)throw new Error("metrics not set");if(r.scrollSnapToRow){var l=Math.round(t),s=0;return{top:l,topOffset:s}}var o=Math.floor(t),u=t-o,d=i.allRowHeights.get(o);if(d==null){var h=e.getMetricState();d=a.getVisibleRowHeight(o,h)}var v=d*u;return{top:o,topOffset:v}}isInScrollBar(e,t){var r=t.getTheme(),{scrollBarSize:i,scrollBarHoverSize:a}=r,{metrics:l}=t;if(!l)throw new Error("metrics not set");var{x:s,y:o}=e,{barTop:u,barHeight:d,width:h,hasVerticalBar:v}=l;return v&&i>0&&s>=h-a&&s<h&&o>u&&o<u+d}getTopWithOffset(e,t){var r,{metrics:i}=t;if(!i)throw new Error("metrics not set");var{y:a}=e,{barHeight:l,handleHeight:s,lastTop:o,barTop:u,rowCount:d,scrollableContentHeight:h,scrollableViewportHeight:v}=i,m=a-u,f=Ae((m-((r=this.dragOffset)!==null&&r!==void 0?r:0))/(l-s),0,1);if(d===1)return{top:0,topOffset:f*(h-v)};var g=f*o;return Ns.getTopWithOffsetFromRawTop(t,g)}onDown(e,t){var{metrics:r}=t;if(!r)throw new Error("metrics not set");var{y:i}=e,{handleHeight:a,barTop:l,scrollY:s}=r;if(!this.isInScrollBar(e,t))return!1;var o=i-l;if(o>=s&&o<=s+a)this.dragOffset=o-s,t.setState({isDraggingVerticalScrollBar:!0});else{this.dragOffset=0;var{top:u,topOffset:d}=this.getTopWithOffset(e,t);t.setViewState({top:u,topOffset:d,isDraggingVerticalScrollBar:!0,isDragging:!0})}return!0}onMove(e,t){return this.isInScrollBar(e,t)}onDrag(e,t){if(this.dragOffset!=null){var{top:r,topOffset:i}=this.getTopWithOffset(e,t);return t.setViewState({top:r,topOffset:i,isDraggingVerticalScrollBar:!0,isDragging:!0}),!0}return!1}onUp(e,t){return this.dragOffset!==void 0&&(this.dragOffset=void 0,t.setState({isDraggingVerticalScrollBar:!1,isDragging:!1})),this.isInScrollBar(e,t)}onClick(e,t){return this.isInScrollBar(e,t)}}const ag=Ns;class lg extends Qe{onDoubleClick(e,t){var{column:r,row:i}=e,{model:a}=t.props;return He(a)&&r!=null&&i!=null&&a.isEditableRange(U.makeCell(r,i))?(t.startEditing(r,i),!0):!1}}const sg=lg;function yh(n){return n?.getTokenBoxesForVisibleCell!==void 0}function Ei(n,e,t){return e=og(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function og(n){var e=ug(n,"string");return typeof e=="symbol"?e:String(e)}function ug(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Ba extends Qe{constructor(){super(...arguments),Ei(this,"timeoutId",void 0),Ei(this,"isHold",!1),Ei(this,"isDown",!1),Ei(this,"currentLinkBox",void 0)}isHoveringLink(e,t){var{column:r,row:i,x:a,y:l}=e,{renderer:s,metrics:o,props:u}=t,{model:d}=u;if(r==null||i==null||o==null)return this.currentLinkBox=void 0,!1;var{modelRows:h,modelColumns:v}=o,m=M(h,i),f=M(v,r),g=d.renderTypeForCell(f,m),p=s.getCellRenderer(g);if(!yh(p))return!1;if(this.currentLinkBox!=null){var{x1:C,y1:S,x2:b,y2:w}=this.currentLinkBox;if(a>=C&&a<=b&&l>=S&&l<=w)return!0}for(var y=t.updateRenderState(),T=p.getTokenBoxesForVisibleCell(r,i,y),E=0;E<T.length;E+=1)if(Oa(T[E].token)){var P=ee.translateTokenBox(T[E],o),{x1:O,x2:D,y1:N,y2:F}=P;if(a>=O&&a<=D&&l>=N&&l<=F)return this.currentLinkBox=P,!0}return this.currentLinkBox=void 0,!1}setCursor(e,t){return this.isHoveringLink(e,t)?this.cursor="pointer":this.cursor=null,!1}onMove(e,t){return this.setCursor(e,t)}onDown(e,t,r){var i=this.isHoveringLink(e,t);return ee.isModifierKeyDown(r)||r.shiftKey||!i?!1:(this.isDown=!0,this.timeoutId!=null&&clearTimeout(this.timeoutId),this.isHold=!1,this.timeoutId=setTimeout(()=>{this.isHold=!0;var{column:a,row:l}=e,{model:s}=t.props;t.clearSelectedRanges(),t.focus(),t.moveCursorToPosition(a,l),He(s)&&a!=null&&l!=null&&s.isEditableRange(U.makeCell(a,l))&&t.startEditing(a,l)},Ba.HOLD_LENGTH),!0)}onClick(e,t){var r=this.isHoveringLink(e,t);if(!r||!this.isDown||this.currentLinkBox==null)return this.isDown=!1,this.isHold=!1,!1;if(!this.isHold){var i;this.timeoutId!=null&&clearTimeout(this.timeoutId),this.timeoutId=void 0,t.props.onTokenClicked((i=this.currentLinkBox)===null||i===void 0?void 0:i.token)}return this.isHold=!1,this.isDown=!1,!0}}Ei(Ba,"HOLD_LENGTH",1e3);const dg=Ba;function hg(n,e,t){return e=cg(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function cg(n){var e=vg(n,"string");return typeof e=="symbol"?e:String(e)}function vg(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class mg{constructor(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:5e3;hg(this,"order",void 0),this.order=e}onDown(e,t){return!1}}const In=mg;class fg extends In{onDown(e,t){switch(e.key){case"a":if(ee.isModifierKeyDown(e))return t.selectAll(),!0;break;case"ArrowUp":return this.handleArrowMove(0,-1,e,t);case"ArrowDown":return this.handleArrowMove(0,1,e,t);case"ArrowRight":return this.handleArrowMove(1,0,e,t);case"ArrowLeft":return this.handleArrowMove(-1,0,e,t);case"k":case"K":return ee.isModifierKeyDown(e)?!1:this.handlePageUp(e,t);case"j":case"J":return ee.isModifierKeyDown(e)?!1:this.handlePageDown(e,t);case"h":case"H":return ee.isModifierKeyDown(e)?!1:(e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(0,t.state.cursorRow,e.shiftKey),!0);case"l":case"L":{if(ee.isModifierKeyDown(e))return!1;var{model:r}=t.props,{columnCount:i}=r;return e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(i-1,t.state.cursorRow,e.shiftKey),!0}case"PageDown":return this.handlePageDown(e,t);case"PageUp":return this.handlePageUp(e,t);case"Home":return e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(ee.isModifierKeyDown(e)?t.state.cursorColumn:0,ee.isModifierKeyDown(e)?0:t.state.cursorRow,e.shiftKey,!0,!0),!0;case"End":{var{model:a}=t.props,{columnCount:l,rowCount:s}=a;return e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(ee.isModifierKeyDown(e)?t.state.cursorColumn:l-1,ee.isModifierKeyDown(e)?s-1:t.state.cursorRow,e.shiftKey,!0,!0),!0}case"Escape":return t.clearSelectedRanges(),{preventDefault:!1,stopPropagation:!1};case"Enter":if(t.state.selectedRanges.length>0)return t.moveCursorInDirection(e.shiftKey?U.SELECTION_DIRECTION.UP:U.SELECTION_DIRECTION.DOWN),!0;break;case"Tab":if(t.state.selectedRanges.length>0)return t.moveCursorInDirection(e.shiftKey?U.SELECTION_DIRECTION.LEFT:U.SELECTION_DIRECTION.RIGHT),!0;break}return!1}handleArrowMove(e,t,r,i){var a=r.shiftKey,l=ee.isModifierKeyDown(r);a?i.trimSelectedRanges():i.clearSelectedRanges();var{cursorRow:s,cursorColumn:o,selectionEndColumn:u,selectionEndRow:d}=i.state,h=a?u:o,v=a?d:s;if(l){var{model:m}=i.props,{columnCount:f,rowCount:g}=m,p=l&&a,C=null,S=null;e<0?(C=0,S=v):e>0?(C=f-1,S=v):t<0?(C=h,S=0):t>0&&(C=h,S=g-1),C!=null&&S!=null&&i.moveCursorToPosition(C,S,a,!0,p)}else{if(!i.metrics)throw new Error("grid.metrics are not set");var{theme:b}=i.props,{autoSelectRow:w=!1,autoSelectColumn:y=!1}=b;if(w&&e!==0){var{lastLeft:T}=i.metrics,{left:E}=i.state;E=Ae(E+e,0,T),i.moveCursorToPosition(E,s,a,!1),i.setViewState({left:E})}else if(y&&t!==0){var{lastTop:P}=i.metrics,{top:O}=i.state;O=Ae(O+t,0,P),i.moveCursorToPosition(O,o,a,!1),i.setViewState({top:O})}else i.moveCursor(e,t,a)}return!0}handlePageUp(e,t){var r=e.shiftKey;r?t.trimSelectedRanges():t.clearSelectedRanges();var{cursorColumn:i,selectionEndRow:a}=t.state,l=a,s=i;if(l==null)return!1;var o=t.getMetricState(),{metricCalculator:u}=t,{bottomVisible:d,topVisible:h,hasHorizontalBar:v}=u.getMetrics(o),m=l-(d-h);m-=v?0:1,m=Math.max(m,0);var f=Math.max(m-(l-h),0);return t.moveCursorToPosition(s,m,r,!1),t.setViewState({top:f}),!0}handlePageDown(e,t){var r=e.shiftKey;r?t.trimSelectedRanges():t.clearSelectedRanges();var{selectionEndRow:i,cursorColumn:a}=t.state,l=i,s=a;if(l===null)return!1;var o=t.getMetricState(),{metricCalculator:u}=t,{bottomVisible:d,topVisible:h,hasHorizontalBar:v,rowCount:m,lastTop:f}=u.getMetrics(o),g=m-1,p=d-h+l;p+=v?0:1,p=Math.min(p,g);var C=Math.min(f,p-(l-h));return t.moveCursorToPosition(s,p,r,!1),t.setViewState({top:C}),!0}}const gg=fg;class pg extends In{onDown(e,t){switch(e.key){case"Enter":case" ":return this.handleExpandKey(e,t)}return!1}handleExpandKey(e,t){var{selectedRanges:r}=t.state;if(r.length===1){var i=r[0];if(i.startRow===i.endRow&&i.startColumn===i.endColumn){if(!t.metrics)throw new Error("grid.metrics not set");var{model:a}=t.props,{startRow:l,startColumn:s}=i;if(l!=null){var o=t.getModelRow(l);if((s===0||s==null)&&xe(a)&&a.isRowExpandable(o))return t.toggleRowExpanded(l),!0}}}return!1}}const Cg=pg;class Sg extends In{onDown(e,t){if(ee.isModifierKeyDown(e))return!1;var{model:r}=t.props,{cursorColumn:i,cursorRow:a}=t.state;if(i==null||a==null||!He(r)||!r.isEditableRange(U.makeCell(i,a)))return!1;var l=i,s=a;return l==null||s==null?!1:e.key.length===1?(t.startEditing(l,s,!0,[1,1],e.key),!0):e.key==="F2"?(t.startEditing(l,s),!0):e.key==="Backspace"?(t.startEditing(l,s,!0,void 0,""),!0):e.key==="Delete"?(t.setValueForCell(l,s,""),!0):!1}}const bg=Sg;function wg(n){for(var e=[],t=n.querySelectorAll("tr"),r=0;r<t.length;r+=1){for(var i=t[r],a=i.querySelectorAll("td"),l=[],s=0;s<a.length;s+=1){var o,u,d=a[s];l.push((o=(u=d.textContent)===null||u===void 0?void 0:u.trim())!==null&&o!==void 0?o:"")}e.push(l)}return e}function yg(n){var e=[];return n.forEach(t=>{var r,i=(r=t.textContent)!==null&&r!==void 0?r:"";i.length>0&&e.push(i.split(/\t|\u00a0\u00a0 \u00a0/))}),e}function Tg(n){var e,t,r=n.querySelector("table");if(r!=null)return wg(r);var i=(e=(t=n.textContent)===null||t===void 0?void 0:t.trim())!==null&&e!==void 0?e:"";if(i.length>0){var{childNodes:a}=n,l=i.includes(" "),s=i.includes("    ");return l&&a.length!==0&&(a.length===1||a.length>1&&(a[0].textContent==null||!a[0].textContent.includes(" ")))?i.split(`
2
- `).map(o=>o.split(" ")):a.length>1||s?yg(n.childNodes):i}return null}class Eg extends In{onDown(e,t){switch(e.key){case"v":if(ee.isModifierKeyDown(e)){var r=document.createElement("div");document.body.appendChild(r),r.setAttribute("contenteditable","true"),r.setAttribute("style",'clip-path: "inset(50%)"; height: 1px; width: 1px; margin: -1px; overflow: hidden; padding 0; position: absolute;');var i=()=>{r.removeEventListener("input",i),r.remove(),t.focus();var a=Tg(r);a!=null&&t.pasteValue(a)};return r.addEventListener("input",i),r.focus(),{preventDefault:!1,stopPropagation:!0}}break}return!1}}const Og=Eg;var Pg=n=>{switch(n){case"ArrowDown":return er.DOWN;case"ArrowUp":return er.UP;case"ArrowLeft":return er.LEFT;case"ArrowRight":return er.RIGHT;default:return}};function Is(n){var{selectionRange:e=void 0,className:t="",disabled:r=!1,value:i="",isQuickEdit:a=!0,onChange:l=()=>{},onCancel:s=()=>{},onDone:o=()=>{},onContextMenu:u=()=>{},style:d={}}=n,h=R.useRef(null),v=R.useRef(!1),[m]=R.useState(i),[f,g]=R.useState(!1),[p,C]=R.useState(a),[S,b]=R.useState(i);R.useEffect(function(){var{current:A}=h;A!=null&&(A.focus(),e?A.setSelectionRange(e[0],e[1]):A.setSelectionRange(A.value.length,A.value.length))},[e]);var w=R.useCallback(F=>{l(F)},[l]),y=R.useCallback(F=>{var{value:A}=F.target;b(A),g(!0),w(A)},[w,b,g]),T=R.useCallback(()=>{v.current=!0,f&&w(m),g(!1),s()},[m,f,s,w]),E=R.useCallback(()=>{C(!1)},[C]),P=R.useCallback(function(F){var A=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;o(S,{direction:F,fillRange:A})},[o,S]),O=R.useCallback(()=>{v.current||P(null)},[v,P]),D=R.useCallback(F=>{switch(F.stopPropagation(),F.key){case"Escape":F.preventDefault(),T();break;case"Enter":if(F.preventDefault(),ee.isModifierKeyDown(F))P(void 0,!0);else if(F.altKey){var A="".concat(S,`
3
- `);b(A),g(!0),w(A)}else P(F.shiftKey?er.UP:er.DOWN);break;case"Tab":F.preventDefault(),P(F.shiftKey?er.LEFT:er.RIGHT);break;case"ArrowDown":case"ArrowUp":case"ArrowLeft":case"ArrowRight":p&&(F.preventDefault(),P(Pg(F.key)));break}},[T,P,p,b,g,w,S]),N=R.useCallback(F=>{u(F)},[u]);return c.jsx("textarea",{ref:h,className:re("grid-cell-input-field",t),value:S,onBlur:O,onChange:y,onKeyDown:D,onContextMenu:N,onClick:E,autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",spellCheck:"false",disabled:r,style:d})}Is.propTypes={selectionRange:Z.arrayOf(Z.number),className:Z.string,disabled:Z.bool,isQuickEdit:Z.bool,value:Z.string,onChange:Z.func,onCancel:Z.func,onDone:Z.func,onContextMenu:Z.func,style:Z.shape({})};Is.defaultProps={selectionRange:null,className:"",disabled:!1,value:"",isQuickEdit:!0,onChange:()=>{},onCancel:()=>{},onDone:()=>{},onContextMenu:()=>{},style:{}};var Rg=Me.createContext({});const Dg=Rg;function Vo(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function Fg(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Vo(a,r,i,l,s,"next",o)}function s(o){Vo(a,r,i,l,s,"throw",o)}l(void 0)})}}function Bo(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 Sn(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Bo(Object(t),!0).forEach(function(r){Xe(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Bo(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Xe(n,e,t){return e=Ng(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ng(n){var e=Ig(n,"string");return typeof e=="symbol"?e:String(e)}function Ig(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Vt extends R.PureComponent{static getScale(e){var t,r,i,a,l,s=window.devicePixelRatio||1,o=e,u=(t=(r=(i=(a=(l=o.webkitBackingStorePixelRatio)!==null&&l!==void 0?l:o.mozBackingStorePixelRatio)!==null&&a!==void 0?a:o.msBackingStorePixelRatio)!==null&&i!==void 0?i:o.oBackingStorePixelRatio)!==null&&r!==void 0?r:o.backingStorePixelRatio)!==null&&t!==void 0?t:1;return s/u}static getCursorClassName(e){return e!=null&&e!==""?"grid-cursor-".concat(e):null}constructor(e){super(e),Xe(this,"renderer",void 0),Xe(this,"metricCalculator",void 0),Xe(this,"canvas",void 0),Xe(this,"canvasContext",void 0),Xe(this,"animationFrame",void 0),Xe(this,"prevMetrics",void 0),Xe(this,"metrics",void 0),Xe(this,"renderState",void 0),Xe(this,"documentCursor",void 0),Xe(this,"dragTimer",void 0),Xe(this,"keyHandlers",void 0),Xe(this,"mouseHandlers",void 0),Xe(this,"getCachedKeyHandlers",be(o=>[...o,...this.keyHandlers].sort((u,d)=>u.order-d.order))),Xe(this,"getCachedMouseHandlers",be(o=>[...o,...this.mouseHandlers].sort((u,d)=>u.order-d.order))),this.handleClick=this.handleClick.bind(this),this.handleContextMenu=this.handleContextMenu.bind(this),this.handleEditCellCancel=this.handleEditCellCancel.bind(this),this.handleEditCellChange=this.handleEditCellChange.bind(this),this.handleEditCellCommit=this.handleEditCellCommit.bind(this),this.handleDoubleClick=this.handleDoubleClick.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleMouseDown=this.handleMouseDown.bind(this),this.handleMouseDrag=this.handleMouseDrag.bind(this),this.handleMouseMove=this.handleMouseMove.bind(this),this.handleMouseLeave=this.handleMouseLeave.bind(this),this.handleMouseUp=this.handleMouseUp.bind(this),this.handleResize=this.handleResize.bind(this),this.handleWheel=this.handleWheel.bind(this);var{isStuckToBottom:t,isStuckToRight:r,metricCalculator:i,movedColumns:a,movedRows:l,renderer:s}=e;this.renderer=s||new wh,this.metricCalculator=i||new tf,this.canvas=null,this.canvasContext=null,this.animationFrame=null,this.prevMetrics=null,this.metrics=null,this.renderState={},this.documentCursor=null,this.dragTimer=null,this.keyHandlers=[new bg(400),new Og(450),new gg(500),new Cg(900)],this.mouseHandlers=[new eg(100),new ph(200),new Qf(300),new $f(400),new sg(450),new ag(500),new Kf(600),new rg(700),new Wl(800),new dg(875),new Hf(900)],this.state={top:0,left:0,topOffset:0,leftOffset:0,draggingColumn:null,draggingRow:null,draggingRowOffset:null,draggingColumnSeparator:null,draggingRowSeparator:null,isDraggingHorizontalScrollBar:!1,isDraggingVerticalScrollBar:!1,isDragging:!1,mouseX:null,mouseY:null,movedColumns:a,movedRows:l,cursorRow:null,cursorColumn:null,selectionStartRow:null,selectionStartColumn:null,selectionEndRow:null,selectionEndColumn:null,selectedRanges:Re,lastSelectedRanges:Re,cursor:null,editingCell:null,isStuckToBottom:t,isStuckToRight:r}}componentDidMount(){var e;this.initContext(),(e=this.canvas)===null||e===void 0||e.addEventListener("wheel",this.handleWheel,{passive:!1}),window.addEventListener("resize",this.handleResize),this.updateCanvas();var{isStuckToBottom:t,isStuckToRight:r}=this.props;t&&this.scrollToBottom(),r&&this.scrollToRight()}componentDidUpdate(e,t){var{isStickyBottom:r,isStickyRight:i,movedColumns:a,movedRows:l,onMovedColumnsChanged:s,onMoveColumnComplete:o,onMovedRowsChanged:u,onMoveRowComplete:d}=this.props,{isStickyBottom:h,isStickyRight:v,movedColumns:m,movedRows:f}=e,{movedColumns:g,movedRows:p}=t,{draggingColumn:C,draggingRow:S,movedColumns:b,movedRows:w}=this.state;m!==a&&this.setState({movedColumns:a}),f!==l&&this.setState({movedRows:l}),g!==b&&s(b),t.draggingColumn!=null&&C==null&&o(b),p!==w&&u(w),t.draggingRow!=null&&S==null&&d(w),r!==h&&this.setState({isStuckToBottom:!1}),i!==v&&this.setState({isStuckToRight:!1}),this.updateMetrics(),this.requestUpdateCanvas(),this.checkStickyScroll(),this.validateSelection()&&this.checkSelectionChange(t)}componentWillUnmount(){var e;this.animationFrame!=null&&cancelAnimationFrame(this.animationFrame),(e=this.canvas)===null||e===void 0||e.removeEventListener("wheel",this.handleWheel),window.removeEventListener("mousemove",this.handleMouseDrag,!0),window.removeEventListener("mouseup",this.handleMouseUp,!0),window.removeEventListener("resize",this.handleResize),this.stopDragTimer()}getTheme(){var{theme:e}=this.props;return Vt.getTheme(this.context,e)}getGridPointFromEvent(e){Po(this.canvas);var t=this.canvas.getBoundingClientRect(),r=e.clientX-t.left,i=e.clientY-t.top;return this.getGridPointFromXY(r,i)}getGridPointFromXY(e,t){if(!this.metrics)throw new Error("metrics must be set");return ee.getGridPointFromXY(e,t,this.metrics)}getMetricState(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.state,t=this.getTheme(),{model:r,stateOverride:i}=this.props;if(!this.canvasContext||!this.canvas)throw new Error("Canvas and context must be defined to get metrics");var a=this.canvasContext,l=this.canvas.clientWidth,s=this.canvas.clientHeight,{left:o,top:u,leftOffset:d,topOffset:h,movedColumns:v,movedRows:m,isDraggingHorizontalScrollBar:f,isDraggingVerticalScrollBar:g,draggingColumn:p}=e;return Sn({left:o,top:u,leftOffset:d,topOffset:h,width:l,height:s,context:a,theme:t,model:r,movedColumns:v,movedRows:m,isDraggingHorizontalScrollBar:f,isDraggingVerticalScrollBar:g,draggingColumn:p},i)}getKeyHandlers(){var{keyHandlers:e}=this.props;return this.getCachedKeyHandlers(e)}getMouseHandlers(){var{mouseHandlers:e}=this.props;return this.getCachedMouseHandlers(e)}getModelColumn(e){var t,r,i=(t=this.metrics)===null||t===void 0||(r=t.modelColumns)===null||r===void 0?void 0:r.get(e);if(i===void 0)throw new Error("Unable to get ModelIndex for column ".concat(e));return i}getModelRow(e){var t,r,i=(t=this.metrics)===null||t===void 0||(r=t.modelRows)===null||r===void 0?void 0:r.get(e);if(i===void 0)throw new Error("Unable to get ModelIndex for row ".concat(e));return i}toggleRowExpanded(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,r=this.getModelRow(e),{model:i}=this.props;xe(i)&&i.isRowExpandable(r)&&i.setRowExpanded(r,!i.isRowExpanded(r),t),this.clearSelectedRanges(),this.commitSelection(),this.moveCursorToPosition(0,e),this.commitSelection(),this.setState({isStuckToBottom:!1})}scrollToBottom(){if(this.metrics){var{bottomVisible:e,rowCount:t,top:r,lastTop:i}=this.metrics;(e<t-1&&e>0||r>i)&&this.setState({top:i})}}scrollToRight(){if(this.metrics){var{rightVisible:e,columnCount:t,left:r,lastLeft:i}=this.metrics;(e<t-1&&e>0||r>i)&&this.setState({left:i})}}setSelectedRanges(e){var{model:t}=this.props,{columnCount:r,rowCount:i}=t,{cursorRow:a,cursorColumn:l,selectedRanges:s}=this.state;if(this.setState({selectedRanges:e,lastSelectedRanges:s}),e.length>0){var o=U.boundedRange(e[0],r,i),u=a,d=l;o.containsCell(l,a)||({row:u,column:d}=o.startCell()),this.setState({selectionStartColumn:o.startColumn,selectionStartRow:o.startRow,selectionEndColumn:o.endColumn,selectionEndRow:o.endRow,cursorColumn:d,cursorRow:u})}}initContext(){var{canvas:e}=this,{canvasOptions:t}=this.props;if(!e)throw new Error("Canvas not set");this.canvasContext=e.getContext("2d",t)}requestUpdateCanvas(){this.animationFrame==null&&(this.animationFrame=requestAnimationFrame(()=>{this.animationFrame=null,this.updateCanvas()}))}updateCanvas(){this.updateCanvasScale(),this.updateMetrics(),this.updateRenderState();var{canvasContext:e,metrics:t,renderState:r}=this;L(e),L(t),L(r),this.renderer.configureContext(e,r);var{onViewChanged:i}=this.props;i(t),this.drawCanvas(t)}updateCanvasScale(){var{canvas:e,canvasContext:t}=this;if(!e)throw new Error("canvas not set");if(!t)throw new Error("canvasContext not set");if(!e.parentElement)throw new Error("Canvas has no parent element");var r=Vt.getScale(t),i=e.parentElement.getBoundingClientRect(),a=Math.floor(i.width),l=Math.floor(i.height);e.style.width="".concat(a,"px"),e.style.height="".concat(l,"px"),e.width=a*r,e.height=l*r,t.scale(r,r)}updateScrollBounds(){if(!this.metrics)throw new Error("metrics not set");var{left:e,top:t}=this.state,{lastLeft:r,lastTop:i}=this.metrics;e>r&&this.setState({left:r,leftOffset:0}),t>i&&this.setState({top:i,topOffset:0})}checkStickyScroll(){if(this.metrics){if(this.prevMetrics){var{rowCount:e,columnCount:t,height:r,width:i}=this.metrics,{rowCount:a,columnCount:l,height:s,width:o}=this.prevMetrics;if(a!==e||r!==s){var{isStuckToBottom:u}=this.state;u&&this.scrollToBottom()}if(l!==t||i!==o){var{isStuckToRight:d}=this.state;d&&this.scrollToRight()}}this.prevMetrics=this.metrics}}updateMetrics(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.state;this.prevMetrics=this.metrics;var{metricCalculator:t}=this,r=this.getMetricState(e);return this.metrics=t.getMetrics(r),this.updateScrollBounds(),this.metrics}checkSelectionChange(e){var{selectedRanges:t}=e,{selectedRanges:r}=this.state;if(r!==t){var{onSelectionChanged:i}=this.props;i(r)}}validateSelection(){for(var{model:e}=this.props,{selectedRanges:t}=this.state,{columnCount:r,rowCount:i}=e,a=0;a<t.length;a+=1){var l=t[a];if(l.endColumn!=null&&l.endColumn>=r||l.endRow!=null&&l.endRow>=i)return this.setState({selectedRanges:[],lastSelectedRanges:[]}),!1}return!0}clearSelectedRanges(){var{selectedRanges:e}=this.state;this.setState({selectedRanges:[],lastSelectedRanges:e})}trimSelectedRanges(){var{selectedRanges:e}=this.state;e.length>0&&this.setState({selectedRanges:e.slice(e.length-1)})}beginSelection(e,t){this.setState({selectionStartColumn:e,selectionStartRow:t,selectionEndColumn:e,selectionEndRow:t,cursorColumn:e,cursorRow:t})}moveSelection(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;this.setState(a=>{var{selectedRanges:l,selectionStartRow:s,selectionStartColumn:o}=a,{theme:u}=this.props,{autoSelectRow:d,autoSelectColumn:h}=u;if(r&&l.length>0){var v=l[l.length-1],m=null,f=null,g=null,p=null;if(i){var C,S,b,w;m=d!==void 0&&d?null:Math.min(e??0,(C=v.startColumn)!==null&&C!==void 0?C:0),f=h!==void 0&&h?null:Math.min(t??0,(S=v.startRow)!==null&&S!==void 0?S:0),g=d!==void 0&&d?null:Math.max(e??0,(b=v.endColumn)!==null&&b!==void 0?b:0),p=h!==void 0&&h?null:Math.max(t??0,(w=v.endRow)!==null&&w!==void 0?w:0)}else m=v.startColumn,f=v.startRow,(o!=null||s!=null)&&((d===void 0||!d)&&(m=o),(h===void 0||!h)&&(f=s)),g=d!==void 0&&d?null:e,p=h!==void 0&&h?null:t;var y=U.makeNormalized(m,f,g,p);if(v.equals(y))return null;var T=[...l];return T[T.length-1]=y,{selectedRanges:T,selectionEndColumn:e,selectionEndRow:t}}var E=[...l],P=d!==void 0&&d?null:e,O=h!==void 0&&h?null:t;return E.push(U.makeNormalized(P,O,P,O)),{selectedRanges:E,selectionEndColumn:e,selectionEndRow:t}})}commitSelection(){this.setState(e=>{var{theme:t}=this.props,{autoSelectRow:r}=t,{selectedRanges:i,lastSelectedRanges:a,cursorRow:l,cursorColumn:s}=e;if(i.length===1&&(r!==void 0&&r?U.rowCount(i)===1:U.cellCount(i)===1)&&U.rangeArraysEqual(i,a))return{selectedRanges:[],lastSelectedRanges:[],cursorColumn:null,cursorRow:null};var o=i.slice();if(o.length>1){for(var u=o[o.length-1],d=0;d<o.length-1;d+=1){var h=o[d];if(h.contains(u)){var v=h.subtract(u);o.pop(),o.splice(d,1),o=o.concat(v);break}}o=U.consolidate(o)}var m=s,f=l;if(!U.containsCell(o,s,l)){var{model:g}=this.props,{columnCount:p,rowCount:C}=g,S=U.nextCell(U.boundedRanges(i,p,C));S!=null?{column:m,row:f}=S:(m=null,f=null)}return o.length===0&&(m=null,f=null),{cursorRow:f,cursorColumn:m,selectedRanges:o,lastSelectedRanges:i}})}setFocusRow(e){var t;if(!(!this.metrics||!this.prevMetrics)){var{gridY:r,height:i,lastTop:a,userRowHeights:l,rowHeight:s}=this.metrics,o=i-r,u=Math.round(o/2)+((t=l.get(e))!==null&&t!==void 0?t:s),d=this.getMetricState(),h=this.metricCalculator.getLastTop(d,e+1,u);this.setState({top:Math.min(a,h),selectedRanges:[new U(null,e,null,e)],isStuckToBottom:!1});var{cursorColumn:v}=this.state;this.moveCursorToPosition(v,e,!1,!1)}}selectAll(){var{model:e,theme:t}=this.props,{autoSelectRow:r,autoSelectColumn:i}=t,a=i!==void 0&&i?null:0,l=i!==void 0&&i?null:e.rowCount-1,s=r!==void 0&&r?null:0,o=r!==void 0&&r?null:e.columnCount-1;this.setSelectedRanges([new U(s,a,o,l)])}moveCursor(e,t,r){var{cursorRow:i,cursorColumn:a,selectionEndColumn:l,selectionEndRow:s}=this.state,o=r?l:a,u=r?s:i;if(u===null||o===null){var{left:d,top:h}=this.state;this.moveCursorToPosition(d,h,r)}else{var{model:v}=this.props,{columnCount:m,rowCount:f}=v,g=Ae(o+e,0,m-1),p=Ae(u+t,0,f-1);this.moveCursorToPosition(g,p,r)}}moveCursorInDirection(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:U.SELECTION_DIRECTION.DOWN,{model:t}=this.props,{columnCount:r,rowCount:i}=t,{cursorRow:a,cursorColumn:l,selectedRanges:s}=this.state,o=s.length>0?s:[U.makeCell(l,a)],u=null;if(o.length===1&&U.cellCount(o)===1){var d,h=new U(0,0,r-1,i-1);u=(d=h.nextCell(l,a,e))!==null&&d!==void 0?d:h.startCell(e)}else u=U.nextCell(U.boundedRanges(o,r,i),l,a,e);if(u!=null){var{column:v,row:m}=u;this.setState({cursorColumn:v,cursorRow:m}),U.containsCell(s,v,m)||this.setState({selectedRanges:[U.makeCell(v,m)],selectionStartColumn:v,selectionStartRow:m,selectionEndColumn:v,selectionEndRow:m}),this.moveViewToCell(u.column,u.row)}}moveCursorToPosition(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;r||this.beginSelection(e,t),this.moveSelection(e,t,r,a),i&&this.moveViewToCell(e,t)}moveViewToCell(e,t){if(!this.metrics)throw new Error("metrics not set");var{metricCalculator:r}=this,{bottomVisible:i,rightVisible:a,topVisible:l,leftVisible:s}=this.metrics,o=this.getMetricState(this.state),{top:u,left:d,topOffset:h,leftOffset:v}=this.state;t!=null&&!ee.isFloatingRow(t,this.metrics)&&(t<l?(u=r.getTopForTopVisible(o,t),h=0):t>i&&(u=r.getTopForBottomVisible(o,t),h=0)),e!=null&&!ee.isFloatingColumn(e,this.metrics)&&(e<s?(d=r.getLeftForLeftVisible(o,e),v=0):e>a&&(d=r.getLeftForRightVisible(o,e),v=0)),this.setViewState({top:u,left:d,topOffset:h,leftOffset:v})}setViewState(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;if(!this.metrics)throw new Error("metrics not set");var{isStickyBottom:r,isStickyRight:i}=this.props,{top:a,left:l}=e,{lastTop:s,lastLeft:o}=this.metrics;a!=null&&this.setState({isStuckToBottom:r&&a>=s}),l!=null&&this.setState({isStuckToRight:i&&l>=o}),this.setState(e),t&&this.forceUpdate()}startEditing(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3?arguments[3]:void 0,a=arguments.length>4?arguments[4]:void 0,{model:l}=this.props;if(!He(l))throw new Error("model is not editable");var s=this.getModelColumn(e),o=this.getModelRow(t),u={column:e,row:t,selectionRange:i,value:a!==void 0?a:l.editValueForCell(s,o),isQuickEdit:r};this.setState({editingCell:u,cursorColumn:e,cursorRow:t}),this.moveViewToCell(e,t)}isValidForCell(e,t,r){var{model:i}=this.props,a=this.getModelColumn(e),l=this.getModelRow(t);return He(i)&&i.isValidForCell(a,l,r)}pasteValue(e){var t=this;return Fg(function*(){var{model:r}=t.props,{movedColumns:i,movedRows:a,selectedRanges:l}=t.state;try{if(Ro(r),!r.isEditable||!l.every(p=>r.isEditableRange(p)))throw new El("Can't paste in to read-only area.");if(l.length<=0)throw new El("Select an area to paste to.");if(typeof e=="string"){var s=[],o=ee.getModelRanges(l,i,a);U.forEachCell(o,(p,C)=>{s.push({column:p,row:C,text:e})}),yield r.setValues(s);return}var u=e.length,d=e[0].length,{columnCount:h,rowCount:v}=r,m=l;if(m.every(p=>{var C,S;return U.cellCount([p])===1&&((C=p.startColumn)!==null&&C!==void 0?C:0)+d<=h&&((S=p.startRow)!==null&&S!==void 0?S:0)+u<=v})&&(m=m.map(p=>{var C,S;return new U(p.startColumn,p.startRow,((C=p.startColumn)!==null&&C!==void 0?C:0)+d-1,((S=p.startRow)!==null&&S!==void 0?S:0)+u-1)}),t.setSelectedRanges(m)),!m.every(p=>U.rowCount([p])===u&&U.columnCount([p])===d))throw new El("Copy and paste area are not same size.");var f=[];m.forEach(p=>{for(var C=0;C<d;C+=1)for(var S=0;S<u;S+=1){var b,w;f.push({column:((b=p.startColumn)!==null&&b!==void 0?b:0)+C,row:((w=p.startRow)!==null&&w!==void 0?w:0)+S,text:e[S][C]})}}),yield r.setValues(f)}catch(p){var{onError:g}=t.props;g(p instanceof Error?p:new Error("".concat(p)))}})()}setValueForCell(e,t,r){var{model:i}=this.props;Ro(i);var a=this.getModelColumn(e),l=this.getModelRow(t);return i.isValidForCell(a,l,r)?(i.setValueForCell(a,l,r),!0):!1}setValueForRanges(e,t){var{model:r}=this.props,{movedColumns:i,movedRows:a}=this.state,l=ee.getModelRanges(e,i,a);He(r)&&r.setValueForRanges(l,t)}isSelected(e,t){for(var{selectedRanges:r}=this.state,i=0;i<r.length;i+=1){var a,l,s=r[i],o=s.startRow===null||s.startRow<=e&&e<=((a=s.endRow)!==null&&a!==void 0?a:0),u=s.startColumn===null||s.startColumn<=t&&t<=((l=s.endColumn)!==null&&l!==void 0?l:0);if(o&&u)return!0}return!1}addDocumentCursor(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:null;this.documentCursor!==Vt.getCursorClassName(e)&&(this.documentCursor!=null&&document.documentElement.classList.remove(this.documentCursor),this.documentCursor=Vt.getCursorClassName(e),this.documentCursor!=null&&document.documentElement.classList.add(this.documentCursor),document.documentElement.classList.add("grid-block-events"))}removeDocumentCursor(){this.documentCursor!=null&&(document.documentElement.classList.remove(this.documentCursor),document.documentElement.classList.remove("grid-block-events"),this.documentCursor=null)}startDragTimer(e){this.stopDragTimer();var t=new MouseEvent("custom",e.nativeEvent);this.dragTimer=setTimeout(()=>{this.handleMouseDrag(t)},Vt.dragTimeout)}stopDragTimer(){this.dragTimer&&(clearTimeout(this.dragTimer),this.dragTimer=null)}drawCanvas(){if(arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.updateMetrics(),!this.canvas)throw new Error("canvas is not set");if(!this.canvasContext)throw new Error("context not set");var{renderer:e,canvasContext:t,renderState:r}=this;t.save(),e.drawCanvas(r),t.restore()}focus(){var e;(e=this.canvas)===null||e===void 0||e.focus()}isFocused(){return document.activeElement===this.canvas}handleClick(e){for(var t,r=this.getGridPointFromEvent(e),i=this.getMouseHandlers(),a=0;a<i.length;a+=1){var l=i[a];if(l.onClick(r,this,e)!==!1){e.stopPropagation(),e.preventDefault();break}}(t=this.canvas)===null||t===void 0||t.focus()}handleContextMenu(e){for(var t=this.getGridPointFromEvent(e),r=this.getMouseHandlers(),i=0;i<r.length;i+=1){var a=r[i];if(a.onContextMenu(t,this,e)!==!1){e.stopPropagation(),e.preventDefault();break}}}handleKeyDown(e){for(var t=this.getKeyHandlers(),r=0;r<t.length;r+=1){var i=t[r],a=i.onDown(e,this);if(a!==!1){var l,s,o=a;(!((l=o?.stopPropagation)!==null&&l!==void 0)||l)&&e.stopPropagation(),(!((s=o?.preventDefault)!==null&&s!==void 0)||s)&&e.preventDefault();break}}}notifyMouseHandlers(e,t){for(var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,a=this.getGridPointFromEvent(t),l=this.getMouseHandlers(),s=null,o=0;o<l.length;o+=1){var u=l[o],d=u[e]!=null&&u[e](a,this,t);if(d!==!1){var h,v;u.cursor!=null&&({cursor:s}=u,i&&this.addDocumentCursor(s));var m=d;(!((h=m?.stopPropagation)!==null&&h!==void 0)||h)&&t.stopPropagation(),(!((v=m?.preventDefault)!==null&&v!==void 0)||v)&&t.preventDefault();break}}if(this.setState({cursor:s}),r){var{x:f,y:g}=a;this.setState({mouseX:f,mouseY:g})}}handleMouseDown(e){window.addEventListener("mousemove",this.handleMouseDrag,!0),window.addEventListener("mouseup",this.handleMouseUp,!0),!(e.button!=null&&e.button!==0)&&(this.notifyMouseHandlers("onDown",e),this.startDragTimer(e))}handleDoubleClick(e){this.notifyMouseHandlers("onDoubleClick",e)}handleMouseMove(e){this.notifyMouseHandlers("onMove",e)}handleMouseLeave(e){this.notifyMouseHandlers("onLeave",e,!1),this.setState({mouseX:null,mouseY:null})}handleMouseDrag(e){this.setState({isDragging:!0}),this.notifyMouseHandlers("onDrag",e,!0,!0),this.stopDragTimer()}handleMouseUp(e){window.removeEventListener("mousemove",this.handleMouseDrag,!0),window.removeEventListener("mouseup",this.handleMouseUp,!0),!(e.button!=null&&e.button!==0)&&(this.notifyMouseHandlers("onUp",e,!1),this.stopDragTimer(),this.removeDocumentCursor())}handleResize(){if(this.updateCanvas(),!this.metrics)throw new Error("metrics not set");this.forceUpdate()}handleWheel(e){if(this.notifyMouseHandlers("onWheel",e),!e.defaultPrevented){var{metricCalculator:t,metrics:r}=this,i=this.getMetricState();if(!r)throw new Error("metrics not set");for(var{lastTop:a,lastLeft:l,columnCount:s,rowCount:o,scrollableContentWidth:u,scrollableViewportWidth:d,scrollableContentHeight:h,scrollableViewportHeight:v,hasHorizontalBar:m,hasVerticalBar:f}=r,{top:g,left:p,topOffset:C,leftOffset:S}=r,b=this.getTheme(),{deltaX:w,deltaY:y}=ee.getScrollDelta(e,r.barWidth,r.barHeight,r.rowHeight,r.rowHeight);m&&w!==0;){if(S+=w,w=0,s>1){if(S>0&&p>=l||S<0&&p<=0){S=0;break}}else{if(S<=0){S=0;break}var T=u-d;if(S>=T){S=T;break}}if(S>0){var E,P=(E=r.allColumnWidths.get(p))!==null&&E!==void 0?E:t.getVisibleColumnWidth(p,i);S>=P?(w=S-P,S=0,p+=1):b.scrollSnapToColumn&&s>1&&(S=0,p+=1)}else if(S<0){var O,D=(O=r.allColumnWidths.get(p-1))!==null&&O!==void 0?O:t.getVisibleColumnWidth(p-1,i);Math.abs(S)<=D&&b.scrollSnapToColumn&&s>1?(S=0,p-=1):(w=S+D,S=0,p-=1)}}for(;f&&y!==0;){if(C+=y,y=0,o>1){if(C>0&&g>=a||C<0&&g<=0){C=0;break}}else{if(C<=0){C=0;break}var N=h-v;if(C>=N){C=N;break}}if(C>0){var F,A=(F=r.allRowHeights.get(g))!==null&&F!==void 0?F:t.getVisibleRowHeight(g,i);C>=A?(y=C-A,C=0,g+=1):b.scrollSnapToRow&&o>1&&(C=0,g+=1)}else if(C<0){var j,k=(j=r.allRowHeights.get(g-1))!==null&&j!==void 0?j:t.getVisibleRowHeight(g-1,i);Math.abs(C)<=k&&b.scrollSnapToRow&&o>1?(C=0,g-=1):(y=C+k,C=0,g-=1)}}this.setViewState({top:g,left:p,leftOffset:S,topOffset:C}),e.stopPropagation(),e.preventDefault()}}handleEditCellCancel(){this.setState({editingCell:null}),this.focus()}handleEditCellChange(e){this.setState(t=>{var{editingCell:r}=t;try{return Po(r),{editingCell:Sn(Sn({},r),{},{value:e})}}catch(a){var{onError:i}=this.props;return i(a instanceof Error?a:new Error("".concat(a))),null}})}handleEditCellCommit(e){var{direction:t=er.DOWN,fillRange:r=!1}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},{editingCell:i,selectedRanges:a}=this.state;if(!i)throw new Error("editingCell not set");var{column:l,row:s}=i;if(!this.isValidForCell(l,s,e)){t===null&&this.setState({editingCell:null});return}r?this.setValueForRanges(a,e):this.setValueForCell(l,s,e),t!==null&&this.moveCursorInDirection(t),this.setState({editingCell:null}),this.focus()}renderInputField(){var{model:e}=this.props,{editingCell:t}=this.state,{metrics:r}=this;if(t==null||r==null||!He(e))return null;var{selectionRange:i,value:a,isQuickEdit:l}=t,{column:s,row:o}=t,{gridX:u,gridY:d,allColumnXs:h,allRowYs:v,allColumnWidths:m,allRowHeights:f}=r,g=h.get(s),p=v.get(o),C=m.get(s),S=f.get(o),b=g!=null&&p!=null&&C!=null&&S!=null?{position:"absolute",left:u+g,top:d+p,width:C,height:S}:{opacity:0},w=this.getModelColumn(s),y=this.getModelRow(o),T=w!=null&&y!=null?{textAlign:e.textAlignForCell(w,y)}:void 0,E=e.isValidForCell(w,y,a);return c.jsx("div",{style:b,children:c.jsx(Is,{selectionRange:i,className:re({error:!E}),onCancel:this.handleEditCellCancel,onChange:this.handleEditCellChange,onDone:this.handleEditCellCommit,isQuickEdit:l,style:T,value:a},"".concat(s,",").concat(o))})}updateRenderState(){if(!this.canvas)throw new Error("canvas is not set");if(!this.canvasContext)throw new Error("context not set");var{cursorColumn:e,cursorRow:t,draggingColumn:r,draggingColumnSeparator:i,draggingRow:a,draggingRowOffset:l,draggingRowSeparator:s,editingCell:o,isDraggingHorizontalScrollBar:u,isDraggingVerticalScrollBar:d,isDragging:h,mouseX:v,mouseY:m,selectedRanges:f}=this.state,{model:g,stateOverride:p}=this.props,{metrics:C}=this,S=this.canvasContext,b=this.getTheme(),w=this.canvas.clientWidth,y=this.canvas.clientHeight;return L(C),this.renderState=Sn({width:w,height:y,context:S,theme:b,model:g,metrics:C,mouseX:v,mouseY:m,selectedRanges:f,draggingColumn:r,draggingColumnSeparator:i,draggingRow:a,draggingRowOffset:l,draggingRowSeparator:s,editingCell:o,isDraggingHorizontalScrollBar:u,isDraggingVerticalScrollBar:d,isDragging:h,cursorColumn:e,cursorRow:t},p),this.renderState}render(){var{cursor:e}=this.state;return c.jsxs(c.Fragment,{children:[c.jsx("canvas",{className:re("grid-canvas",Vt.getCursorClassName(e)),ref:t=>{this.canvas=t},onClick:this.handleClick,onContextMenu:this.handleContextMenu,onDoubleClick:this.handleDoubleClick,onKeyDown:this.handleKeyDown,onMouseDown:this.handleMouseDown,onMouseMove:this.handleMouseMove,onMouseLeave:this.handleMouseLeave,tabIndex:0,children:"Your browser does not support HTML canvas. Update your browser?"}),this.renderInputField()]})}}Xe(Vt,"contextType",Dg);Xe(Vt,"defaultProps",{canvasOptions:{alpha:!1},isStickyBottom:!1,isStickyRight:!1,isStuckToBottom:!1,isStuckToRight:!1,keyHandlers:Re,mouseHandlers:Re,movedColumns:Re,movedRows:Re,onError:()=>{},onSelectionChanged:()=>{},onMovedColumnsChanged:n=>{},onMoveColumnComplete:()=>{},onMovedRowsChanged:()=>{},onMoveRowComplete:()=>{},onViewChanged:n=>{},onTokenClicked:n=>{Oa(n)&&window.open(n.href,"_blank","noopener,noreferrer")},stateOverride:{},theme:{autoSelectColumn:!1,autoSelectRow:!1}});Xe(Vt,"pixelsPerLine",100/3);Xe(Vt,"dragTimeout",1e3);Xe(Vt,"getTheme",be((n,e)=>Sn(Sn(Sn({},nf),n),e)));const Ag=Vt;function Mg(n,e,t){return e=xg(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function xg(n){var e=Lg(n,"string");return typeof e=="symbol"?e:String(e)}function Lg(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ol=5e3;class kg extends _c{constructor(){super(...arguments),Mg(this,"getCachedTokensInText",mr((e,t)=>{if(t>=e.length)return ee.findTokensWithProtocolInText(e);var r=e.slice(t-1,Ol).search(/\s/),i=t+r;r===-1&&(i=Math.min(Ol,e.length));var a=e.substring(0,i);return ee.findTokensWithProtocolInText(a)}))}get floatingTopRowCount(){return 0}get floatingBottomRowCount(){return 0}get floatingLeftColumnCount(){return 0}get floatingRightColumnCount(){return 0}get columnHeaderMaxDepth(){return 1}truncationCharForCell(e,t){}textAlignForCell(e,t){return"left"}colorForCell(e,t,r){return r.textColor}backgroundColorForCell(e,t,r){return null}colorForColumnHeader(e){return null}textForRowHeader(e){return""}textForRowFooter(e){return""}isColumnMovable(e){return!0}isRowMovable(e){return!0}getColumnHeaderGroup(e,t){}getColumnHeaderParentGroup(e,t){}tokensForCell(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Ol,i=this.textForCell(e,t);return this.getCachedTokensInText(i,r)}renderTypeForCell(e,t){return"text"}}const jg=kg;function _g(n,e){var t=Vg(n);if(t!==void 0){var r=Kg(n);return"".concat(r," ? ").concat(t," : ").concat(e)}}function Hg(n,e){return n.Column.formatRowColor(e)}function Ug(n,e){return n.formatColor(e)}var Pi=ge.module("ConditionalFormattingUtils"),jt;(function(n){n.CONDITIONAL="conditional",n.ROWS="rows"})(jt||(jt={}));var oe;(function(n){n.IS_EQUAL="is-equal",n.IS_NOT_EQUAL="is-not-equal",n.IS_BETWEEN="is-between",n.GREATER_THAN="greater-than",n.GREATER_THAN_OR_EQUAL="greater-than-or-equal",n.LESS_THAN="less-than",n.LESS_THAN_OR_EQUAL="less-than-or-equal",n.IS_NULL="is-null",n.IS_NOT_NULL="is-not-null"})(oe||(oe={}));var ye;(function(n){n.IS_EXACTLY="is-exactly",n.IS_NOT_EXACTLY="is-not-exactly",n.CONTAINS="contains",n.DOES_NOT_CONTAIN="does-not-contain",n.STARTS_WITH="starts-with",n.ENDS_WITH="ends-with",n.IS_NULL="is-null",n.IS_NOT_NULL="is-not-null"})(ye||(ye={}));var pe;(function(n){n.IS_EXACTLY="is-exactly",n.IS_NOT_EXACTLY="is-not-exactly",n.IS_BEFORE="is-before",n.IS_BEFORE_OR_EQUAL="is-before-or-equal",n.IS_AFTER="is-after",n.IS_AFTER_OR_EQUAL="is-after-or-equal",n.IS_NULL="is-null",n.IS_NOT_NULL="is-not-null"})(pe||(pe={}));var rt;(function(n){n.IS_TRUE="is-true",n.IS_FALSE="is-false",n.IS_NULL="is-null",n.IS_NOT_NULL="is-not-null"})(rt||(rt={}));var Ke;(function(n){n.IS_EQUAL="is-equal",n.IS_NOT_EQUAL="is-not-equal",n.IS_NULL="is-null",n.IS_NOT_NULL="is-not-null"})(Ke||(Ke={}));var Te;(function(n){n.NO_FORMATTING="no-formatting",n.POSITIVE="positive",n.NEGATIVE="negative",n.WARN="warn",n.NEUTRAL="neutral",n.ACCENT_1="accent-1",n.ACCENT_2="accent-2",n.CUSTOM="custom"})(Te||(Te={}));function Go(n){switch(n){case Te.NO_FORMATTING:return"No formatting";case Te.POSITIVE:return"Positive";case Te.NEGATIVE:return"Negative";case Te.WARN:return"Warn";case Te.NEUTRAL:return"Neutral";case Te.ACCENT_1:return"Accent 1";case Te.ACCENT_2:return"Accent 2";case Te.CUSTOM:return"Custom..."}}function Ra(n){var{type:e,customConfig:t}=n;switch(e){case Te.NO_FORMATTING:return;case Te.POSITIVE:return"#9fde6f";case Te.NEGATIVE:return"#ff6087";case Te.WARN:return"#f67f40";case Te.NEUTRAL:return"#ffd95c";case Te.ACCENT_1:return"#78dce8";case Te.ACCENT_2:return"#ab9bf5";case Te.CUSTOM:return t?.background;default:return}}function Da(n){var{type:e,customConfig:t}=n;switch(e){case Te.NO_FORMATTING:return;case Te.POSITIVE:return"#526a3f";case Te.NEGATIVE:return"#802f44";case Te.WARN:return"#663318";case Te.NEUTRAL:return"#63562b";case Te.ACCENT_1:return"#3f6469";case Te.ACCENT_2:return"#554d72";case Te.CUSTOM:return t?.color;default:return}}function Vg(n){var e=Da(n.style),t=Ra(n.style);if(!(e===void 0||t===void 0))return"bgfg(`".concat(t,"`, `").concat(e,"`)")}function Bg(n){var{column:e,value:t,start:r,end:i}=n;return ip(e.name,n.condition,t,r,i)}function Gg(n){var{column:e,value:t}=n;return ap(e.name,n.condition,t)}function $g(n){var{column:e,value:t}=n;return lp(e.name,n.condition,t)}function Wg(n){var{column:e}=n;return sp(e.name,n.condition)}function zg(n){var{column:e,value:t}=n;return op(e.name,n.condition,t)}function Kg(n){var{column:e}=n;if(x.isNumberType(e.type))return Bg(n);if(x.isCharType(e.type))return zg(n);if(x.isStringType(e.type))return Gg(n);if(x.isDateType(e.type))return $g(n);if(x.isBooleanType(e.type))return Wg(n);throw new Error("Invalid column type")}function Yg(n){switch(n){case oe.IS_EQUAL:return"is equal to";case oe.IS_NOT_EQUAL:return"is not equal to";case oe.IS_BETWEEN:return"is between";case oe.GREATER_THAN:return"greater than";case oe.GREATER_THAN_OR_EQUAL:return"greater than or equal to";case oe.LESS_THAN:return"less than";case oe.LESS_THAN_OR_EQUAL:return"less than or equal to";case oe.IS_NULL:return"is null";case oe.IS_NOT_NULL:return"is not null"}}function qg(n){switch(n){case ye.IS_EXACTLY:return"is exactly";case ye.IS_NOT_EXACTLY:return"is not exactly";case ye.CONTAINS:return"contains";case ye.DOES_NOT_CONTAIN:return"does not contain";case ye.STARTS_WITH:return"starts with";case ye.ENDS_WITH:return"ends with";case ye.IS_NULL:return"is null";case ye.IS_NOT_NULL:return"is not null"}}function Xg(n){switch(n){case pe.IS_EXACTLY:return"is";case pe.IS_NOT_EXACTLY:return"is not";case pe.IS_BEFORE:return"is before";case pe.IS_BEFORE_OR_EQUAL:return"is before or equal";case pe.IS_AFTER:return"is after";case pe.IS_AFTER_OR_EQUAL:return"is after or equal";case pe.IS_NULL:return"is null";case pe.IS_NOT_NULL:return"is not null"}}function Qg(n){switch(n){case rt.IS_TRUE:return"is true";case rt.IS_FALSE:return"is false";case rt.IS_NULL:return"is null";case rt.IS_NOT_NULL:return"is not null"}}function Zg(n){switch(n){case Ke.IS_EQUAL:return"is";case Ke.IS_NOT_EQUAL:return"is not";case Ke.IS_NULL:return"is null";case Ke.IS_NOT_NULL:return"is not null"}}function Th(n){if(x.isNumberType(n))return oe.IS_EQUAL;if(x.isCharType(n))return Ke.IS_EQUAL;if(x.isStringType(n))return ye.IS_EXACTLY;if(x.isDateType(n))return pe.IS_EXACTLY;if(x.isBooleanType(n))return rt.IS_TRUE;throw new Error("Invalid column type")}function Eh(n){if(x.isCharType(n)||x.isStringType(n))return""}function Oh(n){var{condition:e,value:t,start:r,end:i}=n;return{condition:e,value:t,start:r,end:i}}function Ga(n){return{condition:Th(n),value:Eh(n),start:void 0,end:void 0}}function Ph(){return{type:Te.NO_FORMATTING}}function Jg(n){switch(n){case ye.IS_EXACTLY:return"==";case ye.IS_NOT_EXACTLY:return"!=";case ye.CONTAINS:return"contains";case ye.DOES_NOT_CONTAIN:return"does not contain";case ye.STARTS_WITH:return"starts with";case ye.ENDS_WITH:return"ends with";case ye.IS_NULL:return"is null";case ye.IS_NOT_NULL:return"is not null"}}function ep(n){switch(n){case pe.IS_EXACTLY:return"==";case pe.IS_NOT_EXACTLY:return"!=";case pe.IS_BEFORE:return"<";case pe.IS_BEFORE_OR_EQUAL:return"<=";case pe.IS_AFTER:return">";case pe.IS_AFTER_OR_EQUAL:return">=";case pe.IS_NULL:return"is null";case pe.IS_NOT_NULL:return"is not null"}}function tp(n){switch(n){case rt.IS_TRUE:return"is true";case rt.IS_FALSE:return"is false";case rt.IS_NULL:return"is null";case rt.IS_NOT_NULL:return"is not null"}}function rp(n){switch(n){case Ke.IS_EQUAL:return"==";case Ke.IS_NOT_EQUAL:return"!=";case Ke.IS_NULL:return"is null";case Ke.IS_NOT_NULL:return"is not null"}}function np(n){switch(n){case oe.IS_EQUAL:return"==";case oe.IS_NOT_EQUAL:return"!=";case oe.IS_BETWEEN:return"==";case oe.GREATER_THAN:return">";case oe.GREATER_THAN_OR_EQUAL:return">=";case oe.LESS_THAN:return"<";case oe.LESS_THAN_OR_EQUAL:return"<=";case oe.IS_NULL:return"is null";case oe.IS_NOT_NULL:return"is not null"}}function ip(n,e,t,r,i){switch(e){case oe.IS_EQUAL:return"".concat(n," == ").concat(t);case oe.IS_NOT_EQUAL:return"".concat(n," != ").concat(t);case oe.IS_BETWEEN:return"".concat(n," > ").concat(r," && ").concat(n," < ").concat(i);case oe.GREATER_THAN:return"".concat(n," > ").concat(t);case oe.GREATER_THAN_OR_EQUAL:return"".concat(n," >= ").concat(t);case oe.LESS_THAN:return"".concat(n," < ").concat(t);case oe.LESS_THAN_OR_EQUAL:return"".concat(n," <= ").concat(t);case oe.IS_NULL:return"".concat(n," == null");case oe.IS_NOT_NULL:return"".concat(n," != null")}}function ap(n,e,t){switch(e){case ye.IS_EXACTLY:return"".concat(n,' == "').concat(t,'"');case ye.IS_NOT_EXACTLY:return"".concat(n,' != "').concat(t,'"');case ye.CONTAINS:return"".concat(n," != null && ").concat(n,'.contains("').concat(t,'")');case ye.DOES_NOT_CONTAIN:return"".concat(n," != null && !").concat(n,'.contains("').concat(t,'")');case ye.STARTS_WITH:return"".concat(n," != null && ").concat(n,'.startsWith("').concat(t,'")');case ye.ENDS_WITH:return"".concat(n," != null && ").concat(n,'.endsWith("').concat(t,'")');case ye.IS_NULL:return"".concat(n," == null");case ye.IS_NOT_NULL:return"".concat(n," != null")}}function lp(n,e,t){switch(e){case pe.IS_EXACTLY:return"".concat(n,' == convertDateTime("').concat(t,'")');case pe.IS_NOT_EXACTLY:return"".concat(n," != convertDateTime(`").concat(t,"`)");case pe.IS_BEFORE:return"".concat(n," < convertDateTime(`").concat(t,"`)");case pe.IS_BEFORE_OR_EQUAL:return"".concat(n,' <= convertDateTime("').concat(t,'")');case pe.IS_AFTER:return"".concat(n," > convertDateTime(`").concat(t,"`)");case pe.IS_AFTER_OR_EQUAL:return"".concat(n," >= convertDateTime(`").concat(t,"`)");case pe.IS_NULL:return"".concat(n," == null");case pe.IS_NOT_NULL:return"".concat(n," != null")}}function sp(n,e){switch(e){case rt.IS_TRUE:return"".concat(n," == true");case rt.IS_FALSE:return"".concat(n," == false");case rt.IS_NULL:return"".concat(n," == null");case rt.IS_NOT_NULL:return"".concat(n," != null")}}function op(n,e,t){switch(e){case Ke.IS_EQUAL:return"".concat(n," == '").concat(t,"'");case Ke.IS_NOT_EQUAL:return"".concat(n," != '").concat(t,"'");case Ke.IS_NULL:return"isNull(".concat(n,")");case Ke.IS_NOT_NULL:return"!isNull(".concat(n,")")}}function up(n,e){if(x.isNumberType(n))return np(e);if(x.isCharType(n))return rp(e);if(x.isStringType(n))return Jg(e);if(x.isDateType(n))return ep(e);if(x.isBooleanType(n))return tp(e);throw new Error("Invalid column type")}function dp(n,e,t){if(t===void 0)return Pi.debug("no rules passed."),[];var r=[],i,a=new Map;return t.forEach(l=>{var s,{config:o,type:u}=l,{column:d}=o,h=e.find(C=>{var{name:S,type:b}=C;return S===d.name&&b===d.type});if(h===void 0){Pi.debug("Column ".concat(d.name,":").concat(d.type," not found. Ignoring format rule."),o);return}var[v,m]=(s=u===jt.CONDITIONAL?a.get(h.name):i)!==null&&s!==void 0?s:["null",void 0],f=_g(o,v);if(f===void 0){Pi.debug("Ignoring format rule.",o);return}var g=m===void 0?-1:r.indexOf(m);g>-1&&r.splice(g,1);var p=u===jt.CONDITIONAL?Ug(h,f):Hg(n,f);r.push(p),u===jt.CONDITIONAL?a.set(h.name,[f,p]):i=[f,p]}),r}function hp(n,e,t){switch(e){case pe.IS_NULL:case pe.IS_NOT_NULL:return!0;default:{var[r,...i]=(t??"").split(" "),a=i.join(" ");try{Tn.parseDateTimeString(r)}catch{return Pi.debug("Invalid datetime string",r),!1}try{n.i18n.TimeZone.getTimeZone(a)}catch{return Pi.debug("Invalid timezone string",a),!1}return!0}}}function cp(n){var{type:e}=n;return x.isNumberType(e)||x.isCharType(e)||x.isStringType(e)||x.isDateType(e)||x.isBooleanType(e)}function $a(n){var{animation:e="iris-grid-bottom-bar-slide-up",children:t,className:r,isShown:i,onClick:a,onEntering:l,onEntered:s,onExiting:o,onExited:u}=n;return c.jsx(vr,{in:i,timeout:ze.transitionMs,classNames:e,onEntering:l,onEntered:s,onExiting:o,onExited:u,mountOnEnter:!0,unmountOnExit:!0,children:c.jsx("div",{className:re("iris-grid-bottom-bar",r),role:"presentation",onClick:a,onKeyPress:a,children:t})})}var vp=3e3,mp=5;function fp(n){var{isSaving:e=!1,onSave:t,onDiscard:r,discardTooltip:i,saveTooltip:a,error:l,pendingDataErrors:s,pendingDataMap:o,onEntering:u,onEntered:d,onExiting:h,onExited:v}=n,[m,f]=R.useState(!1),[g,p]=R.useState(!1),C=R.useRef(),S=Qd(e),b=R.useMemo(()=>s.size===0?l:s.size<=mp?"Key can't be empty (on pending row".concat(s.size>1?"s":""," ").concat(Array.from(s.keys()).join(", ").trim(),")"):"Key can't be empty (on ".concat(s.size," rows)"),[l,s]);R.useEffect(function(){S!=null&&S&&!e&&b==null&&(f(!0),p(!0),C.current=setTimeout(()=>{f(!1)},vp))},[b,e,S]),R.useEffect(function(){C.current&&o.size>0&&(clearTimeout(C.current),f(!1),p(!1))},[o]),R.useEffect(function(){return()=>C.current?clearTimeout(C.current):void 0},[]);var w=o.size,y;return e?y=c.jsx(Dn,{className:"loading-spinner-vertical-align"}):g&&(y=gs),c.jsxs($a,{className:"pending-data-bottom-bar",isShown:w>0||m||b!=null,onEntering:u,onEntered:d,onExiting:h,onExited:()=>{p(!1),v&&v()},children:[b!=null&&b!==""&&c.jsxs("div",{className:"error-message",children:[c.jsx(ae,{icon:Wn}),c.jsx("span",{children:"".concat(b)})]}),(b==null||b==="")&&c.jsx("div",{className:"status-message",children:w>0&&c.jsx("span",{children:"".concat(w," row").concat(w>1?"s":""," pending")})}),c.jsxs("div",{className:"buttons-container",children:[!e&&!g&&c.jsx(Y,{kind:"secondary",onClick:r,tooltip:i,children:"Discard"}),c.jsxs(Y,{kind:g?"success":"primary",onClick:t,icon:y,disabled:e||g||b!=null,tooltip:a,children:[e&&"Committing...",!e&&g&&"Success",!e&&!g&&"Commit"]})]})]})}var zl;(function(n){n.COUNT="Count",n.MIN="Min",n.MAX="Max",n.SUM="Sum",n.ABS_SUM="AbsSum",n.VAR="Var",n.AVG="Avg",n.STD="Std",n.FIRST="First",n.LAST="Last",n.SKIP="Skip",n.COUNT_DISTINCT="CountDistinct",n.DISTINCT="Distinct",n.UNIQUE="Unique"})(zl||(zl={}));const Ie=zl;var gp=[Ie.SUM,Ie.ABS_SUM,Ie.MIN,Ie.MAX,Ie.VAR,Ie.AVG,Ie.STD,Ie.FIRST,Ie.LAST,Ie.COUNT_DISTINCT,Ie.DISTINCT,Ie.COUNT,Ie.UNIQUE],pp=n=>{switch(n){default:return!1}},Cp=(n,e)=>{switch(n){case Ie.COUNT:case Ie.FIRST:case Ie.LAST:case Ie.COUNT_DISTINCT:case Ie.DISTINCT:case Ie.UNIQUE:return!0;case Ie.MIN:case Ie.MAX:return x.isNumberType(e)||x.isDateType(e)||x.isTextType(e);case Ie.SUM:case Ie.ABS_SUM:case Ie.VAR:case Ie.AVG:case Ie.STD:return x.isNumberType(e);case Ie.SKIP:return!1}},As=(n,e)=>n.filter(t=>Cp(e,t.type)),Sp=(n,e,t,r)=>As(n,e).map(i=>{var{name:a}=i;return a}).filter(i=>t.includes(i)?!r:r);const on={isRollupOperation:pp,filterValidColumns:As,getOperationColumnNames:Sp};var Kl;(function(n){n.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS="filter-control-change-clears-all-filters",n.LINK_CHANGE_CLEARS_ALL_FILTERS="link-change-clears-all-filters"})(Kl||(Kl={}));const Yn=Kl;var bp=Object.freeze([[Yn.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS,!1],[Yn.LINK_CHANGE_CLEARS_ALL_FILTERS,!1]]);const Rh={DEFAULTS:bp};function rn(n,e,t){return e=wp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function wp(n){var e=yp(n,"string");return typeof e=="symbol"?e:String(e)}function yp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Tp=ge.module("ColumnHeaderGroup");function Pl(n){return n instanceof Zt}class Zt{constructor(e){var{name:t,children:r,color:i,depth:a,childIndexes:l,parent:s}=e;rn(this,"name",void 0),rn(this,"children",void 0),rn(this,"depth",void 0),rn(this,"parent",void 0),rn(this,"color",void 0),rn(this,"childIndexes",void 0),rn(this,"getVisibleRange",be(o=>{var u=this.childIndexes.flat(),d=K.getVisibleIndexes(u,o),h=Math.min(...d),v=Math.max(...d);return v-h!==u.length-1&&Tp.warn("Column header group ".concat(this.name," is not contiguous")),[h,v]})),this.name=t,this.children=r,this.color=i,this.depth=a,this.childIndexes=l,this.parent=s}setParent(e){this.parent=e}addChildren(e){var t=new Set(this.children.concat(e));this.children=[...t]}removeChildren(e){var t=new Set(this.children);e.forEach(r=>t.delete(r)),this.children=[...t]}get isNew(){return this.name.startsWith(Zt.NEW_GROUP_PREFIX)}}rn(Zt,"NEW_GROUP_PREFIX",":newGroup");var Ep=["selectedValues"],Op=["selectedValues"];function $o(n,e){if(n==null)return{};var t=Pp(n,e),r,i;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(n);for(i=0;i<a.length;i++)r=a[i],!(e.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(n,r)&&(t[r]=n[r])}return t}function Pp(n,e){if(n==null)return{};var t={},r=Object.keys(n),i,a;for(a=0;a<r.length;a++)i=r[a],!(e.indexOf(i)>=0)&&(t[i]=n[i]);return t}function Wo(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?Wo(Object(t),!0).forEach(function(r){Yl(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Wo(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Yl(n,e,t){return e=Rp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Rp(n){var e=Dp(n,"string");return typeof e=="symbol"?e:String(e)}function Dp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var mi=ge.module("IrisGridUtils");function zr(n,e){return n>=0&&n<e.length}function Fp(n){return n.asDate!=null}class ke{static dehydrateGridState(e,t){var{isStuckToBottom:r,isStuckToRight:i,movedColumns:a,movedRows:l}=t,{columns:s}=e;return{isStuckToBottom:r,isStuckToRight:i,movedColumns:[...a].filter(o=>{var{to:u,from:d}=o;return zr(u,s)&&(typeof d=="number"&&zr(d,s)||Array.isArray(d)&&zr(d[0],s)&&zr(d[1],s))}).map(o=>{var{to:u,from:d}=o;return{to:s[u].name,from:Array.isArray(d)?[s[d[0]].name,s[d[1]].name]:s[d].name}}),movedRows:[...l]}}static hydrateGridState(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[],{isStuckToBottom:i,isStuckToRight:a,movedColumns:l,movedRows:s}=t,{columns:o}=e,u=ke.parseCustomColumnNames(r),d=o.map(h=>{var{name:v}=h;return v}).concat(u);return{isStuckToBottom:i,isStuckToRight:a,movedColumns:[...l].map(h=>{var{to:v,from:m}=h,f=g=>typeof g=="string"?d.findIndex(p=>p===g):g;return{to:f(v),from:Array.isArray(m)?[f(m[0]),f(m[1])]:f(m)}}).filter(h=>{var{to:v,from:m}=h;return zr(v,d)&&(typeof m=="number"&&zr(m,d)||Array.isArray(m)&&zr(m[0],d)&&zr(m[1],d))}),movedRows:[...s]}}static dehydrateIrisGridPanelState(e,t){var{isSelectingPartition:r,partition:i,partitionColumn:a,advancedSettings:l}=t;return{isSelectingPartition:r,partition:i,partitionColumn:a!=null?a.name:null,advancedSettings:[...l]}}static hydrateIrisGridPanelState(e,t){var r,{isSelectingPartition:i,partition:a,partitionColumn:l,advancedSettings:s}=t,{columns:o}=e;return{isSelectingPartition:i,partition:a??null,partitionColumn:l!=null&&(r=ke.getColumnByName(o,l))!==null&&r!==void 0?r:null,advancedSettings:new Map([...Rh.DEFAULTS,...s])}}static dehydrateQuickFilters(e){return[...e].map(t=>{var[r,i]=t,{text:a}=i;return[r,{text:a}]})}static dehydrateLong(e){return e!=null?"".concat(e):null}static dehydrateSort(e){return e.map(t=>{var{column:r,isAbs:i,direction:a}=t;return{column:r.name,isAbs:i,direction:a}})}static extractTableSettings(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],{irisGridPanelState:r,irisGridState:i}=e,{partitionColumn:a,partition:l}=r,{advancedFilters:s,quickFilters:o,sorts:u}=i;return{advancedFilters:s,inputFilters:t,partition:l,partitionColumn:a,quickFilters:o,sorts:u}}static getInputFiltersForColumns(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];return t.filter(r=>{var{name:i,type:a}=r;return e.find(l=>{var{name:s,type:o}=l;return s===i&&o===a})})}static getFiltersFromFilterMap(e){for(var t=[],r=Array.from(e.keys()),i=0;i<r.length;i+=1){var a=r[i],l=e.get(a);l?.filter!=null&&t.push(l.filter)}return t}static getHiddenColumns(e){return[...e.entries()].filter(t=>{var[,r]=t;return r===0}).map(t=>{var[r]=t;return r})}static parseCustomColumnNames(e){return e.map(t=>t.split("=")[0])}static getRemovedCustomColumnNames(e,t){var r=ke.parseCustomColumnNames(e),i=ke.parseCustomColumnNames(t);return r.filter(a=>!i.includes(a))}static removeSortsInColumns(e,t){return e.filter(r=>!t.includes(r.column.name))}static removeFiltersInColumns(e,t,r){var i=e.map(l=>{var{name:s}=l;return s}),a=new Map(t);return r.forEach(l=>a.delete(i.indexOf(l))),a}static removeColumnFromMovedColumns(e,t,r){for(var i=e.map(o=>{var{name:u}=o;return u}),a=[...t],l=function(){for(var u=r[s],d=i.findIndex(C=>C===u),h=[],v=0;v<a.length;v+=1){var m=a[v],f=Ir({},m),[g,p]=Array.isArray(m.from)?m.from:[m.from,m.from];d<=m.to&&(f.to-=1),d<g&&(g-=1),d<=p&&(p-=1),g<=p&&g!==f.to&&(g===p?h.push(Ir(Ir({},f),{},{from:g})):h.push(Ir(Ir({},f),{},{from:[g,p]}))),d=K.applyItemMoves(d,d,[m])[0][0]}a=h,i.splice(i.findIndex(C=>C===u),1)},s=0;s<r.length;s+=1)l();return a}static removeColumnsFromSelectDistinctColumns(e,t){return e.filter(r=>!t.includes(r))}static getVisibleColumnsInRange(e,t,r,i,a){for(var l=[],s=t;s<=r;s+=1){var o=K.getModelIndex(s,i);o>=0&&o<e.length&&!a.includes(o)&&l.push(e[o])}return l}static getPrevVisibleColumns(e,t,r,i,a){for(var l=[],s=t;s>=0&&l.length<r;){var o=K.getModelIndex(s,i);o>=0&&o<e.length&&!a.includes(o)&&l.unshift(e[o]),s-=1}return l}static getNextVisibleColumns(e,t,r,i,a){for(var l=[],s=t;s<e.length&&l.length<r;){var o=K.getModelIndex(s,i);o>=0&&o<e.length&&!a.includes(o)&&l.push(e[o]),s+=1}return l}static getColumnsToFetch(e,t,r){var i=[...t];return r.forEach(a=>{var l=e.find(s=>{var{name:o}=s;return o===a});l!=null&&!t.includes(l)&&i.push(l)}),i}static getModelViewportColumns(e,t,r,i){var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:[],l=arguments.length>5&&arguments[5]!==void 0?arguments[5]:[],s=arguments.length>6&&arguments[6]!==void 0?arguments[6]:0;if(t==null||r==null)return null;var o=ke.getVisibleColumnsInRange(e,t,r,i,a),u=o.length*s,d=ke.getPrevVisibleColumns(e,t-1,u,i,a),h=ke.getNextVisibleColumns(e,r+1,u,i,a),v=[...d,...o,...h];return ke.getColumnsToFetch(e,v,l)}static isValidSnapshotRanges(e){if(e==null||e.length===0)return!1;for(var t=new Map,r=0;r<e.length;r+=1){var i=e[r],a="".concat(i.startRow,":").concat(i.endRow),l="".concat(i.startColumn,":").concat(i.endColumn);t.has(a)||t.set(a,[]),t.get(a).push(l)}for(var s=[...t.keys()],o=t.get(s[0]).sort().join(","),u=1;u<s.length;u+=1)if(t.get(s[u]).sort().join(",")!==o)return!1;return!0}static isValidIndex(e){return!Number.isInteger(e)||typeof e!="number"?!1:e>=0}static columnsFromRanges(e,t){if(e==null||e.length===0)return[];if(e[0].startColumn===null&&e[0].endColumn===null)return[...t];for(var r=new Set,i=0;i<e.length;i+=1){var a=e[i];L(a.startColumn),L(a.endColumn);for(var l=(s=a.startColumn)!==null&&s!==void 0?s:0;l<=((o=a.endColumn)!==null&&o!==void 0?o:t.length-1);l+=1){var s,o;r.add(l)}}return[...r].map(u=>t[u])}static snapshotDataToMatrix(e){for(var{columns:t,rows:r}=e,i=[],a=0;a<r.length;a+=1){for(var l=r[a],s=[],o=0;o<t.length;o+=1){var u=t[o],d=l.get(u);s.push(d)}i.push(s)}return i}static getModelRollupConfig(e,t,r){var i,a;if(((i=t==null||(a=t.columns)===null||a===void 0?void 0:a.length)!==null&&i!==void 0?i:0)===0)return null;for(var{columns:l=[],showConstituents:s=!0,showNonAggregatedColumns:o=!0,includeDescriptions:u=!0}=t??{},{aggregations:d=[]}=r??{},h=d.map(C=>{var{operation:S,selected:b,invert:w}=C;return on.isRollupOperation(S)?[]:on.getOperationColumnNames(e,S,b,w)}),v={},m=0;m<d.length;m+=1)v[d[m].operation]=h[m];if(o){var f=new Set(e.map(C=>C.name).filter(C=>!l.includes(C)));if(h.forEach(C=>{C.forEach(S=>f.delete(S))}),f.size>0){var g,p=(g=v[Ie.FIRST])!==null&&g!==void 0?g:[];v[Ie.FIRST]=[...p,...f]}}return{groupingColumns:l,includeConstituents:s,includeDescriptions:u,aggregations:v}}static getPendingErrors(e){e.forEach((t,r)=>{if(!ke.isValidIndex(r))throw new Error("Invalid rowIndex ".concat(r));var{data:i}=t;i.forEach((a,l)=>{if(!ke.isValidIndex(l))throw new Error("Invalid columnIndex ".concat(l))})})}static getColumn(e,t){return t<e.length?e[t]:(mi.error("Unable to retrieve column",t,">=",e.length),null)}static getColumnByName(e,t){var r=e.find(i=>{var{name:a}=i;return a===t});return r==null&&mi.error("Unable to retrieve column by name",t,e.map(i=>{var{name:a}=i;return a})),r}static changeFilterColumnNamesToIndexes(e,t){return t.map(r=>{var{name:i,filter:a}=r,l=e.findIndex(s=>s.name===i);return l<0?null:[l,a]}).filter(r=>r!=null)}static combineFiltersFromList(e,t){t.sort((d,h)=>d.operator==="eq"&&h.operator!=="eq"?1:d.operator!=="eq"&&h.operator==="eq"?-1:d.startColumnIndex-h.startColumnIndex);for(var r="",i=0;i<t.length;i+=1){var{text:a,value:l,operator:s}=t[i];if(l!==void 0){var o="";s!==void 0&&(l==null&&s==="eq"?o="=":s!=="eq"&&(s==="startsWith"||s==="endsWith"?o="*":o=x.getFilterOperatorString(s)));var u="".concat(o).concat(a);s==="startsWith"&&(u="".concat(a).concat(o)),e!=null&&l!==null&&x.isCharType(e)&&(u="".concat(o).concat(String.fromCharCode(parseInt(a,10)))),i!==0&&(r+=s==="eq"?" || ":" && "),r+=u}}return r}static parseColumnHeaderGroups(e,t){var r=1,i=new Map,a=new Map,l=t?.filter(h=>{var{children:v}=h;return v.length>0});if(l.length===0)return{groups:[],maxDepth:r,parentMap:i,groupMap:a};var s=new Map(l.map(h=>[h.name,h])),o=new Set,u=h=>{var{name:v}=h;if(e.getColumnIndexByName(v)!=null)throw new Error("Column header group has same name as column: ".concat(v));var m=a.get(v);if(m)return m;var f=[],g=1;h.children.forEach(C=>{if(o.has(C))throw new Error("Column group child ".concat(C," specified in multiple groups"));o.add(C);var S=s.get(C),b=e.getColumnIndexByName(C);if(S){var w=u(S);f.push(...w.childIndexes),g=Math.max(g,w.depth+1)}else if(b!=null)f.push(b),g=Math.max(g,1);else throw new Error("Unknown child ".concat(C," in group ").concat(v))});var p=new Zt(Ir(Ir({},h),{},{depth:g,childIndexes:f.flat()}));return a.set(v,p),h.children.forEach(C=>i.set(C,p)),r=Math.max(r,p.depth+1),p},d=new Set;return l.forEach(h=>{var{name:v}=h;if(d.has(v))throw new Error("Duplicate column group name: ".concat(v));d.add(v),u(h)}),a.forEach(h=>{var v;h.setParent((v=i.get(h.name))===null||v===void 0?void 0:v.name)}),{groups:[...a.values()],maxDepth:r,groupMap:a,parentMap:i}}static convertValueToText(e,t){if(t!=null&&x.isCharType(t)&&e!=null&&typeof e=="number")return String.fromCharCode(e);if(x.isDateType(t)&&Fp(e)){var r=new Date(e.asDate()),i=r.getTimezoneOffset(),a=new Date(r.getTime()-i*60*1e3),l=a.toISOString(),s=l.replace("T"," ").substring(0,23);return s}return e==null?"":"".concat(e)}constructor(e){Yl(this,"dh",void 0),Yl(this,"tableUtils",void 0),this.dh=e,this.tableUtils=new x(e)}dehydrateIrisGridState(e,t){var{aggregationSettings:r={aggregations:Re,showOnTop:!1},advancedFilters:i,customColumnFormatMap:a,isFilterBarShown:l,metrics:s,quickFilters:o,customColumns:u,conditionalFormats:d=Re,reverseType:h,rollupConfig:v=void 0,showSearchBar:m,searchValue:f,selectDistinctColumns:g=Re,selectedSearchColumns:p,sorts:C,invertSearchColumns:S,pendingDataMap:b=xr,frozenColumns:w,columnHeaderGroups:y}=t;L(s);var{userColumnWidths:T,userRowHeights:E}=s,{columns:P}=e;return{advancedFilters:this.dehydrateAdvancedFilters(P,i),aggregationSettings:r,customColumnFormatMap:[...a],isFilterBarShown:l,quickFilters:ke.dehydrateQuickFilters(o),sorts:ke.dehydrateSort(C),userColumnWidths:[...T].filter(O=>{var[D]=O;return D!=null&&D>=0&&D<P.length}).map(O=>{var[D,N]=O;return[P[D].name,N]}),userRowHeights:[...E],customColumns:[...u],conditionalFormats:[...d],reverseType:h,rollupConfig:v,showSearchBar:m,searchValue:f,selectDistinctColumns:[...g],selectedSearchColumns:p,invertSearchColumns:S,pendingDataMap:this.dehydratePendingDataMap(P,b),frozenColumns:w,columnHeaderGroups:y?.map(O=>({name:O.name,children:O.children,color:O.color}))}}hydrateIrisGridState(e,t){var r,i,{advancedFilters:a,aggregationSettings:l={aggregations:[],showOnTop:!1},customColumnFormatMap:s,isFilterBarShown:o,quickFilters:u,sorts:d,customColumns:h,conditionalFormats:v,userColumnWidths:m,userRowHeights:f,reverseType:g,rollupConfig:p=void 0,showSearchBar:C,searchValue:S,selectDistinctColumns:b,selectedSearchColumns:w,invertSearchColumns:y=!0,pendingDataMap:T=[],frozenColumns:E,columnHeaderGroups:P}=t,{columns:O,formatter:D}=e;return{advancedFilters:this.hydrateAdvancedFilters(O,a,D.timeZone),aggregationSettings:l,customColumnFormatMap:new Map(s),isFilterBarShown:o,quickFilters:this.hydrateQuickFilters(O,u,D.timeZone),sorts:this.hydrateSort(O,d),userColumnWidths:new Map(m.map(N=>{var[F,A]=N;return typeof F=="string"||F instanceof String?[O.findIndex(j=>{var{name:k}=j;return k===F}),A]:[F,A]}).filter(N=>{var[F]=N;return F!=null&&F>=0&&F<O.length})),customColumns:h,conditionalFormats:v,userRowHeights:new Map(f),reverseType:g,rollupConfig:p,showSearchBar:C,searchValue:S,selectDistinctColumns:b,selectedSearchColumns:w,invertSearchColumns:y,pendingDataMap:this.hydratePendingDataMap(O,T),frozenColumns:E,columnHeaderGroups:ke.parseColumnHeaderGroups(e,(r=P??((i=e.layoutHints)===null||i===void 0?void 0:i.columnGroups))!==null&&r!==void 0?r:[]).groups}}hydrateQuickFilters(e,t,r){var i=t.map(a=>{var[l,s]=a,{text:o}=s,u=null;try{var d=ke.getColumn(e,l);d!=null&&(u=this.tableUtils.makeQuickFilter(d,o,r))}catch(h){mi.error("hydrateQuickFilters error with",o,h)}return[l,{text:o,filter:u}]});return new Map(i)}dehydrateAdvancedFilters(e,t){return[...t].map(r=>{var[i,a]=r,l=ke.getColumn(e,i);L(l);var s=this.dehydrateAdvancedFilterOptions(l,a.options);return[i,{options:s}]})}hydrateAdvancedFilters(e,t,r){var i=t.map(a=>{var[l,s]=a,o=ke.getColumn(e,l);L(o);var u=this.hydrateAdvancedFilterOptions(o,s.options),d=null;try{var h=ke.getColumn(e,l);h!=null&&(d=this.tableUtils.makeAdvancedFilter(o,u,r))}catch(v){mi.error("hydrateAdvancedFilters error with",u,v)}return[l,{options:u,filter:d}]});return new Map(i)}dehydrateAdvancedFilterOptions(e,t){var{selectedValues:r}=t,i=$o(t,Ep);return Ir({selectedValues:r?.map(a=>this.dehydrateValue(a,e?.type))},i)}hydrateAdvancedFilterOptions(e,t){var{selectedValues:r}=t,i=$o(t,Op);return Ir({selectedValues:r?.map(a=>this.hydrateValue(a,e?.type))},i)}dehydratePendingDataMap(e,t){return[...t].map(r=>{var[i,{data:a}]=r;return[i,{data:[...a].map(l=>{var[s,o]=l;return[e[s].name,this.dehydrateValue(o,e[s].type)]})}]})}hydratePendingDataMap(e,t){var r=new Map,i=a=>(r.has(a)||r.set(a,e.findIndex(l=>{var{name:s}=l;return s===a})),r.get(a));return new Map(t.map(a=>{var[l,{data:s}]=a;return[l,{data:new Map(s.map(o=>{var u,[d,h]=o,v=i(d);return L(v),[(u=i(d))!==null&&u!==void 0?u:null,this.hydrateValue(h,e[v].type)]}))}]}))}dehydrateValue(e,t){return x.isDateType(t)?this.dehydrateDateTime(e):x.isLongType(t)?ke.dehydrateLong(e):e}hydrateValue(e,t){return x.isDateType(t)?this.hydrateDateTime(e):x.isLongType(t)?this.hydrateLong(e):e}dehydrateDateTime(e){return e!=null?this.dh.i18n.DateTimeFormat.format(Tn.FULL_DATE_FORMAT,e):null}hydrateDateTime(e){return e!=null?this.dh.i18n.DateTimeFormat.parse(Tn.FULL_DATE_FORMAT,e):null}hydrateLong(e){return e!=null?this.dh.LongWrapper.ofString(e):null}hydrateSort(e,t){var{dh:r}=this;return t.map(i=>{var{column:a,isAbs:l,direction:s}=i;if(s===x.sortDirection.reverse)return r.Table.reverse();var o=typeof a=="string"?ke.getColumnByName(e,a):ke.getColumn(e,a);if(o!=null){var u=o.sort();return l&&(u=u.abs()),s===x.sortDirection.descending?u=u.desc():u=u.asc(),u}return null}).filter(i=>i!=null&&i.direction!==x.sortDirection.reverse)}applyTableSettings(e,t,r){var{columns:i}=e,a=[];t.quickFilters&&(a=ke.getFiltersFromFilterMap(this.hydrateQuickFilters(i,t.quickFilters,r)));var l=[];t.advancedFilters&&(l=ke.getFiltersFromFilterMap(this.hydrateAdvancedFilters(i,t.advancedFilters,r)));var s=this.getFiltersFromInputFilters(i,t.inputFilters,r),o=[];t.sorts&&(o=this.hydrateSort(i,t.sorts));var u=[...a,...l],{partition:d,partitionColumn:h}=t;if(d!=null&&h!=null){var v=ke.getColumnByName(i,h);if(v){var m=v.filter().eq(this.dh.FilterValue.ofString(d));u=[m,...u]}}u=[...s,...u],e.applyFilter(u),e.applySort(o)}getFiltersFromInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],r=arguments.length>2?arguments[2]:void 0;return t.map(i=>{var{name:a,type:l,value:s}=i,o=e.find(u=>{var{name:d,type:h}=u;return d===a&&h===l});if(o)try{return this.tableUtils.makeQuickFilter(o,s,r)}catch(u){mi.debug("Unable to create input filter",u)}return null}).filter(i=>i!=null)}rangeSetFromRanges(e){var{dh:t}=this,r=e.slice().sort((i,a)=>(L(i.startRow),L(a.startRow),i.startRow-a.startRow)).map(i=>{var{startRow:a,endRow:l}=i;return L(a),L(l),t.RangeSet.ofRange(a,l)});return t.RangeSet.ofRanges(r)}}const fe=ke;function zo(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function Rl(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){zo(a,r,i,l,s,"next",o)}function s(o){zo(a,r,i,l,s,"throw",o)}l(void 0)})}}function dn(n,e,t){return e=Np(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Np(n){var e=Ip(n,"string");return typeof e=="symbol"?e:String(e)}function Ip(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Nt=ge.module("IrisGridCopyHandler");class Ee extends R.Component{static getStatusMessageText(e,t){switch(e){case Ee.COPY_STATES.CONFIRMATION_REQUIRED:return"Are you sure you want to copy ".concat(t.toLocaleString()," rows to your clipboard?");case Ee.COPY_STATES.CLICK_REQUIRED:return"Fetched ".concat(t.toLocaleString()," rows!");case Ee.COPY_STATES.FETCH_ERROR:return"Unable to copy data.";case Ee.COPY_STATES.FETCH_IN_PROGRESS:return"Fetching ".concat(t.toLocaleString()," rows for clipboard...");case Ee.COPY_STATES.DONE:return"Copied to Clipboard!";default:return""}}static getCopyButtonText(e){switch(e){case Ee.BUTTON_STATES.FETCH_IN_PROGRESS:return"Fetching";case Ee.BUTTON_STATES.CLICK_TO_COPY:return"Click to Copy";case Ee.BUTTON_STATES.RETRY:return"Retry";default:return"Copy"}}constructor(e){super(e),dn(this,"textData",void 0),dn(this,"hideTimer",void 0),dn(this,"fetchPromise",void 0),this.handleBackgroundClick=this.handleBackgroundClick.bind(this),this.handleCancelClick=this.handleCancelClick.bind(this),this.handleCopyClick=this.handleCopyClick.bind(this),this.handleHideTimeout=this.handleHideTimeout.bind(this),this.state={error:void 0,copyState:Ee.COPY_STATES.IDLE,buttonState:Ee.BUTTON_STATES.COPY,isShown:!1,rowCount:0}}componentDidMount(){var{copyOperation:e}=this.props;e!=null&&this.startCopy()}componentDidUpdate(e){var{copyOperation:t}=this.props;e.copyOperation!==t&&this.startCopy()}componentWillUnmount(){this.stopCopy()}startCopy(){Nt.debug2("startCopy"),this.stopCopy();var{copyOperation:e}=this.props;if(e==null){Nt.debug2("No copy operation set, cancelling out"),this.setState({isShown:!1});return}var{ranges:t,error:r}=e;if(r!=null){Nt.debug("Showing copy error",r),this.setState({isShown:!0,copyState:Ee.COPY_STATES.DONE,error:r}),this.startHideTimer();return}var i=U.rowCount(t);this.setState({rowCount:i,isShown:!0,error:void 0}),i>Ee.NO_PROMPT_THRESHOLD?this.setState({buttonState:Ee.BUTTON_STATES.COPY,copyState:Ee.COPY_STATES.CONFIRMATION_REQUIRED}):this.startFetch()}stopCopy(){this.textData=void 0,this.stopFetch(),this.stopHideTimer()}handleBackgroundClick(){Nt.debug2("handleBackgroundClick");var{copyState:e}=this.state;e===Ee.COPY_STATES.DONE&&this.setState({isShown:!1})}handleCancelClick(){Nt.debug2("handleCancelClick"),this.stopFetch(),this.setState({isShown:!1})}handleCopyClick(){var e=this;return Rl(function*(){if(Nt.debug2("handleCopyClick"),e.textData!=null)try{yield e.copyText(e.textData),e.showCopyDone()}catch(t){Nt.error("Error copying text",t),e.setState({error:"Unable to copy. Verify your browser permissions."})}else e.startFetch()})()}handleHideTimeout(){Nt.debug2("handleHideTimeout"),this.stopHideTimer(),this.setState({isShown:!1})}copyText(e){var t=this;return Rl(function*(){Nt.debug2("copyText",e),t.textData=e,yield _a(e)})()}showCopyDone(){this.setState({copyState:Ee.COPY_STATES.DONE}),this.startHideTimer()}startFetch(){var e=this;return Rl(function*(){e.stopFetch(),e.setState({buttonState:Ee.BUTTON_STATES.FETCH_IN_PROGRESS,copyState:Ee.COPY_STATES.FETCH_IN_PROGRESS});var{model:t,copyOperation:r}=e.props,{ranges:i,includeHeaders:a,userColumnWidths:l,movedColumns:s,formatValues:o}=r;Nt.debug("startFetch",i);var u=fe.getHiddenColumns(l),d=K.getModelRanges(i,s);if(u.length>0){var h=u.map(U.makeColumn);d=U.subtractRangesFromRanges(d,h)}var v=o!=null&&o?(f,g)=>t.displayString(f,g.type,g.name):f=>"".concat(f);e.fetchPromise=st.makeCancelable(t.textSnapshot(d,a,v));try{var m=yield e.fetchPromise;e.fetchPromise=void 0;try{yield e.copyText(m),e.showCopyDone()}catch(f){Nt.error("Error copying text",f),e.setState({buttonState:Ee.BUTTON_STATES.CLICK_TO_COPY,copyState:Ee.COPY_STATES.CLICK_REQUIRED})}}catch(f){f instanceof Zd?Nt.debug("User cancelled copy."):(Nt.error("Error fetching contents",f),e.fetchPromise=void 0,e.setState({buttonState:Ee.BUTTON_STATES.RETRY,copyState:Ee.COPY_STATES.FETCH_ERROR}))}})()}stopFetch(){this.fetchPromise&&(Nt.debug2("stopFetch"),this.fetchPromise.cancel(),this.fetchPromise=void 0)}startHideTimer(){this.stopHideTimer(),this.hideTimer=setTimeout(this.handleHideTimeout,Ee.HIDE_TIMEOUT)}stopHideTimer(){this.hideTimer!=null&&(clearTimeout(this.hideTimer),this.hideTimer=void 0)}render(){var{onEntering:e,onEntered:t,onExiting:r,onExited:i}=this.props,{buttonState:a,copyState:l,isShown:s,rowCount:o,error:u}=this.state,d=l===Ee.COPY_STATES.DONE?"fade":"copy-slide-up",h=Ee.getCopyButtonText(a),v=u??Ee.getStatusMessageText(l,o),m=l!==Ee.COPY_STATES.DONE,f=a===Ee.BUTTON_STATES.FETCH_IN_PROGRESS,g=l===Ee.COPY_STATES.DONE;return c.jsxs($a,{animation:d,isShown:s,className:re("iris-grid-copy-handler",{"copy-done":g}),onClick:this.handleBackgroundClick,onEntering:e,onEntered:t,onExiting:r,onExited:i,children:[c.jsx("div",{className:"status-message",children:c.jsx("span",{children:v})}),c.jsx(vr,{in:m,timeout:ze.transitionMs,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0,children:c.jsxs("div",{className:"buttons-container",children:[c.jsx("button",{type:"button",className:"btn btn-outline-secondary btn-cancel",onClick:this.handleCancelClick,children:"Cancel"}),c.jsxs(Y,{kind:f?"tertiary":"primary",className:re("btn-copy",{"btn-spinner":f}),onClick:this.handleCopyClick,disabled:f,children:[f&&c.jsx(Dn,{className:"loading-spinner-vertical-align"}),h]})]})})]})}}dn(Ee,"NO_PROMPT_THRESHOLD",1e4);dn(Ee,"HIDE_TIMEOUT",3e3);dn(Ee,"COPY_STATES",{IDLE:"IDLE",CONFIRMATION_REQUIRED:"CONFIRMATION_REQUIRED",FETCH_IN_PROGRESS:"FETCH_IN_PROGRESS",FETCH_ERROR:"FETCH_ERROR",CLICK_REQUIRED:"CLICK_REQUIRED",DONE:"DONE"});dn(Ee,"BUTTON_STATES",{COPY:"COPY",FETCH_IN_PROGRESS:"FETCH_IN_PROGRESS",CLICK_TO_COPY:"CLICK_TO_COPY",RETRY:"RETRY"});dn(Ee,"defaultProps",{copyOperation:null,onEntering:()=>{},onEntered:()=>{},onExiting:()=>{},onExited:()=>{}});const Ap=Ee;function Ca(n,e,t){return e=Mp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Mp(n){var e=xp(n,"string");return typeof e=="symbol"?e:String(e)}function xp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Dh extends R.PureComponent{constructor(e){super(e),Ca(this,"inputField",void 0),Ca(this,"initialValue",void 0),Ca(this,"debouncedSendUpdate",void 0);var{debounceMs:t}=e;this.debouncedSendUpdate=ct(this.sendUpdate.bind(this),t),this.handleCancel=this.handleCancel.bind(this),this.handleChange=this.handleChange.bind(this),this.handleCommit=this.handleCommit.bind(this),this.handleFocus=this.handleFocus.bind(this),this.handleBlur=this.handleBlur.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleContextMenu=this.handleContextMenu.bind(this),this.inputField=null;var{value:r}=e;this.initialValue=r,this.state={isChanged:!1,value:r}}componentDidMount(){var e;(e=this.inputField)===null||e===void 0||e.focus()}componentDidUpdate(e){var{debounceMs:t}=this.props;e.debounceMs!==t&&(this.debouncedSendUpdate.flush(),this.debouncedSendUpdate=ct(this.sendUpdate.bind(this),t))}componentWillUnmount(){this.debouncedSendUpdate.cancel()}setValue(e){this.initialValue=e,this.setState({value:e})}focus(){var e;(e=this.inputField)===null||e===void 0||e.focus()}handleChange(e){var{value:t}=e.target;this.setState({value:t,isChanged:!0}),this.debouncedSendUpdate(t)}handleCancel(){this.debouncedSendUpdate.cancel();var{initialValue:e}=this,{isChanged:t}=this.state;t&&this.sendUpdate(e);var{onDone:r}=this.props;r()}handleCommit(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;this.debouncedSendUpdate.flush();var{onDone:r}=this.props;r(e,t)}handleFocus(){var e;(e=this.inputField)===null||e===void 0||e.select()}handleBlur(e){var{relatedTarget:t}=e;t!=null&&t.classList.contains("context-menu-container")?this.handleCommit(!1,!0):t!=null&&t.classList.contains("advanced-filter-button")?this.handleCommit(!1,!1):this.handleCommit(!0,!0)}handleTab(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;this.debouncedSendUpdate.flush();var{onTab:t}=this.props;t(e)}handleKeyDown(e){switch(e.key){case"Escape":e.stopPropagation(),e.preventDefault(),this.handleCancel();break;case"Enter":e.stopPropagation(),e.preventDefault(),this.handleCommit();break;case"Tab":e.stopPropagation(),e.preventDefault(),this.handleTab(e.shiftKey);break}}handleContextMenu(e){var{onContextMenu:t}=this.props;t(e)}sendUpdate(e){var{onChange:t}=this.props;t(e)}render(){var{className:e,style:t,isAdvancedFilterSet:r,onAdvancedFiltersTriggered:i}=this.props,{value:a}=this.state;return c.jsxs("div",{style:t,className:"iris-grid-input-autosized-wrapper","data-value":a,children:[c.jsx("input",{ref:l=>{this.inputField=l},className:re("iris-grid-input-field",e),type:"text",value:a,onBlur:this.handleBlur,onFocus:this.handleFocus,onChange:this.handleChange,onKeyDown:this.handleKeyDown,onContextMenu:this.handleContextMenu,autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",spellCheck:"false"}),c.jsx("div",{className:"advanced-filter-button-container",children:c.jsx(Y,{kind:"ghost",className:re("btn-link-icon advanced-filter-button",{"filter-set":r}),onClick:i,onContextMenu:this.handleContextMenu,children:c.jsxs("div",{className:"fa-layers ",children:[c.jsx(ae,{icon:ps,className:"filter-solid"}),c.jsx(ae,{icon:ya,className:"filter-light"})]})})})]})}}Ca(Dh,"defaultProps",{style:{},className:"",value:"",isAdvancedFilterSet:!1,onAdvancedFiltersTriggered:()=>{},onChange:()=>{},onDone:()=>{},onTab:()=>{},onContextMenu:()=>{},debounceMs:150});const Lp=Dh;function kp(n,e,t){return e=jp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function jp(n){var e=_p(n,"string");return typeof e=="symbol"?e:String(e)}function _p(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Hp extends In{constructor(e){super(),kp(this,"irisGrid",void 0),this.irisGrid=e}onDown(e){var{selectedRanges:t}=this.irisGrid.state;return e.key==="c"&&Kn.isModifierKeyDown(e)?(fe.isValidSnapshotRanges(t)?this.irisGrid.copyRanges(t):this.irisGrid.copyRanges(t,!1,!1,"Invalid copy ranges"),!0):!1}}const Up=Hp;function Vp(n,e,t){return e=Bp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Bp(n){var e=Gp(n,"string");return typeof e=="symbol"?e:String(e)}function Gp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class $p extends In{constructor(e){super(),Vp(this,"irisGrid",void 0),this.irisGrid=e}onDown(e){if(dr.TABLE.REVERSE.matchesEvent(e)){if(!this.irisGrid.isReversible())return!1;var{reverseType:t}=this.irisGrid.state;return t===x.REVERSE_TYPE.NONE?this.irisGrid.reverse(x.REVERSE_TYPE.POST_SORT):this.irisGrid.reverse(x.REVERSE_TYPE.NONE),!0}return!1}}const Wp=$p;function zp(n,e,t){return e=Kp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Kp(n){var e=Yp(n,"string");return typeof e=="symbol"?e:String(e)}function Yp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class qp extends In{constructor(e){super(),zp(this,"irisGrid",void 0),this.irisGrid=e}onDown(e){return dr.TABLE.CLEAR_FILTERS.matchesEvent(e)?(this.irisGrid.clearAllFilters(),!0):!1}}const Xp=qp;function Qp(n,e,t){return e=Zp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Zp(n){var e=Jp(n,"string");return typeof e=="symbol"?e:String(e)}function Jp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class eC extends Qe{constructor(e){super(850),Qp(this,"irisGrid",void 0),this.irisGrid=e}destroyColumnTooltip(){this.irisGrid.setState({overflowButtonTooltipProps:null})}setCursor(e){return this.isHoveringOverflowButton(e)?(this.cursor="pointer",{stopPropagation:!1,preventDefault:!1}):(this.cursor=null,!1)}getButtonPosition(e){var{x:t,y:r,column:i,row:a}=e;if(i==null||a==null)return null;var{renderer:l,grid:s,state:o,props:u}=this.irisGrid;if(!s)return null;var{metrics:d}=o,{model:h}=u,{canvasContext:v}=s,m=s.getTheme(),f={context:v,mouseX:t,mouseY:r,metrics:d,model:h,theme:m},{left:g,top:p,width:C,height:S}=l.getCellOverflowButtonPosition(f);return g==null||C==null||p==null||S==null?null:{left:g,top:p,width:C,height:S}}isHoveringOverflowButton(e){var t,{x:r,y:i}=e,{left:a,top:l,width:s,height:o}=(t=this.getButtonPosition(e))!==null&&t!==void 0?t:{};if(a==null||s==null||l==null||o==null)return!1;var{renderer:u,grid:d,state:h,props:v}=this.irisGrid;if(!d)return!1;var{metrics:m}=h,{model:f}=v,{canvasContext:g}=d,p=d.getTheme(),C={context:g,mouseX:r,mouseY:i,metrics:m,model:f,theme:p};return u.shouldRenderOverflowButton(C)&&r>=a&&r<=a+s&&i>=l&&i<=l+o}onMove(e){if(this.isHoveringOverflowButton(e)){var{overflowButtonTooltipProps:t}=this.irisGrid.state,r=this.getButtonPosition(e);ht(t,r)||this.irisGrid.setState({overflowButtonTooltipProps:r})}else this.destroyColumnTooltip();return this.setCursor(e)}onWheel(e){return this.destroyColumnTooltip(),this.onMove(e)}onDown(e){this.destroyColumnTooltip();var{column:t,row:r}=e;return this.isHoveringOverflowButton(e)&&this.irisGrid.setState({showOverflowModal:!0,overflowText:this.irisGrid.getValueForCell(t,r)}),!1}onContextMenu(){return this.destroyColumnTooltip(),!1}onLeave(){return this.destroyColumnTooltip(),!1}}const tC=eC;function rC(n,e,t){return e=nC(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function nC(n){var e=iC(n,"string");return typeof e=="symbol"?e:String(e)}function iC(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class aC extends Qe{constructor(e){super(),rC(this,"irisGrid",void 0),this.irisGrid=e,this.cursor=null}isActive(){var{isSelectingColumn:e}=this.irisGrid.props;return e}isValidColumn(e){if(e==null)return!1;var{columnSelectionValidator:t}=this.irisGrid.props;return t!=null?t(e):!0}updateColumnSelectionStatus(){var{columnSelectionValidator:e}=this.irisGrid.props;e?.(null)}getTableColumn(e){if(e==null)return null;var{model:t}=this.irisGrid.props,r=this.irisGrid.getModelColumn(e);return r==null?null:t.columns[r]}onMove(e){if(!this.isActive())return!1;var{columnAllowedCursor:t,columnNotAllowedCursor:r}=this.irisGrid.props,{column:i}=e,a=this.getTableColumn(i);return this.isValidColumn(a)?(this.cursor=t,this.irisGrid.setState({hoverSelectColumn:i})):(this.cursor=r,this.irisGrid.setState({hoverSelectColumn:null})),!0}onWheel(e){if(!this.isActive())return!1;var{columnAllowedCursor:t,columnNotAllowedCursor:r}=this.irisGrid.props,{column:i}=e,a=this.getTableColumn(i);return this.isValidColumn(a)?(this.cursor=t,this.irisGrid.setState({hoverSelectColumn:i})):(this.cursor=r,this.irisGrid.setState({hoverSelectColumn:null})),{preventDefault:!1,stopPropagation:!1}}onLeave(){return this.isActive()&&this.irisGrid.setState({hoverSelectColumn:null}),this.updateColumnSelectionStatus(),!1}onDown(){return this.isActive()}onClick(e){if(!this.isActive())return!1;var{column:t}=e,r=this.getTableColumn(t);return r!=null&&this.isValidColumn(r)&&this.irisGrid.selectColumn(r),!0}}const lC=aC;function sC(n,e,t){return e=oC(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function oC(n){var e=uC(n,"string");return typeof e=="symbol"?e:String(e)}function uC(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class dC extends Qe{constructor(e){super(),sC(this,"irisGrid",void 0),this.irisGrid=e}hideColumnTooltip(){var{tooltip:e}=this.irisGrid;e&&(e.stopTimer(),e.hide())}onDown(){return this.hideColumnTooltip(),!1}onContextMenu(){return this.hideColumnTooltip(),!1}onWheel(){return this.hideColumnTooltip(),!1}onLeave(e,t,r){var{relatedTarget:i}=r instanceof MouseEvent?r:r.nativeEvent,{tooltip:a}=this.irisGrid;if(!a)return!1;var l=a.popper.current;return l&&i instanceof Element&&l.element.contains(i)||this.hideColumnTooltip(),!1}onMove(e){var{column:t,row:r,columnHeaderDepth:i}=e,{shownColumnTooltip:a}=this.irisGrid.state,l=null;return t!==null&&r===null&&i===0&&(l=t),l!==a&&this.irisGrid.setState({shownColumnTooltip:l}),!1}}const hC=dC;function Fh(n,e,t){return e=cC(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function cC(n){var e=vC(n,"string");return typeof e=="symbol"?e:String(e)}function vC(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Wa extends R.Component{constructor(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:Wa.defaultProps;super(e),Fh(this,"inputRef",void 0),this.handleInputChange=this.handleInputChange.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.inputRef=Me.createRef()}handleInputChange(){var{onChange:e}=this.props;this.inputRef.current&&e(this.inputRef.current.value)}closeContextMenu(){var{forwardedProps:e}=this.props,{closeMenu:t}=e;t(!0)}revertToDefault(){var{onChange:e}=this.props;e(null)}returnFocusToContextMenu(){var e=Lv.getClosestByClassName(this.inputRef.current,"context-menu-container");e instanceof HTMLElement&&e.focus()}handleKeyDown(e){switch(e.key){case"Enter":e.stopPropagation(),this.closeContextMenu();break;case"Escape":e.stopPropagation(),this.revertToDefault(),this.closeContextMenu();break;case"ArrowRight":case"ArrowLeft":e.stopPropagation();break;case"ArrowUp":case"ArrowDown":this.returnFocusToContextMenu();break;default:e.stopPropagation()}}render(){var{formatString:e,forwardedProps:t,placeholder:r,title:i}=this.props,{menuItem:{description:a},iconElement:l}=t;return c.jsxs("div",{className:"form-group flex-grow mb-0",children:[c.jsxs("div",{className:"custom-format-title",children:[c.jsx("span",{className:"icon",children:l}),c.jsxs("label",{className:"title mb-0",htmlFor:"custom-format-input",children:[i,a!=null&&c.jsx(Jt,{children:a})]})]}),c.jsx("div",{className:"pl-2 pr-2 pb-2",children:c.jsx("input",{id:"custom-format-input",className:"form-control text-right mb-0",type:"text",defaultValue:e,ref:this.inputRef,placeholder:r,onKeyDown:this.handleKeyDown,onChange:this.handleInputChange,autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",spellCheck:"false"})})]})}}Fh(Wa,"defaultProps",{formatString:"",forwardedProps:{menuItem:{},closeMenu(n){},iconElement:null},placeholder:"",title:"",onChange(n){}});const mC=Wa;class fC{static isDefaultSelected(e){return!e||![pa.TYPE_CONTEXT_CUSTOM,pa.TYPE_CONTEXT_PRESET].includes(e.type)}static isCustomSelected(e){return e!=null&&e.type===pa.TYPE_CONTEXT_CUSTOM}static makeOption(e,t,r,i){return{title:e,description:e,group:r,format:t,isSelected:i}}static makeCustomFormatOption(e,t,r,i,a){return{title:e.label,description:e.label,format:e,group:t,isSelected:i,menuElement:c.jsx(mC,{formatString:e.formatString,title:e.label,placeholder:r,onChange:a})}}}const Bt=fC;function Ms(n,e,t){return e=gC(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function gC(n){var e=pC(n,"string");return typeof e=="symbol"?e:String(e)}function pC(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class xt{static getOptions(e,t){var r=new Date,i=[{group:xt.dateGroup,formatString:"yyyy-MM-dd"},{group:xt.dateGroup,formatString:"MM-dd-yyyy"},{group:xt.timeGroup,formatString:"HH:mm:ss"},{group:xt.timeGroup,formatString:"HH:mm:ss.SSS"},{group:xt.timeGroup,formatString:"HH:mm:ss.SSSSSSSSS"},{group:xt.dateTimeGroup,formatString:"yyyy-MM-dd HH:mm:ss"},{group:xt.dateTimeGroup,formatString:"yyyy-MM-dd HH:mm:ss.SSS"},{group:xt.dateTimeGroup,formatString:"yyyy-MM-dd HH:mm:ss.SSSSSSSSS"}],a=i.map(s=>{var o=wn.makeFormat("",s.formatString,wn.TYPE_CONTEXT_PRESET),u=e.getFormattedString(r,x.dataType.DATETIME,"",o);return Bt.makeOption(u,o,s.group,wn.isSameFormat(o,t))}),l=Bt.makeOption("Default",null,xt.dateGroup,Bt.isDefaultSelected(t));return[l,...a]}}Ms(xt,"dateGroup",10);Ms(xt,"timeGroup",20);Ms(xt,"dateTimeGroup",30);const CC=xt;function za(n,e,t){return e=SC(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function SC(n){var e=bC(n,"string");return typeof e=="symbol"?e:String(e)}function bC(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Ot{static getOptions(e,t,r){var i=[{format:Yt.FORMAT_PERCENT,group:Ot.presetGroup},{format:Yt.FORMAT_BASIS_POINTS,group:Ot.presetGroup},{format:Yt.FORMAT_MILLIONS,group:Ot.presetGroup},{format:Yt.FORMAT_SCIENTIFIC_NOTATION,group:Ot.presetGroup},{format:Yt.FORMAT_ROUND,group:Ot.presetRoundGroup},{format:Yt.FORMAT_ROUND_TWO_DECIMALS,group:Ot.presetRoundGroup},{format:Yt.FORMAT_ROUND_FOUR_DECIMALS,group:Ot.presetRoundGroup}],a=Bt.makeOption("Default",null,Ot.defaultGroup,Bt.isDefaultSelected(t)),l=i.map(d=>Bt.makeOption(d.format.label,d.format,d.group,Yt.isSameFormat(d.format,t))),s=Bt.isCustomSelected(t),o=s?t:Yt.makeCustomFormat(),u=Bt.makeCustomFormatOption(o,Ot.customGroup,Yt.DEFAULT_FORMAT_STRING,s,d=>{if(d!=null){var h=Yt.makeCustomFormat(d);Yt.isValid(e,h)&&r(h)}else r(null)});return[a,...l,u]}}za(Ot,"defaultGroup",10);za(Ot,"presetGroup",20);za(Ot,"presetRoundGroup",30);za(Ot,"customGroup",40);const wC=Ot;function xs(n,e,t){return e=yC(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function yC(n){var e=TC(n,"string");return typeof e=="symbol"?e:String(e)}function TC(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Lr{static getOptions(e,t,r){var i=[{format:cn.FORMAT_MILLIONS,group:Lr.presetGroup},{format:cn.FORMAT_SCIENTIFIC_NOTATION,group:Lr.presetGroup}],a=Bt.makeOption("Default",null,Lr.defaultGroup,Bt.isDefaultSelected(t)),l=i.map(d=>Bt.makeOption(d.format.label,d.format,d.group,cn.isSameFormat(d.format,t))),s=Bt.isCustomSelected(t),o=s?t:cn.makeCustomFormat(),u=Bt.makeCustomFormatOption(o,Lr.customGroup,cn.DEFAULT_FORMAT_STRING,s,d=>{if(d!=null){var h=cn.makeCustomFormat(d);cn.isValid(e,h)&&r(h)}else r(null)});return[a,...l,u]}}xs(Lr,"defaultGroup",10);xs(Lr,"presetGroup",20);xs(Lr,"customGroup",30);const EC=Lr;function Ko(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 Yo(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ko(Object(t),!0).forEach(function(r){Gt(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ko(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Gt(n,e,t){return e=OC(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function OC(n){var e=PC(n,"string");return typeof e=="symbol"?e:String(e)}function PC(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var qo=ge.module("IrisGridContextMenuHandler"),RC=150,Xo="yyyy-MM-dd HH:mm:ss.SSSSSSSSS";class $ extends Qe{static getQuickFilterCondition(e,t,r){return e&&r==="&&"?e.and(t):e&&r==="||"?e.or(t):t}static getQuickFilterText(e,t,r){return r&&e!=null?"".concat(e," ").concat(r," ").concat(t):t}static getOperatorAsText(e){return e==="&&"?"And":"Or"}static getRowOptionFormatted(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:30;return"".concat(e,' "').concat(Er.truncate(t,r-e.length-3),'"')}constructor(e,t){super(),Gt(this,"irisGrid",void 0),Gt(this,"debouncedUpdateCustomFormat",void 0),Gt(this,"dh",void 0),this.debouncedUpdateCustomFormat=ct(e.handleFormatSelection,RC),this.dh=t,this.irisGrid=e}componentWillUnmount(){this.debouncedUpdateCustomFormat.flush()}getHeaderActions(e,t){var{irisGrid:r}=this,{column:i}=t;L(i);var{model:a}=r.props,{columns:l}=a,s=l[e],o=[],{metrics:u,reverseType:d,quickFilters:h,advancedFilters:v,searchFilter:m}=r.state,f=r.getTheme();L(u);var{filterIconColor:g,filterBarActiveColor:p,contextMenuSortIconColor:C,contextMenuReverseIconColor:S}=f,b=a.sort,w=x.getSortForColumn(b,s.name),y=d!==x.REVERSE_TYPE.NONE,{userColumnWidths:T}=u,E=[...T.values()].some(F=>F===0),P=a.getColumnHeaderParentGroup(e,0)===void 0&&!(xe(a)&&a.hasExpandableRows),O=a.isColumnFrozen(e),D=a.isColumnSortable(e);if(o.push({title:"Hide Column",group:$.GROUP_HIDE_COLUMNS,action:()=>{this.irisGrid.hideColumnByVisibleIndex(i)}}),o.push({title:O?"Unfreeze Column":"Freeze Column",group:$.GROUP_HIDE_COLUMNS,disabled:!P,action:()=>{O?this.irisGrid.unFreezeColumnByColumnName(s.name):this.irisGrid.freezeColumnByColumnName(s.name)},order:10}),o.push({title:"Show All Columns",group:$.GROUP_HIDE_COLUMNS,action:()=>{this.irisGrid.showAllColumns()},disabled:!E}),o.push({title:"Quick Filters",icon:Nr,iconColor:p,shortcut:dr.TABLE.TOGGLE_QUICK_FILTER,group:$.GROUP_FILTER,order:10,action:()=>{this.irisGrid.toggleFilterBar(i)}}),o.push({title:"Advanced Filters",icon:v.get(e)?ps:ya,iconColor:g,group:$.GROUP_FILTER,order:20,action:()=>{this.irisGrid.handleAdvancedMenuOpened(i)}}),o.push({title:"Clear Table Filters",group:$.GROUP_FILTER,order:40,shortcut:dr.TABLE.CLEAR_FILTERS,action:()=>{this.irisGrid.clearAllFilters()},disabled:!(h.size>0||v.size>0||m!=null)}),o.push({title:"Sort by",icon:Nr,iconColor:C,group:$.GROUP_SORT,order:10,actions:this.sortByActions(s,e,w),disabled:!D}),o.push({title:"Add Additional Sort",disabled:w&&b.length===1||y&&b.length===1||w&&y&&b.length===2||b.length===0||!D,group:$.GROUP_SORT,order:20,actions:this.additionalSortActions(s,e)}),o.push({title:"Clear Table Sorting",disabled:b.length===0||y&&b.length===1,group:$.GROUP_SORT,action:()=>{this.irisGrid.sortColumn(i,$.COLUMN_SORT_DIRECTION.none)},order:30}),o.push({title:d===x.REVERSE_TYPE.NONE?"Reverse Table":"Clear Reverse Table",icon:Nr,iconColor:S,group:$.GROUP_SORT,order:40,disabled:!a.isReversible,shortcut:dr.TABLE.REVERSE,action:()=>{d===x.REVERSE_TYPE.NONE?this.irisGrid.reverse(x.REVERSE_TYPE.POST_SORT):this.irisGrid.reverse(x.REVERSE_TYPE.NONE)}}),o.push({title:"Copy Column Name",group:$.GROUP_COPY,action:()=>{var F;_a((F=a.textForColumnHeader(e))!==null&&F!==void 0?F:"").catch(A=>qo.error("Unable to copy header",A))}}),x.isDateType(s.type))o.push({title:"Date/Time Format",group:$.GROUP_FORMAT,actions:this.dateFormatActions(s)});else if(x.isNumberType(s.type)){var N;o.push({title:"Number Format",group:$.GROUP_FORMAT,actions:(N=this.numberFormatActions(s))!==null&&N!==void 0?N:void 0})}return o}getCellActions(e,t,r){L(e);var{dh:i,irisGrid:a}=this,{column:l,row:s}=r,{model:o,canCopy:u}=a.props,{columns:d}=o,h=a.getModelRow(s);L(h);var v=o.valueForCell(e,h),m=o.textForCell(e,h),f=d[e],g=[],{quickFilters:p}=a.state,C=a.getTheme(),{filterIconColor:S}=C,{settings:b}=a.props,w=new wn(i,{timeZone:b?.timeZone,showTimeZone:!1,showTSeparator:!0,defaultDateTimeFormatString:Xo}),y=new wn(i,{timeZone:b?.timeZone,showTimeZone:b?.showTimeZone,showTSeparator:b?.showTSeparator,defaultDateTimeFormatString:Xo});if(f==null||s==null)return g;if(o.isFilterable(e)){var T={title:"Filter by Value",icon:Nr,iconColor:S,group:$.GROUP_FILTER,order:10,actions:[]};if(v==null)p.get(e)&&T.actions.push({title:"And",actions:this.nullFilterActions(f,p.get(e),"&&"),order:2,group:ce.groups.high}),T.actions.push(...this.nullFilterActions(f));else if(v==="")p.get(e)&&T.actions.push({title:"And",actions:this.emptyStringFilterActions(f,p.get(e),"&&"),order:2,group:ce.groups.high}),T.actions.push(...this.emptyStringFilterActions(f));else if(x.isBooleanType(f.type))p.get(e)&&T.actions.push({title:"Or",actions:this.booleanFilterActions(f,m,p.get(e),"||"),order:2,group:ce.groups.high}),T.actions.push(...this.booleanFilterActions(f,m));else if(x.isNumberType(f.type)||x.isCharType(f.type)){L(e);var E=x.isCharType(f.type)?String.fromCharCode(v):"".concat(v);p.get(e)&&T.actions.push({title:"And",actions:this.numberFilterActions(f,E,v,p.get(e),"&&"),order:2,group:ce.groups.high}),T.actions.push(...this.numberFilterActions(f,E,v,p.get(e)))}else if(x.isDateType(f.type)){var P=w.format(v),O=y.format(v);p.get(e)&&T.actions.push({title:"And",actions:this.dateFilterActions(f,P,O,v,p.get(e),"&&"),order:2,group:ce.groups.high}),T.actions.push(...this.dateFilterActions(f,P,O,v,p.get(e)))}else p.get(e)&&T.actions.push({title:"And",actions:this.stringFilterActions(f,m,v,p.get(e),"&&"),order:2,group:ce.groups.high}),T.actions.push(...this.stringFilterActions(f,m,v));T.actions!=null&&T.actions.length>0&&g.push(T)}if(xe(o)&&o.isRowExpandable(h)){var D=o.groupedColumns.length>0?o.depthForRow(h)-1:0,N=o.valueForCell(D,h),F=N==null?"null":o.textForCell(D,h);g.push({title:$.getRowOptionFormatted(o.isRowExpanded(h)?"Collapse":"Expand",F),group:$.GROUP_EXPAND_COLLAPSE,order:10,action:()=>{o.setRowExpanded(h,!o.isRowExpanded(h))}}),o.isExpandAllAvailable===!0&&g.push({title:$.getRowOptionFormatted("Expand All in",F),group:$.GROUP_EXPAND_COLLAPSE,order:20,action:()=>{o.setRowExpanded(h,!0,!0)}})}xe(o)&&o.hasExpandableRows&&o.isExpandAllAvailable===!0&&(g.push({title:"Expand Entire Table",group:$.GROUP_EXPAND_COLLAPSE,order:30,action:()=>{o.expandAll()}}),g.push({title:"Collapse Entire Table",group:$.GROUP_EXPAND_COLLAPSE,order:40,action:()=>{o.collapseAll()}}));var A={title:"Go to",iconColor:S,shortcut:dr.TABLE.GOTO_ROW,group:$.GROUP_GOTO,order:10,action:()=>this.irisGrid.toggleGotoRow("".concat(s+1),"".concat(v),f.name)};return g.push(A),u&&(g.push({title:"Copy Cell",group:$.GROUP_COPY,order:10,action:()=>{a.copyCell(l,s)}}),g.push({title:"Copy Cell Unformatted",group:$.GROUP_COPY,order:20,action:()=>{a.copyCell(l,s,!0)}})),g}getNumberValueEqualsFilter(e,t){var{dh:r}=this,i=e.filter();if(t===Number.POSITIVE_INFINITY)return r.FilterCondition.invoke("isInf",i).and(i.greaterThan(r.FilterValue.ofNumber(0)));if(t===Number.NEGATIVE_INFINITY)return r.FilterCondition.invoke("isInf",i).and(i.lessThan(r.FilterValue.ofNumber(0)));if(Number.isNaN(t))return r.FilterCondition.invoke("isNaN",i);var a=this.getFilterValueForNumberOrChar(e.type,t);return i.eq(a)}getFilterValueForNumberOrChar(e,t){var{dh:r}=this;return x.isCharType(e)?r.FilterValue.ofString(String.fromCharCode(t)):r.FilterValue.ofNumber(t)}onContextMenu(e,t,r){var{irisGrid:i}=this,{y:a,column:l,row:s,columnHeaderDepth:o}=e,u=i.getModelColumn(l),d=i.getModelRow(s),{model:h,canCopy:v}=i.props,{columns:m}=h,{metrics:f,isFilterBarShown:g,quickFilters:p,advancedFilters:C,selectedRanges:S}=i.state;L(f);var{columnHeaderHeight:b,gridY:w,columnHeaderMaxDepth:y}=f,T=[];if(u!=null&&d!=null){var E=h.valueForCell(u,d),P=h.textForCell(u,d),O=m[u],{onContextMenu:D}=i.props;O!=null&&T.push(...D({model:h,value:E,valueText:P,column:O,rowIndex:s,columnIndex:l,modelRow:d,modelColumn:u}))}return u!=null&&h.isFilterable(u)&&T.push({title:"Clear Column Filter",group:$.GROUP_FILTER,order:30,action:()=>{this.irisGrid.removeColumnFilter(u)},disabled:!(p.has(u)||C.has(u))}),(g?a<=w:a<=b*y&&o===0)?u!=null&&T.push(...this.getHeaderActions(u,e)):(u!=null&&d!=null&&T.push(...this.getCellActions(u,t,e)),v&&S.length>0&&(T.push({title:"Copy Selection",shortcut:Jd.COPY,group:$.GROUP_COPY,order:30,action:()=>{i.copyRanges(S)}}),T.push({title:"Copy Selection w/ Headers",group:$.GROUP_COPY,order:40,action:()=>{i.copyRanges(S,!0)}})),He(h)&&h.isEditable&&S.length>0&&T.push({title:"Delete Selected Rows",group:$.GROUP_EDIT,order:50,action:()=>{this.irisGrid.deleteRanges(S)}})),T.length===0?!1:(L(i.gridWrapper),ce.triggerMenu(i.gridWrapper,r.clientX,r.clientY,T),!0)}dateFormatActions(e){for(var t=this,{model:r}=this.irisGrid.props,{formatter:i}=r,a=i.getColumnFormat(e.type,e.name),l=CC.getOptions(i,a),s=[],o=function(){var{description:h,format:v,group:m,isSelected:f,title:g}=l[u];s.push({title:g,description:h,icon:f?Ta:void 0,group:m,order:u,action:()=>{var p=r.getColumnIndexByName(e.name);L(p),t.irisGrid.handleFormatSelection(p,v)}})},u=0;u<l.length;u+=1)o();return s}numberFormatActions(e){var t=this,{model:r}=this.irisGrid.props,{formatter:i}=r,{dh:a}=this,l=i.getColumnFormat(e.type,e.name),s,o=r.getColumnIndexByName(e.name);if(x.isDecimalType(e.type))s=wC.getOptions(a,l,v=>{L(o),this.debouncedUpdateCustomFormat(o,v)});else if(x.isIntegerType(e.type))s=EC.getOptions(a,l,v=>{L(o),this.debouncedUpdateCustomFormat(o,v)});else return qo.error("Invalid column type in numberFormatActions"),null;for(var u=[],d=function(){var{format:m,isSelected:f}=s[h];u.push(Yo(Yo({},s[h]),{},{icon:f?Ta:void 0,order:h,action:()=>{o===void 0&&m&&m.type===pa.TYPE_CONTEXT_CUSTOM||(L(o),t.irisGrid.handleFormatSelection(o,m))}}))},h=0;h<s.length;h+=1)d();return u}stringFilterActions(e,t,r,i,a){var{dh:l}=this,s=l.FilterValue.ofString(r),o=i;o||(o={filter:null,text:null});var{filter:u,text:d}=o,h=[],{model:v}=this.irisGrid.props,m=v.getColumnIndexByName(e.name),f=x.escapeQuickTextFilter(t);return L(m),h.push({menuElement:c.jsxs("div",{className:"iris-grid-filter-menu-item-value",children:[a?$.getOperatorAsText(a):""," ",'"',t,'"']}),order:1,group:ce.groups.high}),h.push({title:"text is exactly",description:"Show only rows where ".concat(e.name," is ").concat(r," (case sensitive)"),action:()=>{this.irisGrid.setQuickFilter(m,$.getQuickFilterCondition(u,e.filter().eq(s),a),$.getQuickFilterText(d,"".concat(f),a))},order:10,group:ce.groups.low}),h.push({title:"text is not exactly",description:"Show only rows where ".concat(e.name," is not ").concat(t," (case sensitive)"),action:()=>{this.irisGrid.setQuickFilter(m,$.getQuickFilterCondition(u,e.filter().notEq(s),a),$.getQuickFilterText(d,"!=".concat(f),a))},order:20,group:ce.groups.low}),h.push({title:"text contains",description:"Show only rows where ".concat(e.name," contains ").concat(t),action:()=>{this.irisGrid.setQuickFilter(m,$.getQuickFilterCondition(u,e.filter().isNull().not().and(e.filter().contains(s)),a),$.getQuickFilterText(d,"~".concat(f),a))},order:30,group:ce.groups.low}),h.push({title:"text does not contain",description:"Show only rows where ".concat(e.name," does not contain ").concat(r),action:()=>{this.irisGrid.setQuickFilter(m,$.getQuickFilterCondition(u,e.filter().isNull().or(e.filter().contains(s).not()),a),$.getQuickFilterText(d,"!~".concat(f),a))},order:40,group:ce.groups.low}),h.push({title:"text starts with",description:"Show only rows where ".concat(e.name," starts with ").concat(t),action:()=>{this.irisGrid.setQuickFilter(m,$.getQuickFilterCondition(u,e.filter().isNull().not().and(e.filter().invoke("startsWith",s)),a),$.getQuickFilterText(d,"".concat(f,"*"),a))},order:50,group:ce.groups.low}),h.push({title:"text ends with",description:"Show only rows where ".concat(e.name," ends with ").concat(t),action:()=>{this.irisGrid.setQuickFilter(m,$.getQuickFilterCondition(u,e.filter().isNull().not().and(e.filter().invoke("endsWith",s)),a),$.getQuickFilterText(d,"*".concat(f),a))},order:60,group:ce.groups.low}),h}numberFilterActions(e,t,r,i,a){var l=this.getFilterValueForNumberOrChar(e.type,r),s=null,o=null;i&&(s=i.filter,o=i.text);var u=[],d=r!==Number.POSITIVE_INFINITY&&r!==Number.NEGATIVE_INFINITY&&!Number.isNaN(r),{model:h}=this.irisGrid.props,v=h.getColumnIndexByName(e.name);return L(v),u.push({menuElement:c.jsxs("div",{className:"iris-grid-filter-menu-item-value",children:[a?$.getOperatorAsText(a):""," ",'"',t,'"']}),order:1,group:ce.groups.high}),u.push({title:"is equal to",description:"Show only rows where ".concat(e.name," is ").concat(t),action:()=>{var m=this.getNumberValueEqualsFilter(e,r);this.irisGrid.setQuickFilter(v,$.getQuickFilterCondition(s,m,a),$.getQuickFilterText(o,"=".concat(t),a))},order:10,group:ce.groups.low}),u.push({title:"is not equal to",description:"Show only rows where ".concat(e.name," is not ").concat(t),action:()=>{var m=this.getNumberValueEqualsFilter(e,r).not();this.irisGrid.setQuickFilter(v,$.getQuickFilterCondition(s,m,a),$.getQuickFilterText(o,"!=".concat(t),a))},order:20,group:ce.groups.low}),d&&!x.isCharType(e.type)&&(u.push({title:"greater than",description:"Show only rows where ".concat(e.name," is greater than ").concat(t),action:()=>{this.irisGrid.setQuickFilter(v,$.getQuickFilterCondition(s,e.filter().greaterThan(l),a),$.getQuickFilterText(o,">".concat(t),a))},order:30,group:ce.groups.low}),u.push({title:"greater than or equal to",description:"Show only rows where ".concat(e.name," is greater than or equal to ").concat(t),action:()=>{this.irisGrid.setQuickFilter(v,$.getQuickFilterCondition(s,e.filter().greaterThanOrEqualTo(l),a),$.getQuickFilterText(o,">=".concat(t),a))},order:40,group:ce.groups.low}),u.push({title:"less than",description:"Show only rows where ".concat(e.name," is less than ").concat(t),action:()=>{this.irisGrid.setQuickFilter(v,$.getQuickFilterCondition(s,e.filter().lessThan(l),a),$.getQuickFilterText(o,"<".concat(t),a))},order:50,group:ce.groups.low}),u.push({title:"less than or equal to",description:"Show only rows where ".concat(e.name," is less than or equal to ").concat(t),action:()=>{this.irisGrid.setQuickFilter(v,$.getQuickFilterCondition(s,e.filter().lessThanOrEqualTo(l),a),$.getQuickFilterText(o,"<=".concat(t),a))},order:60,group:ce.groups.low})),u}booleanFilterActions(e,t,r,i){var a=[],{model:l}=this.irisGrid.props,{filter:s,text:o}=r||{},u=l.getColumnIndexByName(e.name);return L(u),a.push({menuElement:c.jsxs("div",{className:"iris-grid-filter-menu-item-value",children:[i?$.getOperatorAsText(i):""," ",'"',t??"null",'"']}),order:1,group:ce.groups.high}),a.push({title:"true",description:"Show only rows where ".concat(e.name," is true"),action:()=>{this.irisGrid.setQuickFilter(u,$.getQuickFilterCondition(s,e.filter().isTrue(),i),$.getQuickFilterText(o,"true",i))},order:10,group:ce.groups.low}),a.push({title:"false",description:"Show only rows where ".concat(e.name," is false"),action:()=>{this.irisGrid.setQuickFilter(u,$.getQuickFilterCondition(s,e.filter().isFalse(),i),$.getQuickFilterText(o,"false",i))},order:20,group:ce.groups.low}),a.push({title:"is null",description:"Show only rows where ".concat(e.name," is null"),action:()=>{this.irisGrid.setQuickFilter(u,$.getQuickFilterCondition(s,e.filter().isNull(),i),$.getQuickFilterText(o,"null",i))},order:30,group:ce.groups.low}),a.push({title:"is not null",description:"Show only rows where ".concat(e.name," is not null"),action:()=>{this.irisGrid.setQuickFilter(u,$.getQuickFilterCondition(s,e.filter().isNull().not(),i),$.getQuickFilterText(o,"!null",i))},order:40,group:ce.groups.low}),a}dateFilterActions(e,t,r,i,a,l){var{dh:s}=this,o=s.FilterValue.ofNumber(i),u=null,d=null;a&&(u=a.filter,d=a.text);var{model:h}=this.irisGrid.props,v=h.getColumnIndexByName(e.name);L(v);var m=[];return m.push({menuElement:c.jsxs("div",{className:"iris-grid-filter-menu-item-value",children:[l?$.getOperatorAsText(l):""," ",'"',r,'"']}),order:1,group:ce.groups.high}),m.push({title:"date is",description:"Show only rows where ".concat(e.name," is ").concat(r),action:()=>{this.irisGrid.setQuickFilter(v,$.getQuickFilterCondition(u,e.filter().eq(o),l),$.getQuickFilterText(d,"=".concat(t),l))},order:10,group:ce.groups.low}),m.push({title:"date is not",description:"Show only rows where ".concat(e.name," is not ").concat(r),action:()=>{this.irisGrid.setQuickFilter(v,$.getQuickFilterCondition(u,e.filter().notEq(o),l),$.getQuickFilterText(d,"!=".concat(t),l))},order:20,group:ce.groups.low}),m.push({title:"date is before",description:"Show only rows where ".concat(e.name," is before ").concat(r),action:()=>{this.irisGrid.setQuickFilter(v,$.getQuickFilterCondition(u,e.filter().lessThan(o),l),$.getQuickFilterText(d,"<".concat(t),l))},order:30,group:ce.groups.low}),m.push({title:"date is before or equal",description:"Show only rows where ".concat(e.name," is before or equal to ").concat(r),action:()=>{this.irisGrid.setQuickFilter(v,$.getQuickFilterCondition(u,e.filter().lessThanOrEqualTo(o),l),$.getQuickFilterText(d,"<=".concat(t),l))},order:40,group:ce.groups.low}),m.push({title:"date is after",description:"Show only rows where ".concat(e.name," is greater than ").concat(r),action:()=>{this.irisGrid.setQuickFilter(v,$.getQuickFilterCondition(u,e.filter().greaterThan(o),l),$.getQuickFilterText(d,">".concat(t),l))},order:50,group:ce.groups.low}),m.push({title:"date is after or equal",description:"Show only rows where ".concat(e.name," is after or equal to ").concat(r),action:()=>{this.irisGrid.setQuickFilter(v,$.getQuickFilterCondition(u,e.filter().greaterThanOrEqualTo(o),l),$.getQuickFilterText(d,">=".concat(t),l))},order:60,group:ce.groups.low}),m}emptyStringFilterActions(e,t,r){var{dh:i}=this,a=i.FilterValue.ofString(""),l=t;l||(l={filter:null,text:null});var{filter:s,text:o}=l,u=[],{model:d}=this.irisGrid.props,h=d.getColumnIndexByName(e.name);return L(h),u.push({menuElement:c.jsxs("div",{className:"iris-grid-filter-menu-item-value",children:[r?$.getOperatorAsText(r):""," ",c.jsx("i",{className:"text-muted",children:"empty"})]}),order:1,group:ce.groups.high}),u.push({title:"is empty string",description:"Show only rows where ".concat(e.name," is empty"),action:()=>{this.irisGrid.setQuickFilter(h,$.getQuickFilterCondition(s,e.filter().eq(a),r),$.getQuickFilterText(o,"=",r))},order:10,group:ce.groups.low}),u.push({title:"is not empty string",description:"Show only rows where ".concat(e.name," is not empty"),action:()=>{this.irisGrid.setQuickFilter(h,$.getQuickFilterCondition(s,e.filter().notEq(a),r),$.getQuickFilterText(o,"!=",r))},order:20,group:ce.groups.low}),u}nullFilterActions(e,t,r){var i=null,a=null;t&&(i=t.filter,a=t.text);var l=[],{model:s}=this.irisGrid.props,o=s.getColumnIndexByName(e.name);return L(o),l.push({menuElement:c.jsxs("div",{className:"iris-grid-filter-menu-item-value",children:[r?$.getOperatorAsText(r):""," ",c.jsx("i",{className:"text-muted",children:"null"})]}),order:1,group:ce.groups.high}),l.push({title:"is null",description:"Show only rows where ".concat(e.name," is null"),action:()=>{this.irisGrid.setQuickFilter(o,$.getQuickFilterCondition(i,e.filter().isNull(),r),$.getQuickFilterText(a,"null",r))},order:10,group:ce.groups.low}),l.push({title:"is not null",description:"Show only rows where ".concat(e.name," is not null"),action:()=>{this.irisGrid.setQuickFilter(o,$.getQuickFilterCondition(i,e.filter().isNull().not(),r),$.getQuickFilterText(a,"!null",r))},order:20,group:ce.groups.low}),l}sortByActions(e,t,r){var i=this.irisGrid.getTheme(),{contextMenuSortIconColor:a}=i,l=[{title:"".concat(e.name," Ascending"),order:10,action:()=>{this.irisGrid.sortColumn(t,$.COLUMN_SORT_DIRECTION.ascending)},icon:this.checkColumnSort(r,$.COLUMN_SORT_DIRECTION.ascending)?Nr:void 0,iconColor:a},{title:"".concat(e.name," Descending"),order:20,action:()=>{this.irisGrid.sortColumn(t,$.COLUMN_SORT_DIRECTION.descending)},icon:this.checkColumnSort(r,$.COLUMN_SORT_DIRECTION.descending)?Nr:void 0,iconColor:a},{title:"Remove Sort",order:50,action:()=>{this.irisGrid.sortColumn(t,$.COLUMN_SORT_DIRECTION.none,!1,!0)},disabled:!r}];return x.isNumberType(e.type)&&(l.push({title:"ABS(".concat(e.name,") Ascending"),order:30,action:()=>{this.irisGrid.sortColumn(t,$.COLUMN_SORT_DIRECTION.ascending,!0)},icon:this.checkColumnSort(r,$.COLUMN_SORT_DIRECTION.ascending,!0)?Nr:void 0,iconColor:a}),l.push({title:"ABS(".concat(e.name,") Descending"),order:40,action:()=>{this.irisGrid.sortColumn(t,$.COLUMN_SORT_DIRECTION.descending,!0)},icon:this.checkColumnSort(r,$.COLUMN_SORT_DIRECTION.descending,!0)?Nr:void 0,iconColor:a})),l}additionalSortActions(e,t){var r=this.irisGrid.getTheme(),{contextMenuSortIconColor:i}=r,a=[{title:"Add Sort By",menuElement:c.jsxs("div",{className:"btn-context-menu menu-title",children:[c.jsx("span",{className:"icon",children:c.jsx(ae,{icon:Nr,style:{color:i??void 0}})}),c.jsx("span",{className:"title",children:"Add Additional Sort"}),c.jsx("span",{className:"shortcut",children:Kn.isMacPlatform()?"⌘Click":"Ctrl+Click"})]}),order:1},{title:"".concat(e.name," Ascending"),order:10,action:()=>{this.irisGrid.sortColumn(t,$.COLUMN_SORT_DIRECTION.ascending,!1,!0)}},{title:"".concat(e.name," Descending"),order:20,action:()=>{this.irisGrid.sortColumn(t,$.COLUMN_SORT_DIRECTION.descending,!1,!0)}}];return x.isNumberType(e.type)&&(a.push({title:"ABS(".concat(e.name,") Ascending"),order:30,action:()=>{this.irisGrid.sortColumn(t,$.COLUMN_SORT_DIRECTION.ascending,!0,!0)}}),a.push({title:"ABS(".concat(e.name,") Descending"),order:40,action:()=>{this.irisGrid.sortColumn(t,$.COLUMN_SORT_DIRECTION.descending,!0,!0)}})),a}checkColumnSort(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;return e?e.direction===t&&e.isAbs===r:!1}}Gt($,"GROUP_EDIT",ce.groups.high+10);Gt($,"GROUP_HIDE_COLUMNS",ce.groups.high+25);Gt($,"GROUP_FILTER",ce.groups.high+50);Gt($,"GROUP_EXPAND_COLLAPSE",ce.groups.high+55);Gt($,"GROUP_GOTO",ce.groups.high+60);Gt($,"GROUP_SORT",ce.groups.high+75);Gt($,"GROUP_COPY",ce.groups.high+100);Gt($,"GROUP_FORMAT",ce.groups.high+150);Gt($,"COLUMN_SORT_DIRECTION",{ascending:"ASC",descending:"DESC",none:null});const DC=$;function FC(n,e,t){return e=NC(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function NC(n){var e=IC(n,"string");return typeof e=="symbol"?e:String(e)}function IC(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class AC extends Qe{constructor(e){super(),FC(this,"irisGrid",void 0),this.irisGrid=e}onDoubleClick(e){var{column:t,row:r}=e;return r==null||t==null?!1:(this.irisGrid.selectData(t,r),!0)}}const MC=AC;function xC(n,e,t){return e=LC(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function LC(n){var e=kC(n,"string");return typeof e=="symbol"?e:String(e)}function kC(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class jC extends Qe{constructor(e){super(),xC(this,"irisGrid",void 0),this.irisGrid=e}onDown(e){var{y:t,column:r,row:i}=e;if(r!==null&&i===null){var{isFilterBarShown:a,metrics:l}=this.irisGrid.state;if(!l)throw new Error("Metrics not set");var{columnHeaderMaxDepth:s}=l,o=this.irisGrid.getTheme();if(a&&o.columnHeaderHeight!=null&&o.filterBarHeight!=null&&t>o.columnHeaderHeight*s&&t<=o.columnHeaderHeight*s+o.filterBarHeight)return this.irisGrid.focusFilterBar(r),!0}return!1}onMove(e){var{y:t,column:r}=e,{isFilterBarShown:i,hoverAdvancedFilter:a,metrics:l}=this.irisGrid.state;if(!l)throw new Error("Metrics not set");var{columnHeaderMaxDepth:s}=l,o=this.irisGrid.getTheme(),u=null;return i&&o.columnHeaderHeight!=null&&o.filterBarHeight!=null&&r!==null&&t>=o.columnHeaderHeight*s&&t<=o.columnHeaderHeight*s+o.filterBarHeight&&(u=r),u!==a&&this.irisGrid.setState({hoverAdvancedFilter:u}),!1}onLeave(e){var{column:t}=e,{hoverAdvancedFilter:r}=this.irisGrid.state;return r!==null&&t!==r&&this.irisGrid.setState({hoverAdvancedFilter:null}),!1}}const _C=jC;function HC(n,e,t){return e=UC(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function UC(n){var e=VC(n,"string");return typeof e=="symbol"?e:String(e)}function VC(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class BC extends Qe{constructor(e){super(750),HC(this,"irisGrid",void 0),this.irisGrid=e}destroyTooltip(){this.irisGrid.setState({expandCellTooltipProps:null})}setCursor(e,t){return Wl.isInTreeBox(e,t)?(this.cursor="pointer",{stopPropagation:!1,preventDefault:!1}):(this.cursor=null,!1)}getButtonPosition(e){var{x:t,y:r,column:i,row:a}=e;if(i==null||a==null)return null;var{renderer:l,grid:s,state:o,props:u}=this.irisGrid;if(!s)return null;var{metrics:d}=o,{model:h}=u,{canvasContext:v}=s,m=s.getTheme(),f={context:v,mouseX:t,mouseY:r,metrics:d,model:h,theme:m},g=xe(h)?h.depthForRow(a):null,{left:p,top:C,width:S,height:b}=l.getExpandButtonPosition(f,g);return p==null||S==null||C==null||b==null?null:{left:p,top:C,width:S,height:b}}onMove(e,t){if(Wl.isInTreeBox(e,t)){var{expandCellTooltipProps:r}=this.irisGrid.state,{model:i}=this.irisGrid.props,a=this.getButtonPosition(e),{row:l}=e;L(l);var s=xe(i)&&i.isRowExpanded(l);ht(r,a)||this.irisGrid.setState({expandCellTooltipProps:a,expandTooltipDisplayValue:s?"collapse":"expand"})}else this.destroyTooltip();return this.setCursor(e,t)}onDown(){return this.destroyTooltip(),!1}onContextMenu(){return this.destroyTooltip(),!1}onWheel(){return this.destroyTooltip(),!1}onLeave(){return this.destroyTooltip(),!1}}const GC=BC;function Qo(n,e,t){return e=$C(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function $C(n){var e=WC(n,"string");return typeof e=="symbol"?e:String(e)}function WC(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class zC extends Qe{constructor(e){super(),Qo(this,"irisGrid",void 0),Qo(this,"column",void 0),this.column=null,this.irisGrid=e}getColumnFromGridPoint(e){var{column:t,row:r,columnHeaderDepth:i}=e;return t!==null&&r===null&&i===0?t:null}onDown(e){return this.column=this.getColumnFromGridPoint(e),!1}onClick(e,t,r){var i=this.getColumnFromGridPoint(e);if(i!=null&&i===this.column){var a=Kn.isModifierKeyDown(r);return this.irisGrid.toggleSort(i,a),!0}return!1}}const KC=zC;class YC extends Qe{constructor(e){super(),this.irisGrid=e}onWheel(e,t,r){var{irisGrid:i}=this,{model:a}=i.props,{metrics:l,pendingRowCount:s}=i.state;L(l);var{bottom:o,rowCount:u,rowHeight:d}=l,{deltaY:h}=K.getScrollDelta(r);return He(a)&&a.isEditable&&o>=u-1&&h>0&&i.setState({pendingRowCount:s+Math.ceil(h/d)}),!1}}const qC=YC;function Zo(n,e,t){return e=XC(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function XC(n){var e=QC(n,"string");return typeof e=="symbol"?e:String(e)}function QC(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class ZC extends Qe{constructor(e){super(),Zo(this,"irisGrid",void 0),Zo(this,"currentLinkBox",void 0),this.irisGrid=e}destroyTooltip(){this.irisGrid.setState({linkHoverTooltipProps:null})}isHoveringLink(e,t){var{column:r,row:i,x:a,y:l}=e,{renderer:s,metrics:o,props:u}=t,{model:d}=u;if(r==null||i==null||o==null)return this.currentLinkBox=void 0,!1;var{modelRows:h,modelColumns:v}=o,m=M(h,i),f=M(v,r),g=d.renderTypeForCell(f,m),p=s.getCellRenderer(g);if(!yh(p))return!1;if(this.currentLinkBox!=null){var{x1:C,y1:S,x2:b,y2:w}=this.currentLinkBox;if(a>=C&&a<=b&&l>=S&&l<=w)return!0}for(var y=t.updateRenderState(),T=p.getTokenBoxesForVisibleCell(r,i,y),E=0;E<T.length;E+=1)if(Oa(T[E].token)){var P=K.translateTokenBox(T[E],o),{x1:O,x2:D,y1:N,y2:F}=P;if(a>=O&&a<=D&&l>=N&&l<=F)return this.currentLinkBox=P,!0}return this.currentLinkBox=void 0,!1}setCursor(e,t){return this.isHoveringLink(e,t)?(this.cursor="pointer",{stopPropagation:!1,preventDefault:!1}):(this.cursor=null,!1)}onMove(e,t){var r=this.isHoveringLink(e,t);if(r&&this.currentLinkBox!=null&&Oa(this.currentLinkBox.token)){var{linkHoverTooltipProps:i}=this.irisGrid.state;if(this.currentLinkBox==null)return!1;var{x1:a,y1:l,x2:s,y2:o}=this.currentLinkBox,{href:u}=this.currentLinkBox.token,d=s-a,h=o-l,v={left:a,top:l+1,width:d,height:h};ht(i,v)||this.irisGrid.setState({linkHoverTooltipProps:v,linkHoverDisplayValue:u})}else this.destroyTooltip();return this.setCursor(e,t)}onDown(){return this.destroyTooltip(),!1}onContextMenu(){return this.destroyTooltip(),!1}onWheel(){return this.destroyTooltip(),!1}onLeave(){return this.destroyTooltip(),!1}}const JC=ZC;var eS=3e3;function tS(n){var{children:e=null,onEntering:t,onEntered:r,onExiting:i,onExited:a}=n,[l,s]=R.useState(!1),o=R.useRef(),u=Qd(e),d=R.useCallback(()=>{s(!0),o.current&&clearTimeout(o.current),o.current=setTimeout(()=>{s(!1)},eS)},[s,o]);return R.useEffect(()=>{u!==e&&e!=null&&d()},[e,u,s,d]),R.useEffect(()=>()=>o.current?clearTimeout(o.current):void 0,[]),c.jsx($a,{className:"toast-bottom-bar",isShown:l,onEntering:t,onEntered:r,onExiting:i,onExited:a,children:e})}class rS extends Nn{getGridY(e){var t=super.getGridY(e),{isFilterBarShown:r,theme:i,advancedFilters:a,quickFilters:l,sorts:s,reverseType:o}=e;return r?t+=i.filterBarHeight:(l!=null&&l.size>0||a!=null&&a.size>0)&&(t+=i.filterBarCollapsedHeight),o!==x.REVERSE_TYPE.NONE&&s!=null&&s.length>0&&(t+=i.reverseHeaderBarHeight),t}getUserColumnWidths(){return this.userColumnWidths}}const nS=rS;var iS=1,Nh=Me.memo(n=>{var{model:e,modelColumns:t,top:r,bottom:i,left:a,right:l,filter:s,formatter:o,reverseType:u=x.REVERSE_TYPE.NONE,sorts:d,customColumns:h,movedColumns:v,hiddenColumns:m,alwaysFetchColumns:f,rollupConfig:g=null,totalsConfig:p=null,selectDistinctColumns:C=Re,pendingRowCount:S=0,pendingDataMap:b=xr,frozenColumns:w,formatColumns:y,columnHeaderGroups:T}=n,E=R.useMemo(()=>fe.getModelViewportColumns(t,a,l,v,m,f,iS),[t,a,l,v,m,f]);return R.useEffect(function(){e.filter=s},[e,s]),R.useEffect(function(){var O=[...d];u!==x.REVERSE_TYPE.NONE&&O.push(e.dh.Table.reverse()),e.sort=O},[e,d,u]),R.useEffect(function(){e.formatter=o},[e,o]),R.useEffect(function(){e.isCustomColumnsAvailable&&(e.customColumns=h)},[e,h]),R.useEffect(function(){e.isFormatColumnsAvailable&&(e.formatColumns=y)},[e,y]),R.useEffect(function(){e.setViewport(r,i,E)},[e,r,i,E]),R.useEffect(function(){e.isRollupAvailable&&(e.rollupConfig=g)},[e,e.isRollupAvailable,g]),R.useEffect(function(){e.isSelectDistinctAvailable&&(e.selectDistinctColumns=C)},[e,C]),R.useEffect(function(){e.isTotalsAvailable&&(e.totalsConfig=p)},[e,e.isTotalsAvailable,p]),R.useEffect(function(){e.pendingRowCount=S},[e,S]),R.useEffect(function(){e.pendingDataMap=b},[e,b]),R.useEffect(function(){w&&e.updateFrozenColumns(w)},[e,w]),R.useEffect(function(){e.columnHeaderGroups=T},[e,T]),null});Nh.displayName="IrisGridModelUpdater";const aS=Nh;var ql=16,lS=new Map([["sortUp",kv],["sortDown",jv],["caretDown",Cs],["caretRight",_v],["cellOverflow",Hv]]),sS=mr(n=>{var e=lS.get(n);if(e===void 0)throw new Error("Icon is undefined");var t=Array.isArray(e.icon[4])?e.icon[4][0]:e.icon[4],r=new Path2D(t),i=new Path2D,a={a:ql/e.icon[0],d:ql/e.icon[1]};return i.addPath(r,a),i},{max:1e3});function Ri(n){return sS(n)}class oS{static drawTreeMarker(e,t,r,i,a,l,s){e.save();var{x1:o,y1:u}=a,d=Ri(s?"caretDown":"caretRight"),h=r+o-2,v=i+u+2.5;e.fillStyle=l,e.textAlign="center",e.translate(h,v),e.fill(d),e.restore()}}const Ih=oS;class uS extends bh{drawCellContent(e,t,r,i){var a,{metrics:l,model:s}=t,{modelColumns:o,modelRows:u}=l,d=M(u,i),h=o.get(r);if(h!==void 0){var v=s.valueForCell(h,d);if(x.isTextType((a=s.columns[h])===null||a===void 0?void 0:a.type)&&(v===null||v==="")){var m=e.font;e.font="italic ".concat(m),super.drawCellContent(e,t,r,i),e.font=m;return}super.drawCellContent(e,t,r,i)}}getTextRenderMetrics(e,t,r){var i=K.getTextRenderMetrics(e,t,r),{mouseX:a,mouseY:l,metrics:s,theme:o}=e;if(a==null||l==null)return i;var{column:u,row:d}=K.getGridPointFromXY(a,l,s);if(t===u&&r===d){var{left:h}=this.getCellOverflowButtonPosition(a,l,s,o);this.shouldRenderOverflowButton(e)&&h!=null&&(i.width=h-s.gridX-i.x)}return i}getCellOverflowButtonPosition(e,t,r,i){var a={left:null,top:null,width:null,height:null};if(e==null||t==null||r==null)return a;var{rowHeight:l,columnWidth:s,left:o,top:u}=K.getCellInfoFromXY(e,t,r);if(o==null||s==null||u==null)return a;var{width:d,verticalBarWidth:h}=r,{cellHorizontalPadding:v}=i,m=ql+2*v,f=l,g=Math.min(r.gridX+o+s,d-h),p=g-m,C=r.gridY+u;return{left:p,top:C,width:m,height:f}}shouldRenderOverflowButton(e){var t,r,{context:i,mouseX:a,mouseY:l,metrics:s,model:o,theme:u}=e;if(a==null||l==null)return!1;var{row:d,column:h,modelRow:v,modelColumn:m}=K.getCellInfoFromXY(a,l,s);if(d==null||h==null||v==null||m==null||!x.isStringType(o.columns[m].type))return!1;var f=(t=o.textForCell(m,v))!==null&&t!==void 0?t:"",{width:g}=K.getTextRenderMetrics(e,h,d),p=(r=s.fontWidths.get(u.font))!==null&&r!==void 0?r:En;i.save(),i.font=u.font;var C=this.getCachedTruncatedString(i,f,g,p,o.truncationCharForCell(m,v));return i.restore(),f!==""&&C!==f}drawTreeMarker(e,t,r,i,a,l,s){Ih.drawTreeMarker(e,t,r,i,a,l,s)}}const dS=uS;class hS extends Sh{drawTreeMarker(e,t,r,i,a,l,s){Ih.drawTreeMarker(e,t,r,i,a,l,s)}}const cS=hS;function Jo(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 eu(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Jo(Object(t),!0).forEach(function(r){Xl(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Jo(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Xl(n,e,t){return e=vS(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function vS(n){var e=mS(n,"string");return typeof e=="symbol"?e:String(e)}function mS(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Dl=Object.freeze({SORT_UP:"sortUp",SORT_DOWN:"sortDown",CARET_DOWN:"caretDown",CARET_RIGHT:"caretRight",CELL_OVERFLOW:"cellOverflow"}),tu=10;class Fa extends Er{constructor(){super(...arguments),Xl(this,"textCellRenderer",new dS),Xl(this,"dataBarCellRenderer",new cS)}static isFilterValid(e,t){var r=e==null||e.filter!=null,i=t==null||t.filter!=null;return r&&i}getSortIcon(e){return e?e.direction===x.sortDirection.ascending?Ri(Dl.SORT_UP):e.direction===x.sortDirection.descending?Ri(Dl.SORT_DOWN):null:null}drawCanvas(e){super.drawCanvas(e),this.drawScrim(e)}drawGrid(e,t){super.drawGrid(e,t),this.drawCellOverflowButton(t)}drawGridLines(e,t){super.drawGridLines(e,t),this.drawGroupedColumnLine(e,t),this.drawPendingRowLine(e,t)}drawCellContent(e,t,r,i){var{metrics:a,model:l}=t,{modelColumns:s,modelRows:o}=a,u=s.get(r),d=M(o,i);if(u!==void 0){var h=l.renderTypeForCell(u,d),v=this.getCellRenderer(h);v.drawCellContent(e,t,r,i)}}getCellOverflowButtonPosition(e){var{mouseX:t,mouseY:r,metrics:i,theme:a}=e;return this.textCellRenderer.getCellOverflowButtonPosition(t,r,i,a)}shouldRenderOverflowButton(e){return this.textCellRenderer.shouldRenderOverflowButton(e)}drawCellOverflowButton(e){var{context:t,mouseX:r,mouseY:i,theme:a}=e;if(!(r==null||i==null)&&this.shouldRenderOverflowButton(e)){var{left:l,top:s,width:o,height:u}=this.getCellOverflowButtonPosition(e),{cellHorizontalPadding:d,overflowButtonColor:h,overflowButtonHoverColor:v}=a;t.save(),v!=null&&l!=null&&o!=null&&s!=null&&u!=null&&r>=l&&r<=l+o&&i>=s&&i<=s+u?t.fillStyle=v:h!=null&&(t.fillStyle=h);var m=Ri(Dl.CELL_OVERFLOW);l!=null&&s!=null&&t.translate(l+d,s+2),t.fill(m),t.restore()}}drawGroupedColumnLine(e,t){var{metrics:r,model:i,theme:a}=t,{groupedColumns:l}=i,{maxY:s,allColumnWidths:o,allColumnXs:u}=r;if(!(l.length===0||a.groupedColumnDividerColor==null)){var d=l.length-1,h=u.get(d),v=o.get(d);if(!(h==null||v==null)){var m=h+v+.5;e.strokeStyle=a.groupedColumnDividerColor,e.lineWidth=1,e.beginPath(),e.moveTo(m,0),e.lineTo(m,s),e.stroke()}}}drawPendingRowLine(e,t){var{metrics:r,model:i,theme:a}=t,{allRowYs:l,maxX:s}=r,{pendingRowCount:o}=i;if(!(o<=0)){var u=i.rowCount-i.pendingRowCount-i.floatingBottomRowCount,d=l.get(u);d!=null&&(d-=.5,e.save(),e.setLineDash([4,2]),e.strokeStyle=a.pendingTextColor,e.lineWidth=1,e.beginPath(),e.moveTo(0,d),e.lineTo(s,d),e.stroke(),e.restore())}}drawMouseColumnHover(e,t){var{theme:r,metrics:i,hoverSelectColumn:a}=t;if(!(a==null||r.linkerColumnHoverBackgroundColor==null)){var{allColumnWidths:l,allColumnXs:s,maxY:o}=i,u=M(s,a),d=M(l,a);e.fillStyle=r.linkerColumnHoverBackgroundColor,e.fillRect(u,0,d,o)}}drawMouseRowHover(e,t){var{isSelectingColumn:r}=t;r||super.drawMouseRowHover(e,t)}drawScrim(e){var{context:t,loadingScrimProgress:r,metrics:i,theme:a}=e;if(r!=null){var{width:l,height:s,gridY:o}=i,{scrimBlurSize:u,scrimColor:d}=a;t.save(),t.globalCompositeOperation="color",t.filter="blur(".concat(u,"px)"),d!=null&&(t.fillStyle=d),t.beginPath(),t.rect(0,o,l,s-o),t.clip(),t.fillRect(-u,-u+o,u*2+l,(u*2+(s-o))*r),t.globalCompositeOperation="overlay",t.filter="blur(".concat(u,"px) opacity(15%)"),t.fillRect(-u,-u+o,u*2+l,(u*2+(s-o))*r),t.restore()}}drawColumnHeaders(e,t){super.drawColumnHeaders(e,t);var{theme:r,metrics:i,model:a,reverseType:l}=t,{columnHeaderHeight:s}=i;if(this.drawFilterHeaders(e,t),!(s<=0)){var{sort:o}=a;if(o.length===1){var u=l!==x.REVERSE_TYPE.NONE,d;u?d=r.headerReverseBarColor:d=r.headerSortBarColor,this.drawHeaderBar(e,t,d,u?r.reverseHeaderBarHeight:r.sortHeaderBarHeight)}else o.length>1&&(l!==x.REVERSE_TYPE.NONE&&this.drawHeaderBar(e,t,r.headerReverseBarColor,r.reverseHeaderBarHeight,!1),this.drawHeaderBar(e,t,r.headerSortBarColor,r.sortHeaderBarHeight))}}drawHeaderBar(e,t,r,i){var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,{theme:l,metrics:s,model:o}=t,{columnHeaderHeight:u,width:d}=s,h=0;a||(h=i),e.fillStyle=l.headerBarCasingColor,e.fillRect(0,o.columnHeaderMaxDepth*u-i-2+h,d,i+2),e.fillStyle=r,e.fillRect(0,o.columnHeaderMaxDepth*u-i-1+h,d,i)}drawColumnHeadersAtDepth(e,t,r,i,a){var{metrics:l,model:s,isMenuShown:o}=t,{columnHeaderMaxDepth:u}=s,{width:d}=l,h=eu(eu({},i),{},{maxX:a===u-1&&i.maxX===d?d-(o?0:30):i.maxX});super.drawColumnHeadersAtDepth(e,t,r,h,a)}drawColumnHeaderAtIndex(e,t,r,i){var a,l;super.drawColumnHeaderAtIndex(e,t,r,i);var{metrics:s,model:o,theme:u}=t,{modelColumns:d,allColumnWidths:h,allColumnXs:v,gridX:m,columnHeaderHeight:f,fontWidths:g}=s,{headerHorizontalPadding:p}=u,C=M(h,r,0),S=M(v,r)+m,b=d.get(r);if(b!=null){var w=(a=o.columns[b])===null||a===void 0?void 0:a.name;if(w!=null){var y=x.getSortForColumn(o.sort,w);if(y){var T=this.getSortIcon(y);if(T){var E=o.textForColumnHeader(b);if(E!==void 0){var P=(l=g.get(e.font))!==null&&l!==void 0?l:En;L(P);var O=E.length*P,D=m+S+O+p,{maxX:N}=i;N-=p;var F=m+S+C-p-1,A=D>N?D+1:Math.min(N,F),j=y.direction===x.sortDirection.ascending?-6:-12,k=f*.5+j;e.save(),e.beginPath(),e.rect(S,0,C,f),e.clip(),e.fillStyle=u.headerSortBarColor,e.translate(A,k),e.fill(T),e.restore()}}}}}}drawFilterHeaders(e,t){var{isFilterBarShown:r,quickFilters:i,advancedFilters:a}=t;r?this.drawExpandedFilterHeaders(e,t):(i!=null&&i.size>0||a!=null&&a.size>0)&&this.drawCollapsedFilterHeaders(e,t)}drawExpandedFilterHeaders(e,t){var{metrics:r,model:i,theme:a,quickFilters:l,advancedFilters:s}=t,{filterBarHeight:o}=a;if(!(o<=0)){var{gridX:u,gridY:d,maxX:h,modelColumns:v,visibleColumns:m,allColumnWidths:f,allColumnXs:g}=r,p=d-o;e.save(),e.font=a.font,e.textAlign="left",l!=null&&l.size>0||s!=null&&s.size>0?e.fillStyle=a.filterBarExpandedActiveBackgroundColor:e.fillStyle=a.filterBarExpandedBackgroundColor,e.fillRect(u,p,h,o-1),e.fillStyle=a.headerBarCasingColor,e.fillRect(u,p+o-1,h,1);var C=p;e.strokeStyle=a.filterBarSeparatorColor,e.beginPath();for(var S=0;S<m.length;S+=1){var b=m[S],w=M(v,b),y=M(g,b),T=M(f,b);if(i.isFilterable(w)&&T>0){var E=u+(y??0);e.rect(E+.5,C+.5,T,o-2)}}e.stroke();for(var P=0;P<m.length;P+=1){var O=m[P],D=M(f,O),N=M(g,O),F=N+u;this.drawExpandedFilterHeader(e,t,O,F,D)}e.restore()}}drawExpandedFilterHeader(e,t,r,i,a){if(!(a<=0)){var{metrics:l,theme:s,quickFilters:o,advancedFilters:u}=t,{modelColumns:d,gridY:h}=l,{filterBarHeight:v,filterBarExpandedActiveCellBackgroundColor:m,filterBarErrorColor:f,filterBarHorizontalPadding:g,headerColor:p}=s,C=h-v,S=d.get(r);if(S!==void 0){var b=o.get(S),w=u.get(S);if(!(b==null&&w==null)){var y=null;if(b!=null){var{text:T}=b;if(y=T,y||(y=x.getFilterText(b.filter)),y!=null){var{fontWidths:E}=l,P=E.get(e.font);(P==null||P===0)&&(P=e.measureText("8").width,P||(P=10));var O=(a-g*2)/P;O<=0?y="":y.length>O&&(y="".concat(y.substring(0,O-1),"…"))}}e.save();var D=Fa.isFilterValid(w,b);if(D&&m!=null)e.fillStyle=m,e.fillRect(i+1,C+1,a-1,v-3);else if(f!=null){e.fillStyle=f,e.lineWidth=2,e.strokeStyle=f;var N=i+2,F=C+2,A=a-3,j=v-5;e.strokeRect(N,F,A,j)}if(y!=null&&y!==""){var k=i+g,B=C+v*.5+1;e.fillStyle=p,e.fillText(y,k,B)}e.restore()}}}}drawCollapsedFilterHeaders(e,t){var{metrics:r,theme:i}=t,{headerSeparatorColor:a,filterBarCollapsedHeight:l}=i;if(!(l<=0)){var{gridX:s,gridY:o,maxX:u,visibleColumns:d,allColumnWidths:h,allColumnXs:v}=r,m=o-l;e.save(),e.fillStyle=a,e.fillRect(s,m,u,l);for(var f=0;f<d.length;f+=1){var g=d[f],p=h.get(g),C=v.get(g);if(C!=null&&p!=null){var S=C+s;this.drawCollapsedFilterHeader(e,t,g,S,p)}}e.restore()}}drawCollapsedFilterHeader(e,t,r,i,a){if(!(a<=0)){var{metrics:l,theme:s,quickFilters:o,advancedFilters:u}=t,{modelColumns:d,gridY:h}=l,v=d.get(r);if(v!==void 0){var m=o.get(v),f=u.get(v),{filterBarCollapsedHeight:g,filterBarActiveColor:p,filterBarActiveBackgroundColor:C,filterBarErrorColor:S}=s;e.save();var b=Fa.isFilterValid(f,m);C!=null&&m==null&&f==null?e.fillStyle=C:p!=null&&b?e.fillStyle=p:S!=null&&(e.fillStyle=S);var w=i+1,y=h-g,T=a-1,E=g-1;e.fillRect(w,y,T,E),e.restore()}}}drawRowFooters(e,t){var{metrics:r,model:i,mouseX:a,mouseY:l,theme:s}=t,{gridY:o,gridX:u,maxX:d,modelRows:h,floatingTopHeight:v,floatingBottomHeight:m,floatingRows:f,rowFooterWidth:g,height:p,horizontalBarHeight:C,verticalBarWidth:S,allRowHeights:b,allRowYs:w,width:y}=r;if(!(g<=0||f.length===0)){var{cellHorizontalPadding:T,floatingGridRowColor:E,floatingRowBackgroundColors:P,headerColor:O,rowHoverBackgroundColor:D}=s;e.translate(u,o),e.beginPath();var N=Math.min(d,y-g-S-u);e.fillStyle=P,v>0&&e.rect(N,0,g,v),m>0&&e.rect(N,p-o-C-m,g,m),e.fill();var F=a!=null&&l!=null&&a>=u&&a<=d+g?K.getRowAtY(l,r):null;if(D!=null&&F!==null&&f.includes(F)){e.fillStyle=D;var A=w.get(F),j=b.get(F);L(A),L(j),e.fillRect(N,A,g,j)}if(e.beginPath(),E!=null&&(e.strokeStyle=E),v>0&&(e.moveTo(N+.5,.5),e.lineTo(N+.5,v-.5)),m>0){var k=p-o-C-m;e.moveTo(N-.5,k+.5),e.lineTo(N-.5,k+m-.5)}e.stroke(),e.fillStyle=O,e.textAlign="left";for(var B=N+T,G=0;G<f.length;G+=1){var W=f[G],z=b.get(W),q=w.get(W),V=h.get(W);if(q!=null&&z!=null&&V!=null){var I=q+z*.5;e.fillText(i.textForRowFooter(V),B,I)}}e.translate(-u,-o)}}getExpandButtonPosition(e,t){var{mouseX:r,mouseY:i,metrics:a,theme:l}=e,s={left:null,top:null,width:null,height:null};if(r==null||i==null||t==null||!a)return s;var{rowHeight:o,left:u,top:d}=K.getCellInfoFromXY(r,i,a);L(u),L(o),L(d);var{cellHorizontalPadding:h}=l,v=tu+2*h,m=Math.max(u+tu*t,a.gridX),f=a.gridY+d;return{left:m,top:f,width:v,height:o}}}const fS=Fa,gS="12px Fira Sans, sans-serif",pS="#f0f0ee",CS="#1a171a",te={"grid-bg":"#211f22",font:gS,white:pS,black:CS,"header-bg":"#2d2a2e","header-color":"#f0f0ee","header-height":"30px","header-separator-color":"#211f22","header-separator-hover-color":"#929192","header-hidden-separator-hover-color":"#4878ea","header-sort-bar-color":"#aa9af4","header-reverse-bar-color":"#548d29","header-bar-casing-color":"#211f22","header-font":"600 12px Fira Sans, sans-serif","row-height":"19px","row-background-colors":"#373438 #2d2a2e","selection-color":"rgba(118, 217, 228, 0.09)","selection-outline-color":"#76d9e4","selection-outline-casing-color":"#211f22","row-hover-bg":"#4b494c","selected-row-hover-bg":"rgba(118, 217, 228, 0.25)","scroll-bar-active-selection-tick-color":"rgba(118, 217, 228, 0.5)","scroll-bar-bg":"#322f33","scroll-bar-hover-bg":"#373438","scroll-bar-casing-color":"#555356","scroll-bar-corner-color":"#322f33","scroll-bar-color":"#5b5a5c","scroll-bar-hover-color":"#929192","scroll-bar-active-color":"#c0bfbf","text-color":"#f0f0ee","hyperlink-color":"#4878ea","positive-number-color":"#9edc6f","negative-number-color":"#f95d84","zero-number-color":"#fcd65b","date-color":"#fcd65b","pending-text-color":"#fde38d","error-text-color":"#f95d84","null-string-color":"#929192","filter-bar-active-bg":"#425175","filter-bar-active-color":"#4878ea","filter-bar-expanded-bg":"#373438","filter-bar-expanded-active-bg":"#313849","filter-bar-expanded-active-cell-bg":"#374d80","filter-bar-separator-color":"#929192","filter-bar-error-color":"#f95d84","filter-icon-color":"#4878ea","scrim-color":"#211f22","context-menu-sort-icon-color":"#aa9af4","context-menu-reverse-icon-color":"#548d29","linker-column-hover-bg":"rgba(118, 217, 228, 0.09)","tree-line-color":"#5b5a5c","tree-marker-color":"#c0bfbf","tree-marker-hover-color":"#fcfcfa","grouped-column-divider-color":"#1a171a","floating-grid-row-color":"#555356","floating-row-background-colors":"#403e41","floating-divider-inner-color":"#403e41","floating-divider-outer-color":"#211f22","overflow-button-color":"#c0bfbf","overflow-button-hover-color":"#fcfcfa","zero-line-color":"#5b5a5c","positive-bar-color":"#9edc6f","negative-bar-color":"#f95d84"};var SS=Object.freeze({backgroundColor:te["grid-bg"],white:te.white,black:te.black,font:te.font,headerBackgroundColor:te["header-bg"],headerColor:te["header-color"],headerSeparatorColor:te["header-separator-color"],headerSeparatorHoverColor:te["header-separator-hover-color"],headerHiddenSeparatorHoverColor:te["header-hidden-separator-hover-color"],headerSortBarColor:te["header-sort-bar-color"],headerReverseBarColor:te["header-reverse-bar-color"],headerBarCasingColor:te["header-bar-casing-color"],headerFont:te["header-font"],rowBackgroundColors:te["row-background-colors"],rowHoverBackgroundColor:te["row-hover-bg"],selectionColor:te["selection-color"],selectionOutlineColor:te["selection-outline-color"],selectionOutlineCasingColor:te["selection-outline-casing-color"],selectedRowHoverBackgroundColor:te["selected-row-hover-bg"],scrollBarBackgroundColor:te["scroll-bar-bg"],scrollBarHoverBackgroundColor:te["scroll-bar-hover-bg"],scrollBarCasingColor:te["scroll-bar-casing-color"],scrollBarCornerColor:te["scroll-bar-corner-color"],scrollBarColor:te["scroll-bar-color"],scrollBarHoverColor:te["scroll-bar-hover-color"],scrollBarActiveColor:te["scroll-bar-active-color"],scrollBarSelectionTickColor:te["selected-row-hover-bg"],scrollBarActiveSelectionTickColor:te["scroll-bar-active-selection-tick-color"],textColor:te["text-color"],hyperlinkColor:te["hyperlink-color"],positiveNumberColor:te["positive-number-color"],negativeNumberColor:te["negative-number-color"],zeroNumberColor:te["zero-number-color"],dateColor:te["date-color"],pendingTextColor:te["pending-text-color"],errorTextColor:te["error-text-color"],nullStringColor:te["null-string-color"],filterBarActiveBackgroundColor:te["filter-bar-active-bg"],filterBarExpandedBackgroundColor:te["filter-bar-expanded-bg"],filterBarExpandedActiveBackgroundColor:te["filter-bar-expanded-active-bg"],filterBarExpandedActiveCellBackgroundColor:te["filter-bar-expanded-active-cell-bg"],filterBarSeparatorColor:te["filter-bar-separator-color"],filterBarActiveColor:te["filter-bar-active-color"],filterBarErrorColor:te["filter-bar-error-color"],filterIconColor:te["filter-icon-color"],scrimColor:te["scrim-color"],contextMenuSortIconColor:te["context-menu-sort-icon-color"],contextMenuReverseIconColor:te["context-menu-reverse-icon-color"],allowRowResize:!1,autoSelectRow:!0,gridColumnColor:null,gridRowColor:null,groupedColumnDividerColor:te["grouped-column-divider-color"],columnHoverBackgroundColor:null,headerHorizontalPadding:12,scrollBarSize:13,scrollBarHoverSize:16,minScrollHandleSize:24,rowHeight:parseInt(te["row-height"],10)||19,columnWidth:100,rowHeaderWidth:0,rowFooterWidth:60,columnHeaderHeight:parseInt(te["header-height"],10)||30,filterBarHeight:30,filterBarCollapsedHeight:5,sortHeaderBarHeight:2,reverseHeaderBarHeight:4,filterBarHorizontalPadding:4,scrimBlurSize:25,minScrimTransitionTime:150,maxScrimTransitionTime:350,scrollSnapToRow:!0,linkerColumnHoverBackgroundColor:te["linker-column-hover-bg"],treeLineColor:te["tree-line-color"],treeMarkerColor:te["tree-marker-color"],treeMarkerHoverColor:te["tree-marker-hover-color"],floatingGridColumnColor:null,floatingGridRowColor:te["floating-grid-row-color"],floatingRowBackgroundColors:te["floating-row-background-colors"],floatingDividerInnerColor:te["floating-divider-inner-color"],floatingDividerOuterColor:te["floating-divider-outer-color"],overflowButtonColor:te["overflow-button-color"],overflowButtonHoverColor:te["overflow-button-hover-color"],zeroLineColor:te["zero-line-color"],positiveBarColor:te["positive-bar-color"],negativeBarColor:te["negative-bar-color"]});const Ah=SS;function Mh(n,e,t){return e=bS(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function bS(n){var e=wS(n,"string");return typeof e=="symbol"?e:String(e)}function wS(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Fl=ge.module("ColumnStatistics"),yS={SIZE:"Number of Rows"};class Mi extends R.Component{static getStatsLabel(e){var t;return(t=yS[e])!==null&&t!==void 0?t:e.split(" ").map(r=>r[0].toUpperCase()+r.substr(1).toLowerCase()).join(" ")}constructor(e){super(e),Mh(this,"cancelablePromise",void 0),this.handleError=this.handleError.bind(this),this.handleGenerateStatistics=this.handleGenerateStatistics.bind(this),this.handleStatistics=this.handleStatistics.bind(this),this.cancelablePromise=null,this.state={error:null,loading:!1,statistics:null,numRows:0}}componentDidMount(){this.maybeGenerateStatistics()}componentWillUnmount(){this.cancelablePromise&&this.cancelablePromise.cancel()}maybeGenerateStatistics(){var{model:e}=this.props,t=e.rowCount-e.pendingRowCount-e.floatingBottomRowCount-e.floatingTopRowCount;this.setState({numRows:t}),e.isColumnStatisticsAvailable?t<Mi.AUTO_GENERATE_LIMIT&&this.handleGenerateStatistics():this.setState({loading:!1})}handleGenerateStatistics(){this.setState({loading:!0});var{column:e,model:t}=this.props;this.cancelablePromise=st.makeCancelable(t.columnStatistics(e)),this.cancelablePromise.then(this.handleStatistics).catch(this.handleError)}handleStatistics(e){Fl.debug("Received statistics",e);var{model:t,onStatistics:r}=this.props,i=[];e.statisticsMap.forEach((a,l)=>{i.push({operation:Mi.getStatsLabel(l),value:a,type:e.getType(l)})}),e.uniqueValues.forEach((a,l)=>{i.push({operation:l,className:"column-statistics-unique-value",value:a,type:"long"})}),this.setState({loading:!1,statistics:i,numRows:t.rowCount-t.pendingRowCount-t.floatingBottomRowCount-t.floatingTopRowCount}),r()}handleError(e){if(e!=null&&st.isCanceled(e)){Fl.debug("Called handleError on a cancelled promise result");return}Fl.error("Error generating statistics",e),this.setState({error:e,loading:!1,statistics:null})}render(){var{column:e,model:t}=this.props,{error:r,loading:i,statistics:a,numRows:l}=this.state,s=!i&&r==null&&a==null&&t.isColumnStatisticsAvailable,o=[],u=e.type.substring(e.type.lastIndexOf(".")+1),d=e.description===null?null:e.description;if(a!=null)for(var h=0;h<a.length;h+=1){var{operation:v,className:m,value:f,type:g}=a[h],p=g?t.displayString(f,g):t.displayString(f,e.type,e.name),C=c.jsxs(Me.Fragment,{children:[c.jsx("div",{className:re("column-statistic-operation",m),children:v}),c.jsx("div",{className:"column-statistic-value",children:p})]},v);o.push(C)}var S=xe(t)&&t.hasExpandableRows?"Expanded Rows":"Number of Rows",b=t.displayString(l,"long"),w=t.getColumnIndexByName(e.name);return c.jsxs("div",{className:"column-statistics",children:[c.jsxs("div",{className:"column-statistics-title",children:[e.name,c.jsxs("span",{className:"column-statistics-type",children:[" (",u,")"]}),c.jsx(cs,{className:"column-statistics-copy",tooltip:"Copy column name",copy:e.name})]}),d!=null&&c.jsx("div",{className:"column-statistics-description",children:d}),w!=null&&!t.isColumnSortable(w)&&c.jsxs("div",{className:"column-statistics-status",children:[c.jsx(ae,{icon:Uv,className:"mr-1"}),"Not sortable"]}),w!=null&&!t.isColumnMovable(w)&&c.jsxs("div",{className:"column-statistics-status",children:[c.jsx(ae,{icon:t.isColumnFrozen(w)?Vv:Bv,className:"mr-1"}),t.isColumnFrozen(w)?"Frozen":"Not movable"]}),c.jsxs("div",{className:"column-statistics-grid",children:[a==null&&c.jsxs(c.Fragment,{children:[c.jsx("div",{className:"column-statistic-operation",children:S}),c.jsx("div",{className:"column-statistic-value",children:b})]}),o]}),s&&c.jsx(Y,{kind:"ghost",className:"px-0",onClick:this.handleGenerateStatistics,children:"Generate Stats"}),r!=null&&c.jsx("div",{className:"error-message",children:"".concat(r)}),a&&!i&&c.jsx(Y,{kind:"ghost",className:"px-0",onClick:this.handleGenerateStatistics,icon:c.jsx(ae,{icon:Ss,className:"mr-1"}),children:"Refresh"}),i&&c.jsxs("div",{className:"column-statistics-loading",children:[c.jsx(Dn,{className:"loading-spinner-vertical-align"}),"Calculating Stats..."]})]})}}Mh(Mi,"AUTO_GENERATE_LIMIT",1e5);const TS=Mi;function ru(n,e,t){return e=ES(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ES(n){var e=OS(n,"string");return typeof e=="symbol"?e:String(e)}function OS(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ea=ge.module("AdvancedFilterCreatorFilterItem");class Ls extends R.PureComponent{static getLabelForFilter(e,t){try{if(x.isNumberType(e)||x.isCharType(e))return ch(t);if(x.isTextType(e))return hh(t);if(x.isDateType(e))return vh(t);if(x.isBooleanType(e))return Om(t);throw new Error("Unrecognized column type: ".concat(e))}catch(r){return ea.warn(r),""}}constructor(e){super(e),ru(this,"typeDropdown",void 0),ru(this,"getCachedIsValid",be((a,l,s,o,u)=>{try{return!s||u.makeAdvancedValueFilter(a,l,s,o)!=null}catch{return!1}})),this.handleDelete=this.handleDelete.bind(this),this.handleTypeChange=this.handleTypeChange.bind(this),this.handleValueChange=this.handleValueChange.bind(this),this.typeDropdown=null;var{value:t="",filterTypes:r,selectedType:i=r[0]}=e;this.state={selectedType:i,value:t}}componentDidMount(){var e;(e=this.typeDropdown)===null||e===void 0||e.focus()}componentDidUpdate(e){var{value:t,selectedType:r}=this.props;r!==void 0&&e.selectedType!==r&&this.setState({selectedType:r}),t!==void 0&&e.value!==t&&this.setState({value:t})}handleTypeChange(e){var t=e.target.value;ea.debug2("typeChange",t),this.setState({selectedType:t});var{onChange:r}=this.props,{value:i}=this.state;i!=null&&i.length>0&&r(t,i)}handleValueChange(e){ea.debug2("valueChange");var{value:t}=e.target;this.setState({value:t});var{onChange:r}=this.props,{selectedType:i}=this.state;i!=null&&r(i,t)}handleDelete(){ea.debug("delete");var{onDelete:e}=this.props;e()}render(){for(var{column:e,filterTypes:t,formatter:r,tableUtils:i}=this.props,{selectedType:a,value:l}=this.state,s=!x.isBooleanType(e.type),o=[],u=this.getCachedIsValid(e,a,l,r.timeZone,i),d=0;d<t.length;d+=1){var h=t[d],v=Ls.getLabelForFilter(e.type,h),m=c.jsx("option",{value:h,children:v},h);o.push(m)}return c.jsx("div",{className:"advanced-filter-creator-filter-item",children:c.jsxs("div",{className:"form-row",children:[c.jsx("div",{className:"form-group col",children:c.jsx("select",{className:"form-control custom-select",value:a,onChange:this.handleTypeChange,ref:f=>{this.typeDropdown=f},children:o})}),s&&c.jsx("div",{className:"form-group col",children:c.jsx("div",{className:"input-group",children:c.jsx("input",{type:"text",className:re("form-control",{error:!u}),placeholder:"Enter value",value:l,onChange:this.handleValueChange})})}),c.jsx("div",{className:"form-group col-1 px-0",children:c.jsx(Y,{kind:"ghost",className:"w-100 h-100 p-0 m-0",onClick:this.handleDelete,icon:fr,tooltip:"Remove Filter"})})]})})}}const PS=Ls;function Ql(n,e,t){return e=RS(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function RS(n){var e=DS(n,"string");return typeof e=="symbol"?e:String(e)}function DS(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var nu=ge.module("AdvancedFilterCreatorSelectValueList");class xi extends R.PureComponent{static indexOf(e,t){for(var r=0;r<t.length;r+=1){var i=t[r];if(i===e||i!=null&&i.valueOf!=null&&e!=null&&e.valueOf!=null&&i.valueOf()===e.valueOf())return r}return-1}constructor(e){super(e),Ql(this,"dh",void 0),Ql(this,"list",void 0),this.handleSelect=this.handleSelect.bind(this),this.handleViewportChange=this.handleViewportChange.bind(this),this.handleSelectionUpdate=this.handleSelectionUpdate.bind(this),this.handleTableUpdate=this.handleTableUpdate.bind(this);var{selectedValues:t,dh:r}=this.props;this.dh=r,this.list=null,this.state={itemCount:0,items:[],offset:0,selectedValues:t,isLoading:!0}}componentDidMount(){var{table:e}=this.props;e&&this.startListening(e)}componentDidUpdate(e){var{filters:t,invertSelection:r,selectedValues:i,table:a}=this.props;e.table!==a&&(e.table&&this.stopListening(e.table),a&&this.startListening(a),this.resetViewport()),e.invertSelection!==r&&this.setState({selectedValues:[]},this.handleSelectionUpdate),e.selectedValues!==i&&this.setState({selectedValues:i},this.handleSelectionUpdate),e.filters!==t&&(a?.applyFilter(t),this.resetViewport())}componentWillUnmount(){var{table:e}=this.props;e&&this.stopListening(e)}handleSelect(e,t){var{invertSelection:r}=this.props,{selectedValues:i}=this.state;i=[...i];var a=xi.indexOf(t,i);a>=0?i.splice(a,1):i.push(t);var l=a<0;r&&(l=!l);var{offset:s}=this.state,{items:o}=this.state;o=[...o];var u=e-s;u>=0&&u<o.length&&(o[u].isSelected=l),this.setState({items:o,selectedValues:i});var{onChange:d}=this.props;d(i,r)}handleViewportChange(e,t){this.updateViewport(e,t)}handleSelectionUpdate(){this.updateItemSelection()}handleTableUpdate(e){var{table:t,formatter:r}=this.props;if(t){for(var i=e.detail,{offset:a}=i,l=[],s=t.columns[0],o=0;o<i.rows.length;o+=1){var u=i.rows[o],d=u.get(s),h=void 0;d==null?h=c.jsx("i",{className:"text-muted",children:"null"}):d===""?h=c.jsx("i",{className:"text-muted",children:"empty"}):h=r.getFormattedString(d,s.type,s.name);var v=this.isValueSelected(d);l.push({displayValue:h,value:d,isSelected:v})}nu.debug2("Received table update:",a,l.length);var m=t.size;this.setState({itemCount:m,items:l,offset:a,isLoading:!1})}}isValueSelected(e){var{invertSelection:t}=this.props,{selectedValues:r}=this.state,i=xi.indexOf(e,r);return t?i<0:i>=0}startListening(e){e.addEventListener(this.dh.Table.EVENT_UPDATED,this.handleTableUpdate)}stopListening(e){e.removeEventListener(this.dh.Table.EVENT_UPDATED,this.handleTableUpdate)}resetViewport(){this.list&&this.list.topRow!=null&&this.list.bottomRow!=null&&this.updateViewport(this.list.topRow,this.list.bottomRow,!0)}updateItemSelection(){var{items:e}=this.state;e=[...e];for(var t=0;t<e.length;t+=1){var r=e[t],{value:i}=r;r.isSelected=this.isValueSelected(i)}this.setState({items:e})}updateViewport(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{table:i}=this.props;if(i!=null){r&&this.setState({isLoading:!0});var a=t-e+1,l=Math.max(0,e-a*3),s=Math.max(l,t+a*3);nu.debug2("Setting viewport",l,",",s),i.setViewport(l,s)}}render(){var{offset:e,isLoading:t,items:r,itemCount:i}=this.state;return c.jsxs("div",{className:"select-value-list-wrapper",children:[c.jsx(Ev,{itemCount:i,items:r,offset:e,onSelect:this.handleSelect,onViewportChange:this.handleViewportChange,ref:a=>{this.list=a}}),c.jsx(vr,{in:t,timeout:250,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0,children:c.jsx("div",{className:"loading-list",children:c.jsx(Dn,{className:"loading-spinner-large"})})})]})}}Ql(xi,"defaultProps",{invertSelection:!0,selectedValues:[],onChange:()=>{}});const FS=xi;function Di(n,e,t){return e=NS(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function NS(n){var e=IS(n,"string");return typeof e=="symbol"?e:String(e)}function IS(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Ui extends R.PureComponent{constructor(e){super(e),Di(this,"searchTablePromise",void 0),Di(this,"tableUtils",void 0),Di(this,"updateFilterTimer",void 0),this.handleSelectAllClick=this.handleSelectAllClick.bind(this),this.handleClearAllClick=this.handleClearAllClick.bind(this),this.handleListChange=this.handleListChange.bind(this),this.handleSearchChange=this.handleSearchChange.bind(this),this.handleUpdateFilterTimeout=this.handleUpdateFilterTimeout.bind(this);var{dh:t,invertSelection:r,selectedValues:i}=e;this.tableUtils=new x(t),this.state={filters:[],invertSelection:r,selectedValues:i,searchText:""}}componentDidMount(){this.initSearchTable()}componentDidUpdate(e,t){var{invertSelection:r,selectedValues:i,table:a}=this.props;e.table!==a&&this.initSearchTable(),e.invertSelection!==r&&this.setState({invertSelection:r}),e.selectedValues!==i&&this.setState({selectedValues:i});var{table:l,searchText:s}=this.state;l!==t.table&&(t.table!=null&&t.table.close(),l!=null&&this.startUpdateFilterTimer()),s!==t.searchText&&this.startUpdateFilterTimer()}componentWillUnmount(){var{table:e}=this.state;e?.close(),this.searchTablePromise=void 0,this.stopUpdateFilterTimer()}getColumnName(){var{table:e}=this.props;return e!=null?e.columns[0].name:""}getDisplayedValuesCount(){var{invertSelection:e,selectedValues:t,table:r}=this.state;return r==null?null:e?r.totalSize-t.length:t.length}getDisplayedValueText(){var e=this.getDisplayedValuesCount(),{table:t}=this.state,{formatter:r}=this.props;if(e!=null&&t!=null){var i=r.getFormattedString(e,"long"),a=r.getFormattedString(t.totalSize,"long"),l="";return e<1e6&&(l="Displaying "),"".concat(l).concat(i," of ").concat(a)}return null}initSearchTable(){var{table:e}=this.props;if(e!=null){var t=e.copy();this.searchTablePromise=t,this.searchTablePromise.then(r=>{this.searchTablePromise===t?(this.setState({table:r}),this.searchTablePromise=void 0):r.close()})}}handleListChange(e,t){this.setState({selectedValues:e,invertSelection:t});var{onChange:r}=this.props;r(e,t)}handleSearchChange(e){var t=e.target.value;this.setState({searchText:t})}handleSelectAllClick(){this.resetSelection(!0)}handleClearAllClick(){this.resetSelection(!1)}handleUpdateFilterTimeout(){this.updateFilterTimer=void 0,this.updateTableFilter()}resetSelection(e){var t=[];this.setState({invertSelection:e,selectedValues:t});var{onChange:r}=this.props;r(t,e)}startUpdateFilterTimer(){this.stopUpdateFilterTimer(),this.updateFilterTimer=setTimeout(this.handleUpdateFilterTimeout,Ui.searchDebounceTime)}stopUpdateFilterTimer(){this.updateFilterTimer!=null&&(clearTimeout(this.updateFilterTimer),this.updateFilterTimer=void 0)}updateTableFilter(){var{table:e,searchText:t}=this.state,{timeZone:r}=this.props,{tableUtils:i}=this,a=e?.columns[0],l=[];if(a!=null){var s;if(t.length>0){var o=null;x.isCharType(a.type)?o=i.makeQuickFilter(a,t):x.isTextType(a.type)?o=i.makeQuickFilter(a,"~".concat(t),r):o=i.makeQuickFilter(a,">=".concat(t),r),o!=null?l.push(o):s="Invalid search text"}this.setState({filters:l,error:s})}}render(){var{error:e,filters:t,invertSelection:r,selectedValues:i,searchText:a,table:l}=this.state,{dh:s,formatter:o,showSearch:u}=this.props,d=this.getColumnName(),h=this.getDisplayedValueText(),v=d?"Find ".concat(d,"..."):"";return c.jsxs("div",{className:"advanced-filter-creator-select-value",children:[c.jsxs("div",{className:u?"form-group":"",children:[c.jsx("label",{htmlFor:"advanced-filter-creator-select-value-input",children:"Select Values"}),u&&c.jsx("input",{type:"text",className:re("form-control",{"is-invalid":e!=null}),id:"advanced-filter-creator-select-value-input",placeholder:v,value:a,onChange:this.handleSearchChange})]}),c.jsx(FS,{dh:s,table:l,filters:t,invertSelection:r,selectedValues:i,formatter:o,onChange:this.handleListChange}),c.jsxs("div",{className:"advanced-filter-creator-select-meta-row",children:[c.jsxs("div",{children:[c.jsx(Y,{kind:"ghost",onClick:this.handleSelectAllClick,children:"Select All"}),c.jsx(Y,{kind:"ghost",onClick:this.handleClearAllClick,children:"Clear"})]}),c.jsx(vr,{in:h!=null,timeout:250,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0,children:c.jsx("div",{className:"row-count-info",children:h})})]})]})}}Di(Ui,"searchDebounceTime",250);Di(Ui,"defaultProps",{invertSelection:!0,selectedValues:[],onChange:()=>{},showSearch:!0});const AS=Ui;function Gn(n,e,t){return e=MS(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function MS(n){var e=xS(n,"string");return typeof e=="symbol"?e:String(e)}function xS(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var fi=ge.module("AdvancedFilterCreator");class yr extends R.PureComponent{static makeFilterItem(){return{key:nt()}}constructor(e){var t,r;super(e),Gn(this,"focusTrapContainer",void 0),Gn(this,"debounceTimeout",void 0),Gn(this,"valuesTablePromise",void 0),Gn(this,"getFilterTypes",be(m=>x.getFilterTypes(m))),this.handleAddAnd=this.handleAddAnd.bind(this),this.handleAddOr=this.handleAddOr.bind(this),this.handleChangeFilterOperator=this.handleChangeFilterOperator.bind(this),this.handleDone=this.handleDone.bind(this),this.handleFilterChange=this.handleFilterChange.bind(this),this.handleFilterDelete=this.handleFilterDelete.bind(this),this.handleSelectValueChange=this.handleSelectValueChange.bind(this),this.handleReset=this.handleReset.bind(this),this.handleSortDown=this.handleSortDown.bind(this),this.handleSortUp=this.handleSortUp.bind(this),this.handleSubmit=this.handleSubmit.bind(this),this.handleFocusTrapStart=this.handleFocusTrapStart.bind(this),this.handleFocusTrapEnd=this.handleFocusTrapEnd.bind(this),this.handleUpdateTimeout=this.handleUpdateTimeout.bind(this),this.focusTrapContainer=Me.createRef();var{model:i,column:a,options:l}=e,{filterOperators:s,invertSelection:o,selectedValues:u}=l,d=(t=(r=l.filterItems)===null||r===void 0?void 0:r.map(m=>{var{selectedType:f,value:g}=m;return{selectedType:f,value:g,key:nt()}}))!==null&&t!==void 0?t:[];d.length===0&&d.push(yr.makeFilterItem()),s==null&&(s=[]),o==null&&(o=!0),u==null&&(u=[]);var h=i.getColumnIndexByName(a.name);L(h);var v=i.isColumnSortable(h);this.state={filterItems:d,filterOperators:s,invertSelection:o,selectedValues:u,valuesTableError:null,valuesTable:void 0,isSortable:v}}componentDidMount(){this.initValuesTable()}componentWillUnmount(){this.debounceTimeout!=null&&(clearTimeout(this.debounceTimeout),this.sendUpdate()),this.valuesTablePromise!=null&&this.valuesTablePromise.cancel()}getFilterChangeHandler(e){return this.handleFilterChange.bind(this,e)}getFilterDeleteHandler(e){return this.handleFilterDelete.bind(this,e)}initValuesTable(){var{model:e,column:t}=this.props;if(!e.isValuesTableAvailable){fi.debug("No values table for this model, just ignore");return}this.valuesTablePromise=x.makeCancelableTablePromise(e.valuesTable(t)),this.valuesTablePromise.then(r=>{var i;if(!((i=r.columns[0].isSortable)!==null&&i!==void 0)||i){var a=r.columns[0].sort().asc();r.applySort([a])}this.setState({valuesTable:r})}).catch(r=>{st.isCanceled(r)||(fi.error("Unable to open values table",r),this.setState({valuesTableError:r}))})}handleFocusTrapEnd(){var e,t;((e=this.focusTrapContainer)===null||e===void 0||(t=e.current)===null||t===void 0?void 0:t.querySelector("button,select,input,textarea")).focus()}handleFocusTrapStart(){var e,t,r=(e=this.focusTrapContainer)===null||e===void 0||(t=e.current)===null||t===void 0?void 0:t.querySelectorAll("button,select,input,textarea");if(r&&r.length>0){var i=r[r.length-1];i.focus()}}handleAddAnd(){var{filterItems:e,filterOperators:t}=this.state;e=e.concat(yr.makeFilterItem()),t=t.concat(di.and),this.setState({filterItems:e,filterOperators:t})}handleAddOr(){var{filterItems:e,filterOperators:t}=this.state;e=e.concat(yr.makeFilterItem()),t=t.concat(di.or),this.setState({filterItems:e,filterOperators:t})}handleChangeFilterOperator(e,t){var{filterOperators:r}=this.state;r=[...r],Ov(t),r[e]=t,this.setState({filterOperators:r}),this.startUpdateTimer()}handleFilterChange(e,t,r){var{filterItems:i}=this.state;i=[...i];var{key:a}=i[e];i[e]={key:a,selectedType:t,value:r},this.setState({filterItems:i}),this.startUpdateTimer()}handleFilterDelete(e){var{filterItems:t,filterOperators:r}=this.state;t=[...t],r=[...r],e<t.length&&t.splice(e,1),e<r.length?r.splice(e,1):e===r.length&&r.splice(r.length-1,1),t.length===0&&t.push(yr.makeFilterItem()),this.setState({filterItems:t,filterOperators:r}),this.startUpdateTimer()}handleSelectValueChange(e,t){this.setState({selectedValues:e,invertSelection:t}),this.startUpdateTimer()}handleReset(){fi.debug("Resetting Advanced Filter"),this.setState({filterItems:[yr.makeFilterItem()],filterOperators:[],selectedValues:[],invertSelection:!0}),this.startUpdateTimer()}handleSortDown(e){var t=Kn.isModifierKeyDown(e);this.sortTable(x.sortDirection.descending,t)}handleSortUp(e){var t=Kn.isModifierKeyDown(e);this.sortTable(x.sortDirection.ascending,t)}handleSubmit(e){fi.debug("Submitting Advanced Filter"),this.stopUpdateTimer(),this.sendUpdate(),e.preventDefault()}handleDone(e){fi.debug("Submitting and Closing Advanced Filter"),this.stopUpdateTimer(),this.sendUpdate();var{onDone:t}=this.props;t(),e.preventDefault()}handleUpdateTimeout(){this.debounceTimeout=void 0,this.sendUpdate()}shouldShowAddFilter(){var{filterItems:e}=this.state;if(e.length===0)return!1;var t=e[e.length-1],{selectedType:r,value:i}=t;return r!=null&&r.length>0&&i!=null&&i.length>0}sortTable(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,{column:r,onSortChange:i}=this.props,{isSortable:a}=this.state;a&&i(r,e,t)}startUpdateTimer(){this.stopUpdateTimer(),this.debounceTimeout=setTimeout(this.handleUpdateTimeout,yr.debounceFilterUpdate)}stopUpdateTimer(){this.debounceTimeout!==void 0&&(clearTimeout(this.debounceTimeout),this.debounceTimeout=void 0)}sendUpdate(){var{filterItems:e,filterOperators:t,invertSelection:r,selectedValues:i}=this.state,{column:a,onFilterChange:l,model:s,tableUtils:o}=this.props,{formatter:u}=s,d=e.filter(f=>{var{selectedType:g,value:p}=f;return g!=null&&p!=null&&p!==""}),h=t.filter((f,g)=>f!=null&&e[g].selectedType!=null&&e[g].value!=null&&e[g].value!=="").slice(0,d.length-1),v={filterItems:d,filterOperators:h,invertSelection:r,selectedValues:i},m=o.makeAdvancedFilter(a,v,u.timeZone);l(a,m,v)}render(){var e=this,{column:t,model:r,sortDirection:i,formatter:a,tableUtils:l}=this.props,{filterItems:s,filterOperators:o,invertSelection:u,selectedValues:d,valuesTable:h,valuesTableError:v,isSortable:m}=this.state,{dh:f,isValuesTableAvailable:g}=r,p=x.isBooleanType(t.type),C=x.isDateType(t.type),S=this.getFilterTypes(t.type),b=t.type.substring(t.type.lastIndexOf(".")+1),w=[];if(!p&&S.length)for(var y=function(D){var N=s[D],{key:F,selectedType:A,value:j}=N,k=c.jsx(PS,{column:t,filterTypes:S,onChange:e.getFilterChangeHandler(D),onDelete:e.getFilterDeleteHandler(D),selectedType:A,value:j,formatter:a,tableUtils:l},F);if(w.push(k),D<o.length){var B=o[D],G=B===di.and,W=c.jsxs("div",{className:"form-row justify-content-end advanced-filter-creator-filter-operator",children:[c.jsx(Y,{kind:"ghost",className:re("filter-operator",{active:G}),onClick:()=>e.handleChangeFilterOperator(D,di.and),children:"AND"}),c.jsx(Y,{kind:"ghost",className:re("filter-operator",{active:!G}),onClick:()=>e.handleChangeFilterOperator(D,di.or),children:"OR"})]},"filterOperator".concat(F));w.push(W)}},T=0;T<s.length;T+=1)y(T);var E=this.shouldShowAddFilter(),P=c.jsxs("div",{className:re("form-row justify-content-end add-filter-item",{hidden:!E}),children:[c.jsx("span",{className:"text-muted",children:c.jsx(ae,{icon:Fn})}),c.jsx(Y,{kind:"ghost",className:"btn-filter-item",onClick:this.handleAddAnd,disabled:!E,tooltip:"Add filter with AND",children:"AND"}),c.jsx(Y,{kind:"ghost",className:"btn-filter-item",onClick:this.handleAddOr,disabled:!E,tooltip:"Add filter with OR",children:"OR"})]},"addFilterItem");return w.push(P),c.jsxs("div",{className:"advanced-filter-creator",role:"presentation",children:[c.jsx("div",{tabIndex:0,onFocus:this.handleFocusTrapStart}),c.jsxs("form",{onSubmit:this.handleSubmit,ref:this.focusTrapContainer,children:[c.jsxs("div",{className:"title-bar",children:[c.jsx("h6",{className:"advanced-filter-title",children:"Advanced Filters"}),c.jsxs("div",{className:"advanced-filter-menu-buttons",children:[c.jsx(Y,{kind:"ghost",className:re("sort-operator",{active:i===x.sortDirection.descending}),onClick:this.handleSortDown,icon:vo,tooltip:m?"Sort ".concat(t.name," Descending"):"Not sortable",disabled:!m}),c.jsx(Y,{kind:"ghost",className:re("sort-operator",{active:i===x.sortDirection.ascending}),onClick:this.handleSortUp,icon:c.jsx(ae,{icon:vo,rotation:180}),tooltip:m?"Sort ".concat(t.name," Ascending"):"Not sortable",disabled:!m})]})]}),c.jsx("hr",{}),c.jsxs("div",{className:"advanced-filter-column-name",children:[t.name," ",c.jsxs("span",{className:"column-type",children:["(",b,")"]})]}),w,g&&v==null&&c.jsxs(c.Fragment,{children:[!p&&c.jsx("hr",{}),c.jsx("div",{className:"form-group",children:c.jsx(AS,{dh:f,table:h,onChange:this.handleSelectValueChange,invertSelection:u,selectedValues:d,formatter:a,showSearch:!C,timeZone:a.timeZone})})]}),c.jsxs("div",{className:"form-row justify-content-end",children:[c.jsx(Y,{kind:"secondary",className:"mr-2",onClick:this.handleReset,children:"Reset"}),c.jsx(Y,{kind:"primary",onClick:this.handleDone,children:"Done"})]})]}),c.jsx("div",{tabIndex:0,onFocus:this.handleFocusTrapEnd})]})}}Gn(yr,"debounceFilterUpdate",250);Gn(yr,"defaultProps",{options:{filterItems:null,filterOperators:null,invertSelection:!0,selectedValues:[]},sortDirection:null});const LS=yr;function iu(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 au(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?iu(Object(t),!0).forEach(function(r){kS(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):iu(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function kS(n,e,t){return e=jS(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function jS(n){var e=_S(n,"string");return typeof e=="symbol"?e:String(e)}function _S(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var lu=ge.module("Aggregations");function HS(n){var{isRollup:e,settings:t,onChange:r,onEdit:i}=n,{aggregations:a,showOnTop:l}=t,s=R.useMemo(()=>gp.filter(D=>!a.some(N=>N.operation===D)),[a]),[o,u]=R.useState(s[0]),[d,h]=R.useState([]),v=R.useCallback(D=>{r(au(au({},t),D))},[r,t]),m=R.useCallback(D=>{v({aggregations:D})},[v]),f=R.useCallback(D=>{v({showOnTop:D})},[v]),g=R.useCallback(()=>{lu.debug("handleDragStart"),cr.startDragging()},[]),p=R.useCallback(D=>{var{destination:N,source:F}=D;if(lu.debug("handleDragEnd",N,F),cr.stopDragging(),N!==null){var A=N.index;F.index<N.index&&(A+=1);var j=[...a],k=cr.reorder(j,d,j,A),B=cr.adjustDestinationIndex(A,d),G=[[B,B+k.length-1]];m(j),h(G)}},[m,a,d,h]),C=R.useCallback(D=>{u(D)},[u]),S=R.useCallback(()=>{m([...a,{operation:o,selected:[],invert:!0}])},[a,o,m]),b=R.useCallback(D=>{m(a.filter((N,F)=>F!==D))},[a,m]),w=R.useCallback(D=>{h(D)},[h]),y=R.useCallback(D=>{var N=a[D];on.isRollupOperation(N.operation)||i(N)},[a,i]),T=R.useCallback(D=>{f(D.target.value==="true")},[f]);R.useEffect(function(){s.length>0&&!s.includes(o)&&u(s[0])},[s,o]);var E=R.useCallback(D=>{var{item:N,itemIndex:F,isClone:A=!1,selectedCount:j}=D,k=N.operation,B=A?"".concat(j):void 0,G=A?"item-list-item-clone":void 0,W=on.isRollupOperation(N.operation),z=!A&&!W;return c.jsxs(c.Fragment,{children:[c.jsxs("div",{className:re("item-list-item-content","draggable-item-list-item-content",G),children:[c.jsxs("span",{className:"title",children:[k,!e&&W&&c.jsxs("span",{className:"small text-warning",children:[c.jsx(ae,{icon:ah})," Requires rollup"]})]}),lr.renderBadge({text:B}),lr.renderHandle()]}),!A&&c.jsxs(c.Fragment,{children:[c.jsx(Y,{kind:"ghost",className:"btn-edit",icon:Hi,tooltip:"Edit Columns",onClick:()=>i(N),disabled:!z}),c.jsx(Y,{kind:"ghost",className:"btn-delete",icon:fr,tooltip:"Delete Aggregation",onClick:()=>b(F)})]})]})},[b,i,e]),P=s.length>0,O=a.length>0;return c.jsxs("div",{className:"aggregations",children:[P&&c.jsxs("div",{className:"form-inline",children:[c.jsx(Pv,{onChange:C,value:o,children:s.map(D=>c.jsx(Rv,{value:D,children:D},D))}),c.jsxs("button",{type:"button",className:"btn btn-link btn-add",onClick:S,children:[c.jsx(ae,{icon:Fn}),"Add Aggregation"]})]}),P&&O&&c.jsx("hr",{}),O&&c.jsxs(c.Fragment,{children:[!e&&c.jsxs("div",{className:"form-inline",children:[c.jsx("label",{children:"Placement: "}),c.jsxs(Ha,{onChange:T,value:"".concat(l),children:[c.jsx(jr,{value:"true",children:"Top"}),c.jsx(jr,{value:"false",children:"Bottom"})]})]}),c.jsx(La,{onDragStart:g,onDragEnd:p,children:c.jsx(lr,{className:"selected-aggregations",itemCount:a.length,items:a,renderItem:E,offset:0,onSelectionChange:w,onSelect:y,selectedRanges:d,isMultiSelect:!0})})]})]})}function su(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 Kr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?su(Object(t),!0).forEach(function(r){US(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):su(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function US(n,e,t){return e=VS(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function VS(n){var e=BS(n,"string");return typeof e=="symbol"?e:String(e)}function BS(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var nr;(function(n){n[n.NONE=0]="NONE",n[n.ASCENDING=1]="ASCENDING",n[n.DESCENDING=2]="DESCENDING"})(nr||(nr={}));var GS=30;function $S(n){var{aggregation:e,columns:t,onChange:r}=n,[i,a]=R.useState(-1),[l,s]=R.useState(-1),[o,u]=R.useState(nr.NONE),{invert:d,selected:h}=e,v=R.useRef(null),m=R.useCallback(T=>h.includes(T)?!d:d,[d,h]),f=R.useMemo(()=>{var T=As(t,e.operation);return o!==nr.NONE&&(T=x.sortColumns(T,o===nr.ASCENDING)),T},[t,e.operation,o]),g=R.useMemo(()=>i>=0?f.slice(i,l+1).map(T=>({value:T.name,displayValue:T.name,isSelected:m(T.name)})):[],[f,m,l,i]),p=R.useCallback(T=>{var{name:E}=f[T],P=h.indexOf(E),O=[...h],D=d;P>=0?O.splice(P,1):(O.push(E),O.length===f.length&&(O=[],D=!d)),r(Kr(Kr({},e),{},{selected:O,invert:D}))},[e,d,f,h,r]),C=R.useCallback(()=>{u(nr.NONE),r(Kr(Kr({},e),{},{selected:[],invert:!0}))},[e,r]),S=R.useCallback((T,E)=>{a(T),s(E)},[a,s]),b=R.useCallback(()=>{h.length===0?r(Kr(Kr({},e),{},{invert:!d})):r(Kr(Kr({},e),{},{selected:[],invert:!0}))},[e,d,r,h]),w=h.length===0?d:null,y=h.length!==0||!d||o!==nr.NONE;return c.jsxs("div",{role:"menu",className:"aggregation-edit",children:[c.jsx("div",{className:"top-menu",children:c.jsxs("div",{className:"form-inline",children:[c.jsx(un,{checked:w,onChange:b,children:"Toggle All"}),c.jsx("div",{className:"spacer"}),c.jsx(vr,{in:y,timeout:ze.transitionSlowMs,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0,children:c.jsx(Y,{kind:"ghost",className:"btn-reset",onClick:C,children:"Reset"})}),c.jsx(Y,{kind:"ghost",className:re({active:o===nr.ASCENDING}),icon:bs,tooltip:"Sort ascending",onClick:()=>u(nr.ASCENDING)}),c.jsx(Y,{kind:"ghost",className:re({active:o===nr.DESCENDING}),icon:ws,tooltip:"Sort descending",onClick:()=>u(nr.DESCENDING)})]})}),c.jsx("div",{className:"aggregation-edit-item-list",children:c.jsx(Gl,{itemCount:f.length,items:g,offset:i,renderItem:T=>{var{item:E}=T;return c.jsx(un,{checked:m(E.value),children:E.displayValue})},onSelect:p,onViewportChange:S,rowHeight:GS,focusSelector:"input",ref:v})})]})}function ou(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 uu(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ou(Object(t),!0).forEach(function(r){WS(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ou(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function WS(n,e,t){return e=zS(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function zS(n){var e=KS(n,"string");return typeof e=="symbol"?e:String(e)}function KS(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function YS(n){return c.jsx("svg",uu(uu({width:48,height:48,xmlns:"http://www.w3.org/2000/svg"},n),{},{children:c.jsxs("g",{fill:"none",fillRule:"evenodd",children:[c.jsx("path",{fill:"#C1C0C0",d:"M44 43v1H4v-1z"}),c.jsx("path",{fill:"#7DA4FF",d:"M8 26h4v15H8zM15 17h4v24h-4zM22 21h4v20h-4zM29 17h4v24h-4zM36 11h4v30h-4z"})]})}))}function du(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 hu(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?du(Object(t),!0).forEach(function(r){qS(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):du(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function qS(n,e,t){return e=XS(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function XS(n){var e=QS(n,"string");return typeof e=="symbol"?e:String(e)}function QS(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function ZS(n){return c.jsx("svg",hu(hu({width:48,height:48,xmlns:"http://www.w3.org/2000/svg"},n),{},{children:c.jsxs("g",{fill:"none",fillRule:"evenodd",children:[c.jsx("path",{fill:"#C1C0C0",d:"M44 43v1H4v-1z"}),c.jsx("path",{fill:"#7DA4FF",d:"M7 34h4v8H7zM12 31h4v11h-4zM17 27h4v15h-4zM22 22h4v20h-4zM27 27h4v15h-4zM32 29h4v13h-4zM37 31h4v11h-4z"})]})}))}function cu(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 vu(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?cu(Object(t),!0).forEach(function(r){JS(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):cu(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function JS(n,e,t){return e=eb(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function eb(n){var e=tb(n,"string");return typeof e=="symbol"?e:String(e)}function tb(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function rb(n){return c.jsx("svg",vu(vu({width:48,height:48,xmlns:"http://www.w3.org/2000/svg"},n),{},{children:c.jsxs("g",{fill:"none",fillRule:"evenodd",children:[c.jsx("path",{fill:"#C1C0C0",d:"M4 4h1v40H4zM44 43v1H5v-1z"}),c.jsx("path",{stroke:"#7DA4FF",d:"M7.984 32.44l7.982-11.378 5.273 3.739 9.952-10.838 2.826 1.894 7.45-5.802"}),c.jsx("path",{stroke:"#BECDEF",d:"M8.244 37.926L17 33.496l5 .87 10.637-10.35 10.615-1.381"})]})}))}function mu(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 fu(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?mu(Object(t),!0).forEach(function(r){nb(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):mu(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function nb(n,e,t){return e=ib(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ib(n){var e=ab(n,"string");return typeof e=="symbol"?e:String(e)}function ab(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function lb(n){return c.jsx("svg",fu(fu({width:48,height:48,xmlns:"http://www.w3.org/2000/svg"},n),{},{children:c.jsxs("g",{fill:"none",fillRule:"evenodd",children:[c.jsx("path",{d:"M24 10c7.732 0 14 6.268 14 14s-6.268 14-14 14-14-6.268-14-14h14V10z",fill:"#80A6FF"}),c.jsx("path",{d:"M10 24c0-7.732 6.268-14 14-14v14H10z",fill:"#C1C0C0"})]})}))}function gu(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 pu(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?gu(Object(t),!0).forEach(function(r){sb(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):gu(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function sb(n,e,t){return e=ob(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ob(n){var e=ub(n,"string");return typeof e=="symbol"?e:String(e)}function ub(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function db(n){return c.jsx("svg",pu(pu({width:48,height:48,xmlns:"http://www.w3.org/2000/svg"},n),{},{children:c.jsxs("g",{fill:"none",fillRule:"evenodd",children:[c.jsx("path",{fill:"#C1C0C0",d:"M44 43v1H4v-1z"}),c.jsx("path",{fill:"#939293",d:"M44 34v1H4v-1zM44 25v1H4v-1zM44 16v1H4v-1z"}),c.jsx("circle",{fill:"#7DA4FF",cx:9.5,cy:37.5,r:1.5}),c.jsx("circle",{fill:"#7DA4FF",cx:16.5,cy:30.5,r:1.5}),c.jsx("circle",{fill:"#7DA4FF",cx:22.5,cy:36.5,r:1.5}),c.jsx("circle",{fill:"#7DA4FF",cx:28.5,cy:30.5,r:1.5}),c.jsx("circle",{fill:"#7DA4FF",cx:15.5,cy:38.5,r:1.5}),c.jsx("circle",{fill:"#7DA4FF",cx:23.5,cy:25.5,r:1.5}),c.jsx("circle",{fill:"#7DA4FF",cx:19.5,cy:19.5,r:1.5}),c.jsx("circle",{fill:"#7DA4FF",cx:29.5,cy:19.5,r:1.5}),c.jsx("circle",{fill:"#7DA4FF",cx:32.5,cy:26.5,r:1.5}),c.jsx("circle",{fill:"#7DA4FF",cx:36.5,cy:13.5,r:1.5})]})}))}function Cu(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 Su(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Cu(Object(t),!0).forEach(function(r){hb(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Cu(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function hb(n,e,t){return e=cb(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function cb(n){var e=vb(n,"string");return typeof e=="symbol"?e:String(e)}function vb(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function mb(n){return c.jsxs("svg",Su(Su({width:"48",height:"48",viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg"},n),{},{children:[c.jsx("rect",{width:"48",height:"48",fill:"none"}),c.jsx("rect",{x:"26",y:"10",width:"15",height:"4",fill:"#9FDE70"}),c.jsx("rect",{x:"26",y:"22",width:"15",height:"4",fill:"#9FDE70"}),c.jsx("rect",{x:"26",y:"28",width:"15",height:"4",fill:"#FFD95C"}),c.jsx("rect",{x:"26",y:"34",width:"15",height:"4",fill:"#9FDE70"})]}))}function bu(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 wu(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?bu(Object(t),!0).forEach(function(r){fb(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):bu(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function fb(n,e,t){return e=gb(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function gb(n){var e=pb(n,"string");return typeof e=="symbol"?e:String(e)}function pb(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Cb(n){return c.jsxs("svg",wu(wu({width:"48",height:"48",viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg"},n),{},{children:[c.jsx("rect",{width:"48",height:"48",fill:"none"}),c.jsx("rect",{x:"4",y:"16",width:"40",height:"4",fill:"#FFD95C"}),c.jsx("rect",{x:"4",y:"10",width:"40",height:"4",fill:"#78DCE8"}),c.jsx("rect",{x:"4",y:"34",width:"40",height:"4",fill:"#78DCE8"})]}))}var yu=ge.module("ChartBuilder");class ir extends R.PureComponent{static getMaxSeriesCount(e,t){switch(t){case e.plot.SeriesPlotStyle.PIE:return 1;case e.plot.SeriesPlotStyle.HISTOGRAM:return 0;default:return 100}}static makeSeriesItem(e){return{id:nt.generate(),value:e}}static makeDefaultSeriesItems(e,t,r){var i=ir.getMaxSeriesCount(e,t);if(i===0||r==null||r.length===0)return[];var a=r.length>1?r[1].name:r[0].name;return[ir.makeSeriesItem(a)]}static getDefaultXAxis(e,t){return t!=null&&t.length>0?t[0].name:null}constructor(e){super(e),this.handleAddSeries=this.handleAddSeries.bind(this),this.handleLinkStateChange=this.handleLinkStateChange.bind(this),this.handleReset=this.handleReset.bind(this),this.handleSeriesChange=this.handleSeriesChange.bind(this),this.handleSeriesDeleteClick=this.handleSeriesDeleteClick.bind(this),this.handleSubmit=this.handleSubmit.bind(this),this.handleTypeClick=this.handleTypeClick.bind(this),this.handleXAxisChange=this.handleXAxisChange.bind(this),this.sendChange=this.sendChange.bind(this);var{model:t}=e,{columns:r,dh:i}=t,a=this.getTypes()[0],l=ir.getDefaultXAxis(a,r),s=ir.makeDefaultSeriesItems(i,a,r);this.state={type:a,seriesItems:s,xAxis:l,isLinked:!0}}getTypes(){var{model:e}=this.props,{dh:t}=e;return[t.plot.SeriesPlotStyle.LINE,t.plot.SeriesPlotStyle.BAR,t.plot.SeriesPlotStyle.SCATTER,t.plot.SeriesPlotStyle.PIE]}getTypeName(e){var{model:t}=this.props,{dh:r}=t;switch(e){case r.plot.SeriesPlotStyle.LINE:return"Line";case r.plot.SeriesPlotStyle.BAR:return"Bar";case r.plot.SeriesPlotStyle.SCATTER:return"Scatter";case r.plot.SeriesPlotStyle.PIE:return"Pie";case r.plot.SeriesPlotStyle.HISTOGRAM:return"Histogram";default:return e}}getTypeIcon(e){var{model:t}=this.props,{dh:r}=t;switch(e){case r.plot.SeriesPlotStyle.LINE:return c.jsx(rb,{});case r.plot.SeriesPlotStyle.BAR:return c.jsx(YS,{});case r.plot.SeriesPlotStyle.SCATTER:return c.jsx(db,{});case r.plot.SeriesPlotStyle.PIE:return c.jsx(lb,{});case r.plot.SeriesPlotStyle.HISTOGRAM:return c.jsx(ZS,{});default:return null}}getXAxisLabel(e){var{model:t}=this.props,{dh:r}=t;switch(e){case r.plot.SeriesPlotStyle.PIE:return"Labels";case r.plot.SeriesPlotStyle.HISTOGRAM:return"Data";default:return"X-Axis"}}getSeriesLabel(e){var{model:t}=this.props,{dh:r}=t;switch(e){case r.plot.SeriesPlotStyle.PIE:return"Values";default:return"Series"}}handleAddSeries(){this.setState(e=>{var{seriesItems:t}=e,r=[...t],{model:i}=this.props,{columns:a}=i;return r.push({id:nt.generate(),value:a[0].name}),{seriesItems:r}},this.sendChange)}handleLinkStateChange(e){this.setState({isLinked:e.target.value==="true"},this.sendChange)}handleReset(){var{model:e}=this.props,{columns:t,dh:r}=e,i=this.getTypes()[0],a=ir.getDefaultXAxis(i,t),l=ir.makeDefaultSeriesItems(r,i,t),s=!0;this.setState({type:i,seriesItems:l,xAxis:a,isLinked:s},this.sendChange)}handleSeriesChange(e){var{value:t}=e.target,r=e.target.getAttribute("data-index"),i=parseInt(r,10);this.setState(a=>{var{seriesItems:l}=a;return l=[...l],l[i].value=t,{seriesItems:l}},this.sendChange)}handleSeriesDeleteClick(e){var t=e,r=t.target.getAttribute("data-index"),i=parseInt(r,10);this.setState(a=>{var{seriesItems:l}=a,s=[...l];return s.splice(i,1),{seriesItems:s}},this.sendChange)}handleSubmit(e){e.preventDefault();var{onSubmit:t}=this.props,{type:r,seriesItems:i,xAxis:a,isLinked:l}=this.state,s=i.map(o=>o.value);t({type:r,series:s,xAxis:a,isLinked:l})}handleTypeClick(e){var t=e,r=t.target.getAttribute("data-index"),i=parseInt(r,10),a=this.getTypes()[i];yu.debug2("handleTypeSelect",a),this.setState(l=>{var{model:s}=this.props,{dh:o}=s,u=ir.getMaxSeriesCount(o,a),{seriesItems:d}=l;if(d=d.slice(0,u),d.length===0&&u>0){var{columns:h}=s;d=ir.makeDefaultSeriesItems(o,a,h)}return{type:a,seriesItems:d}},this.sendChange)}handleXAxisChange(e){var t=e.target.value;yu.debug2("x-axis change",t),this.setState({xAxis:t},this.sendChange)}sendChange(){var{onChange:e}=this.props,{isLinked:t,type:r,seriesItems:i,xAxis:a}=this.state,l=i.map(s=>s.value);e({type:r,series:l,xAxis:a,isLinked:t})}render(){var{model:e}=this.props,{columns:t,dh:r}=e,{seriesItems:i,type:a,xAxis:l,isLinked:s}=this.state,o=ir.getMaxSeriesCount(r,a),u=this.getXAxisLabel(a),d=this.getSeriesLabel(a),h=i.length>0,v=i.length<o;return c.jsx("div",{className:"chart-builder",children:c.jsxs("form",{onSubmit:this.handleSubmit,children:[c.jsxs("div",{className:"form-row",children:[c.jsx("label",{children:"Select Chart Type"}),c.jsx("div",{className:"form-row",children:this.getTypes().map((m,f)=>{var g=m;return c.jsx("div",{className:"col col-chart-type",children:c.jsxs("button",{type:"button",className:re("btn","btn-icon","btn-chart-type",{active:m===a}),"data-index":f,onClick:this.handleTypeClick,children:[this.getTypeIcon(m),this.getTypeName(m)]})},g)})})]}),c.jsx("hr",{}),c.jsxs("div",{className:"form-row form-inline",children:[c.jsx("label",{className:"col-2 label-left",children:u}),c.jsx("select",{className:"form-control custom-select select-x-axis col",value:l,onChange:this.handleXAxisChange,children:t.map(m=>c.jsx("option",{value:m.name,children:m.name},m.name))})]}),h&&c.jsx("hr",{}),i.map((m,f)=>c.jsxs("div",{className:"form-row form-inline form-series-item","data-testid":"form-series-item-".concat(f),children:[c.jsx("label",{className:"col-2 label-left",children:f===0?d:""}),c.jsx("select",{className:"form-control custom-select select-series col",value:m.value,onChange:this.handleSeriesChange,"data-testid":"select-series-item-".concat(f),"data-index":f,children:t.map(g=>c.jsx("option",{value:g.name,"data-index":f,children:g.name},g.name))}),i.length>1&&c.jsx(Y,{kind:"ghost",className:"btn-delete-series ml-2 px-2","data-index":f,"data-testid":"delete-series-".concat(f),onClick:this.handleSeriesDeleteClick,icon:fr,tooltip:"Delete"})]},m.id)),v&&c.jsxs("div",{className:"form-row",children:[c.jsx("div",{className:"col-2"}),c.jsx(Y,{kind:"ghost",className:"btn-add-series mt-1",onClick:this.handleAddSeries,icon:Fn,children:"Add Series"})]}),c.jsxs("div",{className:"form-row chart-builder-link",children:[c.jsx("label",{className:"col-2 label-right",children:c.jsxs("div",{className:"fa-md fa-layers",children:[c.jsx(ae,{mask:Gv,icon:Ai,transform:"right-5 down-5"}),c.jsx(ae,{icon:s?$v:Wv,transform:"grow-2 right-8 down-6"})]})}),c.jsxs(Ha,{onChange:this.handleLinkStateChange,value:"".concat(s),children:[c.jsx(jr,{value:"true",children:"Sync State"}),c.jsx(jr,{value:"false",children:"Freeze State"})]})]}),c.jsxs("div",{className:"form-row",children:[c.jsx("div",{className:"col-2 label-right"}),c.jsx("div",{className:"col chart-builder-link-info",children:s?"Charts with synced state will update to match any filters or user modifications applied to the parent table.":"Freeze State disconnects the chart state from the parent table. New filters or user modifications on the parent table will not be applied."})]}),c.jsxs("div",{className:re("form-row","justify-content-end","my-3"),children:[c.jsx(Y,{kind:"secondary",className:"btn-reset",onClick:this.handleReset,children:"Reset"}),c.jsx(Y,{kind:"primary",type:"submit",className:"btn-submit",children:"Create"})]})]})})}}const Sb=ir;function Tu(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 bb(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Tu(Object(t),!0).forEach(function(r){Na(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Tu(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Na(n,e,t){return e=wb(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function wb(n){var e=yb(n,"string");return typeof e=="symbol"?e:String(e)}function yb(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class xh extends R.Component{constructor(e){super(e),Na(this,"editorContainer",void 0),Na(this,"editor",void 0),this.handleContentChanged=this.handleContentChanged.bind(this),this.handleEditorFocus=this.handleEditorFocus.bind(this),this.handleEditorBlur=this.handleEditorBlur.bind(this),this.handleContainerClick=this.handleContainerClick.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.state={isEditorFocused:!1,isEditorEmpty:!0},this.editorContainer=null}componentDidMount(){this.initEditor()}componentWillUnmount(){this.destroyEditor()}initEditor(){var e,{value:t,editorSettings:r}=this.props,i=bb({copyWithSyntaxHighlighting:"false",fixedOverflowWidgets:!0,folding:!1,fontFamily:"Fira Mono",glyphMargin:!1,language:"groovyDB",lineDecorationsWidth:8,lineNumbers:"off",minimap:{enabled:!1},renderLineHighlight:"none",scrollbar:{arrowSize:0,horizontal:"hidden",horizontalScrollbarSize:0},scrollBeyondLastLine:!1,padding:{top:6,bottom:6},tabCompletion:"off",useTabStops:!0,value:t,wordWrap:"on",automaticLayout:!0},r);if(!this.editorContainer)throw new Error("editorContainer is null");this.editor=Tm.create(this.editorContainer,i),this.editor.layout(),(e=this.editor.getModel())===null||e===void 0||e.updateOptions({tabSize:0}),this.editor.onKeyDown(this.handleKeyDown),this.editor.onDidChangeModelContent(this.handleContentChanged),this.editor.onDidFocusEditorText(this.handleEditorFocus),this.editor.onDidBlurEditorText(this.handleEditorBlur)}destroyEditor(){var e;(e=this.editor)===null||e===void 0||e.dispose(),this.editor=void 0}handleContentChanged(){var e,t,{onContentChanged:r}=this.props,i=(e=this.editor)===null||e===void 0||(t=e.getModel())===null||t===void 0?void 0:t.getValue();i!==void 0&&this.setState({isEditorEmpty:i.length===0}),r(i)}handleEditorFocus(){this.setState({isEditorFocused:!0})}handleEditorBlur(){var e,t,r,i=(e=(t=this.editor)===null||t===void 0||(r=t.getModel())===null||r===void 0?void 0:r.getValue())!==null&&e!==void 0?e:"";this.setState({isEditorEmpty:i.length===0,isEditorFocused:!1})}handleContainerClick(){var e,{isEditorFocused:t}=this.state;t||(e=this.editor)===null||e===void 0||e.focus()}handleKeyDown(e){var{onTab:t,editorIndex:r}=this.props;e.code==="Tab"&&(e.stopPropagation(),e.preventDefault(),t(r,e.shiftKey))}render(){var{className:e,invalid:t,placeholder:r="",value:i}=this.props,{isEditorFocused:a,isEditorEmpty:l}=this.state;return c.jsxs("div",{className:re("input-editor-wrapper",{focused:a,invalid:t},e),role:"presentation",onClick:this.handleContainerClick,children:[c.jsx("div",{className:"editor-container",ref:s=>{this.editorContainer=s},"data-testid":"custom-column-formula"}),l&&!i&&r.length>0&&c.jsx("div",{className:"editor-placeholder text-muted",children:r})]})}}Na(xh,"defaultProps",{value:"",onContentChanged:()=>{},editorSettings:{},editorIndex:0,onTab:()=>{},invalid:!1});const Tb=xh;function Eu(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 ta(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Eu(Object(t),!0).forEach(function(r){Eb(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Eu(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Eb(n,e,t){return e=Ob(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ob(n){var e=Pb(n,"string");return typeof e=="symbol"?e:String(e)}function Pb(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ou=Object.freeze({NAME:"name",FORMULA:"formula"}),Rb=()=>{};function Db(n){var{eventKey:e,name:t,inputIndex:r,formula:i,onChange:a,onDeleteColumn:l,onTabInEditor:s,invalid:o,isDuplicate:u}=n,d=t===""||is.isValidColumnName(t),h=R.useCallback(v=>{v!==void 0&&(v.replace(/(\r\n|\n|\r)/gm,""),a(e,Ou.FORMULA,v))},[a,e]);return c.jsx(Bd,{draggableId:e,index:r,disableInteractiveElementBlocking:!0,children:(v,m)=>c.jsxs("div",ta(ta({className:re("draggable-container",{dragging:m.isDragging}),ref:v.innerRef},v.draggableProps),{},{children:[c.jsxs("div",{className:"custom-column-input-container",children:[c.jsxs("div",{className:"pb-3",children:[c.jsxs("div",{className:"d-flex flex-row custom-column-name",children:[c.jsx("input",{className:re("form-control custom-column-input",{"is-invalid":o||!d||u}),placeholder:"Column Name",value:t,onChange:f=>{a(e,Ou.NAME,f.target.value)}}),c.jsx(Y,{kind:"ghost",className:"ml-1 px-2",onClick:()=>{l(e)},icon:fr,tooltip:"Delete custom column"}),c.jsx(Y,ta(ta({kind:"ghost",className:"btn-drag-handle",onClick:Rb},v.dragHandleProps),{},{icon:Ua,tooltip:"Drag column to re-order"}))]}),(!d||u)&&c.jsx("p",{className:"validate-label-error text-danger mb-0 mt-2 pl-1",children:d?"Duplicate name":"Invalid name"})]}),c.jsx(Tb,{editorSettings:{language:"deephavenDb"},editorIndex:r,placeholder:"Column Formula",value:i,onContentChanged:h,onTab:s,invalid:o})]}),c.jsx("hr",{})]}))})}function Zl(n,e,t){return e=Fb(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Fb(n){var e=Nb(n,"string");return typeof e=="symbol"?e:String(e)}function Nb(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Nl=[];class Lh extends jg{constructor(e){super(),Zl(this,"dh",void 0),Zl(this,"listenerCount",void 0),this.dh=e,this.listenerCount=0}addEventListener(e,t,r){super.addEventListener(e,t,r),this.listenerCount+=1,this.listenerCount===1&&this.startListening()}removeEventListener(e,t,r){super.removeEventListener(e,t,r),this.listenerCount-=1,this.listenerCount===0&&this.stopListening()}startListening(){}stopListening(){}get originalColumns(){return this.columns}get layoutHints(){return null}get frontColumns(){return Nl}get backColumns(){return Nl}get frozenColumns(){return Nl}isColumnFrozen(e){return!1}isColumnSortable(e){return!1}get isFilterRequired(){return!1}get isReversible(){return!0}get isColumnStatisticsAvailable(){return!1}get description(){return""}get isCustomColumnsAvailable(){return!1}get isFormatColumnsAvailable(){return!1}get isExportAvailable(){return!1}get isValuesTableAvailable(){return!1}get isChartBuilderAvailable(){return!1}get isRollupAvailable(){return!1}get isSelectDistinctAvailable(){return!1}get isTotalsAvailable(){return!1}isFilterable(e){return!1}close(){}isRowMovable(){return!1}get isSeekRowAvailable(){return!1}}Zl(Lh,"EVENT",Object.freeze({UPDATED:"UPDATED",FORMATTER_UPDATED:"FORMATTER_UPDATED",REQUEST_FAILED:"REQUEST_FAILED",COLUMNS_CHANGED:"COLUMNS_CHANGED",TABLE_CHANGED:"TABLE_CHANGED",FILTERS_CHANGED:"FILTERS_CHANGED",SORTS_CHANGED:"SORTS_CHANGED",DISCONNECT:"DISCONNECT",RECONNECT:"RECONNECT",TOTALS_UPDATED:"TOTALS_UPDATED",PENDING_DATA_UPDATED:"PENDING_DATA_UPDATED"}));const ve=Lh;function Pu(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 Il(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Pu(Object(t),!0).forEach(function(r){$n(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Pu(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function $n(n,e,t){return e=Ib(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ib(n){var e=Ab(n,"string");return typeof e=="symbol"?e:String(e)}function Ab(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class an extends R.Component{static makeCustomColumnInputEventKey(){return nt.generate()}static createCustomColumnInput(){return{eventKey:nt.generate(),name:"",formula:""}}constructor(e){super(e),$n(this,"container",void 0),$n(this,"successButtonTimer",void 0),$n(this,"getInput",be((t,r)=>t.find(i=>i.eventKey===r))),$n(this,"getInputIndex",be((t,r)=>t.findIndex(i=>i.eventKey===r))),this.handleAddColumnClick=this.handleAddColumnClick.bind(this),this.handleSaveClick=this.handleSaveClick.bind(this),this.handleInputChange=this.handleInputChange.bind(this),this.handleDeleteColumn=this.handleDeleteColumn.bind(this),this.handleCustomColumnUpdated=this.handleCustomColumnUpdated.bind(this),this.handleRequestFailed=this.handleRequestFailed.bind(this),this.handleDragEnd=this.handleDragEnd.bind(this),this.resetRequestFailed=this.resetRequestFailed.bind(this),this.handleEditorTabNavigation=this.handleEditorTabNavigation.bind(this),this.state={inputs:[],isCustomColumnApplying:!1,errorMessage:null,hasRequestFailed:!1,isSuccessShowing:!1},this.container=null,this.successButtonTimer=null}componentDidMount(){var{customColumns:e}=this.props;this.parseCustomColumns(e),this.startListening()}componentWillUnmount(){this.stopListening(),this.successButtonTimer&&clearTimeout(this.successButtonTimer)}resetErrorMessage(){this.setState({errorMessage:null})}startListening(){var{model:e}=this.props;e.addEventListener(ve.EVENT.COLUMNS_CHANGED,this.handleCustomColumnUpdated),e.addEventListener(ve.EVENT.UPDATED,this.handleCustomColumnUpdated),e.addEventListener(ve.EVENT.REQUEST_FAILED,this.handleRequestFailed)}stopListening(){var{model:e}=this.props;e.removeEventListener(ve.EVENT.COLUMNS_CHANGED,this.handleCustomColumnUpdated),e.removeEventListener(ve.EVENT.UPDATED,this.handleCustomColumnUpdated),e.removeEventListener(ve.EVENT.REQUEST_FAILED,this.handleRequestFailed)}parseCustomColumns(e){if(e.length>0){var t=e.map(r=>{var i=r.split(/=(.+)/,2);return{eventKey:an.makeCustomColumnInputEventKey(),name:i[0],formula:i[1]}});this.setState({inputs:t})}else this.setState({inputs:[an.createCustomColumnInput()]})}handleAddColumnClick(){var{inputs:e}=this.state,t=[...e];t.push(an.createCustomColumnInput()),this.setState({inputs:t})}handleDeleteColumn(e){var{inputs:t}=this.state,r=this.getInputIndex(t,e),i=[...t];i.splice(r,1),i.length===0&&i.push(an.createCustomColumnInput()),this.setState({inputs:i})}handleInputChange(e,t,r){var{inputs:i}=this.state,a=this.getInputIndex(i,e),l=this.getInput(i,e),s=Il({},l);s[t]=r;var o=[...i];o.splice(a,1,s),this.setState({inputs:o})}handleCustomColumnUpdated(){var{isCustomColumnApplying:e}=this.state;e&&this.setState({isCustomColumnApplying:!1,isSuccessShowing:!0},()=>{this.successButtonTimer=setTimeout(()=>this.setState({isSuccessShowing:!1}),an.SUCCESS_SHOW_DURATION)})}handleRequestFailed(e){var t=e,{isCustomColumnApplying:r}=this.state;r&&this.setState({isCustomColumnApplying:!1,errorMessage:c.jsxs(c.Fragment,{children:[c.jsxs("p",{children:[c.jsx(ae,{icon:Wn})," Failed to apply custom columns."]}),c.jsxs("div",{className:"error-box",children:[t.detail.errorMessage,c.jsx("br",{}),"Table configuration:"," ",JSON.stringify(t.detail.configuration)]})]}),hasRequestFailed:!0})}handleDragEnd(e){if(cr.stopDragging(),!!e.destination){var{inputs:t}=this.state,r=e.source.index,i=e.destination.index,a=[...t],l=t[r];a.splice(r,1),a.splice(i,0,l),this.setState({inputs:a})}}handleEditorTabNavigation(e,t){var{inputs:r}=this.state;if(t){var i;((i=this.container)===null||i===void 0?void 0:i.querySelectorAll(".btn-drag-handle")[e]).focus();return}if(e===r.length-1){var a,l;(a=this.container)===null||a===void 0||(l=a.querySelector(".btn-add-column"))===null||l===void 0||l.focus()}else{var s,o=e+1;((s=this.container)===null||s===void 0?void 0:s.querySelectorAll(".custom-column-input")[o]).focus()}}handleSaveClick(){var{onSave:e,customColumns:t}=this.props,{inputs:r,isCustomColumnApplying:i}=this.state;if(!i){var a=[];r.forEach(l=>{var{name:s,formula:o}=l;s&&o&&a.push("".concat(s,"=").concat(o))}),this.resetErrorMessage(),this.setState({isCustomColumnApplying:a.length>0||t.length>0}),e(a)}}resetRequestFailed(){this.setState(e=>{var{hasRequestFailed:t}=e;return t?{hasRequestFailed:!1}:null})}renderInputs(){var{inputs:e,hasRequestFailed:t}=this.state,r=new Map;return e.forEach(i=>{var a,{name:l}=i;return r.set(l,((a=r.get(l))!==null&&a!==void 0?a:0)+1)}),e.map((i,a)=>{var l,{eventKey:s,name:o,formula:u}=i,d=((l=r.get(o))!==null&&l!==void 0?l:0)>1;return c.jsx(Db,{inputIndex:a,eventKey:s,name:o,formula:u,onChange:this.handleInputChange,onDeleteColumn:this.handleDeleteColumn,onTabInEditor:this.handleEditorTabNavigation,invalid:t,isDuplicate:d},s)})}renderSaveButton(){var{inputs:e,isCustomColumnApplying:t,isSuccessShowing:r}=this.state,i=e.length>1?"Save Columns":"Save Column",a=e.every(o=>{var{name:u}=o;return u===""||is.isValidColumnName(u)}),l=e.filter(o=>{var{name:u}=o;return u!==""}).map(o=>{var{name:u}=o;return u}),s=new Set(l).size===l.length;return c.jsxs(Y,{kind:r?"success":"primary",className:re("btn-apply",{"btn-spinner":t}),disabled:r||t||!a||!s,onClick:this.handleSaveClick,children:[t&&c.jsxs("span",{children:[c.jsx(Dn,{className:"loading-spinner-vertical-align"}),c.jsx("span",{className:"btn-normal-content",children:"Applying"})]}),!r&&!t&&i,r&&c.jsxs(c.Fragment,{children:[c.jsx(ae,{icon:gs})," Success"]})]})}render(){var{onCancel:e}=this.props,{errorMessage:t}=this.state;return c.jsxs("div",{role:"presentation",className:"custom-column-builder-container",ref:r=>{this.container=r},onClick:this.resetRequestFailed,onFocus:this.resetRequestFailed,children:[c.jsx("hr",{}),c.jsx(La,{onDragStart:cr.startDragging,onDragEnd:this.handleDragEnd,children:c.jsx(ns,{droppableId:"droppable-custom-columns",children:(r,i)=>c.jsxs("div",Il(Il({ref:r.innerRef},r.droppableProps),{},{className:re("droppable-container",{dragging:i.draggingFromThisWith}),children:[this.renderInputs(),r.placeholder]}))})}),c.jsx("div",{className:"pt-1 px-3",children:c.jsx(Y,{kind:"ghost",className:"btn-add-column",onClick:this.handleAddColumnClick,icon:Fn,children:"Add Another Column"})}),c.jsxs("div",{className:"custom-column-builder-footer",children:[t&&c.jsx("div",{className:"error-message",children:t}),c.jsxs("div",{className:"d-flex justify-content-end",children:[c.jsx(Y,{kind:"secondary",className:"mr-2",onClick:e,children:"Cancel"}),this.renderSaveButton()]})]})]})}}$n(an,"SUCCESS_SHOW_DURATION",750);const Mb=an;var Jl;(function(n){n.ADVANCED_SETTINGS="ADVANCED_SETTINGS",n.AGGREGATIONS="AGGREGATIONS",n.AGGREGATION_EDIT="AGGREGATIONS_EDIT",n.CHART_BUILDER="CHART_BUILDER",n.CUSTOM_COLUMN_BUILDER="CUSTOM_COLUMN_BUILDER",n.QUICK_FILTERS="QUICK_FILTERS",n.ROLLUP_ROWS="ROLLUP_ROWS",n.SEARCH_BAR="SEARCH_BAR",n.SELECT_DISTINCT="SELECT_DISTINCT",n.TABLE_EXPORTER="TABLE_EXPORTER",n.VISIBILITY_ORDERING_BUILDER="VISIBILITY_ORDERING_BUILDER",n.CONDITIONAL_FORMATTING="CONDITIONAL_FORMATTING",n.CONDITIONAL_FORMATTING_EDIT="CONDITIONAL_FORMATTING_EDIT",n.GOTO="GOTO"})(Jl||(Jl={}));const Fe=Jl;function Ru(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 Du(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ru(Object(t),!0).forEach(function(r){ln(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ru(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function ln(n,e,t){return e=xb(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function xb(n){var e=Lb(n,"string");return typeof e=="symbol"?e:String(e)}function Lb(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var gi=ge.module("RollupRows"),kb=150,ra="grouped-rollup-rows",na="ungrouped-rollup-rows";class Mt extends R.Component{static renderColumn(e){var{item:t,isClone:r,selectedCount:i}=e,a=t?.name,l=r!==void 0&&r?"".concat(i):void 0,s=r!==void 0&&r?"item-list-item-clone":"";return lr.renderTextItem({text:a,badgeText:l,className:s})}static addGroupings(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length;if(t==null||t.length===0)return e;var i=r,a=e.filter((l,s)=>t.includes(l)?(s<i&&(i-=1),!1):!0);return a.splice(i,0,...t),a}static isGroupable(e){return!x.isDecimalType(e.type)}constructor(e){super(e),ln(this,"ungroupedList",void 0),ln(this,"groupedList",void 0),ln(this,"search",ct(l=>{for(var s=this.getSortedUngroupedColumns(),o=[],u=null,d=0;d<s.length;d+=1){var h=s[d];h.name.toLowerCase().includes(l.toLowerCase())&&(u==null&&(u=d),o.push([d,d]))}L(u),this.setState({ungroupedSelectedRanges:o}),o.length>0&&this.ungroupedList.current&&this.ungroupedList.current.scrollToItem(u)},kb)),ln(this,"getCachedUngroupedColumns",we((l,s)=>l.filter(o=>Mt.isGroupable(o)&&s.find(u=>u===o.name)==null))),ln(this,"getCachedSortedColumns",we((l,s)=>s==null?[...l]:x.sortColumns(l,s===Mt.SORT.ASCENDING))),this.handleDeleteClicked=this.handleDeleteClicked.bind(this),this.handleSearchChange=this.handleSearchChange.bind(this),this.handleUngroupedSelect=this.handleUngroupedSelect.bind(this),this.handleUngroupedSelectionChange=this.handleUngroupedSelectionChange.bind(this),this.handleDragStart=this.handleDragStart.bind(this),this.handleDragEnd=this.handleDragEnd.bind(this),this.handleGroupedSelectionChange=this.handleGroupedSelectionChange.bind(this),this.handleShowConstituentsChange=this.handleShowConstituentsChange.bind(this),this.handleShowNonAggregatedColumnsChange=this.handleShowNonAggregatedColumnsChange.bind(this),this.handleSortAscending=this.handleSortAscending.bind(this),this.handleSortDescending=this.handleSortDescending.bind(this),this.renderGroupedItem=this.renderGroupedItem.bind(this),this.ungroupedList=Me.createRef(),this.groupedList=Me.createRef();var{config:t}=e,{columns:r=[],showConstituents:i=!0,showNonAggregatedColumns:a=!0}=t??{};this.state={ungroupedSelectedRanges:[],columns:r,groupedSelectedRanges:[],searchFilter:"",showConstituents:i,showNonAggregatedColumns:a,dragSource:null,sort:null}}componentDidUpdate(e,t){var{config:r}=this.props,{columns:i,showConstituents:a,showNonAggregatedColumns:l}=this.state;r!==e.config?this.updateFromConfig():(i!==t.columns||a!==t.showConstituents||l!==t.showNonAggregatedColumns)&&(r==null||i!==r.columns||a!==r.showConstituents||l!==r.showNonAggregatedColumns)&&this.sendChange()}componentWillUnmount(){this.search.cancel()}handleSearchChange(e){var t=e.target.value;if(this.setState({searchFilter:t}),!t){this.search.cancel(),this.resetSelection();return}this.search(t)}handleSortAscending(){this.setState(e=>{var{sort:t}=e;return{sort:t===Mt.SORT.ASCENDING?null:Mt.SORT.ASCENDING}})}handleSortDescending(){this.setState(e=>{var{sort:t}=e;return{sort:t===Mt.SORT.DESCENDING?null:Mt.SORT.DESCENDING}})}resetSelection(){this.setState({ungroupedSelectedRanges:[],groupedSelectedRanges:[]})}handleDragStart(e){gi.debug("handleDragStart",e),document.documentElement.classList.add("drag-pointer-events-none"),this.setState({dragSource:e.source})}handleDragEnd(e){gi.debug("handleDragEnd",e),document.documentElement.classList.remove("drag-pointer-events-none"),this.setState({dragSource:null});var{destination:t,source:r}=e;if(!(t==null||r==null)){if(t.droppableId===na){this.setState(l=>{var{groupedSelectedRanges:s,columns:o}=l,u=[...o];return cr.reorder(u,s,[],0),{columns:u,ungroupedSelectedRanges:[],groupedSelectedRanges:[]}});return}var i=r.droppableId===ra,a=t.index;i&&r.index<t.index&&(a+=1),this.setState(l=>{var{columns:s,ungroupedSelectedRanges:o,groupedSelectedRanges:u}=l,d=[...s],h=i?d:this.getSortedUngroupedColumns().map(p=>p.name),v=i?u:o,m=cr.reorder(h,v,d,a),f=i?cr.adjustDestinationIndex(a,u):a,g=[[f,f+m.length-1]];return{columns:d,ungroupedSelectedRanges:[],groupedSelectedRanges:g}}),this.resetSelection()}}handleUngroupedSelect(e){gi.debug("handleUngroupedSelect"),this.setState(t=>{var{columns:r}=t;return{columns:Mt.addGroupings(r,[this.getSortedUngroupedColumns()[e].name]),ungroupedSelectedRanges:[],groupedSelectedRanges:[]}})}handleUngroupedSelectionChange(e){gi.debug2("handleUngroupedSelectionChange",e),this.setState(t=>{var{ungroupedSelectedRanges:r}=t;return e===r?null:{ungroupedSelectedRanges:e,groupedSelectedRanges:[]}})}handleGroupedSelectionChange(e){gi.debug2("handleGroupedSelectedRanges",e),this.setState(t=>{var{groupedSelectedRanges:r}=t;return e===r?null:{groupedSelectedRanges:e,ungroupedSelectedRanges:[]}})}handleDeleteClicked(e){this.setState(t=>{var{columns:r}=t,i=r.slice();return i.splice(e,1),{columns:i}})}handleShowConstituentsChange(){this.setState(e=>{var{showConstituents:t}=e;return{showConstituents:!t}})}handleShowNonAggregatedColumnsChange(){this.setState(e=>{var{showNonAggregatedColumns:t}=e;return{showNonAggregatedColumns:!t}})}updateFromConfig(){var{config:e}=this.props,{columns:t=[],showConstituents:r=!0,showNonAggregatedColumns:i=!0}=e??{};this.setState({columns:t,showConstituents:r,showNonAggregatedColumns:i})}sendChange(){var{onChange:e}=this.props,{columns:t,showConstituents:r,showNonAggregatedColumns:i}=this.state;e({columns:t,showConstituents:r,showNonAggregatedColumns:i})}getUngroupedColumns(){var{model:e}=this.props,{columns:t}=this.state,{originalColumns:r}=e;return this.getCachedUngroupedColumns(r,t)}getSortedUngroupedColumns(){var{sort:e}=this.state,t=this.getUngroupedColumns();return this.getCachedSortedColumns(t,e)}renderGroupedItem(e){var{item:t,itemIndex:r,isClone:i,selectedCount:a}=e,l=i!==void 0&&i?"":"  ".repeat(r),s="".concat(l).concat(t),o=i!==void 0&&i?"".concat(a):void 0,u=i!==void 0&&i?"item-list-item-clone":"";return c.jsxs(c.Fragment,{children:[lr.renderTextItem({text:s,badgeText:o,className:u}),(i===void 0||!i)&&c.jsx(Y,{kind:"ghost",className:"btn btn-link btn-link-icon btn-delete-grouping float-right",onClick:()=>this.handleDeleteClicked(r),children:c.jsx(ae,{icon:fr})})]})}render(){var{columns:e,dragSource:t,searchFilter:r,groupedSelectedRanges:i,ungroupedSelectedRanges:a,showConstituents:l,showNonAggregatedColumns:s,sort:o}=this.state,u=this.getSortedUngroupedColumns(),d=e.length*lr.DEFAULT_ROW_HEIGHT;t?.droppableId===na&&(d+=lr.DEFAULT_ROW_HEIGHT);var h=u.length*lr.DEFAULT_ROW_HEIGHT+10,v=Math.min(3*lr.DEFAULT_ROW_HEIGHT,h);return c.jsx("div",{role:"menu",className:re("rollup-rows",{"is-dragging":t!=null}),tabIndex:0,children:c.jsxs(La,{onDragEnd:this.handleDragEnd,onDragStart:this.handleDragStart,children:[c.jsxs("div",{className:"rollup-rows-group-by",children:[c.jsx("div",{className:"section-title",children:"Group By"}),e.length===0&&c.jsx(ns,{droppableId:"placeholder",children:(m,f)=>c.jsx("div",Du(Du({className:re("placeholder","text-muted",{"is-dragging-from-this":f.draggingFromThisWith,"is-dragging-over":f.isDraggingOver,"is-dropping":f.draggingOverWith}),ref:m.innerRef},m.droppableProps),{},{children:"To create a rollup, drag columns from the list below and drop them into this area."}))}),e.length>0&&c.jsx(lr,{draggingItemClassName:"rollup-rows-dragging-grouped-item",draggablePrefix:ra,droppableId:ra,itemCount:e.length,items:e,offset:0,onSelectionChange:this.handleGroupedSelectionChange,ref:this.groupedList,renderItem:this.renderGroupedItem,selectedRanges:i,style:{height:d},isMultiSelect:!0})]}),c.jsxs("div",{className:"rollup-rows-available-columns",children:[c.jsx("div",{className:"section-title",children:"Available Grouping Columns"}),c.jsxs("div",{className:"top-menu",children:[c.jsx(vs,{className:"w-100",value:r,matchCount:r?a.length:void 0,placeholder:"Find column...",onChange:this.handleSearchChange}),c.jsxs(Y,{kind:"ghost",className:re("btn-link btn-link-icon",{active:o===Mt.SORT.ASCENDING}),onClick:this.handleSortAscending,children:[c.jsx(ae,{icon:bs}),c.jsx(Jt,{children:"Sort ascending"})]}),c.jsxs(Y,{kind:"ghost",className:re("btn-link btn-link-icon",{active:o===Mt.SORT.DESCENDING}),onClick:this.handleSortDescending,children:[c.jsx(ae,{icon:ws}),c.jsx(Jt,{children:"Sort descending"})]})]}),c.jsx(lr,{className:"rollup-available-grouping-columns",draggablePrefix:na,droppableId:na,itemCount:u.length,items:u,renderItem:Mt.renderColumn,offset:0,onSelect:this.handleUngroupedSelect,onSelectionChange:this.handleUngroupedSelectionChange,ref:this.ungroupedList,selectedRanges:a,style:{maxHeight:h,minHeight:v},isDropDisabled:t?.droppableId!==ra,isMultiSelect:!0}),c.jsxs("div",{className:"bottom-menu",children:[c.jsx("div",{className:"label",children:"Show:"}),c.jsx(un,{checked:l,onChange:this.handleShowConstituentsChange,children:"Constituents"}),c.jsx(un,{checked:s,onChange:this.handleShowNonAggregatedColumnsChange,children:"Non-Aggregated Columns"})]})]})]})})}}ln(Mt,"SORT",Object.freeze({ASCENDING:"ASC",DESCENDING:"DESC"}));ln(Mt,"defaultProps",{config:null,onChange:()=>{}});const jb=Mt;function Fu(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function _b(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Fu(a,r,i,l,s,"next",o)}function s(o){Fu(a,r,i,l,s,"throw",o)}l(void 0)})}}function Nu(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 Iu(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Nu(Object(t),!0).forEach(function(r){An(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Nu(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function An(n,e,t){return e=Hb(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Hb(n){var e=Ub(n,"string");return typeof e=="symbol"?e:String(e)}function Ub(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Vb=ge.module("TableCsvExporter");class Pe extends R.Component{static getDateString(e){return e.i18n.DateTimeFormat.format(Pe.FILENAME_DATE_FORMAT,new Date)}constructor(e){super(e),this.handleDownloadClick=this.handleDownloadClick.bind(this),this.handleDownloadRowOptionChanged=this.handleDownloadRowOptionChanged.bind(this),this.handleCustomizedDownloadRowOptionChanged=this.handleCustomizedDownloadRowOptionChanged.bind(this),this.handleCustomizedDownloadRowsChanged=this.handleCustomizedDownloadRowsChanged.bind(this),this.handleIncludeColumnHeadersChanged=this.handleIncludeColumnHeadersChanged.bind(this),this.handleIncludeHiddenColumnsChanged=this.handleIncludeHiddenColumnsChanged.bind(this),this.handleUseUnformattedValuesChanged=this.handleUseUnformattedValuesChanged.bind(this);var{model:t,name:r}=e;this.state={fileName:"".concat(r,"-").concat(Pe.getDateString(t.dh),".csv"),downloadRowOption:Pe.DOWNLOAD_ROW_OPTIONS.ALL_ROWS,customizedDownloadRowOption:Pe.CUSTOMIZED_ROWS_OPTIONS.FIRST,customizedDownloadRows:Pe.DEFAULT_DOWNLOAD_ROWS,includeColumnHeaders:!0,includeHiddenColumns:!1,useUnformattedValues:!1,errorMessage:null,id:nt.generate()}}getSnapshotRanges(){var{model:e,selectedRanges:t}=this.props,{downloadRowOption:r,customizedDownloadRowOption:i,customizedDownloadRows:a}=this.state,{rowCount:l,columnCount:s}=e,o=[];switch(r){case Pe.DOWNLOAD_ROW_OPTIONS.ALL_ROWS:o.push(new U(0,0,s-1,l-1));break;case Pe.DOWNLOAD_ROW_OPTIONS.SELECTED_ROWS:o=t.map(u=>Iu(Iu({},u),{},{startColumn:0,endColumn:s-1})).sort((u,d)=>u.startRow!=null&&d.startRow!=null?u.startRow-d.startRow:0);break;case Pe.DOWNLOAD_ROW_OPTIONS.CUSTOMIZED_ROWS:switch(i){case Pe.CUSTOMIZED_ROWS_OPTIONS.FIRST:o.push(new U(0,0,s-1,Math.min(a-1,l-1)));break;case Pe.CUSTOMIZED_ROWS_OPTIONS.LAST:o.push(new U(0,Math.max(0,l-a),s-1,l-1));break}break}return o}getModelRanges(e){var{userColumnWidths:t,movedColumns:r}=this.props,{includeHiddenColumns:i}=this.state,a=fe.getHiddenColumns(t),l=K.getModelRanges(e,r);if(!i&&a.length>0){var s=a.map(U.makeColumn);l=U.subtractRangesFromRanges(l,s)}return l}resetDownloadState(){this.setState({errorMessage:null})}handleDownloadClick(){var e=this;return _b(function*(){var{model:t,isDownloading:r,onDownloadStart:i,onDownload:a,onCancel:l}=e.props,{fileName:s,includeColumnHeaders:o,useUnformattedValues:u}=e.state;if(r){l();return}e.resetDownloadState();var d=e.getSnapshotRanges(),h=e.getModelRanges(d);if(e.validateOptionInput()){i();try{var v=yield t.export(),m=v.setViewport(0,0);yield m.getViewportData(),a(s,v,m,d,h,o,u)}catch(f){Vb.error("CSV download failed",f),e.setState({errorMessage:c.jsxs("p",{children:[c.jsx(ae,{icon:Wn})," ","".concat(f)]})}),l()}}})()}handleDownloadRowOptionChanged(e){this.setState({downloadRowOption:e.target.value})}handleCustomizedDownloadRowOptionChanged(e){this.setState({customizedDownloadRowOption:e.target.value})}handleCustomizedDownloadRowsChanged(e){this.setState({customizedDownloadRows:parseInt(e.target.value,10)})}handleIncludeColumnHeadersChanged(){this.setState(e=>{var{includeColumnHeaders:t}=e;return{includeColumnHeaders:!t}})}handleIncludeHiddenColumnsChanged(){this.setState(e=>{var{includeHiddenColumns:t}=e;return{includeHiddenColumns:!t}})}handleUseUnformattedValuesChanged(){this.setState(e=>{var{useUnformattedValues:t}=e;return{useUnformattedValues:!t}})}validateOptionInput(){var{selectedRanges:e}=this.props,{downloadRowOption:t,customizedDownloadRows:r}=this.state;return t===Pe.DOWNLOAD_ROW_OPTIONS.SELECTED_ROWS&&e.length===0?(this.setState({errorMessage:c.jsxs("p",{children:[c.jsx(ae,{icon:Wn})," No rows selected. Please select some rows in the table."]})}),!1):t===Pe.DOWNLOAD_ROW_OPTIONS.CUSTOMIZED_ROWS&&r<=0?(this.setState({errorMessage:c.jsxs("p",{children:[c.jsx(ae,{icon:Wn})," Number of rows to output must be greater than 0"]})}),!1):!0}render(){var{model:e,isDownloading:t,tableDownloadProgress:r,tableDownloadEstimatedTime:i,selectedRanges:a,tableDownloadStatus:l}=this.props,{fileName:s,downloadRowOption:o,customizedDownloadRowOption:u,customizedDownloadRows:d,includeColumnHeaders:h,includeHiddenColumns:v,useUnformattedValues:m,errorMessage:f,id:g}=this.state,{rowCount:p}=e;return c.jsxs("div",{className:"table-csv-exporter",children:[c.jsx("div",{className:"section-title",children:"Download Rows"}),c.jsx("div",{className:"form-group",children:c.jsxs(Ha,{onChange:this.handleDownloadRowOptionChanged,value:o,disabled:t,children:[c.jsxs(jr,{value:Pe.DOWNLOAD_ROW_OPTIONS.ALL_ROWS,"data-testid":"radio-csv-exporter-download-all",children:["All Rows",c.jsx("span",{className:"text-muted ml-2",children:"(".concat(p.toString().replace(/(\d)(?=(\d{3})+(?!\d))/g,"$1,")," rows)")})]}),c.jsxs(jr,{value:Pe.DOWNLOAD_ROW_OPTIONS.SELECTED_ROWS,"data-testid":"radio-csv-exporter-only-selected",children:["Only Selected Rows",c.jsx("span",{className:"text-muted ml-2",children:a.length>0?"(".concat(U.rowCount(a).toString().replace(/(\d)(?=(\d{3})+(?!\d))/g,"$1,")," rows)"):null})]}),c.jsx(jr,{value:Pe.DOWNLOAD_ROW_OPTIONS.CUSTOMIZED_ROWS,"data-testid":"radio-csv-exporter-customized-rows",children:c.jsxs("div",{className:"radio-input-row",role:"presentation",onClick:()=>{this.setState({downloadRowOption:Pe.DOWNLOAD_ROW_OPTIONS.CUSTOMIZED_ROWS})},children:[c.jsxs("select",{value:u,"data-testid":"select-csv-exporter-customized-rows",className:"custom-select",disabled:t,onChange:this.handleCustomizedDownloadRowOptionChanged,children:[c.jsx("option",{value:"FIRST",children:"First"}),c.jsx("option",{value:"LAST",children:"Last"})]}),c.jsx("input",{type:"number",className:"form-control",id:"customizedRows-".concat(g),"data-testid":"input-csv-exporter-customized-rows",name:"customizedRows-".concat(g),placeholder:"100",value:d,disabled:t,onChange:this.handleCustomizedDownloadRowsChanged}),c.jsx("div",{children:"Rows"})]})})]})}),c.jsxs("div",{className:"form-group",children:[c.jsx("label",{htmlFor:"customizedRows-".concat(g),children:"File Name"}),c.jsx("input",{type:"text",className:"form-control",id:"filename-".concat(g),"data-testid":"input-csv-exporter-file-name",name:"filename-".concat(g),value:s,onChange:C=>{this.setState({fileName:C.target.value})},disabled:t})]}),c.jsxs("div",{className:"checkbox-options",children:[c.jsx(un,{checked:h,onChange:this.handleIncludeColumnHeadersChanged,children:"Include column headers"}),c.jsx(un,{checked:v,onChange:this.handleIncludeHiddenColumnsChanged,children:"Include hidden columns"}),c.jsx(un,{checked:m,onChange:this.handleUseUnformattedValuesChanged,children:"Use unformatted values"})]}),c.jsxs("div",{className:"section-footer flex-column",children:[f!=null&&c.jsx("div",{className:"error-message",children:f}),l&&c.jsxs("div",{className:"download-status",children:[(l===Pe.DOWNLOAD_STATUS.DOWNLOADING||l===Pe.DOWNLOAD_STATUS.INITIATING)&&c.jsxs(c.Fragment,{children:[l===Pe.DOWNLOAD_STATUS.INITIATING&&c.jsx("div",{className:"text-muted",children:"Starting Download..."}),l===Pe.DOWNLOAD_STATUS.DOWNLOADING&&c.jsxs("div",{className:"text-muted d-flex justify-content-between",children:[c.jsx("span",{children:i||i===0?"Estimated time: ".concat(Dv.formatElapsedTime(i)):null}),c.jsx("span",{children:"".concat(r,"%")})]})]}),l===Pe.DOWNLOAD_STATUS.FINISHED&&c.jsx("div",{className:"text-muted text-right",children:"Download Completed"}),l===Pe.DOWNLOAD_STATUS.CANCELED&&c.jsx("div",{className:"text-muted",children:"Download Canceled"}),(l===Pe.DOWNLOAD_STATUS.DOWNLOADING||l===Pe.DOWNLOAD_STATUS.INITIATING)&&c.jsx("div",{className:"progress",children:c.jsx("div",{className:"progress-bar progress-bar-striped progress-bar-animated",style:{width:"".concat(r,"%")}})}),l===Pe.DOWNLOAD_STATUS.FINISHED&&c.jsx("div",{className:"progress",children:c.jsx("div",{className:"progress-bar bg-success",style:{width:"".concat(r,"%")}})})]}),c.jsxs(Y,{kind:"primary","data-testid":"btn-csv-exporter-download",className:re("btn-downloading",{"btn-spinner btn-cancelable":t}),onClick:this.handleDownloadClick,children:[t&&c.jsxs("span",{children:[c.jsx(Dn,{className:"loading-spinner-vertical-align"}),c.jsx("span",{className:"btn-normal-content",children:"Downloading"}),c.jsx("span",{className:"btn-hover-content",children:"Cancel"})]}),!t&&"Download"]})]})]})}}An(Pe,"FILENAME_DATE_FORMAT","yyyy-MM-dd-HHmmss");An(Pe,"DOWNLOAD_STATUS",{INITIATING:"INITIATING",DOWNLOADING:"DOWNLOADING",FINISHED:"FINISHED",CANCELED:"CANCELED"});An(Pe,"DOWNLOAD_ROW_OPTIONS",{ALL_ROWS:"ALL_ROWS",SELECTED_ROWS:"SELECTED_ROWS",CUSTOMIZED_ROWS:"CUSTOMIZED_ROWS"});An(Pe,"CUSTOMIZED_ROWS_OPTIONS",{FIRST:"FIRST",LAST:"LAST"});An(Pe,"DEFAULT_DOWNLOAD_ROWS",100);An(Pe,"defaultProps",{onDownloadStart:()=>{},isDownloading:!1,tableDownloadStatus:"",tableDownloadProgress:0,tableDownloadEstimatedTime:null,selectedRanges:[]});const vn=Pe;function Ne(n,e,t){return e=Bb(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Bb(n){var e=Gb(n,"string");return typeof e=="symbol"?e:String(e)}function Gb(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ar=ge.module("TableSaver"),$b="yyyy-MM-dd'T'HH:mm:ss.SSSSSSSSS z";function Wb(n){return n.added!==void 0}function zb(n){if(!Wb(n))throw new Error("event is not UpdateEventData")}class Lt extends R.PureComponent{static csvEscapeString(e){return'"'.concat(e.replace(/"/g,'""'),'"')}constructor(e){super(e),Ne(this,"sw",void 0),Ne(this,"port",void 0),Ne(this,"fileWriter",void 0),Ne(this,"table",void 0),Ne(this,"tableSubscription",void 0),Ne(this,"columns",void 0),Ne(this,"fileName",void 0),Ne(this,"includeColumnHeaders",void 0),Ne(this,"useUnformattedValues",void 0),Ne(this,"chunkRows",void 0),Ne(this,"gridRanges",void 0),Ne(this,"gridRangeCounter",void 0),Ne(this,"rangedSnapshotsTotal",void 0),Ne(this,"rangedSnapshotCounter",void 0),Ne(this,"snapshotsTotal",void 0),Ne(this,"snapshotCounter",void 0),Ne(this,"snapshotsBuffer",void 0),Ne(this,"currentSnapshotIndex",void 0),Ne(this,"snapshotPending",void 0),Ne(this,"cancelableSnapshots",void 0),Ne(this,"streamTimeout",void 0),Ne(this,"snapshotHandlerTimeout",void 0),Ne(this,"downloadStartTime",void 0),Ne(this,"iframe",void 0),Ne(this,"useBlobFallback",void 0),Ne(this,"getCachedCustomColumnFormatFlag",mr(kr.isCustomColumnFormatDefined,{max:1e4})),this.handlePortMessage=this.handlePortMessage.bind(this),this.handleSnapshotResolved=this.handleSnapshotResolved.bind(this),this.handleDownloadTimeout=this.handleDownloadTimeout.bind(this),this.state={},this.gridRanges=[],this.gridRangeCounter=0,this.rangedSnapshotsTotal=[],this.rangedSnapshotCounter=0,this.includeColumnHeaders=!0,this.useUnformattedValues=!1,this.snapshotsTotal=0,this.snapshotCounter=0,this.snapshotsBuffer=new Map,this.currentSnapshotIndex=0,this.snapshotPending=0,this.cancelableSnapshots=[],this.useBlobFallback=!1}componentDidMount(){var{getDownloadWorker:e}=this.props;e().then(t=>{Ar.info("found active service worker"),this.sw=t,this.sw.postMessage("ping")}).catch(t=>{Ar.warn("Download csv is not optimized.",t),this.useBlobFallback=!0})}componentWillUnmount(){this.removeIframe(),this.streamTimeout&&clearTimeout(this.streamTimeout),this.snapshotHandlerTimeout&&clearTimeout(this.snapshotHandlerTimeout)}createWriterStream(e){var t=this.useBlobFallback,r=[],i=null;t&&(i=TextEncoder.prototype.encode.bind(new TextEncoder));var{fileName:a}=this,l={};return t?(l.write=s=>{L(i),s.header!==void 0&&r.push(i(s.header)),s.rows!==void 0&&r.push(i(s.rows))},l.close=()=>{L(a);var s=new Blob(r,{type:"application/octet-stream; charset=utf-8"}),o=document.createElement("a");o.href=URL.createObjectURL(s),o.download=a,o.click()},l.abort=()=>{e.postMessage({cancel:!0}),e.close()}):(l.write=s=>{e.postMessage(s)},l.close=()=>{e.postMessage({end:!0}),e.close()},l.abort=()=>{e.postMessage({cancel:!0}),e.close()}),new WritableStream(l)}startDownload(e,t,r,i,a,l,s){var{isDownloading:o}=this.props;if(!o){this.downloadStartTime=Date.now(),Ar.info("start downloading ".concat(e)),this.table=t,this.columns=fe.columnsFromRanges(a,t.columns),this.tableSubscription=r,this.gridRanges=i,this.includeColumnHeaders=l,this.useUnformattedValues=s;var u=encodeURIComponent(e.replace(/\//g,":")).replace(/['()]/g,escape).replace(/\*/g,"%2A"),d=new MessageChannel;if(this.port=d.port1,this.fileName=e,this.fileWriter=this.createWriterStream(this.port).getWriter(),this.useBlobFallback){this.writeCsvTable(l);return}this.sw&&this.sw.postMessage({encodedFileName:u},[d.port2]),this.port.onmessage=this.handlePortMessage}}finishDownload(){this.table&&this.table.close(),this.tableSubscription&&this.tableSubscription.close(),this.fileWriter&&this.fileWriter.close();var{onDownloadCompleted:e}=this.props;e(),this.resetTableSaver(),this.downloadStartTime!==void 0&&Ar.info("download finished, total elapsed time ".concat((Date.now()-this.downloadStartTime)/1e3," seconds"))}cancelDownload(){var e,t,r;(e=this.table)===null||e===void 0||e.close(),(t=this.tableSubscription)===null||t===void 0||t.close(),(r=this.fileWriter)===null||r===void 0||r.abort(),this.cancelableSnapshots.forEach(a=>{a&&(a.catch(()=>null),a.cancel())});var{onDownloadCanceled:i}=this.props;i(),this.resetTableSaver()}resetTableSaver(){this.table=void 0,this.tableSubscription=void 0,this.columns=void 0,this.chunkRows=void 0,this.removeIframe(),this.gridRanges=[],this.gridRangeCounter=0,this.rangedSnapshotsTotal=[],this.rangedSnapshotCounter=0,this.includeColumnHeaders=!0,this.useUnformattedValues=!1,this.snapshotsTotal=0,this.snapshotCounter=0,this.snapshotsBuffer=new Map,this.currentSnapshotIndex=0,this.snapshotPending=0,this.cancelableSnapshots=[],this.streamTimeout!=null&&clearTimeout(this.streamTimeout),this.snapshotHandlerTimeout!=null&&clearTimeout(this.snapshotHandlerTimeout),this.streamTimeout=void 0,this.snapshotHandlerTimeout=void 0}handleDownloadTimeout(){Ar.info("download canceled"),this.cancelDownload()}writeTableHeader(){var e,t="";if(this.columns)for(var r=0;r<this.columns.length;r+=1)t+=this.columns[r].name,t+=r===this.columns.length-1?`
1
+ import{_ as Vd,r as R,H as Me,$ as ht,C as c,S as Se,K as ct,L as be,a0 as Ae,a1 as kc,a2 as Vl,F as re,N as Z,E as jc,D as vr,G as le,a3 as nt,a4 as La,a5 as Bd,a6 as is,a7 as _c,a8 as Tr,a9 as Hc,aa as Uc,ab as Vc,ac as Bc,ad as Bl,ae as Gc,af as $c,ag as Wc,ah as so,ai as zc,aj as oo,ak as Kc,al as Yc,am as qc,an as Xc,ao as Qc,ap as Zc,I as wa,M as On,aq as Jc,ar as ev}from"./vendor-c6a8042a.js";import{a8 as ar,I as dr,b as as,a9 as Gd,aa as ls,a6 as tv,ab as rv,L as ve,ac as nv,ad as br,R as At,ae as $d,af as ka,u as Wd,ag as zd,T as wr,J as lt,ah as ss,ai as Kd,x as os,aj as us,ak as ds,al as hs,am as ja,l as cs,an as Yd,f as qd,ao as iv,E as av,G as lv,Q as sv,ap as ov,aq as uv,ar as dv,as as hv,at as uo,U as cv,V as vv,au as Pn,k as Xd,n as mv,v as fv,av as gv,aw as pv,ax as Cv,ay as Sv,az as bv,aA as wv,M as yv}from"./ControlType-739cf14a.js";import{t as mO,p as fO,S as gO,C as pO,F as CO,q as SO,N as bO,K as wO,aB as yO,A as TO,aD as EO,B as OO,_ as PO,aC as RO,$ as DO}from"./ControlType-739cf14a.js";import{T as Ce,b as x,ac as kr,F as Pr,ad as Tn,ae as Re,af as Qd,B as Y,ag as xr,ah as _a,P as st,x as Zd,g as Kn,f as Jt,ai as pa,a as wn,D as Yt,I as cn,p as he,G as Jd,j as vs,aj as Tv,O as di,ak as Ev,al as cr,am as lr,an as Ov,ao as Pv,ap as Ha,aq as jr,C as un,ar as Gl,l as ms,c as Rv,as as sr,o as eh,k as fs,at as th,au as rh,av as Dv,aw as Fv,ax as ho,ay as je,az as co,aA as nh,aB as gs,w as Nv,aC as Iv,u as _i,z as ih,aD as Rn}from"./useConnection-c5e2e341.js";import{L as fe,e as L,H as ah,I as Av,J as Mv,K as M,N as lh,T as ze,O as Wn,F as Dn,P as ps,Q as Cs,R as ya,S as xv,U as Nr,V as Ta,W as Lv,X as kv,d as Ss,Y as jv,Z as _v,_ as Hv,$ as Uv,a0 as Vv,a1 as bs,f as fr,g as Fn,a2 as vo,a3 as Hi,a4 as ws,a5 as ys,a6 as Bv,a7 as Ai,t as Gv,a8 as $v,a9 as Ua,aa as Wv,D as Ea,ab as zv,ac as Ts,ad as sh,v as Kv,ae as Yv,af as qv,ag as Xv,ah as Qv,ai as Zv,aj as Jv,ak as mo,al as yl,am as em,an as tm,j as Es,ao as rm,M as oh,b as uh,ap as nm,aq as im,c as dh,z as am,ar as lm,as as sm,at as om,q as um,au as dm,av as hm,aw as cm,ax as vm,ay as mm,az as fm,aA as gm,C as Os,aB as pm,aC as Cm,s as fo,y as Sm}from"./index-07ade726.js";import{c as bm,P as wm}from"./plotly-e8f43474.js";import{e as ym}from"./monaco-3857fcdf.js";import{u as Tm}from"./useLoadTablePlugin-6c4802c1.js";import"./helpers-042e6b4d.js";function hh(n){switch(n){case Ce.eq:return"is exactly";case Ce.eqIgnoreCase:return"is exactly (ignore case)";case Ce.notEq:return"is not exactly";case Ce.notEqIgnoreCase:return"is not exactly (ignore case)";case Ce.contains:return"contains";case Ce.notContains:return"does not contain";case Ce.startsWith:return"starts with";case Ce.endsWith:return"ends with";default:throw new Error("Unrecognized text filter type ".concat(n))}}function ch(n){switch(n){case Ce.eq:return"is equal to";case Ce.notEq:return"is not equal to";case Ce.greaterThan:return"greater than";case Ce.greaterThanOrEqualTo:return"greater than or equal to";case Ce.lessThan:return"less than";case Ce.lessThanOrEqualTo:return"less than or equal to";default:throw new Error("Unrecognized number filter type ".concat(n))}}function vh(n){switch(n){case Ce.eq:return"date is";case Ce.notEq:return"date is not";case Ce.notEqIgnoreCase:case Ce.greaterThan:return"date is after";case Ce.greaterThanOrEqualTo:return"date is after or equal";case Ce.lessThan:return"date is before";case Ce.lessThanOrEqualTo:return"date is before or equal";default:throw new Error("Unrecognized date filter type ".concat(n))}}function Em(n){switch(n){case Ce.isTrue:return"Is True";case Ce.isFalse:return"Is False";case Ce.isNull:return"Is Null";default:throw new Error("Unrecognized boolean filter type ".concat(n))}}function kt(n,e,t){return e=Om(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Om(n){var e=Pm(n,"string");return typeof e=="symbol"?e:String(e)}function Pm(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class at{constructor(e){kt(this,"dh",void 0),kt(this,"listeners",void 0),kt(this,"formatter",void 0),kt(this,"rect",void 0),kt(this,"isDownsamplingDisabled",void 0),kt(this,"title",void 0),this.dh=e,this.listeners=[],this.isDownsamplingDisabled=!1}getData(){return[]}getDefaultTitle(){return""}getLayout(){return{}}getFilterColumnMap(){return new Map}isFilterRequired(){return!1}setFilter(e){}close(){}setFormatter(e){this.formatter=e}setDownsamplingDisabled(e){this.isDownsamplingDisabled=e}setDimensions(e){this.rect=e}setTitle(e){this.title=e}subscribe(e){this.listeners.push(e)}unsubscribe(e){this.listeners=this.listeners.filter(t=>t!==e)}fireEvent(e){for(var t=0;t<this.listeners.length;t+=1)this.listeners[t](e)}fireUpdate(e){this.fireEvent(new CustomEvent(at.EVENT_UPDATED,{detail:e}))}fireDisconnect(){this.fireEvent(new CustomEvent(at.EVENT_DISCONNECT))}fireReconnect(){this.fireEvent(new CustomEvent(at.EVENT_RECONNECT))}fireDownsampleStart(e){this.fireEvent(new CustomEvent(at.EVENT_DOWNSAMPLESTARTED,{detail:e}))}fireDownsampleFinish(e){this.fireEvent(new CustomEvent(at.EVENT_DOWNSAMPLEFINISHED,{detail:e}))}fireDownsampleFail(e){this.fireEvent(new CustomEvent(at.EVENT_DOWNSAMPLEFAILED,{detail:e}))}fireDownsampleNeeded(e){this.fireEvent(new CustomEvent(at.EVENT_DOWNSAMPLENEEDED,{detail:e}))}fireLoadFinished(){this.fireEvent(new CustomEvent(at.EVENT_LOADFINISHED))}}kt(at,"EVENT_UPDATED","ChartModel.EVENT_UPDATED");kt(at,"EVENT_DISCONNECT","ChartModel.EVENT_DISCONNECT");kt(at,"EVENT_RECONNECT","ChartModel.EVENT_RECONNECT");kt(at,"EVENT_DOWNSAMPLESTARTED","ChartModel.EVENT_DOWNSAMPLESTARTED");kt(at,"EVENT_DOWNSAMPLEFINISHED","ChartModel.EVENT_DOWNSAMPLEFINISHED");kt(at,"EVENT_DOWNSAMPLEFAILED","ChartModel.EVENT_DOWNSAMPLEFAILED");kt(at,"EVENT_DOWNSAMPLENEEDED","ChartModel.EVENT_DOWNSAMPLENEEDED");kt(at,"EVENT_LOADFINISHED","ChartModel.EVENT_LOADFINISHED");const Mr=at;function go(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 Hn(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?go(Object(t),!0).forEach(function(r){vt(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):go(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function vt(n,e,t){return e=Rm(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Rm(n){var e=Dm(n,"string");return typeof e=="symbol"?e:String(e)}function Dm(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var hi=fe.module("ChartUtils"),po="io.deephaven.time.DateTime",Fm=36e5,Nm=1e6;function Im(n){return n.asDate!==void 0}function Am(n){return n.asNumber!==void 0}function Co(n){return n.dhTimeZone!==void 0}function Mm(n){return n!=null&&n.range!=null&&(n.autorange===!1||n.autorange===void 0)}class J{static getPlotlyErrorBars(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:ar,a=r.map((s,o)=>s-e[o]),l=t.map((s,o)=>e[o]-s);return{type:"data",symmetric:!1,array:a,arrayminus:l,color:i.error_band_line_color}}static convertNumberPrefix(e){return e.replace(/\u00A4\u00A4/g,"USD").replace(/\u00A4/g,"$")}static getPlotlyNumberFormat(e,t,r){if(!r)return null;var i=r.split(";"),a=i[0].match(/^([^#,0.]*)([#,]*)([0,]*)(\.?)(0*)(#*)(E?0*)(%?)(.*)/);L(a);var[,l,s,o,,u,d,h,v,m]=a,f=o.replace(",","").length,g=s.indexOf(",")>=0||o.indexOf(",")>=0,p=g?",":"",C=h!=null&&h!==""?"e":"f",S=v!==""?v:C,b=u.length+d.length,w="",y="0".concat(f).concat(p,".").concat(b).concat(w).concat(S),T=J.convertNumberPrefix(l),E=J.convertNumberPrefix(m);return{tickformat:y,tickprefix:T,ticksuffix:E,automargin:!0}}static addTickSpacing(e,t,r){var{gapBetweenMajorTicks:i}=t;if(i>0){var a=e||{},l=i;return r&&(l=i/Nm),t.log&&(l=Math.log(l)),a.tickmode="linear",a.dtick=l,a}return e}static getSourceForAxis(e,t){for(var r=0;r<e.series.length;r+=1)for(var i=e.series[r],a=0;a<i.sources.length;a+=1){var l=i.sources[a];if(l.axis===t)return l}return null}static getSeriesVisibility(e,t){return t!=null&&t.hiddenSeries!=null&&t.hiddenSeries.includes(e)?"legendonly":!0}static getHiddenLabels(e){return e!=null&&e.hiddenSeries?[...e.hiddenSeries]:[]}static makeSeriesData(e,t,r,i){var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:J.ORIENTATION.VERTICAL;return{type:e,mode:t,name:r,orientation:a,showlegend:i??void 0}}static getMarkerSymbol(e){switch(e){case"SQUARE":return"square";case"CIRCLE":return"circle";case"DIAMOND":return"diamond";case"UP_TRIANGLE":return"triangle-up";case"DOWN_TRIANGLE":return"triangle-down";case"RIGHT_TRIANGLE":return"triangle-right";case"LEFT_TRIANGLE":return"triangle-left";case"ELLIPSE":case"HORIZONTAL_RECTANGLE":case"VERTICAL_RECTANGLE":default:throw new Error("Unrecognized shape ".concat(e))}}static getAllAxes(e){return e.charts.reduce((t,r)=>[...t,...r.axes],[])}static getChartForSeries(e,t){for(var{charts:r}=e,i=0;i<r.length;i+=1)for(var a=r[i],l=0;l<a.series.length;l+=1)if(t===a.series[l])return a;return null}static getLayoutRanges(e){for(var t={},r=Object.keys(e).filter(s=>s.indexOf("axis")>=0),i=0;i<r.length;i+=1){var a=r[i],l=e[a];Mm(l)&&(t[a]=[...l.range])}return t}static getAxisLayoutProperty(e,t){var r=t>0?"".concat(t+1):"";return"".concat(e??"","axis").concat(r)}static periodToDecimal(e){var t=e.split(":");return Number(t[0])+Number(t[1])/60}static groupArray(e,t){return e.reduce((r,i)=>{var a,l=i[t],s=(a=r.get(l))!==null&&a!==void 0?a:[];return s.push(i),r.set(l,s),r},new Map)}static getColorwayFromTheme(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:ar,t=[];return e.colorway&&(Array.isArray(e.colorway)?t=e.colorway:typeof e.colorway=="string"?t=e.colorway.split(" "):hi.warn("Unable to handle colorway property: ".concat(e.colorway))),t}static titleFromSettings(e){var{series:t,xAxis:r,title:i="".concat((t??[]).join(", ")," by ").concat(r)}=e;return i}constructor(e){vt(this,"dh",void 0),vt(this,"daysOfWeek",void 0),this.dh=e,this.daysOfWeek=Object.freeze(e.calendar.DayOfWeek.values())}getAxisFormats(e,t){for(var r=this,i=new Map,a={tickformat:null,ticksuffix:null},l=J.getAllAxes(e),s=J.groupArray(l,"type"),{charts:o}=e,u=0;u<o.length;u+=1)for(var d=o[u],h=0;h<d.series.length;h+=1)for(var v=d.series[h],{sources:m}=v,f=m.filter(S=>S.axis),g=function(){var b=f[p],{axis:w}=b,{type:y}=w,T=s.get(y);L(T);var E=T.indexOf(w),P=r.getAxisPropertyName(y);if(P!=null){var O=J.getAxisLayoutProperty(P,E);if(i.has(O))hi.debug("".concat(O," already added."));else{hi.debug("Adding ".concat(O," to axisFormats."));var D=r.getPlotlyAxisFormat(b,t);if(D===null)i.set(O,a);else{i.set(O,D);var{businessCalendar:N}=w;if(N!=null){var F=[],{businessPeriods:A,businessDays:j,holidays:k,timeZone:B}=N,G=t?.getColumnTypeFormatter(po),W;Co(G)&&(W=G.dhTimeZone);var z=W?(B.standardOffset-W.standardOffset)/60:0;k.length>0&&F.push(...r.createRangeBreakValuesFromHolidays(k,B,W)),A.forEach(q=>F.push({pattern:"hour",bounds:[J.periodToDecimal(q.close)+z,J.periodToDecimal(q.open)+z]})),j.length<r.daysOfWeek.length&&r.createBoundsFromDays(j).forEach(q=>F.push({pattern:"day of week",bounds:q})),D.rangebreaks=F}if(i.size===d.axes.length)return{v:i}}}}},p=0;p<f.length;p+=1){var C=g();if(typeof C=="object")return C.v}return i}getPlotlyChartType(e,t){var{dh:r}=this;switch(e){case r.plot.SeriesPlotStyle.SCATTER:return t?"scatter":"scattergl";case r.plot.SeriesPlotStyle.LINE:return"scatter";case r.plot.SeriesPlotStyle.BAR:case r.plot.SeriesPlotStyle.STACKED_BAR:return"bar";case r.plot.SeriesPlotStyle.PIE:return"pie";case r.plot.SeriesPlotStyle.TREEMAP:return"treemap";case r.plot.SeriesPlotStyle.HISTOGRAM:return"histogram";case r.plot.SeriesPlotStyle.OHLC:return"ohlc";default:return}}getPlotlyChartMode(e,t,r){var{dh:i}=this,a=new Set;switch(e){case i.plot.SeriesPlotStyle.SCATTER:(t??!1)&&a.add(J.MODE_LINES),(r??!0)&&a.add(J.MODE_MARKERS);break;case i.plot.SeriesPlotStyle.LINE:(t??!0)&&a.add(J.MODE_LINES),(r??!1)&&a.add(J.MODE_MARKERS);break}return a.size>0?[...a].join("+"):void 0}getPlotlyProperty(e,t){var{dh:r}=this;switch(e){case r.plot.SeriesPlotStyle.PIE:switch(t){case r.plot.SourceType.X:return"labels";case r.plot.SourceType.Y:return"values"}break;case r.plot.SeriesPlotStyle.OHLC:switch(t){case r.plot.SourceType.TIME:return"x"}break;case r.plot.SeriesPlotStyle.TREEMAP:switch(t){case r.plot.SourceType.X:return"ids";case r.plot.SourceType.Y:return"values";case r.plot.SourceType.LABEL:return"labels";case r.plot.SourceType.PARENT:return"parents";case r.plot.SourceType.COLOR:return"marker.colors"}break}switch(t){case r.plot.SourceType.X:return"x";case r.plot.SourceType.Y:return"y";case r.plot.SourceType.Z:return"z";case r.plot.SourceType.X_LOW:return"xLow";case r.plot.SourceType.X_HIGH:return"xHigh";case r.plot.SourceType.Y_LOW:return"yLow";case r.plot.SourceType.Y_HIGH:return"yHigh";case r.plot.SourceType.TIME:return"time";case r.plot.SourceType.OPEN:return"open";case r.plot.SourceType.HIGH:return"high";case r.plot.SourceType.LOW:return"low";case r.plot.SourceType.CLOSE:return"close";case r.plot.SourceType.SHAPE:return"shape";case r.plot.SourceType.SIZE:return"size";case r.plot.SourceType.LABEL:return"label";case r.plot.SourceType.COLOR:return"color";case r.plot.SourceType.PARENT:return"parent";case r.plot.SourceType.HOVER_TEXT:return"hovertext";case r.plot.SourceType.TEXT:return"text";default:throw new Error("Unrecognized source type: ".concat(t))}}getPlotlySeriesOrientation(e){var t,r,{dh:i}=this,{sources:a}=e;return a.length===2&&((t=a[0])===null||t===void 0||(r=t.axis)===null||r===void 0?void 0:r.type)===i.plot.AxisType.Y?J.ORIENTATION.HORIZONTAL:J.ORIENTATION.VERTICAL}makeSeriesDataFromSeries(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:ar,{name:l,isLinesVisible:s,isShapesVisible:o,plotStyle:u,lineColor:d,shapeColor:h,sources:v,shape:m,shapeSize:f}=e,g=v.some(w=>{var y;return(y=w.axis)===null||y===void 0?void 0:y.businessCalendar}),p=this.getChartType(u,g),C=this.getPlotlyChartMode(u,s??void 0,o??void 0),S=this.getPlotlySeriesOrientation(e),b=J.makeSeriesData(p,C,l,i,S);return this.addSourcesToSeriesData(b,u,v,t),this.addStylingToSeriesData(b,u,a,d,h,m,f,r),b}addSourcesToSeriesData(e,t,r,i){for(var a=e,l=0;l<r.length;l+=1){var s=r[l],{axis:o,type:u}=s,d=this.getPlotlyProperty(t,u);Vd(a,d,[]);var h=o!=null?this.getAxisPropertyName(o.type):null;if(h!=null){var v=i.get(o.type);if(v){var m=v.indexOf(o),f=m>0?"".concat(m+1):"";a["".concat(h,"axis")]="".concat(h).concat(f)}}}}addStylingToSeriesData(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:ar,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:null,l=arguments.length>5&&arguments[5]!==void 0?arguments[5]:null,s=arguments.length>6&&arguments[6]!==void 0?arguments[6]:null,o=arguments.length>7&&arguments[7]!==void 0?arguments[7]:null,{dh:u}=this,d=e;if(d.marker={line:{}},d.line={width:1},t===u.plot.SeriesPlotStyle.AREA?d.fill="tozeroy":t===u.plot.SeriesPlotStyle.STACKED_AREA?d.stackgroup="stack":t===u.plot.SeriesPlotStyle.STEP?d.line.shape="hv":t===u.plot.SeriesPlotStyle.HISTOGRAM?(d.width=[],d.marker.line!==void 0&&Object.assign(d.marker.line,{color:r.paper_bgcolor,width:1})):t===u.plot.SeriesPlotStyle.OHLC?(d.increasing={line:{color:r.ohlc_increasing}},d.decreasing={line:{color:r.ohlc_decreasing}}):t===u.plot.SeriesPlotStyle.PIE?(d.textinfo="label+percent",d.outsidetextfont={color:r.title_color}):t===u.plot.SeriesPlotStyle.TREEMAP&&(d.hoverinfo="text",d.textinfo="label+text",d.tiling={packing:"squarify",pad:0},d.textposition="middle center",d.outsidetextfont={color:r.title_color}),i!=null&&(t===u.plot.SeriesPlotStyle.BAR?d.marker.color=i:d.line.color=i),a!=null&&(d.marker.color=a),l!=null&&l.length>0)try{d.marker.symbol=J.getMarkerSymbol(l)}catch(h){hi.warn("Unable to handle shape",l,":",h)}s!=null&&(d.marker.size=s*J.DEFAULT_MARKER_SIZE),o!=null&&t!==u.plot.SeriesPlotStyle.PIE&&(d.visible=o)}getChartType(e,t){var{dh:r}=this;switch(e){case r.plot.SeriesPlotStyle.HISTOGRAM:return"bar";default:return this.getPlotlyChartType(e,t)}}getAxisPropertyName(e){var{dh:t}=this;switch(e){case t.plot.AxisType.X:return"x";case t.plot.AxisType.Y:return"y";default:return null}}getAxisSide(e){var{dh:t}=this;switch(e){case t.plot.AxisPosition.BOTTOM:return"bottom";case t.plot.AxisPosition.TOP:return"top";case t.plot.AxisPosition.LEFT:return"left";case t.plot.AxisPosition.RIGHT:return"right";default:return}}updateFigureAxes(e,t,r){for(var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,l=arguments.length>5&&arguments[5]!==void 0?arguments[5]:ar,s=e,o=J.getAllAxes(t),u=0;u<t.charts.length;u+=1){var d=t.charts[u],h=r?.(d),v=this.getChartBounds(t,d,i,a);this.updateLayoutAxes(s,d.axes,o,i,a,v,h,l)}this.removeStaleAxes(s,o)}getChartBounds(e,t,r,i){var a,{dh:l}=this,{cols:s,rows:o}=e,{column:u,colspan:d,row:h,rowspan:v}=t,m=u+d,f=h+v,g=1/s,p=1/o,C=J.AXIS_SIZE_PX/r,S=J.AXIS_SIZE_PX/i,b={bottom:(o-f)*p+(f<o?S/2:0),top:(o-h)*p-(h>0?S/2:0),left:u*g+(u>0?C/2:0),right:m*g-(m<s?C/2:0)},w=J.groupArray(t.axes,"position"),y=(a=w.get(l.plot.AxisPosition.RIGHT))!==null&&a!==void 0?a:[];return y.length>0&&(r>0?b.right-=(b.right-b.left)*Math.max(0,Math.min(J.LEGEND_WIDTH_PX/r,J.MAX_LEGEND_SIZE)):b.right-=(b.right-b.left)*J.DEFAULT_AXIS_SIZE),b}getPlotlyDateFormat(e,t,r){var{dh:i}=this,a=r?.replace("%","%%").replace(/S{9}/g,"%9f").replace(/S{8}/g,"%8f").replace(/S{7}/g,"%7f").replace(/S{6}/g,"%6f").replace(/S{5}/g,"%5f").replace(/S{4}/g,"%4f").replace(/S{3}/g,"%3f").replace(/S{2}/g,"%2f").replace(/S{1}/g,"%1f").replace(/y{4}/g,"%Y").replace(/y{2}/g,"%y").replace(/M{4}/g,"%B").replace(/M{3}/g,"%b").replace(/M{2}/g,"%m").replace(/M{1}/g,"%-m").replace(/E{4,}/g,"%A").replace(/E{1,}/g,"%a").replace(/d{2}/g,"%d").replace(/([^%]|^)d{1}/g,"$1%-d").replace(/H{2}/g,"%H").replace(/h{2}/g,"%I").replace(/h{1}/g,"%-I").replace(/m{2}/g,"%M").replace(/s{2}/g,"%S").replace("'T'","T").replace(" z",""),l,s=e?.getColumnTypeFormatter(t);return s!=null&&Co(s)&&s.dhTimeZone!=null&&s.showTimeZone&&(l=i.i18n.DateTimeFormat.format(" z",new Date,s.dhTimeZone)),{tickformat:a,ticksuffix:l,automargin:!0}}getPlotlyAxisFormat(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null,{dh:r}=this,{axis:i,columnType:a}=e,{formatPattern:l}=i,s=null;return x.isDateType(a)?(s=this.getPlotlyDateFormat(t,a,l),s=J.addTickSpacing(s,i,!0)):x.isNumberType(a)&&(s=J.getPlotlyNumberFormat(t,a,l),s=J.addTickSpacing(s,i,!1)),i.formatType===r.plot.AxisFormatType.CATEGORY&&(s?s.type="category":s={type:"category",tickformat:void 0,ticksuffix:void 0}),s}updateLayoutAxes(e,t,r){for(var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,l=arguments.length>5&&arguments[5]!==void 0?arguments[5]:{left:0,top:0,right:1,bottom:1},s=arguments.length>6?arguments[6]:void 0,o=arguments.length>7&&arguments[7]!==void 0?arguments[7]:ar,{dh:u}=this,d=i>0?Math.max(J.MIN_AXIS_SIZE,Math.min(J.AXIS_SIZE_PX/a,J.MAX_AXIS_SIZE)):J.DEFAULT_AXIS_SIZE,h=a>0?Math.max(J.MIN_AXIS_SIZE,Math.min(J.AXIS_SIZE_PX/i,J.MAX_AXIS_SIZE)):J.DEFAULT_AXIS_SIZE,v=e,m=J.groupArray(t,"position"),f=J.groupArray(t,"type"),g=[...f.keys()],p=J.groupArray(r,"type"),C=0;C<g.length;C+=1){var S=g[C],b=this.getAxisPropertyName(S);if(b!=null){var w=f.get(S),y=p.get(S),T=S===u.plot.AxisType.Y,E=T?a:i;L(w),L(y);for(var P=0;P<w.length;P+=1){var O=w[P],D=y.indexOf(O),N=J.getAxisLayoutProperty(b,D);v[N]==null&&(v[N]=this.makeLayoutAxis(S,o));var F=v[N];if(F!=null){this.updateLayoutAxis(F,O,P,m,d,h,l);var{range:A,autorange:j}=F;if(s!=null&&A!==void 0&&(j===void 0||j===!1)){var k=s(O),[B,G]=k(A);hi.debug("Setting downsample range",E,B,G),O.range(E,B,G)}else O.range(E)}}}}}removeStaleAxes(e,t){for(var r=e,i=J.groupArray(t,"type"),a=[...i.keys()],l=0;l<a.length;l+=1){var s=a[l],o=i.get(s);L(o);var u=o.length,d=this.getAxisPropertyName(s);if(d!=null)for(var h=J.getAxisLayoutProperty(d,u);r[h]!=null;)delete r[h],u+=1,h=J.getAxisLayoutProperty(d,u)}}updateLayoutAxis(e,t,r,i,a,l,s){var o,{dh:u}=this,d=t.type===u.plot.AxisType.Y,h=d?l:a,v=e,m=(o=t.label)!==null&&o!==void 0?o:"";if(v.title!==void 0&&typeof v.title!="string"?v.title.text=m:v.title={text:m},t.log&&(v.type="log"),v.side=this.getAxisSide(t.position),r>0){var f,g;v.overlaying=(f=this.getAxisPropertyName(t.type))!==null&&f!==void 0?f:void 0;var p=(g=i.get(t.position))!==null&&g!==void 0?g:[],C=p.indexOf(t);C>0&&(v.anchor="free",t.position===u.plot.AxisPosition.RIGHT?v.position=s.right+(C-p.length+1)*h:t.position===u.plot.AxisPosition.TOP?v.position=s.top+(C-p.length+1)*h:t.position===u.plot.AxisPosition.BOTTOM?v.position=s.bottom+(p.length-C+1)*h:t.position===u.plot.AxisPosition.LEFT&&(v.position=s.left+(p.length-C+1)*h))}else if(t.type===u.plot.AxisType.X){var S=i.get(u.plot.AxisPosition.LEFT)||[],b=i.get(u.plot.AxisPosition.RIGHT)||[],w=Math.max(s.left,s.left+(S.length-1)*l),y=Math.min(s.right-(b.length-1)*l,s.right);v.domain=[w,y]}else if(t.type===u.plot.AxisType.Y){var T=i.get(u.plot.AxisPosition.BOTTOM)||[],E=i.get(u.plot.AxisPosition.TOP)||[],P=Math.max(s.bottom,s.bottom+(T.length-1)*a),O=Math.min(s.top-(E.length-1)*a,s.top);v.domain=[P,O]}}createBoundsFromDays(e){var t=e.map(l=>this.daysOfWeek.indexOf(l)),r=this.daysOfWeek.filter(l=>!e.includes(l)).map(l=>this.daysOfWeek.indexOf(l)),i=new Set;r.forEach(l=>{for(var s=l+1;s<l+this.daysOfWeek.length;s+=1){var o=s%this.daysOfWeek.length;if(t.includes(o)){i.add(o);break}}});var a=[];return i.forEach(l=>{for(var s=l-1;s>l-this.daysOfWeek.length;s-=1){var o=s<0?s+this.daysOfWeek.length:s;if(t.includes(o)){var u=(o+1)%7;a.push([u,l]);break}}}),a}createRangeBreakValuesFromHolidays(e,t,r){var i=[],a=[];return e.forEach(l=>{l.businessPeriods.length>0?a.push(...this.createPartialHoliday(l,t,r)):i.push(this.createFullHoliday(l,t,r))}),[{values:i},...a]}createFullHoliday(e,t,r){return this.adjustDateForTimeZone("".concat(e.date.toString()," 00:00:00.000000"),t,r)}createPartialHoliday(e,t,r){var i=e.date.toString(),a=["00:00"];e.businessPeriods.forEach(v=>{a.push(v.open),a.push(v.close)}),a.push("24:00");for(var l=[],s=0;s<a.length;s+=2){var o=a[s],u=a[s+1];if(o!==u){var d=[this.adjustDateForTimeZone("".concat(i," ").concat(o,":00.000000"),t,r)],h=Fm*(J.periodToDecimal(u)-J.periodToDecimal(o));l.push({values:d,dvalue:h})}}return l}adjustDateForTimeZone(e,t,r){return r&&r.standardOffset!==t.standardOffset?this.unwrapValue(this.wrapValue(e,po,t),r):e}makeFigureSettings(e,t){var{dh:r}=this,{series:i,xAxis:a,type:l}=e,s=J.titleFromSettings(e),o={formatType:"".concat(r.plot.AxisFormatType.NUMBER),type:"".concat(r.plot.AxisType.X),position:"".concat(r.plot.AxisPosition.BOTTOM)},u={formatType:"".concat(r.plot.AxisFormatType.NUMBER),type:"".concat(r.plot.AxisType.Y),position:"".concat(r.plot.AxisPosition.LEFT)};return{charts:[{chartType:"".concat(r.plot.ChartType.XY),axes:[o,u],series:(i??[]).map(d=>({plotStyle:"".concat(l),name:d,dataSources:[{type:"".concat(r.plot.SourceType.X),columnName:a??"",axis:o,table:t},{type:"".concat(r.plot.SourceType.Y),columnName:d,axis:u,table:t}]}))}],title:s}}unwrapValue(e,t){var{dh:r}=this;if(e!=null){if(Im(e))return r.i18n.DateTimeFormat.format(J.DATE_FORMAT,e,t);if(Am(e))return e.asNumber()}return e}wrapValue(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null,{dh:i}=this;if(x.isDateType(t)&&typeof e=="string"){var a=e,l=J.DATE_FORMAT.substr(0,e.length),s=i.i18n.DateTimeFormat.parse(l,a);if(!r)return s;var o="".concat(l," Z"),u=i.i18n.DateTimeFormat.format("Z",s,r),d=i.i18n.DateTimeFormat.parse(o,"".concat(a," ").concat(u)),h=i.i18n.DateTimeFormat.format("Z",d,r);return i.i18n.DateTimeFormat.parse(o,"".concat(a," ").concat(h))}return e}makeLayoutAxis(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:ar,{dh:r}=this,i={automargin:!0,gridcolor:t.gridcolor,linecolor:t.linecolor,rangeslider:{visible:!1},showline:!0,ticklen:5,tickcolor:t.paper_bgcolor,tickfont:{color:t.zerolinecolor},title:{font:{color:t.title_color}}};return e===r.plot.AxisType.X?Object.assign(i,{showgrid:!0}):e===r.plot.AxisType.Y&&Object.assign(i,{zerolinecolor:t.zerolinecolor,zerolinewidth:2}),i}makeDefaultLayout(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:ar,{dh:t}=this,r=Hn(Hn({},e),{},{autosize:!0,colorway:J.getColorwayFromTheme(e),font:{family:"'Fira Sans', sans-serif",color:e.title_color},title:{font:{color:e.title_color},yanchor:"top",pad:Hn({},J.DEFAULT_TITLE_PADDING),y:1},legend:{font:{color:e.title_color}},margin:Hn({},J.DEFAULT_MARGIN),xaxis:this.makeLayoutAxis(t.plot.AxisType.X,e),yaxis:this.makeLayoutAxis(t.plot.AxisType.Y,e),polar:{angularaxis:this.makeLayoutAxis(t.plot.AxisType.SHAPE,e),radialaxis:this.makeLayoutAxis(t.plot.AxisType.SHAPE,e),bgcolor:e.plot_bgcolor},scene:{xaxis:this.makeLayoutAxis(t.plot.AxisType.X,e),yaxis:this.makeLayoutAxis(t.plot.AxisType.Y,e),zaxis:this.makeLayoutAxis(t.plot.AxisType.Z,e)}});return r.datarevision=0,r}hydrateSettings(e){var{dh:t}=this;return Hn(Hn({},e),{},{type:e.type!=null?t.plot.SeriesPlotStyle[e.type]:void 0})}}vt(J,"DEFAULT_AXIS_SIZE",.15);vt(J,"MIN_AXIS_SIZE",.025);vt(J,"MAX_AXIS_SIZE",.2);vt(J,"AXIS_SIZE_PX",75);vt(J,"LEGEND_WIDTH_PX",50);vt(J,"MAX_LEGEND_SIZE",.25);vt(J,"ORIENTATION",Object.freeze({HORIZONTAL:"h",VERTICAL:"v"}));vt(J,"DATE_FORMAT","yyyy-MM-dd HH:mm:ss.SSSSSS");vt(J,"DEFAULT_MARGIN",Object.freeze({l:60,r:50,t:30,b:60,pad:0}));vt(J,"DEFAULT_TITLE_PADDING",Object.freeze({t:8}));vt(J,"SUBTITLE_LINE_HEIGHT",25);vt(J,"DEFAULT_MARKER_SIZE",6);vt(J,"MODE_MARKERS","markers");vt(J,"MODE_LINES","lines");const dt=J;function So(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 bo(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?So(Object(t),!0).forEach(function(r){Tt(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):So(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Tt(n,e,t){return e=xm(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function xm(n){var e=Lm(n,"string");return typeof e=="symbol"?e:String(e)}function Lm(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var $r=fe.module("Chart");class Cn extends R.Component{static convertIcon(e){var[t,,,,r]=e.icon,i="".concat(r);return{width:t,path:i,ascent:t,descent:0,transform:"matrix(1, 0, 0, 1, 0, 0)"}}static downsampleButtonTitle(e,t){return e?"Downsampling in progress...":t?"Downsampling disabled, click to enable":"Downsampling enabled, click to disable"}static downsampleButtonAttr(e,t){return e?"animation-spin":t?void 0:"fill-active"}constructor(e){super(e),Tt(this,"currentSeries",void 0),Tt(this,"PlotComponent",void 0),Tt(this,"plot",void 0),Tt(this,"plotWrapper",void 0),Tt(this,"columnFormats",void 0),Tt(this,"dateTimeFormatterOptions",void 0),Tt(this,"decimalFormatOptions",void 0),Tt(this,"integerFormatOptions",void 0),Tt(this,"rect",void 0),Tt(this,"ranges",void 0),Tt(this,"isSubscribed",void 0),Tt(this,"isLoadedFired",void 0),Tt(this,"getCachedConfig",Se((t,r,i,a,l)=>{var s=[],o=!!t;if(o&&s.push({name:"Downsampling failed: ".concat(t),title:"Downsampling failed",click:()=>{},icon:Cn.convertIcon(ah),attr:"fill-warning"}),r||i||a||o){var u=Cn.downsampleButtonTitle(i,a),d=Cn.downsampleButtonAttr(i,a),h=i?Av:Mv;s.push({name:u,title:"Downsampling status",icon:Cn.convertIcon(h),click:this.handleDownsampleClick,attr:d})}var v=l.some(p=>{var{type:C}=p;return C!=null&&!C.includes("3d")}),m=l.some(p=>{var{type:C}=p;return C!=null&&C.includes("3d")}),f=["zoomIn2d","zoomOut2d","autoScale2d","resetScale2d"],g=["orbitRotation","tableRotation","resetCameraDefault3d"];return{displaylogo:!1,displayModeBar:i||o?!0:"hover",modeBarButtons:[s,["toImage"],["zoom2d","pan2d"],[...v?f:[],...m?g:[]]]}})),this.handleAfterPlot=this.handleAfterPlot.bind(this),this.handleDownsampleClick=this.handleDownsampleClick.bind(this),this.handleModelEvent=this.handleModelEvent.bind(this),this.handlePlotUpdate=this.handlePlotUpdate.bind(this),this.handleRelayout=this.handleRelayout.bind(this),this.handleRestyle=this.handleRestyle.bind(this),this.PlotComponent=bm(e.Plotly),this.plot=Me.createRef(),this.plotWrapper=Me.createRef(),this.columnFormats=[],this.dateTimeFormatterOptions={},this.decimalFormatOptions={},this.integerFormatOptions={},this.isSubscribed=!1,this.isLoadedFired=!1,this.currentSeries=0,this.state={data:null,downsamplingError:null,isDownsampleFinished:!1,isDownsampleInProgress:!1,isDownsamplingDisabled:!1,layout:{datarevision:0},revision:0}}componentDidMount(){this.updateDimensions(),this.updateModelDimensions(),this.initData(),this.initFormatter();var{isActive:e}=this.props;e&&this.subscribe()}componentDidUpdate(e){var{isActive:t,settings:r}=this.props;this.updateFormatterSettings(r),t!==e.isActive&&(t?this.subscribe():this.unsubscribe())}componentWillUnmount(){this.unsubscribe()}getPlotRect(){var e,t;return(e=(t=this.plotWrapper.current)===null||t===void 0?void 0:t.getBoundingClientRect())!==null&&e!==void 0?e:null}initData(){var{model:e}=this.props,{layout:t}=this.state;this.setState({data:e.getData(),layout:bo(bo({},t),e.getLayout())})}subscribe(){if(!this.isSubscribed){var{model:e}=this.props;if(!this.rect||this.rect.width===0||this.rect.height===0){$r.debug2("Delaying subscription until model dimensions are set");return}e.subscribe(this.handleModelEvent),this.isSubscribed=!0}}unsubscribe(){if(this.isSubscribed){var{model:e}=this.props;e.unsubscribe(this.handleModelEvent),this.isSubscribed=!1}}handleAfterPlot(){this.plot.current!=null}handleDownsampleClick(){this.setState(e=>{var{isDownsamplingDisabled:t}=e;return{downsamplingError:null,isDownsampleInProgress:!1,isDownsampleFinished:!1,isDownsamplingDisabled:!t}},()=>{var{model:e}=this.props,{isDownsamplingDisabled:t}=this.state;e.setDownsamplingDisabled(t)})}handleModelEvent(e){var{type:t,detail:r}=e;switch($r.debug2("Received data update",t,r),t){case Mr.EVENT_UPDATED:{this.currentSeries+=1,this.setState(h=>{var{layout:v,revision:m}=h;return typeof v.datarevision=="number"&&(v.datarevision+=1),{data:r,layout:v,revision:m+1}});var{onUpdate:i}=this.props;i({isLoading:!this.isLoadedFired});break}case Mr.EVENT_LOADFINISHED:{var{onUpdate:a}=this.props;this.isLoadedFired=!0,a({isLoading:!1});break}case Mr.EVENT_DISCONNECT:{var{onDisconnect:l}=this.props;l();break}case Mr.EVENT_RECONNECT:{var{onReconnect:s}=this.props;s();break}case Mr.EVENT_DOWNSAMPLESTARTED:{this.setState({isDownsampleFinished:!1,isDownsampleInProgress:!0,downsamplingError:null});break}case Mr.EVENT_DOWNSAMPLEFINISHED:{this.setState({isDownsampleFinished:!0,isDownsampleInProgress:!1,downsamplingError:null});break}case Mr.EVENT_DOWNSAMPLENEEDED:case Mr.EVENT_DOWNSAMPLEFAILED:{var o,u=(o=r.message)!==null&&o!==void 0?o:r;this.setState({isDownsampleFinished:!1,isDownsampleInProgress:!1,isDownsamplingDisabled:!1,downsamplingError:u});var{onError:d}=this.props;d(new Error(u));break}default:$r.debug("Unknown event type",t,e)}}handlePlotUpdate(e){var{layout:t}=e,r=dt.getLayoutRanges(t),i=!ht(r,this.ranges);i&&(this.ranges=r,this.updateModelDimensions(!0))}handleRelayout(e){if($r.debug("handleRelayout",e),e.hiddenlabels!=null){var{onSettingsChanged:t}=this.props,r=[...e.hiddenlabels];t({hiddenSeries:r})}this.updateModelDimensions()}handleRestyle(e){var[t,r]=e;if($r.debug("handleRestyle",t,r),Object.keys(t).includes("visible")){var{data:i}=this.state,{onSettingsChanged:a}=this.props;if(i!=null){var l=i.reduce((s,o)=>{var{name:u,visible:d}=o;return u!=null&&d==="legendonly"?[...s,u]:s},[]);a({hiddenSeries:l})}}}updateModelDimensions(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,t=this.getPlotRect();if(!t){$r.warn("Unable to get plotting rect");return}var r=!this.rect||this.rect.width!==t.width||this.rect.height!==t.height;if(r||e){this.rect=t;var{isActive:i,model:a}=this.props;a.setDimensions(t),i&&this.subscribe()}}initFormatter(){var{settings:e}=this.props;this.updateFormatterSettings(e)}updateFormatterSettings(e){var t=kr.getColumnFormats(e),r=kr.getDateTimeFormatterOptions(e),{decimalFormatOptions:i={},integerFormatOptions:a={}}=e;(!ht(this.columnFormats,t)||!ht(this.dateTimeFormatterOptions,r)||!ht(this.decimalFormatOptions,i)||!ht(this.integerFormatOptions,a))&&(this.columnFormats=kr.getColumnFormats(e),this.dateTimeFormatterOptions=r,this.decimalFormatOptions=i,this.integerFormatOptions=a,this.updateFormatter())}updateFormatter(){var{model:e}=this.props,t=new Pr(e.dh,this.columnFormats,this.dateTimeFormatterOptions,this.decimalFormatOptions,this.integerFormatOptions);e.setFormatter(t)}updateDimensions(){var e=this.getPlotRect(),{Plotly:t}=this.props;this.plot.current!=null&&e!=null&&e.width>0&&e.height>0&&t.relayout(this.plot.current.el,{autosize:!0}).catch(r=>{$r.debug("Unable to resize, promise rejected",r)})}render(){var{PlotComponent:e}=this,{data:t,downsamplingError:r,isDownsampleFinished:i,isDownsampleInProgress:a,isDownsamplingDisabled:l,layout:s,revision:o}=this.state,u=this.getCachedConfig(r,i,a,l,t??[]),d=t!=null;return c.jsx("div",{className:"h-100 w-100 chart-wrapper",ref:this.plotWrapper,children:d&&c.jsx(e,{ref:this.plot,data:t,layout:s,revision:o,config:u,onAfterPlot:this.handleAfterPlot,onError:$r.error,onRelayout:this.handleRelayout,onUpdate:this.handlePlotUpdate,onRestyle:this.handleRestyle,useResizeHandler:!0,style:{height:"100%",width:"100%"}})})}}Tt(Cn,"defaultProps",{isActive:!0,settings:{timeZone:"America/New_York",defaultDateTimeFormat:Tn.FULL_DATE_FORMAT,showTimeZone:!1,showTSeparator:!0,formatter:[]},Plotly:wm,onDisconnect:()=>{},onReconnect:()=>{},onUpdate:()=>{},onError:()=>{},onSettingsChanged:()=>{}});const km=Cn;function wo(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 yo(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?wo(Object(t),!0).forEach(function(r){Ge(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):wo(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Ge(n,e,t){return e=jm(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function jm(n){var e=_m(n,"string");return typeof e=="symbol"?e:String(e)}function _m(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var St=fe.module("FigureChartModel");class Va extends Mr{constructor(e,t){var r,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:ar;super(e),r=this,Ge(this,"chartUtils",void 0),Ge(this,"dh",void 0),Ge(this,"figure",void 0),Ge(this,"settings",void 0),Ge(this,"theme",void 0),Ge(this,"data",void 0),Ge(this,"layout",void 0),Ge(this,"seriesDataMap",void 0),Ge(this,"pendingSeries",void 0),Ge(this,"oneClicks",void 0),Ge(this,"filterColumnMap",void 0),Ge(this,"lastFilter",void 0),Ge(this,"isConnected",void 0),Ge(this,"seriesToProcess",void 0),Ge(this,"addPendingSeries",ct(()=>{for(var s=dt.getAllAxes(this.figure),{pendingSeries:o}=this,u=function(){var v,m=o[d],f=r.figure.charts.find(g=>g.series.includes(m));r.addSeries(m,s,(v=f?.showLegend)!==null&&v!==void 0?v:null),m.subscribe()},d=0;d<o.length;d+=1)u();this.pendingSeries=[]},Va.ADD_SERIES_DEBOUNCE)),Ge(this,"getTimeZone",be((s,o)=>{if(o!=null){var u=o.getColumnTypeFormatter(s);if(u!=null)return u.dhTimeZone}})),Ge(this,"getValueTranslator",be((s,o)=>{var u=this.getTimeZone(s,o);return d=>this.chartUtils.unwrapValue(d,u)})),Ge(this,"getValueParser",be((s,o)=>{var u=this.getTimeZone(s,o);return d=>this.chartUtils.wrapValue(d,s,u)})),Ge(this,"getRangeParser",be((s,o)=>u=>{var[d,h]=u,v=this.getValueParser(s,o);return d=v(d),h=v(h),[d,h]})),Ge(this,"getAxisRangeParser",be((s,o)=>u=>{var d=dt.getSourceForAxis(s,u);return d!=null?this.getRangeParser(d.columnType,o):h=>h})),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 dt(e),this.figure=t,this.settings=i,this.theme=a,this.data=[];var l={data:{},layout:this.chartUtils.makeDefaultLayout(a)};this.layout={grid:{rows:t.rows,columns:t.cols,pattern:"independent"},template:l},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.charts.length>0){var e=this.figure.charts[0];return e.title}return""}initAllSeries(){this.oneClicks=[],this.filterColumnMap.clear();for(var{charts:e}=this.figure,t=dt.getAllAxes(this.figure),r=[],i=0;i<e.length;i+=1)for(var a=e[i],l=0;l<a.series.length;l+=1){var s=a.series[l];r.push(s.name),this.addSeries(s,t,a.showLegend)}for(var o=[...this.seriesDataMap.keys()],u=o.filter(v=>r.indexOf(v)<0),d=0;d<u.length;d+=1){var h=u[d];this.seriesDataMap.delete(h)}this.seriesToProcess=new Set([...this.seriesDataMap.keys()])}addSeries(e,t,r){var{dh:i}=this,a=dt.groupArray(t,"type"),l=this.chartUtils.makeSeriesDataFromSeries(e,a,dt.getSeriesVisibility(e.name,this.settings),r,this.theme);if(this.seriesDataMap.set(e.name,l),this.data=[...this.seriesDataMap.values()],e.plotStyle===i.plot.SeriesPlotStyle.STACKED_BAR?this.layout.barmode="stack":e.plotStyle===i.plot.SeriesPlotStyle.PIE&&(this.layout.hiddenlabels=dt.getHiddenLabels(this.settings)),this.layout.showlegend=this.data.length>1||e.plotStyle===i.plot.SeriesPlotStyle.PIE?r??void 0:!1,e.oneClick!=null){for(var{oneClick:s}=e,{columns:o}=s,u=0;u<o.length;u+=1)this.filterColumnMap.set(o[u].name,o[u]);this.oneClicks.push(s)}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){St.debug("Ignoring subscribe when figure in disconnected state");return}this.figure.subscribe(this.isDownsamplingDisabled?this.dh.plot.DownsampleOptions.DISABLE:this.dh.plot.DownsampleOptions.DEFAULT)}unsubscribeFigure(){this.figure.unsubscribe()}startListeningFigure(){var{dh:e}=this;this.figure.addEventListener(e.plot.Figure.EVENT_UPDATED,this.handleFigureUpdated),this.figure.addEventListener(e.plot.Figure.EVENT_SERIES_ADDED,this.handleFigureSeriesAdded),this.figure.addEventListener(e.plot.Figure.EVENT_DISCONNECT,this.handleFigureDisconnected),this.figure.addEventListener(e.plot.Figure.EVENT_RECONNECT,this.handleFigureReconnected),this.figure.addEventListener(e.plot.Figure.EVENT_DOWNSAMPLESTARTED,this.handleDownsampleStart),this.figure.addEventListener(e.plot.Figure.EVENT_DOWNSAMPLEFINISHED,this.handleDownsampleFinish),this.figure.addEventListener(e.plot.Figure.EVENT_DOWNSAMPLEFAILED,this.handleDownsampleFail),this.figure.addEventListener(e.plot.Figure.EVENT_DOWNSAMPLENEEDED,this.handleDownsampleNeeded),this.figure.addEventListener(e.Client.EVENT_REQUEST_FAILED,this.handleRequestFailed)}stopListeningFigure(){var{dh:e}=this;this.figure.removeEventListener(e.plot.Figure.EVENT_UPDATED,this.handleFigureUpdated),this.figure.removeEventListener(e.plot.Figure.EVENT_SERIES_ADDED,this.handleFigureSeriesAdded),this.figure.removeEventListener(e.plot.Figure.EVENT_DISCONNECT,this.handleFigureDisconnected),this.figure.removeEventListener(e.plot.Figure.EVENT_RECONNECT,this.handleFigureReconnected),this.figure.removeEventListener(e.plot.Figure.EVENT_DOWNSAMPLESTARTED,this.handleDownsampleStart),this.figure.removeEventListener(e.plot.Figure.EVENT_DOWNSAMPLEFINISHED,this.handleDownsampleFinish),this.figure.removeEventListener(e.plot.Figure.EVENT_DOWNSAMPLEFAILED,this.handleDownsampleFail),this.figure.removeEventListener(e.plot.Figure.EVENT_DOWNSAMPLENEEDED,this.handleDownsampleNeeded),this.figure.removeEventListener(e.Client.EVENT_REQUEST_FAILED,this.handleRequestFailed)}handleDownsampleStart(e){St.debug("Downsample started",e),this.fireDownsampleStart(e.detail)}handleDownsampleFinish(e){St.debug("Downsample finished",e),this.fireDownsampleFinish(e.detail)}handleDownsampleFail(e){St.error("Downsample failed",e),this.fireDownsampleFail(e.detail)}handleDownsampleNeeded(e){St.info("Downsample needed",e),this.fireDownsampleNeeded(e.detail)}handleFigureUpdated(e){var{detail:t}=e,{series:r}=t;St.debug2("handleFigureUpdated",r);for(var i=0;i<r.length;i+=1){var a=r[i];St.debug2("handleFigureUpdated updating series",a.name);for(var{sources:l}=a,s=0;s<l.length;s+=1){var o=l[s],{columnType:u,type:d}=o,h=this.getValueTranslator(u,this.formatter),v=t.getArray(a,d,h);this.setDataArrayForSeries(a,d,v)}this.seriesToProcess.delete(a.name),this.seriesToProcess.size===0&&this.fireLoadFinished(),this.cleanSeries(a)}var{data:m}=this;this.fireUpdate(m)}handleRequestFailed(e){St.error("Request failed",e)}resubscribe(){this.listeners.length>0&&(this.unsubscribeFigure(),this.subscribeFigure())}setFormatter(e){super.setFormatter(e),this.updateLayoutFormats(),this.resubscribe()}setDownsamplingDisabled(e){super.setDownsamplingDisabled(e),this.resubscribe()}handleFigureDisconnected(e){St.debug("Figure disconnected",e),this.isConnected=!1,this.listeners.length>0&&this.unsubscribeFigure(),this.fireDisconnect()}handleFigureReconnected(e){St.debug("Figure reconnected",e),this.isConnected=!0,this.initAllSeries(),this.fireReconnect(),this.listeners.length>0&&this.subscribeFigure()}handleFigureSeriesAdded(e){var{detail:t}=e;St.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=dt.DEFAULT_MARGIN.t+i*dt.SUBTITLE_LINE_HEIGHT;this.layout.margin?this.layout.margin.t=a:this.layout.margin={t:a},typeof this.layout.title=="string"?this.layout.title=e:(this.layout.title=yo({},this.layout.title),this.layout.title.text=e,this.layout.title.pad=yo({},this.layout.title.pad),this.layout.title.pad.t=dt.DEFAULT_TITLE_PADDING.t+i*dt.SUBTITLE_LINE_HEIGHT*.5)}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,this.theme)}updateLayoutFormats(){if(this.formatter){var e=this.chartUtils.getAxisFormats(this.figure,this.formatter);e.forEach((t,r)=>{St.debug("Assigning ".concat(r),this.layout[r],t);var i=this.layout[r];i!=null?Object.assign(i,t):St.debug("Ignoring null layout.".concat(r))})}}setDataArrayForSeries(e,t,r){var{name:i,plotStyle:a}=e,l=this.seriesDataMap.get(i),s=this.chartUtils.getPlotlyProperty(a,t);l&&Vd(l,s,r)}cleanSeries(e){var{dh:t}=this,{name:r,plotStyle:i}=e,a=this.seriesDataMap.get(r);if(a!=null){if(i===t.plot.SeriesPlotStyle.HISTOGRAM){var{xLow:l,xHigh:s}=a;if(l&&s&&l.length===s.length){for(var o=[],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{x:d,xLow:h,xHigh:v,y:m,yLow:f,yHigh:g}=a;h&&v&&h!==d&&(a.error_x=dt.getPlotlyErrorBars(d,h,v)),f&&g&&f!==m&&(a.error_y=dt.getPlotlyErrorBars(m,f,g))}else if(i===t.plot.SeriesPlotStyle.TREEMAP){var{ids:p,labels:C}=a;p!==void 0&&C===void 0&&(a.labels=p)}}}getData(){return this.data}getLayout(){return this.layout}getFilterColumnMap(){return new Map(this.filterColumnMap)}isFilterRequired(){return this.oneClicks.find(e=>e.requireAllFiltersToDisplay)!=null}setFilter(e){var t=this;if(this.oneClicks.length===0){St.warn("Trying to set a filter, but no one click!");return}St.debug("setFilter",e);for(var r=function(){var l=t.oneClicks[i],{columns:s}=l,o=new Set([...e.keys(),...t.lastFilter.keys()]);o.forEach(u=>{var d=e.get(u);t.lastFilter.get(u)!==d&&s.find(h=>h.name===u)!=null&&l.setValueForColumn(u,d)})},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}}Ge(Va,"ADD_SERIES_DEBOUNCE",50);const To=Va;function Eo(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function Tl(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Eo(a,r,i,l,s,"next",o)}function s(o){Eo(a,r,i,l,s,"throw",o)}l(void 0)})}}class Ps{static makeModelFromSettings(e,t,r){var i=arguments;return Tl(function*(){var a=i.length>3&&i[3]!==void 0?i[3]:ar,l=yield Ps.makeFigureFromSettings(e,t,r);return new To(e,l,t,a)})()}static makeFigureFromSettings(e,t,r){return Tl(function*(){var i=yield r.copy();return i.applyCustomColumns(r.customColumns),i.applyFilter(r.filter),i.applySort(r.sort),e.plot.Figure.create(new dt(e).makeFigureSettings(t,i))})()}static makeModel(e,t,r){var i=arguments;return Tl(function*(){var a=i.length>3&&i[3]!==void 0?i[3]:ar;return new To(e,r,t,a)})()}}const $l=Ps;function Oo(n){return n.setFigure!==void 0}function Hm(n,e,t){return e=Um(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Um(n){var e=Vm(n,"string");return typeof e=="symbol"?e:String(e)}function Vm(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Bm extends Error{constructor(){super(...arguments),Hm(this,"isAssertionFailed",!0)}}const mh=Bm;function Po(n){if(n==null)throw new mh("Expected 'val' to be defined, but received ".concat(n))}function Gm(n,e,t){return e=$m(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function $m(n){var e=Wm(n,"string");return typeof e=="symbol"?e:String(e)}function Wm(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class zm extends Error{constructor(){super(...arguments),Gm(this,"isPasteError",!0)}}const El=zm;function He(n){return n?.isEditable!==void 0}function Ro(n){if(!He(n))throw new mh("Expected 'model' to be editable, but received ".concat(n))}function xe(n){return n?.hasExpandableRows!==void 0}function Ti(n,e,t){return e=Km(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Km(n){var e=Ym(n,"string");return typeof e=="symbol"?e:String(e)}function Ym(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var er;(function(n){n.DOWN="DOWN",n.UP="UP",n.LEFT="LEFT",n.RIGHT="RIGHT"})(er||(er={}));class U{static normalize(e,t,r,i){var a=e,l=t,s=r,o=i;return a!=null&&s!=null&&s<a&&(a=s,s=e),l!=null&&o!=null&&o<l&&(l=o,o=t),[a,l,s,o]}static makeNormalized(e,t,r,i){return new U(...U.normalize(e,t,r,i))}static makeCell(e,t){return new U(e,t,e,t)}static makeColumn(e){return new U(e,null,e,null)}static makeRow(e){return new U(null,e,null,e)}static minOrNull(e,t){return e==null||t==null?null:Math.min(e,t)}static maxOrNull(e,t){return e==null||t==null?null:Math.max(e,t)}static consolidate(e){for(var t=e.slice(),r=!0;r;){r=!1;for(var i=0;i<t.length&&!r;i+=1)for(var a=t[i],l=t.length-1;l>i;l-=1){var s=t[l];if(a.contains(s))t.splice(l,1);else if(s.contains(a)){r=!0,t[i]=s,t.splice(l,1);break}else if(a.startRow===s.startRow&&a.endRow===s.endRow){if(a.touches(s)){var{startRow:o,endRow:u}=a,d=U.minOrNull(a.startColumn,s.startColumn),h=U.maxOrNull(a.endColumn,s.endColumn);r=!0,t[i]=new U(d,o,h,u),t.splice(l,1);break}}else if(a.startColumn===s.startColumn&&a.endColumn===s.endColumn&&a.touches(s)){var{startColumn:v,endColumn:m}=a,f=U.minOrNull(a.startRow,s.startRow),g=U.maxOrNull(a.endRow,s.endRow);r=!0,t[i]=new U(v,f,m,g),t.splice(l,1);break}}}return t}static isAxisRangeTouching(e,t,r,i){return e==null?t==null||r==null?!0:r<=t+1:t==null?i==null?!0:i>=e-1:r==null?i==null?!0:e<=i+1:i==null?t>=r-1:r>=e-1?r<=t+1:i>=e-1}static rangeArraysEqual(e,t){if(e===t)return!0;if(e==null||t==null||e.length!==t.length)return!1;for(var r=0;r<e.length;r+=1)if(!e[r].equals(t[r]))return!1;return!0}static intersection(e,t){var r,i,a,l,s,o;if(e.equals(t))return e;var{startColumn:u,startRow:d,endColumn:h,endRow:v}=e;return u=u!=null&&t.startColumn!=null?Math.max(u,t.startColumn):(r=u)!==null&&r!==void 0?r:t.startColumn,h=h!=null&&t.endColumn!=null?Math.min(h,t.endColumn):(i=h)!==null&&i!==void 0?i:t.endColumn,d=d!=null&&t.startRow!=null?Math.max(d,t.startRow):(a=d)!==null&&a!==void 0?a:t.startRow,v=v!=null&&t.endRow!=null?Math.min(v,t.endRow):(l=v)!==null&&l!==void 0?l:t.endRow,u!=null&&u>((s=h)!==null&&s!==void 0?s:-1)||d!=null&&d>((o=v)!==null&&o!==void 0?o:-1)?null:new U(u,d,h,v)}static subtractFromRange(e,t){var r=[],i=U.intersection(e,t);return i==null?[e]:(i.startRow!=null&&(e.startRow==null||e.startRow<i.startRow)&&r.push(new U(e.startColumn,e.startRow,e.endColumn,i.startRow-1)),i.startColumn!=null&&(e.startColumn==null||e.startColumn<i.startColumn)&&r.push(new U(e.startColumn,i.startRow,i.startColumn-1,i.endRow)),i.endColumn!=null&&(e.endColumn==null||e.endColumn>i.endColumn)&&r.push(new U(i.endColumn+1,i.startRow,e.endColumn,i.endRow)),i.endRow!=null&&(e.endRow==null||e.endRow>i.endRow)&&r.push(new U(e.startColumn,i.endRow+1,e.endColumn,e.endRow)),r)}static subtractFromRanges(e,t){for(var r=[],i=0;i<e.length;i+=1)r.push(...U.subtractFromRange(e[i],t));return r}static subtractRangesFromRanges(e,t){for(var r=[...e],i=0;i<t.length;i+=1)r=U.subtractFromRanges(r,t[i]);return r}static isBounded(e){return e.startRow!=null&&e.startColumn!=null&&e.endRow!=null&&e.endColumn!=null}static boundedRange(e,t,r){var i,a,l,s;return U.isBounded(e)?e:new U((i=e.startColumn)!==null&&i!==void 0?i:0,(a=e.startRow)!==null&&a!==void 0?a:0,(l=e.endColumn)!==null&&l!==void 0?l:t-1,(s=e.endRow)!==null&&s!==void 0?s:r-1)}static boundedRanges(e,t,r){return e.map(i=>U.boundedRange(i,t,r))}static offset(e,t,r){return new U(e.startColumn!=null?e.startColumn+t:null,e.startRow!=null?e.startRow+r:null,e.endColumn!=null?e.endColumn+t:null,e.endRow!=null?e.endRow+r:null)}static nextCell(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:U.SELECTION_DIRECTION.DOWN;if(e.length===0)return null;var a=-1;if(t!=null&&r!=null&&(a=e.findIndex(v=>v.containsCell(t,r)),a>=0)){var l=e[a],s=l.nextCell(t,r,i);if(s!=null)return s}switch(i){case U.SELECTION_DIRECTION.DOWN:case U.SELECTION_DIRECTION.RIGHT:{var o=a<e.length-1?a+1:0,u=e[o];return u.startCell(i)}case U.SELECTION_DIRECTION.LEFT:case U.SELECTION_DIRECTION.UP:{var d=a>0?a-1:e.length-1,h=e[d];return h.startCell(i)}default:throw new Error("Invalid direction: ".concat(i))}}static cellCount(e){return e.reduce((t,r)=>{var i,a,l,s;return t+(((i=r.endRow)!==null&&i!==void 0?i:NaN)-((a=r.startRow)!==null&&a!==void 0?a:NaN)+1)*(((l=r.endColumn)!==null&&l!==void 0?l:NaN)-((s=r.startColumn)!==null&&s!==void 0?s:NaN)+1)},0)}static rowCount(e){return e.reduce((t,r)=>{var i,a;return t+((i=r.endRow)!==null&&i!==void 0?i:NaN)-((a=r.startRow)!==null&&a!==void 0?a:NaN)+1},0)}static columnCount(e){return e.reduce((t,r)=>{var i,a;return t+((i=r.endColumn)!==null&&i!==void 0?i:NaN)-((a=r.startColumn)!==null&&a!==void 0?a:NaN)+1},0)}static containsCell(e,t,r){for(var i=0;i<e.length;i+=1){var a=e[i];if(a.containsCell(t,r))return!0}return!1}static forEachCell(e,t){for(var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:U.SELECTION_DIRECTION.RIGHT,i=0;i<e.length;i+=1)e[i].forEach(t,r)}constructor(e,t,r,i){Ti(this,"startColumn",void 0),Ti(this,"startRow",void 0),Ti(this,"endColumn",void 0),Ti(this,"endRow",void 0),this.startColumn=e,this.startRow=t,this.endColumn=r,this.endRow=i}equals(e){return this.startColumn===e.startColumn&&this.startRow===e.startRow&&this.endColumn===e.endColumn&&this.endRow===e.endRow}contains(e){return(this.startColumn==null||e.startColumn!=null&&this.startColumn<=e.startColumn)&&(this.startRow==null||e.startRow!=null&&this.startRow<=e.startRow)&&(this.endColumn==null||e.endColumn!=null&&this.endColumn>=e.endColumn)&&(this.endRow==null||e.endRow!=null&&this.endRow>=e.endRow)}containsCell(e,t){return e==null||t==null?!1:(this.startColumn==null||this.startColumn<=e)&&(this.endColumn==null||this.endColumn>=e)&&(this.startRow==null||this.startRow<=t)&&(this.endRow==null||this.endRow>=t)}touches(e){return U.isAxisRangeTouching(this.startRow,this.endRow,e.startRow,e.endRow)&&U.isAxisRangeTouching(this.startColumn,this.endColumn,e.startColumn,e.endColumn)}subtract(e){return U.subtractFromRange(this,e)}startCell(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:U.SELECTION_DIRECTION.DOWN;if(!U.isBounded(this))throw new Error("Cannot get the startCell of an unbounded range");switch(e){case U.SELECTION_DIRECTION.DOWN:case U.SELECTION_DIRECTION.RIGHT:return{column:this.startColumn,row:this.startRow};case U.SELECTION_DIRECTION.LEFT:case U.SELECTION_DIRECTION.UP:return{column:this.endColumn,row:this.endRow};default:throw new Error("Invalid direction: ".concat(e))}}nextCell(e,t,r){if(!U.isBounded(this))throw new Error("Bounded range required");if(e==null||t==null)throw new Error("Require a non-null cursor");var{startColumn:i,endColumn:a,startRow:l,endRow:s}=this;switch(r){case U.SELECTION_DIRECTION.DOWN:if(t<s)return{column:e,row:Math.max(t+1,l)};if(e<a)return{column:Math.max(e+1,i),row:l};break;case U.SELECTION_DIRECTION.UP:if(t>l)return{column:e,row:Math.min(t-1,s)};if(e>i)return{column:Math.min(e-1,a),row:s};break;case U.SELECTION_DIRECTION.RIGHT:if(e<a)return{column:Math.max(e+1,i),row:t};if(t<s)return{column:i,row:Math.max(t+1,l)};break;case U.SELECTION_DIRECTION.LEFT:if(e>i)return{column:Math.min(e-1,a),row:t};if(t>l)return{column:a,row:Math.min(t-1,s)};break;default:throw new Error("Invalid direction: ".concat(r))}return null}forEach(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:U.SELECTION_DIRECTION.RIGHT,r=0,{column:i,row:a}=this.startCell(t);i!=null&&a!=null;){var l;e(i,a,r),r+=1,{column:i,row:a}=(l=this.nextCell(i,a,t))!==null&&l!==void 0?l:{}}}}Ti(U,"SELECTION_DIRECTION",er);function qm(n){return Array.isArray(n)&&n.length===2&&(n[0]===null||typeof n[0]=="number")&&(n[1]===null||typeof n[1]=="number")}function Xi(n){return qm(n)&&n[0]!=null&&n[1]!=null}function Do(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 Qi(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Do(Object(t),!0).forEach(function(r){fh(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Do(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function fh(n,e,t){return e=Xm(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Xm(n){var e=Qm(n,"string");return typeof e=="symbol"?e:String(e)}function Qm(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Oa(n){return n?.href!==void 0}class K{static getGridPointFromXY(e,t,r){var i=K.getColumnAtX(e,r),a=K.getRowAtY(t,r),l=K.getColumnHeaderDepthAtY(t,r);return{x:e,y:t,row:a,column:i,columnHeaderDepth:l}}static getCellInfoFromXY(e,t,r){var{row:i,column:a}=K.getGridPointFromXY(e,t,r),{allColumnWidths:l,allRowHeights:s,allColumnXs:o,allRowYs:u,modelColumns:d,modelRows:h}=r,v=i!==null?h.get(i):null,m=a!==null?d.get(a):null,f=a!==null?o.get(a):null,g=i!==null?u.get(i):null,p=a!==null?l.get(a):null,C=i!==null?s.get(i):null;return{row:i,column:a,modelRow:v??null,modelColumn:m??null,left:f??null,top:g??null,columnWidth:p??null,rowHeight:C??null}}static getColumnHeaderDepthAtY(e,t){var r=K.getRowAtY(e,t),{columnHeaderHeight:i,columnHeaderMaxDepth:a}=t;if(r===null&&e<=i*a)return Ae(a-Math.ceil(e/i),0,a-1)}static iterateFloatingStart(e,t,r){for(var i=0;i<e&&i<t;i+=1){var a=r(i);if(a!==void 0)return a}}static iterateFloatingEnd(e,t,r){for(var i=0;i<e&&t-(e-i)>=0;i+=1){var a=r(t-(e-i));if(a!==void 0)return a}}static iterateFloating(e,t,r,i){var a=K.iterateFloatingStart(e,r,i);return a!==void 0?a:K.iterateFloatingEnd(t,r,i)}static iterateAllItems(e,t,r,i,a,l){var s=Math.max(e,r),o=Math.min(t,a-i-1),u=K.iterateFloating(r,i,a,l);if(u!==void 0)return u;for(var d=s;d<=o;d+=1)if(u=l(d),u!==void 0)return u}static isInItem(e,t,r,i){var a,l,s=(a=t.get(e))!==null&&a!==void 0?a:0,o=(l=r.get(e))!==null&&l!==void 0?l:0;return s<=i&&i<=s+o}static getItemAtOffset(e,t,r,i,a,l,s){var o=arguments.length>7&&arguments[7]!==void 0?arguments[7]:!1,u=o?void 0:K.iterateFloating(r,i,t,v=>{if(K.isInItem(v,l,s,e))return v});if(!o&&u!==void 0)return u;for(var d=0;d<a.length;d+=1){var h=a[d];if(K.isInItem(h,l,s,e))return h}return null}static getColumnAtX(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{columnCount:i,floatingLeftColumnCount:a,floatingRightColumnCount:l,visibleColumns:s,allColumnXs:o,allColumnWidths:u,gridX:d}=t;return e<d?null:this.getItemAtOffset(e-d,i,a,l,s,o,u,r)}static getRowAtY(e,t){var{floatingTopRowCount:r,floatingBottomRowCount:i,rowCount:a,visibleRows:l,allRowYs:s,allRowHeights:o,gridY:u}=t;return e<u?null:this.getItemAtOffset(e-u,a,r,i,l,s,o)}static getNextShownItem(e,t,r,i){var a=r.findIndex(o=>o===e)||0;for(a-=1;a!=null&&a>=0;){var l=r[a],s=t.get(l);if(s!=null&&i.get(s)!==0)return l;a-=1}return null}static getNextShownColumn(e,t){var{modelColumns:r,visibleColumns:i,userColumnWidths:a}=t;return K.getNextShownItem(e,r,i,a)}static getNextShownRow(e,t){var{modelRows:r,visibleRows:i,userRowHeights:a}=t;return K.getNextShownItem(e,r,i,a)}static getColumnSeparatorIndex(e,t,r,i){var{rowHeaderWidth:a,columnHeaderHeight:l,floatingColumns:s,floatingLeftWidth:o,visibleColumns:u,allColumnXs:d,allColumnWidths:h,columnHeaderMaxDepth:v}=r,{allowColumnResize:m,headerSeparatorHandleSize:f}=i;if(v*l<t||!m||f<=0)return null;for(var g=e-a,p=f*.5,C=!1,S=s.length-1;S>=0;S-=1){var b,w,y=s[S],T=(b=d.get(y))!==null&&b!==void 0?b:0,E=(w=h.get(y))!==null&&w!==void 0?w:0,P=E===0;if(!C||!P){var O=T+E;P?O+=p:C&&(O-=p);var D=O-p,N=O+p;if(D<=g&&g<=N)return y;C=P}}C=!1;for(var F=u.length-1;F>=0;F-=1){var A,j,k=u[F],B=(A=d.get(k))!==null&&A!==void 0?A:0,G=(j=h.get(k))!==null&&j!==void 0?j:0,W=G===0;if(B<o-G)return null;if(!C||!W){var z=B+G;W?z+=p:C&&(z-=p);var q=z-p,V=z+p;if(q<=g&&g<=V)return k;C=W}}return null}static isItemHidden(e,t){return t.get(e)===0}static isColumnHidden(e,t){var{allColumnWidths:r}=t;return K.isItemHidden(e,r)}static isFloatingRow(e,t){if(e==null)return!1;var{floatingTopRowCount:r,floatingBottomRowCount:i,rowCount:a}=t;return e<r||e>=a-i}static isFloatingColumn(e,t){if(e==null)return!1;var{floatingLeftColumnCount:r,floatingRightColumnCount:i,columnCount:a}=t;return e<r||e>=a-i}static getHiddenItems(e,t,r){if(!K.isItemHidden(e,t))return[];for(var i=[e],a=r.findIndex(o=>o===e),l=a-1;l>=0;l-=1){var s=r[l];if(!K.isItemHidden(s,t))break;i.push(s)}return i}static getHiddenColumns(e,t){var{visibleColumns:r,allColumnWidths:i}=t;return K.getHiddenItems(e,i,r)}static getRowSeparatorIndex(e,t,r,i){var{rowHeaderWidth:a,columnHeaderHeight:l,visibleRows:s,allRowYs:o,allRowHeights:u}=r,{allowRowResize:d,headerSeparatorHandleSize:h}=i;if(a<e||!d||h<=0)return null;for(var v=t-l,m=h*.5,f=!1,g=s.length-1;g>=0;g-=1){var p,C,S=s[g],b=(p=o.get(S))!==null&&p!==void 0?p:0,w=(C=u.get(S))!==null&&C!==void 0?C:0,y=w===0;if(!f||!y){var T=b+w;y?T+=m:f&&(T-=m);var E=T-m,P=T+m;if(E<=v&&v<=P)return S;f=y}}return null}static isRowHidden(e,t){var{allRowHeights:r}=t;return K.isItemHidden(e,r)}static getHiddenRows(e,t){var{visibleRows:r,allRowHeights:i}=t;return K.getHiddenItems(e,i,r)}static moveItem(e,t,r){if(e===t)return[...r];var i=[...r],a=i[i.length-1];return a!=null&&!Xi(a.from)&&a.to===e?a.from===t?i.pop():i[i.length-1]=Qi(Qi({},a),{},{to:t}):i.push({from:e,to:t}),i}static moveRange(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(e[0]===e[1])return K.moveItem(e[0],t,r);var a=t;if(i&&e[0]<t&&(a-=e[1]-e[0]),e[0]===a)return[...r];var l=[...r],s=l[l.length-1];s!=null&&Xi(s.from)&&s.from[1]-s.from[0]===e[1]-e[0]&&s.to===e[0]?l[l.length-1]=Qi(Qi({},s),{},{to:a}):l.push({from:e,to:a});var o=l[l.length-1];return Xi(o.from)&&o.from[0]===o.to&&l.pop(),l}static moveItemOrRange(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;return Array.isArray(e)?K.moveRange(e,t,r,i):K.moveItem(e,t,r)}static applyItemMoves(e,t,r){for(var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,a=[[e,t]],l=function(){var{from:u,to:d}=r[s],h=1,v;Xi(u)?(h=u[1]-u[0]+1,[v]=u):v=u;for(var m=i?d:v,f=m+h-1,g=i?v:d,p=g-m,C=[],S=function(){var y,T,E=(y=a[b][0])!==null&&y!==void 0?y:Number.NEGATIVE_INFINITY,P=(T=a[b][1])!==null&&T!==void 0?T:Number.POSITIVE_INFINITY,O,D=[[E,m-1],[m,f],[f+1,P]].map(N=>{var[F,A]=N;return[Math.max(F,E),Math.min(A,P)]}).filter(N=>{var[F,A]=N;return F<=A}).map(N=>{var[F,A]=N;return m<=F&&f>=A?(O=[F+p,A+p],O):f<F?[F-h,A-h]:N}).map(N=>{var[F,A]=N;return g>F&&g<=A?[[F,g-1],[g+h,A+h]]:N===O?[N]:g<=F?[[F+h,A+h]]:[N]}).flat();C.push(...D)},b=0;b<a.length;b+=1)S();a=C.map(w=>{var[y,T]=w;return[Number.isFinite(y)?y:null,Number.isFinite(T)?T:null]})},s=i?r.length-1:0;i?s>=0:s<r.length;i?s-=1:s+=1)l();return a}static translateRange(e,t,r,i){for(var a=K.applyItemMoves(e.startColumn,e.endColumn,t,i),l=K.applyItemMoves(e.startRow,e.endRow,r,i),s=[],o=0;o<a.length;o+=1)for(var u=a[o],d=0;d<l.length;d+=1){var h=l[d];s.push(new U(u[0],h[0],u[1],h[1]))}return s}static getModelIndex(e,t){var r=K.applyItemMoves(e,e,t,!0)[0][0];return r}static getModelIndexes(e,t){return e.map(r=>K.getModelIndex(r,t))}static getModelRangeIndexes(e,t,r){return K.applyItemMoves(e,t,r,!0)}static getModelRange(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Re,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Re;return K.translateRange(e,t,r,!0)}static getModelRanges(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Re,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Re,i=[],a=0;a<e.length;a+=1)i.push(...K.getModelRange(e[a],t,r));return i}static getVisibleRangeIndexes(e,t,r){return K.applyItemMoves(e,t,r,!1)}static getVisibleRange(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Re,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Re;return this.translateRange(e,t,r,!1)}static getVisibleRanges(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Re,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Re,i=[],a=0;a<e.length;a+=1)i.push(...K.getVisibleRange(e[a],t,r));return i}static getVisibleIndex(e,t){var r=K.applyItemMoves(e,e,t)[0][0];return r}static getVisibleIndexes(e,t){return e.map(r=>K.getVisibleIndex(r,t))}static isMacPlatform(){var{platform:e}=window.navigator;return e.startsWith("Mac")}static getModifierKey(){return K.isMacPlatform()?"metaKey":"ctrlKey"}static isModifierKeyDown(e){var t=K.getModifierKey();return e[t]}static checkColumnHidden(e,t){return t.get(e)===0}static checkAllColumnsHidden(e,t){return t.size===0?!1:e.every(r=>t.get(r)===0)}static getScrollDragBounds(e,t,r){var{gridX:i,gridY:a,width:l,height:s,floatingTopRowCount:o,floatingBottomRowCount:u,floatingLeftColumnCount:d,floatingRightColumnCount:h,floatingLeftWidth:v,floatingRightWidth:m,floatingTopHeight:f,floatingBottomHeight:g,columnCount:p,rowCount:C}=e,S=i,b=a,w=l,y=s;return r!=null&&(r>d&&(S+=v),r<p-h&&(w-=m)),t!=null&&(t>o&&(b+=f),t<C-u&&(y-=g)),{x1:S,y1:b,x2:w,y2:y}}static getScrollDelta(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1024,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:768,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:20,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:20,{deltaX:l,deltaY:s}=e;return!K.isMacPlatform()&&e.shiftKey&&e.deltaX===0&&e.deltaY!==0&&(l=e.deltaY,s=e.deltaX),e?.deltaMode===WheelEvent.DOM_DELTA_PAGE?(l*=t,s*=r):e?.deltaMode===WheelEvent.DOM_DELTA_LINE&&(K.isMacPlatform()?(l=Math.round(l*i),s=Math.round(s*a)):(l=Math.round(l*this.PIXELS_PER_LINE),s=Math.round(s*this.PIXELS_PER_LINE))),{deltaX:l,deltaY:s}}static compareRanges(e,t){return e[0]==null||e[1]==null||t[0]==null||t[1]==null?0:e[0]!==t[0]?e[0]-t[0]:e[1]-t[1]}static mergeSortedRanges(e){for(var t=[],r=0;r<e.length;r+=1){var i=e[r],a=i[0],l=i[1];r===0?t.push([a,l]):a-1<=t[t.length-1][1]?t[t.length-1][1]=Math.max(t[t.length-1][1],l):t.push([a,l])}return t}static translateTokenBox(e,t){var{x1:r,y1:i,x2:a,y2:l}=e,{gridX:s,gridY:o,width:u,height:d,verticalBarWidth:h,horizontalBarHeight:v}=t,m=Ae(s+r,s,u-h),f=Ae(s+a,s,u-h),g=Ae(o+i,o,d-v),p=Ae(o+l,o,d-v);return{x1:m,y1:g,x2:f,y2:p,token:e.token}}static getTextRenderMetrics(e,t,r){var{metrics:i,model:a,theme:l}=e,{firstColumn:s,allColumnXs:o,allColumnWidths:u,allRowYs:d,allRowHeights:h,modelRows:v,modelColumns:m}=i,{cellHorizontalPadding:f,treeDepthIndent:g,treeHorizontalPadding:p}=l,C=M(v,r),S=M(m,t),b=a.textAlignForCell(S,C),w=M(o,t),y=M(d,r),T=M(u,t),E=M(h,r),P=t===s,O=0;xe(a)&&a.hasExpandableRows&&P&&(O=g*(a.depthForRow(r)+1)+p);var D=T-O,N=w+f,F=y+E*.5;return b==="right"?N=w+D-f:b==="center"&&(N=w+D*.5),N+=O,{width:D-f*2,x:N,y:F}}static findTokensWithProtocolInText(e){var t=kc(e);return t.filter(r=>r.type==="url"?/^https?:\/\//.test(r.value):!0)}}fh(K,"PIXELS_PER_LINE",100/3);const ee=K;function Ut(n,e,t){return e=Zm(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Zm(n){var e=Jm(n,"string");return typeof e=="symbol"?e:String(e)}function Jm(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Zi(n){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Nn.CACHE_SIZE,t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Math.floor(e/2);if(n.size>e)for(var r=n.keys();n.size>t;)n.delete(r.next().value)}function Fo(n,e,t,r,i){for(var a=new Map,l=0,s=0;s<n&&s<t;s+=1)a.set(s,l),l+=M(i,s);l=r;for(var o=0;o<e&&t-o-1>=0;o+=1)l-=M(i,t-o-1),a.set(t-o-1,l);return a}class Nn{constructor(){var{userColumnWidths:e=new Map,userRowHeights:t=new Map,calculatedColumnWidths:r=new Map,calculatedRowHeights:i=new Map,fontWidths:a=new Map,modelRows:l=new Map,modelColumns:s=new Map,movedRows:o=[],movedColumns:u=[],initialRowHeights:d=new Map,initialColumnWidths:h=new Map}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Ut(this,"initialRowHeights",void 0),Ut(this,"initialColumnWidths",void 0),Ut(this,"userColumnWidths",void 0),Ut(this,"userRowHeights",void 0),Ut(this,"calculatedColumnWidths",void 0),Ut(this,"calculatedRowHeights",void 0),Ut(this,"fontWidths",void 0),Ut(this,"modelRows",void 0),Ut(this,"modelColumns",void 0),Ut(this,"movedRows",void 0),Ut(this,"movedColumns",void 0),this.userColumnWidths=e,this.userRowHeights=t,this.calculatedRowHeights=i,this.calculatedColumnWidths=r,this.fontWidths=a,this.modelRows=l,this.modelColumns=s,this.movedRows=o,this.movedColumns=u,this.initialRowHeights=d,this.initialColumnWidths=h}getMetrics(e){var{left:t,top:r,leftOffset:i,topOffset:a,width:l,height:s,theme:o,model:u,movedRows:d,movedColumns:h,draggingColumn:v}=e,{rowHeight:m,rowHeaderWidth:f,rowFooterWidth:g,columnWidth:p,columnHeaderHeight:C,minScrollHandleSize:S,scrollBarSize:b}=o;d!==this.movedRows&&(this.movedRows=d,this.modelRows.clear()),h!==this.movedColumns&&(this.movedColumns=h,this.modelColumns.clear());var{columnCount:w,rowCount:y,floatingTopRowCount:T,floatingBottomRowCount:E,floatingLeftColumnCount:P,floatingRightColumnCount:O,columnHeaderMaxDepth:D}=u,N=this.getFirstRow(e),F=this.getFirstColumn(e),A=this.getGridX(e),j=this.getGridY(e),k=xe(u)&&u.hasExpandableRows?this.calculateTreePaddingX(e):0,B=0,G=this.getVisibleRowHeights(e),W=this.getVisibleColumnWidths(e,F,k),z=Array.from(G.keys()),q=Array.from(W.keys()),V=new Map([...G,...this.getFloatingRowHeights(e)]),I=new Map([...W,...this.getFloatingColumnWidths(e)]),_=this.getVisibleColumnXs(I,q,i),H=this.getVisibleRowYs(V,z,a),X=z.length>0?z[z.length-1]:r,Q=q.length>0?q[q.length-1]:t,ne=this.getBottomViewport(e,z,H,V),oe=this.getRightViewport(e,q,_,I),ie=this.getFloatingTopHeight(e,V),ae=this.getFloatingBottomHeight(e,V),Oe=this.getFloatingLeftWidth(e,I),Le=this.getFloatingRightWidth(e,I),Ze=Array.from(I.values()),Je=Array.from(V.values()),Ye=Ze.reduce((Fr,li)=>Fr+li,0)-i,Ue=Je.reduce((Fr,li)=>Fr+li,0)-a,et=i+Ye+g,De=a+Ue,it=l-A,mt=s-j,$t=this.getLastLeft(e,null,it-g),Pt=this.getLastLeft(e,null,it-g-b),Rr=this.getLastTop(e,null,mt-ae),tr=this.getLastTop(e,null,mt-ae-b),_t=Pt,ot=tr;$t===0&&Rr===0&&(_t=0,ot=0);var rr=_t>0,Wt=rr?b:0,pt=ot>0,Ht=pt?b:0,Rt=A,Ct=D*C,zt=l-Rt-Ht,Dt=s-Ct-Wt,Hr=w===1?zt/et:(w-_t)/w,Dr=y===1?Dt/De:(y-ot)/y,gr=rr?Ae(zt*Hr,S,zt-1):0,Kt=pt?Ae(Dt*Dr,S,Dt-1):0,pr=M(I,t,0),Ur=M(V,r,0),xn=pr>0?i/pr:0,ni=Ur>0?a/Ur:0,Ln=w===1?i/(et-it):(t+xn)/_t,kn=y===1?a/(De-mt):(r+ni)/ot,jn=rr?Ln*(zt-gr):0,_e=pt?kn*(Dt-Kt):0,Vi=[...Array(T).keys(),...[...Array(E).keys()].map(Fr=>y-Fr-1)],ii=new Map([...H,...this.getFloatingRowYs(e,V,Math.floor(s-j-Wt))]),Bi=[...Array(P).keys(),...[...Array(O).keys()].map(Fr=>w-Fr-1)],hn=new Map([..._,...this.getFloatingColumnXs(e,I,Math.floor(l-A-Ht))]),Gi=[];if(v)for(var Cr=v.range[0];Cr<=v.range[1];Cr+=1)Gi.push(Cr),I.has(Cr)||I.set(Cr,this.getVisibleColumnWidth(Cr,e)),hn.has(Cr)||hn.set(Cr,0);var Vr=z.concat(Vi),$i=q.concat(Bi).concat(Gi),ai=this.getModelRows(Vr,e),Ja=this.getModelColumns($i,e),el=this.getVisibleRowTreeBoxes(V,ai,e),tl=this.getTopVisible(e,ii,V,z),Wi=this.getLeftVisible(e,hn,I,q),zi=ot>0?this.getBottomVisible(e,ii,V,z,j):X,rl=_t>0?this.getRightVisible(e,hn,I,q,A):Q,{fontWidths:Ki,userColumnWidths:Yi,userRowHeights:nl,calculatedRowHeights:il,calculatedColumnWidths:al}=this;return{rowHeight:m,rowHeaderWidth:f,rowFooterWidth:g,rowCount:y,columnWidth:p,columnCount:w,columnHeaderHeight:C,floatingTopRowCount:T,floatingBottomRowCount:E,floatingLeftColumnCount:P,floatingRightColumnCount:O,gridX:A,gridY:j,firstRow:N,firstColumn:F,treePaddingX:k,treePaddingY:B,left:t,top:r,bottom:X,right:Q,topOffset:a,leftOffset:i,topVisible:tl,leftVisible:Wi,bottomVisible:zi,rightVisible:rl,bottomViewport:ne,rightViewport:oe,width:l,height:s,maxX:Ye,maxY:Ue,lastLeft:_t,lastTop:ot,barHeight:Dt,barTop:Ct,barWidth:zt,barLeft:Rt,handleHeight:Kt,handleWidth:gr,hasHorizontalBar:rr,hasVerticalBar:pt,verticalBarWidth:Ht,horizontalBarHeight:Wt,scrollX:jn,scrollY:_e,scrollableContentWidth:et,scrollableContentHeight:De,scrollableViewportWidth:it,scrollableViewportHeight:mt,visibleRows:z,visibleColumns:q,visibleRowHeights:G,visibleColumnWidths:W,floatingRows:Vi,floatingColumns:Bi,allRows:Vr,allColumns:$i,allRowHeights:V,allColumnWidths:I,floatingTopHeight:ie,floatingBottomHeight:ae,floatingLeftWidth:Oe,floatingRightWidth:Le,visibleRowYs:H,visibleColumnXs:_,allRowYs:ii,allColumnXs:hn,visibleRowTreeBoxes:el,modelRows:ai,modelColumns:Ja,movedRows:d,movedColumns:h,fontWidths:Ki,userColumnWidths:Yi,userRowHeights:nl,calculatedRowHeights:il,calculatedColumnWidths:al,columnHeaderMaxDepth:D}}getGridX(e){var{theme:t}=e,{rowHeaderWidth:r}=t;return r}getGridY(e){var{theme:t,model:r}=e,{columnHeaderHeight:i}=t,{columnHeaderMaxDepth:a}=r;return a*i}getVisibleHeight(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingRowHeights(e),{height:r,theme:i}=e,{scrollBarSize:a}=i,l=this.getGridY(e),s=this.getFloatingBottomHeight(e,t),o=this.getFloatingTopHeight(e,t);return r-s-o-l-a}getVisibleWidth(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingColumnWidths(e),{width:r,theme:i}=e,{scrollBarSize:a,rowFooterWidth:l}=i,s=this.getGridX(e),o=this.getFloatingRightWidth(e,t),u=this.getFloatingLeftWidth(e,t);return r-u-o-s-a-l}getFirstIndex(e,t,r){for(var i=e.size+1,a=0;a<i;a+=1){var l=t(a,r);if(e.get(l)!==0)return a}return 0}getFirstColumn(e){return this.getFirstIndex(this.userColumnWidths,this.getModelColumn.bind(this),e)}getFirstRow(e){return this.getFirstIndex(this.userRowHeights,this.getModelRow.bind(this),e)}getLastLeft(e,t,r){var{model:i}=e,{columnCount:a,floatingRightColumnCount:l}=i,s=Math.max(0,a-l-1);t!=null&&(s=t);for(var o=0;s>=0;){var u=this.getVisibleColumnWidth(s,e);if(o+=u,o>=r)return Ae(s+1,0,t??a-1);s-=1}return 0}getLastTop(e,t,r){var{model:i}=e,{rowCount:a,floatingBottomRowCount:l}=i,s=Math.max(0,a-l-1);t!=null&&(s=t);for(var o=0;s>=0;){var u=this.getVisibleRowHeight(s,e);if(o+=u,o>=r)return Ae(s+1,0,a-1);s-=1}return 0}getTopForTopVisible(e,t){for(var r=this.getFloatingTopHeight(e),i=t,a=0;i>0&&a<r;)i-=1,a+=this.getVisibleRowHeight(i,e);return i}getTopForBottomVisible(e,t){var{height:r}=e,i=this.getGridY(e),a=this.getFloatingBottomHeight(e),l=r-i-a;return this.getLastTop(e,t,l)}getLeftForLeftVisible(e,t){for(var r=this.getFloatingLeftWidth(e),i=t,a=0;i>0&&a<r;)i-=1,a+=this.getVisibleColumnWidth(i,e);return i}getLeftForRightVisible(e,t){var{width:r}=e,i=this.getGridX(e),a=this.getFloatingRightWidth(e),l=r-i-a;return this.getLastLeft(e,t,l)}getFloatingRowHeights(e){for(var{model:t}=e,{floatingTopRowCount:r,floatingBottomRowCount:i,rowCount:a}=t,l=new Map,s=0;s<r&&s<a;s+=1)l.set(s,this.getVisibleRowHeight(s,e));for(var o=0;o<i&&a-o-1>=0;o+=1){var u=a-o-1;l.set(u,this.getVisibleRowHeight(u,e))}return l}getVisibleRowHeights(e){for(var{top:t,topOffset:r,height:i,model:a}=e,l=0,s=t,o=new Map,{rowCount:u}=a;l<i+r&&s<u;){var d=this.getVisibleRowHeight(s,e);o.set(s,d),l+=d,s+=1}return o}getFloatingColumnWidths(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFirstColumn(e),r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.calculateTreePaddingX(e),{model:i}=e,{columnCount:a,floatingLeftColumnCount:l,floatingRightColumnCount:s}=i,o=new Map,u=0;u<l&&u<a;u+=1)o.set(u,this.getVisibleColumnWidth(u,e,t,r));for(var d=0;d<s&&a-d-1>=0;d+=1){var h=a-d-1;o.set(h,this.getVisibleColumnWidth(h,e,t,r))}return o}getVisibleColumnWidths(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFirstColumn(e),r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.calculateTreePaddingX(e),{left:i,leftOffset:a,width:l,model:s}=e,o=0,u=i,d=new Map,{columnCount:h}=s;o<l+a&&u<h;){var v=this.getVisibleColumnWidth(u,e,t,r);d.set(u,v),o+=v,u+=1}return d}getFloatingColumnXs(e,t,r){var{model:i}=e,{columnCount:a,floatingLeftColumnCount:l,floatingRightColumnCount:s}=i;return Fo(l,s,a,r,t)}getVisibleColumnXs(e,t,r){for(var i=new Map,a=-r,l=0;l<t.length;l+=1){var s=t[l],o=M(e,s);i.set(s,a),a+=o}return i}getFloatingRowYs(e,t,r){var{model:i}=e,{floatingTopRowCount:a,floatingBottomRowCount:l,rowCount:s}=i;return Fo(a,l,s,r,t)}getVisibleRowYs(e,t,r){for(var i=new Map,a=-r,l=0;l<t.length;l+=1){var s=t[l],o=M(e,s);i.set(s,a),a+=o}return i}getVisibleRowTreeBoxes(e,t,r){var i=new Map,{model:a,theme:l}=r,{treeDepthIndent:s,treeHorizontalPadding:o}=l;return xe(a)&&a.hasExpandableRows&&e.forEach((u,d)=>{var h=M(t,d);if(a.isRowExpandable(h)){var v=a.depthForRow(h),m=v*s+o,f=(v+1)*s+o,g=0,p=u;i.set(d,{x1:m,y1:g,x2:f,y2:p})}}),i}getFloatingLeftWidth(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingColumnWidths(e),{model:r}=e,{floatingLeftColumnCount:i}=r,a=0,l=0;l<i;l+=1)a+=M(t,l);return a}getFloatingRightWidth(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingColumnWidths(e),{model:r}=e,{floatingRightColumnCount:i,columnCount:a}=r,l=0,s=0;s<i;s+=1)l+=M(t,a-s-1);return l}getFloatingTopHeight(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingRowHeights(e),{model:r}=e,{floatingTopRowCount:i}=r,a=0,l=0;l<i;l+=1)a+=M(t,l);return a}getFloatingBottomHeight(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingRowHeights(e),{model:r}=e,{floatingBottomRowCount:i,rowCount:a}=r,l=0,s=0;s<i;s+=1)l+=M(t,a-s-1);return l}getTopVisible(e,t,r,i){for(var a=this.getFloatingTopHeight(e,r),l=0;l<i.length;l+=1){var s=i[l],o=M(t,s);if(o>=a)return s}return 0}getLeftVisible(e,t,r,i){for(var a=this.getFloatingLeftWidth(e,r),l=0;l<i.length;l+=1){var s=i[l],o=M(t,s);if(o>=a)return s}return 0}getBottomVisible(e,t,r,i,a){for(var{height:l,theme:s}=e,{scrollBarSize:o}=s,u=this.getFloatingBottomHeight(e,r),d=l-a-o-u,h=i.length-1;h>=0;h-=1){var v=i[h],m=M(t,v),f=M(r,v);if(m+f<=d)return v}return 0}getRightVisible(e,t,r,i,a){for(var{width:l,theme:s}=e,{scrollBarSize:o}=s,u=this.getFloatingRightWidth(e,r),d=l-a-o-u,h=i.length-1;h>=0;h-=1){var v=i[h],m=M(t,v),f=M(r,v);if(m+f<=d)return v}return 0}getBottomViewport(e,t,r,i){var{height:a,theme:l}=e,{rowHeight:s}=l;return this.getLastIndexViewport(t,r,i,a,s)}getRightViewport(e,t,r,i){var{width:a,theme:l}=e,{columnWidth:s}=l;return this.getLastIndexViewport(t,r,i,a,s)}getLastIndexViewport(e,t,r,i,a){var l=0,s=0;return e.length>0&&(l=e[e.length-1],s=M(t,l)+M(r,l)),s<i&&(l+=Math.ceil((i-s)/a)),l}getVisibleItemSize(e,t,r){var i;return(i=t.get(e))!==null&&i!==void 0?i:r()}getVisibleRowHeight(e,t){var r=this.getModelRow(e,t),i=this.calculateRowHeight(e,r,t);return this.getVisibleItemSize(r,this.userRowHeights,()=>{var a=this.initialRowHeights.get(r);return a!==void 0?a:i})}getVisibleColumnWidth(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.getFirstColumn(t),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:this.calculateTreePaddingX(t),a=this.getModelColumn(e,t),l=this.calculateColumnWidth(e,a,t,r,i);return this.getVisibleItemSize(a,this.userColumnWidths,()=>{var s=this.initialColumnWidths.get(a);return s!==void 0?s:l})}getModelRows(e,t){for(var r=new Map,i=0;i<e.length;i+=1){var a=e[i],l=this.getModelRow(a,t);r.set(a,l)}return r}getModelRow(e,t){if(this.modelRows.has(e))return M(this.modelRows,e);var{movedRows:r}=t,i=ee.getModelIndex(e,r);return this.modelRows.set(e,i),i}getModelColumns(e,t){for(var r=new Map,i=0;i<e.length;i+=1){var a=e[i],l=this.getModelColumn(a,t);r.set(a,l)}return r}getModelColumn(e,t){var r=this.modelColumns.has(e);if(r)return M(this.modelColumns,e);var{movedColumns:i}=t,a=ee.getModelIndex(e,i);return this.modelColumns.set(e,a),a}calculateRowHeight(e,t,r){var{theme:i}=r,{autoSizeRows:a,rowHeight:l}=i;if(!a)return l;var s=this.calculatedRowHeights.get(t);return s??(this.calculatedRowHeights.set(t,Math.ceil(l)),Zi(this.calculatedRowHeights),l)}calculateColumnWidth(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:this.getFirstColumn(r),a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:this.calculateTreePaddingX(r),{theme:l}=r,{autoSizeColumns:s,minColumnWidth:o}=l;if(!s){var{columnWidth:u}=l;return u}var d=this.calculateColumnHeaderWidth(t,r),h=this.calculateColumnDataWidth(t,r),v=this.calculatedColumnWidths.get(t),m=Math.ceil(Math.max(d,h));return m=Math.max(o,m),v!=null&&v>m?m=v:(this.calculatedColumnWidths.set(t,m),Zi(this.calculatedColumnWidths)),e===i&&(m+=a),m}calculateColumnHeaderWidth(e,t){var{model:r,theme:i}=t,{headerFont:a,headerHorizontalPadding:l}=i,s=r.textForColumnHeader(e,0);if(s!==void 0&&s!==""){var o=this.getWidthForFont(a,t);return s.length*o+l*2}return l*2}calculateColumnDataWidth(e,t){var{top:r,height:i,width:a,model:l,theme:s}=t,{floatingTopRowCount:o,floatingBottomRowCount:u,rowCount:d}=l,{font:h,cellHorizontalPadding:v,rowHeight:m,rowHeaderWidth:f,rowFooterWidth:g,scrollBarSize:p,dataBarHorizontalPadding:C}=s,S=0,b=this.getWidthForFont(h,t),w=i/m,y=Math.ceil(r+w);return ee.iterateAllItems(r,y,o,u,d,T=>{var E=this.getModelRow(T,t),P=l.textForCell(e,E),O=l.renderTypeForCell(e,E),D=0;if(P){var N=v*2;D=P.length*b+N}O==="dataBar"&&(D+=C),S=Math.max(S,D)}),S=Math.max(Math.min(S,(a-f-p-g)*Nn.MAX_COLUMN_WIDTH),v*2),S}calculateTreePaddingX(e){var{top:t,height:r,model:i,theme:a}=e,{rowHeight:l,treeDepthIndent:s}=a;if(!xe(i)||!i.hasExpandableRows)return 0;for(var o=0,u=r/l,d=Math.ceil(t+u),h=t;h<=d;h+=1){var v=this.getModelRow(h,e),m=i.depthForRow(v);o=Math.max(o,s*(m+1))}return o}getWidthForFont(e,t){if(this.fontWidths.has(e))return M(this.fontWidths,e);var{context:r}=t;r.font=e;var i=r.measureText("8"),{width:a}=i;return this.fontWidths.set(e,a),this.fontWidths.set(r.font,a),a}setColumnWidth(e,t){var r=new Map(this.userColumnWidths);r.set(e,Math.ceil(t)),Zi(r),this.userColumnWidths=r}resetColumnWidth(e){var t=new Map(this.userColumnWidths);t.delete(e),this.userColumnWidths=t}setRowHeight(e,t){var r=new Map(this.userRowHeights);r.set(e,Math.ceil(t)),Zi(r),this.userRowHeights=r}resetRowHeight(e){var t=new Map(this.userRowHeights);t.delete(e),this.userRowHeights=t,this.calculatedRowHeights.delete(e)}}Ut(Nn,"CACHE_SIZE",1e4);Ut(Nn,"MAX_COLUMN_WIDTH",.8);const ef=Nn;var tf=Object.freeze({allowColumnResize:!0,allowRowResize:!0,autoSelectRow:!1,autoSelectColumn:!1,autoSizeColumns:!0,autoSizeRows:!0,backgroundColor:"#000000",black:"#000000",white:"#ffffff",cellHorizontalPadding:5,headerHorizontalPadding:5,font:"12px Arial, sans serif",gridColumnColor:"#8f8f8f66",gridRowColor:"#8f8f8f66",headerBackgroundColor:"#222222",headerSeparatorColor:"#000000",headerSeparatorHoverColor:"#888888",headerSeparatorHandleSize:5,headerHiddenSeparatorSize:5,headerHiddenSeparatorHoverColor:"#8888FF",headerColor:"#d5d5d5",headerFont:"10px Arial, sans serif",columnHoverBackgroundColor:"#444444",selectedColumnHoverBackgroundColor:"#494949",rowBackgroundColors:"#333333 #222222",rowHoverBackgroundColor:"#444444",selectedRowHoverBackgroundColor:"#494949",minScrollHandleSize:50,scrollBarBackgroundColor:"#111111",scrollBarHoverBackgroundColor:"#333333",scrollBarCasingColor:"#000000",scrollBarCornerColor:"#000000",scrollBarColor:"#555555",scrollBarHoverColor:"#888888",scrollBarActiveColor:"#AAAAAA",scrollBarSize:12,scrollBarHoverSize:16,scrollBarCasingWidth:1,scrollSnapToColumn:!1,scrollSnapToRow:!1,selectionColor:"#4286f433",selectionOutlineColor:"#4286f4",selectionOutlineCasingColor:"#222222",scrollBarSelectionTick:!0,scrollBarSelectionTickColor:"#4286f433",scrollBarActiveSelectionTickColor:"#4286f480",shadowBlur:8,shadowColor:"#000000",textColor:"#ffffff",hyperlinkColor:"#4878ea",maxDepth:6,treeDepthIndent:10,treeHorizontalPadding:5,treeLineColor:"#888888",treeMarkerColor:"#cccccc",treeMarkerHoverColor:"#ffffff",rowHeight:20,columnWidth:100,minRowHeight:20,minColumnWidth:55,columnHeaderHeight:20,rowHeaderWidth:30,rowFooterWidth:0,headerResizeSnapThreshold:10,headerResizeHiddenSnapThreshold:8,allowColumnReorder:!0,allowRowReorder:!0,reorderOffset:2,floatingGridColumnColor:"#8f8f8f66",floatingGridRowColor:"#8f8f8f66",floatingRowBackgroundColors:"#393939 #292929",floatingDividerOuterColor:"#000000",floatingDividerInnerColor:"#cccccc",zeroLineColor:"#888888",positiveBarColor:"#00ff00",negativeBarColor:"#ff0000",markerBarColor:"#ffffff",dataBarHorizontalPadding:90});const rf=tf;function No(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 Io(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?No(Object(t),!0).forEach(function(r){nf(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):No(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function nf(n,e,t){return e=af(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function af(n){var e=lf(n,"string");return typeof e=="symbol"?e:String(e)}function lf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var sf=(n,e)=>{var t=!1,r=be(n,Io(Io({},e),{},{dispose:()=>{t||(t=!0,r.clear(),t=!1)}}));return r};const mr=sf;function of(n,e){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:6,r=Vl.hex.lab.raw(n);return r[0]=Math.max(r[0]-r[0]/t*e,0),"#".concat(Vl.lab.hex(r))}function uf(n,e){var[t,r,i]=Vl.hex.rgb(n);return"rgba(".concat(t,", ").concat(r,", ").concat(i,", ").concat(e,")")}var df=n=>{var{r:e,g:t,b:r}=n,i=.4122214708*e+.5363325363*t+.0514459929*r,a=.2119034982*e+.6806995451*t+.1073969566*r,l=.0883024619*e+.2817188376*t+.6299787005*r,s=Math.cbrt(i),o=Math.cbrt(a),u=Math.cbrt(l);return{L:.2104542553*s+.793617785*o-.0040720468*u,a:1.9779984951*s-2.428592205*o+.4505937099*u,b:.0259040371*s+.7827717662*o-.808675766*u}},hf=n=>{var{L:e,a:t,b:r}=n,i=e+.3963377774*t+.2158037573*r,a=e-.1055613458*t-.0638541728*r,l=e-.0894841775*t-1.291485548*r,s=i*i*i,o=a*a*a,u=l*l*l;return{r:Ae(4.0767416621*s-3.3077115913*o+.2309699292*u,0,255),g:Ae(-1.2684380046*s+2.6097574011*o-.3413193965*u,0,255),b:Ae(-.0041960863*s-.7034186147*o+1.707614701*u,0,255)}},cf=n=>{var e,t,r=(e=(t=n.replace(/^#?([a-f\d])([a-f\d])([a-f\d])$/i,(i,a,l,s)=>"#".concat(a).concat(a).concat(l).concat(l).concat(s).concat(s)).substring(1).match(/.{2}/g))===null||t===void 0?void 0:t.map(i=>parseInt(i,16)))!==null&&e!==void 0?e:[0,0,0];return{r:r[0],g:r[1],b:r[2]}},vf=n=>{var e=Math.round(n.r),t=Math.round(n.g),r=Math.round(n.b);return"#".concat([e,t,r].map(i=>{var a=i.toString(16);return a.length===1?"0".concat(a):a}).join(""))},mf=(n,e,t)=>{var{L:r,a:i,b:a}=n,{L:l,a:s,b:o}=e,u=r+(l-r)*t,d=i+(s-i)*t,h=a+(o-a)*t;return{L:u,a:d,b:h}};const gn={colorWithAlpha:uf,darkenForDepth:of,linearSRGBToOklab:df,OklabToLinearSRGB:hf,hexToRgb:cf,rgbToHex:vf,lerpColor:mf};function Ao(n,e,t){return e=ff(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ff(n){var e=gf(n,"string");return typeof e=="symbol"?e:String(e)}function gf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Qe{constructor(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:5e3;Ao(this,"order",void 0),Ao(this,"cursor",null),this.order=e}onDown(e,t,r){return!1}onMove(e,t,r){return!1}onDrag(e,t,r){return!1}onLeave(e,t,r){return!1}onClick(e,t,r){return!1}onContextMenu(e,t,r){return!1}onDoubleClick(e,t,r){return!1}onUp(e,t,r){return!1}onWheel(e,t,r){return!1}}function ci(n,e,t){return e=pf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function pf(n){var e=Cf(n,"string");return typeof e=="symbol"?e:String(e)}function Cf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Sf extends Qe{constructor(){super(...arguments),ci(this,"draggingIndex",void 0),ci(this,"resizingItems",[]),ci(this,"hiddenItems",[]),ci(this,"targetSizes",new Map),ci(this,"dragOffset",0)}onDown(e,t){var{metrics:r}=t,{model:i}=t.props,a=t.getTheme();if(!r)throw new Error("metrics not set");var l=this.getSeparator(e,r,i,a);if(l!=null){var s=l.index;return this.dragOffset=0,this.draggingIndex=s,this.resizingItems=[s],this.hiddenItems=this.getHiddenItems(s,r).reverse(),this.targetSizes.clear(),this.addTargetSize(r,s),this.updateCursor(r,s),this.updateSeparator(t,l),!0}return!1}onMove(e,t){var{metrics:r}=t,{model:i}=t.props,a=t.getTheme();if(!r)throw new Error("metrics not set");var l=this.getSeparator(e,r,i,a);return l!=null?(this.updateCursor(r,l.index),!0):!1}onDrag(e,t){if(this.draggingIndex==null)return!1;var r=e[this.pointProperty],{metricCalculator:i,metrics:a}=t;if(!a)throw new Error("metrics not set");for(var l=t.getTheme(),s=a[this.visibleOffsetProperty],o=a[this.marginProperty],u=a[this.calculatedSizesProperty],d=a[this.modelIndexesProperty],h=a[this.firstIndexProperty],v=a[this.treePaddingProperty],m=new Map,f=this.resizingItems[this.resizingItems.length-1];f!=null;){var g=M(s,f),p=r-o-g-this.dragOffset,C=M(d,f),S=this.targetSizes.get(C),b=this.resizingItems.length>1,w=this.hiddenItems.indexOf(f),y=M(u,C);f===h&&(y+=v);var T=p;if(Math.abs(p-y)<=l.headerResizeSnapThreshold?T=y:S!==void 0&&p>S&&(b&&w!==0||w>0)?T=S:p<=l.headerResizeHiddenSnapThreshold&&(T=0),m.set(C,T),p<-l.headerResizeSnapThreshold&&T===0)if(w>=0&&b){var E;this.resizingItems.pop(),this.removeTargetSize(a,f),f=this.resizingItems[this.resizingItems.length-1],this.dragOffset-=(E=this.targetSizes.get(M(d,f)))!==null&&E!==void 0?E:0}else f=this.getNextShownItem(f,a),f!==null&&(this.resizingItems.push(f),this.addTargetSize(a,f));else S!==void 0&&p>S+l.headerResizeSnapThreshold&&T===S?w>0?(this.dragOffset+=T,f=this.hiddenItems[w-1],this.resizingItems.push(f),this.addTargetSize(a,f)):b?(this.resizingItems.pop(),this.removeTargetSize(a,f),f=this.resizingItems[this.resizingItems.length-1]):f=null:f=null}return m.forEach((P,O)=>{var D,N=(D=i[this.initialSizesProperty].get(O))!==null&&D!==void 0?D:u.get(O);P===N?this.resetSize(i,O):this.setSize(i,O,P)}),this.updateCursor(a,this.draggingIndex),!0}onUp(e,t){return this.draggingIndex!=null&&(this.draggingIndex=void 0,this.resizingItems=[],this.hiddenItems=[],this.targetSizes.clear(),this.updateSeparator(t,null)),!1}onDoubleClick(e,t){var{metrics:r,metricCalculator:i}=t,{model:a}=t.props,l=t.getTheme();if(!r)throw new Error("metrics not set");var s=this.getSeparator(e,r,a,l);if(s!=null){var o=r[this.modelIndexesProperty],u=M(o,s.index),d=M(r[this.calculatedSizesProperty],u),h=i[this.initialSizesProperty].get(u);return d===h?this.resetSize(i,u):this.setSize(i,u,d),t.forceUpdate(),!0}return!1}updateCursor(e,t){var r=e[this.visibleSizesProperty],i=M(r,t);i===0?this.cursor=this.hiddenCursor:this.cursor=this.defaultCursor}addTargetSize(e,t){var r=e[this.modelIndexesProperty],i=e[this.userSizesProperty],a=e[this.calculatedSizesProperty],l=t===0?e[this.treePaddingProperty]:0,s=M(r,t),o=i.get(s);(o==null||o===0)&&(o=M(a,s)+l),this.targetSizes.set(s,o)}removeTargetSize(e,t){var r=e[this.modelIndexesProperty],i=M(r,t);this.targetSizes.delete(i)}}const gh=Sf;function bt(n,e,t){return e=bf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function bf(n){var e=wf(n,"string");return typeof e=="symbol"?e:String(e)}function wf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Rs extends gh{constructor(){super(...arguments),bt(this,"hiddenCursor","e-resize"),bt(this,"defaultCursor","col-resize"),bt(this,"pointProperty","x"),bt(this,"userSizesProperty","userColumnWidths"),bt(this,"visibleOffsetProperty","visibleColumnXs"),bt(this,"visibleSizesProperty","visibleColumnWidths"),bt(this,"marginProperty","rowHeaderWidth"),bt(this,"calculatedSizesProperty","calculatedColumnWidths"),bt(this,"initialSizesProperty","initialColumnWidths"),bt(this,"modelIndexesProperty","modelColumns"),bt(this,"firstIndexProperty","firstColumn"),bt(this,"treePaddingProperty","treePaddingX"),bt(this,"getHiddenItems",ee.getHiddenColumns),bt(this,"getNextShownItem",ee.getNextShownColumn),bt(this,"getSeparator",Rs.getColumnSeparator)}static getColumnSeparator(e,t,r,i){if(!i.allowColumnResize)return null;var{x:a,y:l,columnHeaderDepth:s}=e,{modelColumns:o}=t,u=ee.getColumnSeparatorIndex(a,l,t,i);if(u==null||s==null||s>0)return null;var d=o.get(u);return d!=null?{index:u,depth:0}:null}setSize(e,t,r){e.setColumnWidth(t,r)}resetSize(e,t){e.resetColumnWidth(t)}updateSeparator(e,t){e.setState({draggingColumnSeparator:t,isDragging:t!==null})}}const ph=Rs;var En=10;function yf(n,e,t){return e=Tf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Tf(n){var e=Ef(n,"string");return typeof e=="symbol"?e:String(e)}function Ef(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Of{constructor(){yf(this,"getCachedTruncatedString",mr((e,t,r,i,a)=>wh.truncateToWidth(e,t,r,i,a),{max:1e4}))}drawCellRowTreeMarker(e,t,r){var{metrics:i,model:a,mouseX:l,mouseY:s,theme:o}=t,{firstColumn:u,gridX:d,gridY:h,allColumnXs:v,allColumnWidths:m,allRowYs:f,allRowHeights:g,visibleRowTreeBoxes:p}=i,{treeMarkerColor:C,treeMarkerHoverColor:S}=o,b=M(v,u),w=M(m,u),y=M(f,r),T=M(g,r);if(!(!xe(a)||!a.isRowExpandable(r))){var E=M(p,r),P=l!=null&&s!=null&&l>=d+b&&l<=d+b+w&&s>=h+y&&s<=h+y+T?S:C;this.drawTreeMarker(e,t,b,y,E,P,a.isRowExpanded(r))}}drawTreeMarker(e,t,r,i,a,l,s){var{x1:o,y1:u,x2:d,y2:h}=a,v=s?"⊟":"⊞",m=r+(o+d)*.5+.5,f=i+(u+h)*.5+.5;e.fillStyle=l,e.textAlign="center",e.fillText(v,m,f)}}const Ch=Of;function Mo(n){return n?.dataBarOptionsForCell!==void 0}function xo(n,e,t){return e=Pf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Pf(n){var e=Rf(n,"string");return typeof e=="symbol"?e:String(e)}function Rf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Df extends Ch{constructor(){super(...arguments),xo(this,"heightOfDigits",void 0),xo(this,"getCachedWidestValueForColumn",mr((e,t,r,i,a)=>{for(var l=0,s=0;s<t.length;s+=1){var o=t[s],u=M(r,o),d=i.textForCell(a,u);l=Math.max(l,e.measureText(d).width)}return l},{max:1e3}))}drawCellContent(e,t,r,i){var a,{metrics:l,model:s,theme:o}=t;if(Mo(s)){var{modelColumns:u,modelRows:d,allRowHeights:h,allRowYs:v,firstColumn:m,fontWidths:f}=l,g=r===m,p=M(h,i),C=M(d,i),S=M(u,r),b=M(v,i),w=s.textAlignForCell(S,C),y=s.textForCell(S,C),{x:T,width:E}=ee.getTextRenderMetrics(t,r,i),P=(a=f?.get(e.font))!==null&&a!==void 0?a:En,O=s.truncationCharForCell(S,C),D=this.getCachedTruncatedString(e,y,E,P,O),{columnMin:N,columnMax:F,axis:A,color:j,valuePlacement:k,opacity:B,markers:G,direction:W,value:z}=s.dataBarOptionsForCell(S,C,o),q=Array.isArray(j);if(!(N==null||F==null)){var{maxWidth:V,x:I,y:_,zeroPosition:H,leftmostPosition:X,markerXs:Q,totalValueRange:ne,dataBarWidth:oe}=this.getDataBarRenderMetrics(e,t,r,i);if(this.heightOfDigits===void 0){var{actualBoundingBoxAscent:ie,actualBoundingBoxDescent:ae}=e.measureText("1234567890");this.heightOfDigits=ie+ae}if(e.save(),e.textAlign=w,q){var Oe=z>=0?j[j.length-1]:j[0];e.fillStyle=Oe}else e.fillStyle=j;if(e.textBaseline="top",e.font=o.font,k!=="hide"&&e.fillText(D,T,b+(p-this.heightOfDigits)/2),q){var Le=j.map(Kt=>gn.linearSRGBToOklab(gn.hexToRgb(Kt)));if(e.save(),e.beginPath(),e.roundRect(I,_,oe,p-2,1),e.clip(),z<0){if(W==="LTR")for(var Ze=Math.round(Math.abs(N)/ne*V),Je=Ze/(j.length-1),Ye=Math.round(X),Ue=0;Ue<j.length-1;Ue+=1){var et=Le[Ue],De=Le[Ue+1];this.drawGradient(e,et,De,Ye,b+1,Je,p),Ye+=Je}else if(W==="RTL")for(var it=Math.round(V-Math.abs(F)/ne*V),mt=it/(j.length-1),$t=Math.round(H),Pt=j.length-1;Pt>0;Pt-=1){var Rr=Le[Pt],tr=Le[Pt-1];this.drawGradient(e,Rr,tr,$t,b+1,mt,p),$t+=mt}}else if(W==="LTR")for(var _t=Math.round(V-Math.abs(N)/ne*V)-1,ot=_t/(j.length-1),rr=Math.round(H),Wt=0;Wt<j.length-1;Wt+=1){var pt=Le[Wt],Ht=Le[Wt+1];this.drawGradient(e,pt,Ht,rr,b+1,ot,p-2),rr+=ot}else if(W==="RTL")for(var Rt=Math.round(Math.abs(F)/ne*V),Ct=Rt/(j.length-1),zt=Math.round(X),Dt=j.length-1;Dt>0;Dt-=1){var Hr=Le[Dt],Dr=Le[Dt-1];this.drawGradient(e,Hr,Dr,zt,b+1,Ct,p-2),zt+=Ct}e.restore()}else e.save(),e.globalAlpha=B,e.beginPath(),e.roundRect(I,_,oe,p-2,1),e.fill(),e.restore();V>0&&Q.forEach((Kt,pr)=>{e.fillStyle=G[pr].color,e.fillRect(Kt,_,1,p-2)});var gr=!(A==="directional"&&(k==="beside"&&w==="right"&&W==="LTR"||k==="beside"&&w==="left"&&W==="RTL"||k!=="beside"));gr&&(e.strokeStyle=o.zeroLineColor,e.beginPath(),e.setLineDash([2,1]),e.moveTo(H,b),e.lineTo(H,b+p),e.stroke()),e.restore(),g&&xe(s)&&s.hasExpandableRows&&this.drawCellRowTreeMarker(e,t,i)}}}getDataBarRenderMetrics(e,t,r,i){var{metrics:a,model:l,theme:s}=t;if(!Mo(l))throw new Error("Grid model is not a data bar grid model");var{firstColumn:o,allColumnXs:u,allColumnWidths:d,allRowYs:h,modelColumns:v,modelRows:m,visibleRows:f}=a,{cellHorizontalPadding:g,treeDepthIndent:p,treeHorizontalPadding:C}=s,S=M(v,r),b=M(m,i),w=M(u,r),y=M(h,i),T=M(d,r),E=r===o,P=0;xe(l)&&l.hasExpandableRows&&E&&(P=p*(l.depthForRow(i)+1)+C);var O=l.textAlignForCell(S,b),{columnMin:D,columnMax:N,axis:F,valuePlacement:A,markers:j,direction:k,value:B}=l.dataBarOptionsForCell(S,b,s),G=this.getCachedWidestValueForColumn(e,f,m,l,S),W=2,z=A==="beside"&&O==="right"?2:1,q=N-D;N>=0&&D>=0||D===N?q=N:N<=0&&D<=0&&(q=Math.abs(D));var V=T-P-z-W;A==="beside"&&(V=V-g-G),V<0&&(V=0);var I=Math.max(Math.abs(D),Math.abs(N)),_=Math.abs(B)/q*V;V===0?_=0:F==="middle"?_=Math.abs(B)/I*(V/2):F==="directional"&&(_=Math.abs(B)/I*V);var H=D>=0?0:Math.abs(D)/q*V,X=B>=0?H:H-Math.abs(B)/q*V,Q=j.map(ie=>{var{value:ae}=ie,Oe=Math.abs(ae)/q*V;return ae>=0?H+Oe:H-Oe}),ne=A==="beside"&&O==="left"?g+G+W:W,oe=A==="beside"&&O==="right"?T-g-G-z:z;return k==="RTL"&&(H=D>=0?T:T-Math.abs(D)/q*V,X=B>=0?H-B/q*V:H,Q=j.map(ie=>{var{value:ae}=ie;return ae>=0?H-Math.abs(ae)/q*V:H+Math.abs(ae)/q*V})),F==="middle"?(H=V/2,k==="LTR"?(X=B>=0?H:H-Math.abs(B)/I*(V/2),Q=j.map(ie=>{var{value:ae}=ie;return ae>=0?H+Math.abs(ae)/I*(V/2):H-Math.abs(ae)/I*(V/2)})):k==="RTL"&&(X=B<=0?H:H-Math.abs(B)/I*(V/2),Q=j.map(ie=>{var{value:ae}=ie;return ae<=0?H+Math.abs(ae)/I*(V/2):H-Math.abs(ae)/I*(V/2)}))):F==="directional"&&(k==="LTR"?(H=0,X=H,Q=j.map(ie=>{var{value:ae}=ie;return H+Math.abs(ae)/I*V})):k==="RTL"&&(H=T,X=H-Math.abs(B)/I*V,Q=j.map(ie=>{var{value:ae}=ie;return H-Math.abs(ae)/I*V}))),k==="LTR"?(H+=w+W+P,X+=w+W+P,Q=Q.map(ie=>ie+w+W+P),A==="beside"&&O==="left"&&(H+=G+g,X+=G+g,Q=Q.map(ie=>ie+G+g))):k==="RTL"&&(H=H+w-z,X=X+w-z,Q=Q.map(ie=>ie+w-z),A==="beside"&&O==="right"&&(H=H-g-G,X=X-g-G,Q=Q.map(ie=>ie-g-G))),ne+=w+P,oe+=w,{maxWidth:V,x:X,y:y+1.5,zeroPosition:H,leftmostPosition:ne,rightmostPosition:oe,totalValueRange:q,dataBarWidth:_,markerXs:Q}}drawGradient(e,t,r,i,a,l,s){for(var o=t,u=i;u<=i+l;u+=.5)this.drawGradientPart(e,u,a,1,s,gn.rgbToHex(gn.OklabToLinearSRGB(o))),o=gn.lerpColor(t,r,(u-i)/l)}drawGradientPart(e,t,r,i,a,l){e.fillStyle=l,e.fillRect(t,r,i,a)}}const Sh=Df;function Ff(n,e,t){return e=Nf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Nf(n){var e=If(n,"string");return typeof e=="symbol"?e:String(e)}function If(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Af extends Ch{constructor(){super(...arguments),Ff(this,"getCachedTokenBoxesForVisibleCell",mr((e,t,r,i,a,l)=>{for(var s=0,o=a,u=[],d=0,h=0,v=0;v<t.length;v+=1){var m=t[v],{start:f,end:g}=m,p=g>e.length?e.substring(f):m.value;h+=l.measureText(e.substring(d,f)).width;var C=l.measureText(p).width,S=h,b=S+C,w={x1:S,y1:s,x2:b,y2:o,token:m};u.push(w),d=g,h+=C}return u},{max:1e4}))}drawCellContent(e,t,r,i){var{metrics:a,model:l,theme:s}=t,{fontWidths:o,modelColumns:u,modelRows:d,allRowHeights:h,firstColumn:v}=a,m=r===v,{textColor:f}=s,g=M(h,i),p=M(d,i),C=M(u,r),S=l.textForCell(C,p),b=l.truncationCharForCell(C,p);if(S&&g>0){var w,y=l.textAlignForCell(C,p)||"left";e.textAlign=y;var T=l.colorForCell(C,p,s)||f;e.fillStyle=T,e.save();var{width:E,x:P,y:O}=ee.getTextRenderMetrics(t,r,i),D=(w=o.get(e.font))!==null&&w!==void 0?w:En,N=this.getCachedTruncatedString(e,S,E,D,b),F=l.tokensForCell(C,p,N.length);if(N)for(var A=0,j=0,k=P,{actualBoundingBoxDescent:B}=e.measureText(N);j<N.length;){var G,W,z=F[A],q=j===z?.start?z:null,V=(G=(W=q?.end)!==null&&W!==void 0?W:z?.start)!==null&&G!==void 0?G:N.length,I=N.substring(j,V),{width:_}=e.measureText(I),H=I.endsWith("…")?e.measureText(I.substring(0,I.length-1)).width:_;q!=null?(e.fillStyle=s.hyperlinkColor,e.fillText(I,k,O),e.fillRect(k,O+B,H,1)):(e.fillStyle=T,e.fillText(I,k,O)),k+=_,j=V,q!=null&&(A+=1)}e.restore()}m&&xe(l)&&l.hasExpandableRows&&this.drawCellRowTreeMarker(e,t,i)}getTokenBoxesForVisibleCell(e,t,r){var i,{metrics:a,context:l,model:s,theme:o}=r;if(l==null||a==null)return Re;var{modelRows:u,modelColumns:d}=a,h=M(u,t),v=M(d,e),m=s.textForCell(v,h),{width:f,x:g,y:p}=ee.getTextRenderMetrics(r,e,t),{fontWidths:C}=a;l.save(),this.configureContext(l,r);var S=(i=C?.get(l.font))!==null&&i!==void 0?i:En,b=s.truncationCharForCell(v,h),w=this.getCachedTruncatedString(l,m,f,S,b),{actualBoundingBoxAscent:y,actualBoundingBoxDescent:T}=l.measureText(w),E=y+T,P=s.tokensForCell(v,h,w.length);if(P.length===0)return l.restore(),Re;var O=this.getCachedTokenBoxesForVisibleCell(w,P,o.font,"middle",E,l).map(D=>({x1:D.x1+g,y1:D.y1+(p-y),x2:D.x2+g,y2:D.y2+(p-y),token:D.token}));return l.restore(),O}configureContext(e,t){var{theme:r}=t;e.font=r.font,e.textBaseline="middle",e.lineCap="butt"}}const bh=Af;function pn(n,e,t){return e=Mf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Mf(n){var e=xf(n,"string");return typeof e=="symbol"?e:String(e)}function xf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Er{constructor(){pn(this,"textCellRenderer",new bh),pn(this,"dataBarCellRenderer",new Sh),pn(this,"getCachedBackgroundColors",mr((e,t)=>e.split(" ").map(r=>{for(var i=[],a=0;a<t;a+=1)i.push(gn.darkenForDepth(r,a,t));return i}),{max:1e3})),pn(this,"getCachedColorWithAlpha",mr((e,t)=>gn.colorWithAlpha(e,t),{max:1e3})),pn(this,"getCachedColorIsDark",mr(e=>lh.isDark(e),{max:1e3}))}static truncate(e,t){return t<e.length?e.substr(0,t)+"…":e}static binaryTruncateToWidth(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:t.length,l=arguments.length>5?arguments[5]:void 0;if(a>=t.length&&e.measureText(t).width<=r)return t;if(l!==void 0){var s=e.measureText(l).width;return l.repeat(Math.max(1,Math.floor(r/s)))}for(var o=i,u=Math.min(t.length-1,a),d=t;u>=o;){var h=Math.ceil((u+o)/2),v=Er.truncate(t,h);if(e.measureText(v).width<=r){if(d=v,o===h)break;o=h}else if(h===0){d=v;break}else u=h-1}return d}static truncateToWidth(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:En,a=arguments.length>4?arguments[4]:void 0;if(r<=0||t.length<=0)return"";var l=Math.min(Math.max(0,Math.floor(r/i/2)-5),t.length),s=Math.min(Math.ceil(r/i*2),t.length);return Er.binaryTruncateToWidth(e,t,r,l,s,a)}drawCanvas(e){var{context:t}=e;t.save(),this.configureContext(t,e),this.drawBackground(t,e),this.drawGrid(t,e),this.drawHeaders(t,e),this.drawFooters(t,e),this.drawDraggingColumn(t,e),this.drawDraggingRow(t,e),this.drawScrollBars(t,e),t.restore()}configureContext(e,t){var{theme:r}=t;e.font=r.font,e.textBaseline="middle",e.lineCap="butt"}drawBackground(e,t){var{theme:r,metrics:i}=t,{width:a,height:l}=i;e.fillStyle=r.backgroundColor,e.fillRect(0,0,a,l)}drawGrid(e,t){var{metrics:r,draggingRow:i,draggingColumn:a}=t,{gridX:l,gridY:s}=r;e.translate(l,s),this.drawGridBackground(e,t,i==null&&a==null),this.drawCellContents(e,t),this.drawFloatingRows(e,t),this.drawFloatingColumns(e,t),e.translate(-l,-s)}drawFloatingRows(e,t){var{draggingRow:r,draggingColumn:i,metrics:a,theme:l}=t,{floatingTopRowCount:s,floatingBottomRowCount:o,floatingRows:u,rowCount:d,visibleColumns:h,allRowYs:v,allRowHeights:m}=a;if(u.length!==0){l.floatingRowBackgroundColors&&this.drawRowStripesForRows(e,t,u,l.floatingRowBackgroundColors),r==null&&i==null&&this.drawFloatingMouseRowHover(e,t),this.drawGridLinesForItems(e,t,h,u,l.floatingGridColumnColor,l.floatingGridRowColor),this.drawCellBackgroundsForItems(e,t,h,u),this.drawFloatingBorders(e,t),s>0&&this.drawSelectedRanges(e,t,{top:0,bottom:s-1,maxY:M(v,s-1)+M(m,s-1)-.5}),o>0&&this.drawSelectedRanges(e,t,{top:d-o-1,bottom:d-1,minY:M(v,d-o)+.5,maxY:M(v,d-1)+M(m,d-1)-.5});for(var f=0;f<h.length;f+=1)for(var g=h[f],p=0;p<u.length;p+=1){var C=u[p];this.drawCellContent(e,t,g,C)}}}drawFloatingColumns(e,t){var{draggingRow:r,draggingColumn:i,metrics:a,theme:l}=t,{floatingLeftColumnCount:s,floatingRightColumnCount:o,floatingLeftWidth:u,floatingRightWidth:d,floatingColumns:h,gridX:v,maxX:m,columnCount:f,visibleRows:g,allColumnXs:p,allColumnWidths:C,width:S,height:b}=a;if(h.length!==0){l.floatingRowBackgroundColors&&(this.drawRowStripesForRows(e,t,g,l.floatingRowBackgroundColors,0,u),this.drawRowStripesForRows(e,t,g,l.floatingRowBackgroundColors,S-v-d,m)),r==null&&i==null&&this.drawFloatingMouseRowHover(e,t),e.save(),e.beginPath(),e.rect(0,0,u,b),e.clip(),this.drawGridLinesForItems(e,t,h,g,l.floatingGridColumnColor,l.floatingGridRowColor),e.restore(),this.drawCellBackgroundsForItems(e,t,h,g),this.drawFloatingBorders(e,t),s>0&&this.drawSelectedRanges(e,t,{left:0,maxX:M(p,s-1)+M(C,s-1)}),o>0&&this.drawSelectedRanges(e,t,{left:f-o,right:f-1,minX:M(p,f-o)+.5,maxX:M(p,f-1)+M(C,f-1)});for(var w=0;w<h.length;w+=1)for(var y=h[w],T=0;T<g.length;T+=1){var E=g[T];this.drawCellContent(e,t,y,E)}}}drawFloatingBorders(e,t){var{metrics:r,theme:i}=t,{floatingTopRowCount:a,floatingBottomRowCount:l,floatingLeftColumnCount:s,floatingRightColumnCount:o,rowCount:u,columnCount:d,allRowYs:h,allColumnXs:v,allRowHeights:m,allColumnWidths:f,maxX:g,maxY:p}=r,{floatingDividerOuterColor:C,floatingDividerInnerColor:S}=i;if(e.lineWidth=3,e.beginPath(),e.strokeStyle=C,a>0){var b=M(h,a-1)+M(m,a-1)+.5;e.moveTo(0,b),e.lineTo(g,b)}if(l>0){var w=M(h,u-l)-.5;e.moveTo(0,w),e.lineTo(g,w)}if(s>0){var y=M(v,s-1)+M(f,s-1)+.5;e.moveTo(y,0),e.lineTo(y,p)}if(o>0){var T=M(v,d-o)-.5;e.moveTo(T,0),e.lineTo(T,p)}if(e.stroke(),e.beginPath(),e.lineWidth=1,e.strokeStyle=S,a>0){var E=M(h,a-1)+M(m,a-1)+.5;e.moveTo(0,E),e.lineTo(g,E)}if(l>0){var P=M(h,u-l)-.5;e.moveTo(0,P),e.lineTo(g,P)}if(s>0){var O=M(v,s-1)+M(f,s-1)+.5;e.moveTo(O,0),e.lineTo(O,p)}if(o>0){var D=M(v,d-o)-.5;e.moveTo(D,0),e.lineTo(D,p)}e.stroke()}drawGridBackground(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;this.drawRowStripes(e,t),r&&(this.drawMouseColumnHover(e,t),this.drawMouseRowHover(e,t)),this.drawGridLines(e,t),this.drawCellBackgrounds(e,t);var{metrics:i}=t,{bottom:a,right:l,floatingBottomRowCount:s,floatingLeftColumnCount:o,floatingRightColumnCount:u,floatingTopRowCount:d,columnCount:h,rowCount:v,allRowHeights:m,allRowYs:f,allColumnXs:g,allColumnWidths:p,width:C,height:S}=i;this.drawSelectedRanges(e,t,{bottom:Math.min(a,v-s-1),right:Math.min(l,h-u-1),minX:o>0&&g.has(o+1)?M(g,o+1):-10,minY:d>0&&f.has(d+1)?M(f,d+1):-10,maxX:u>0&&g.has(h-u-1)?M(g,h-u-1)+M(p,h-u-1)-.5:C+10,maxY:s>0&&f.has(v-s-1)?M(f,v-s-1)+M(m,v-s-1)-.5:S+10})}drawRowStripes(e,t){var{metrics:r,theme:i}=t,{visibleRows:a}=r,{rowBackgroundColors:l}=i;l&&this.drawRowStripesForRows(e,t,a,l)}drawRowStripesForRows(e,t,r,i){for(var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,l=arguments.length>5&&arguments[5]!==void 0?arguments[5]:t.metrics.maxX,{theme:s,metrics:o,model:u}=t,{maxDepth:d,shadowBlur:h,shadowColor:v}=s,m=this.getCachedBackgroundColors(i,d),{allRowYs:f,allRowHeights:g}=o,p=new Map,C=[],S=[],b=(V,I)=>{var _=xe(u)?u.depthForRow(V):0,H=m[V%m.length],X=H[Math.min(_,H.length-1)];if(p.has(X)||p.set(X,[]),p.get(X).push(V),I!=null){var Q=xe(u)?u.depthForRow(I):0;Q<_?C.push(V):Q>_&&S.push(I)}},w=0;w<r.length;w+=1){var y=r[w],T=w>0?r[w-1]:void 0;b(y,T)}if(p.forEach((V,I)=>{e.fillStyle=I,e.beginPath();for(var _=0;_<V.length;_+=1){var H=V[_],X=M(f,H),Q=M(g,H);e.rect(a,X,l,Q)}e.fill()}),C.length>0){e.save();var E=this.getCachedColorWithAlpha(v,.15),P=this.getCachedColorWithAlpha(v,0),O=e.createLinearGradient(0,0,0,h);O.addColorStop(0,E),O.addColorStop(1,P),e.fillStyle=O;for(var D=0;D<C.length;D+=1){var N=C[D],F=M(f,N);e.translate(0,F),e.fillRect(a,0,l,h),e.translate(0,-F)}e.restore()}if(S.length>0){e.save();var A=this.getCachedColorWithAlpha(v,0),j=this.getCachedColorWithAlpha(v,.15),k=e.createLinearGradient(0,0,0,h);k.addColorStop(0,A),k.addColorStop(1,j),e.fillStyle=k;for(var B=0;B<S.length;B+=1){var G=S[B],W=M(f,G),z=M(g,G),q=W+z-h;e.translate(0,q),e.fillRect(a,0,l,h),e.translate(0,-q)}e.restore()}}drawMouseColumnHover(e,t){var{mouseX:r,mouseY:i,theme:a,metrics:l}=t;if(!(r==null||i==null)){var s=ee.getColumnAtX(r,l);if(!(s==null||a.columnHoverBackgroundColor==null)){var{allColumnWidths:o,allColumnXs:u,maxY:d}=l;if(!(i>d)){var h=M(u,s),v=M(o,s);e.fillStyle=a.columnHoverBackgroundColor,e.fillRect(h,0,v,d)}}}}drawMouseRowHover(e,t){var{mouseX:r,mouseY:i,theme:a,metrics:l}=t;if(!(r==null||i==null)){var{maxX:s}=l;if(!(r>s||a.rowHoverBackgroundColor==null)){var o=ee.getRowAtY(i,l);o!=null&&this.drawMouseRowHoverForRow(e,t,o)}}}drawFloatingMouseRowHover(e,t){var{mouseX:r,mouseY:i,theme:a,metrics:l}=t,{maxX:s,floatingTopRowCount:o,floatingBottomRowCount:u,rowCount:d,rowFooterWidth:h}=l;if(!(r==null||i==null||r>s+h||a.rowHoverBackgroundColor==null)){var v=ee.getRowAtY(i,l);v!=null&&(v<o||d-u<=v)&&this.drawMouseRowHoverForRow(e,t,v)}}drawMouseRowHoverForRow(e,t,r){var{metrics:i,selectedRanges:a,theme:l}=t,{allRowHeights:s,allRowYs:o,maxX:u}=i,d=M(o,r),h=M(s,r);l.rowHoverBackgroundColor!=null&&(e.fillStyle=l.rowHoverBackgroundColor);for(var v=0;v<a.length;v+=1){var{startRow:m,endRow:f}=a[v];if(m!=null&&f!=null&&m<=r&&f>=r){l.selectedRowHoverBackgroundColor!=null&&(e.fillStyle=l.selectedRowHoverBackgroundColor);break}}e.fillRect(0,d,u,h)}drawGridLines(e,t){var{metrics:r,theme:i}=t,{visibleColumns:a,visibleRows:l}=r;this.drawGridLinesForItems(e,t,a,l,i.gridColumnColor,i.gridRowColor)}drawGridLinesForItems(e,t,r,i,a,l){a==null&&l==null||(e.lineWidth=1,e.beginPath(),a!=null&&(e.strokeStyle=a,this.drawGridLinesForColumns(e,t,r)),l!=null&&(e.strokeStyle=l,this.drawGridLinesForRows(e,t,i)),e.stroke())}drawGridLinesForColumns(e,t,r){for(var{metrics:i}=t,{allColumnXs:a,maxY:l}=i,s=0;s<r.length;s+=1){var o=r[s],u=M(a,o)+.5;e.moveTo(u,0),e.lineTo(u,l)}}drawGridLinesForRows(e,t,r){for(var{metrics:i}=t,{allRowYs:a,maxX:l}=i,s=l,o=0;o<r.length;o+=1){var u=r[o],d=M(a,u)+.5;e.moveTo(.5,d),e.lineTo(s-.5,d)}}drawCellBackgrounds(e,t){var{metrics:r}=t,{visibleColumns:i,visibleRows:a}=r;this.drawCellBackgroundsForItems(e,t,i,a)}drawCellBackgroundsForItems(e,t,r,i){e.save();for(var a=0;a<r.length;a+=1)for(var l=r[a],s=0;s<i.length;s+=1){var o=i[s],u=s+1<i.length?i[s+1]:void 0;this.drawCellBackground(e,t,l,o,u)}e.restore()}drawCellBackground(e,t,r,i,a){var{metrics:l,model:s,theme:o}=t,{firstColumn:u,modelColumns:d,modelRows:h,allColumnXs:v,allColumnWidths:m,allRowYs:f,allRowHeights:g}=l,p=M(h,i),C=M(d,r),S=s.backgroundColorForCell(C,p,o),b=r===u,w=xe(s)&&s.hasExpandableRows;if(S!=null){var y=M(v,r)+1,T=M(f,i)+1,E=M(m,r)-1,P=M(g,i)-1;e.fillStyle=S,e.fillRect(y,T,E,P)}b&&w&&this.drawCellRowTreeDepthLines(e,t,i,a)}drawCellContents(e,t){for(var{metrics:r}=t,{visibleColumns:i}=r,a=0;a<i.length;a+=1){var l=i[a];this.drawColumnCellContents(e,t,l)}}drawColumnCellContents(e,t,r){var{metrics:i}=t,{allColumnXs:a,allColumnWidths:l,visibleRows:s,height:o}=i,u=M(a,r),d=M(l,r);e.save(),e.beginPath(),e.rect(u,0,d,o),e.clip();for(var h=0;h<s.length;h+=1){var v=s[h];this.drawCellContent(e,t,r,v)}e.restore()}drawCellContent(e,t,r,i){var{metrics:a,model:l}=t,{modelColumns:s,modelRows:o}=a,u=M(o,i),d=M(s,r),h=l.renderTypeForCell(d,u),v=this.getCellRenderer(h);v.drawCellContent(e,t,r,i)}getCellRenderer(e){switch(e){case"dataBar":return this.dataBarCellRenderer;default:return this.textCellRenderer}}drawCellRowTreeDepthLines(e,t,r,i){var{metrics:a,model:l,theme:s}=t;if(xe(l)){var o=l.depthForRow(r);if(o!==0){var{firstColumn:u,allColumnXs:d,allRowYs:h,allRowHeights:v}=a,{treeDepthIndent:m,treeHorizontalPadding:f,treeLineColor:g}=s,p=M(d,u),C=M(h,r),S=M(v,r),b=i!==void 0?l.depthForRow(i):0,w=o>b?o-b:0;if(e.strokeStyle=g,e.lineWidth=1,o-w>0){e.beginPath();for(var y=0;y<o-w;y+=1){var T=p+y*m+m*.5+f+.5;e.moveTo(T,C),e.lineTo(T,C+S)}e.stroke()}if(w>0){e.beginPath();for(var E=o-w;E<o;E+=1){var P=p+E*m+m*.5+f+.5;e.moveTo(P,C),e.lineTo(P,C+Math.ceil(S/2)),e.moveTo(P-.5,C+Math.ceil(S/2)+.5),e.lineTo(P+m-.5,C+Math.ceil(S/2)+.5)}e.stroke()}}}}drawHeaders(e,t){var{theme:r}=t;e.font=r.headerFont,this.drawColumnHeaders(e,t),this.drawRowHeaders(e,t)}drawFooters(e,t){var{theme:r}=t;e.font=r.headerFont,this.drawRowFooters(e,t)}drawColumnHeaders(e,t){var{mouseX:r,mouseY:i,theme:a,metrics:l,draggingColumnSeparator:s,isDragging:o,model:u}=t,{columnHeaderHeight:d,floatingColumns:h,gridX:v,width:m,visibleColumns:f,allColumnWidths:g,allColumnXs:p,floatingLeftColumnCount:C,floatingLeftWidth:S,floatingRightWidth:b,modelColumns:w,columnHeaderMaxDepth:y}=l;if(!(d<=0)){var{headerHiddenSeparatorSize:T,headerHiddenSeparatorHoverColor:E,headerSeparatorColor:P,headerSeparatorHoverColor:O}=a,D=d*.5,N=d*(y-1)+d*.5-D*.5,F=C>0;if(e.save(),this.drawColumnHeadersForRange(e,t,[f[0],f[f.length-1]],{minX:v+S,maxX:m-b}),F&&this.drawColumnHeadersForRange(e,t,[h[0],h[h.length-1]],{minX:v,maxX:v+S}),P){e.strokeStyle=P;var A=[...g.entries()].filter(Ze=>{var[Je,Ye]=Ze;return Ye===0}).map(Ze=>{var[Je]=Ze;return Je});e.beginPath(),e.fillStyle=P;for(var j=0;j<A.length;j+=1){var k=A[j],B=M(p,k),G=M(g,k),W=v+B+G+.5-T*.5;e.rect(W,N,T,D)}e.fill()}if(O){var{index:z,depth:q}=s??{};if(z==null&&r!=null&&i!=null){var V=ph.getColumnSeparator(ee.getGridPointFromXY(r,i,l),l,u,a);z=V?.index,q=V?.depth}var I;if(z==null)I=!1;else{var _=w.get(z),H=w.get(z+1);_==null||H==null?I=!1:I=u.textForColumnHeader(_,q)!==u.textForColumnHeader(H,q)}if(I&&z!=null&&q!=null&&(!o||s!=null)){e.strokeStyle=O;var X=M(p,z),Q=M(g,z),ne=v+X+Q+.5,oe=f.indexOf(z),ie=oe<f.length-1?f[oe+1]:null,ae=ie!=null?g.get(ie):null,Oe=Q===0,Le=ae!=null&&ae===0;Oe?(e.strokeStyle=E,e.fillStyle=E,e.fillRect(ne,N,T*.5,D)):Le&&(e.fillStyle=O,e.fillRect(ne-T*.5,N,T*.5,D)),e.beginPath(),e.moveTo(ne,(y-q-1)*d),e.lineTo(ne,(y-q)*d-1),e.stroke()}}e.restore()}}drawColumnHeadersForRange(e,t,r,i){var{model:a}=t,{columnHeaderMaxDepth:l}=a;if(l!==0)for(var s=0;s<=l;s+=1)this.drawColumnHeadersAtDepth(e,t,r,i,s)}drawColumnHeadersAtDepth(e,t,r,i,a){var{metrics:l,model:s,theme:o}=t,{modelColumns:u,allColumnXs:d,gridX:h,userColumnWidths:v,allColumnWidths:m,movedColumns:f}=l,{columnHeaderHeight:g,columnWidth:p}=o,{columnHeaderMaxDepth:C}=s,{minX:S,maxX:b}=i,w=b-S;if(C!==0){var y=r[0],T=r[1];if(e.save(),e.translate(0,(C-a-1)*g),a===0){this.drawColumnHeader(e,t,"",S,b);for(var E=y;E<=T;E+=1)this.drawColumnHeaderAtIndex(e,t,E,i)}if(a>0)for(var P=y;P<=T;){var{columnCount:O}=l,D=M(u,P),N=s.textForColumnHeader(D,a),F=s.colorForColumnHeader(D,a),A=M(d,P)+h,j=A+M(m,P);if(N!=null){for(var k=P-1;k>=0&&(j-A<w||A>S);){var B,G,W,z=(B=u.get(k))!==null&&B!==void 0?B:ee.getModelIndex(k,f);if(z==null||s.textForColumnHeader(z,a)!==N)break;var q=(G=(W=v.get(z))!==null&&W!==void 0?W:m.get(k))!==null&&G!==void 0?G:p;A-=q,k-=1}for(var V=P+1;V<O&&(j-A<w||j<b);){var I,_,H,X=(I=u.get(V))!==null&&I!==void 0?I:ee.getModelIndex(V,f);if(s.textForColumnHeader(X,a)!==N)break;var Q=(_=(H=v.get(X))!==null&&H!==void 0?H:m.get(V))!==null&&_!==void 0?_:p;j+=Q,V+=1}P=V-1;var ne=j-A>=w,oe=A;ne&&(j<b?oe=j-w:A<S&&(oe=S)),this.drawColumnHeader(e,t,N,oe,Math.min(j-A,w),{backgroundColor:F??void 0},i)}P+=1}e.restore()}}drawColumnHeaderAtIndex(e,t,r,i){var a,{metrics:l,model:s}=t,{modelColumns:o,allColumnWidths:u,allColumnXs:d,gridX:h}=l,v=M(u,r),m=M(d,r)+h,f=M(o,r),g=s.textForColumnHeader(f);g!=null&&this.drawColumnHeader(e,t,g,m,v,{backgroundColor:(a=s.colorForColumnHeader(f))!==null&&a!==void 0?a:void 0},i)}drawColumnHeader(e,t,r,i,a,l,s){var o;if(!(a<=0)){var{metrics:u,theme:d}=t,{headerHorizontalPadding:h,columnHeaderHeight:v,headerBackgroundColor:m,headerColor:f,headerSeparatorColor:g,black:p,white:C}=d,{fontWidths:S,width:b}=u,w=(o=S.get(e.font))!==null&&o!==void 0?o:En,y=a-h*2,T=y/w,{backgroundColor:E=m,separatorColor:P=g}=l??{},{textColor:O=f}=l??{};try{var D=this.getCachedColorIsDark(E),N=this.getCachedColorIsDark(O);D&&N?O=C:!D&&!N&&(O=p)}catch{}var{minX:F=0,maxX:A=b}=s??{};e.save(),e.rect(F,0,A-F,v),e.clip(),E!=null&&(e.fillStyle=E,e.fillRect(i,0,a,v)),P!=null&&(e.strokeStyle=P,e.beginPath(),i>0&&(e.moveTo(i+.5,0),e.lineTo(i+.5,v)),e.moveTo(i+a+.5,0),e.lineTo(i+a+.5,v),e.moveTo(i,v-.5),e.lineTo(i+a,v-.5),e.stroke()),e.beginPath(),e.rect(i,0,a,v),e.clip(),e.fillStyle=O;var j=r;T<=0?j="":j.length>T&&(j="".concat(j.substring(0,T-1),"…"));var k=j.length*w,B=i+a*.5,G=v*.5;F+=h,A-=h;var W=i+h,z=Ae(W,F,A),q=i+a-h,V=Ae(q,F,A),I=V-z,_=B-k*.5<F,H=B+k*.5>A;_?k<I?B=F+k*.5:B=q-k*.5:H&&(k<I?B=A-k*.5:B=W+k*.5),e.textAlign="center",e.fillText(j,B,G),e.restore()}}drawRowHeaders(e,t){var{mouseX:r,mouseY:i,metrics:a,theme:l,draggingRowSeparator:s}=t,{gridY:o,rowHeaderWidth:u,height:d,visibleRows:h,allRowHeights:v,allRowYs:m}=a;if(!(u<=0)){var{headerBackgroundColor:f,headerColor:g,headerHiddenSeparatorSize:p,headerHiddenSeparatorHoverColor:C,headerSeparatorColor:S,headerSeparatorHoverColor:b}=l,w=u*.5,y=u*.5-w*.5;if(e.save(),e.beginPath(),e.fillStyle=f,e.fillRect(0,0,u,d),S){e.strokeStyle=S,e.beginPath(),e.moveTo(0,o+.5),e.lineTo(u,o+.5);for(var T=[],E=!1,P=0;P<h.length;P+=1){var O=h[P],D=M(m,O),N=M(v,O);if(N>0){var F=o+D+N+.5;e.moveTo(0,F),e.lineTo(u,F),E=!1}else E||(E=!0,T.push(O))}e.moveTo(u-.5,0),e.lineTo(u-.5,d),e.stroke(),e.beginPath(),e.fillStyle=S;for(var A=0;A<T.length;A+=1){var j=T[A],k=M(m,j),B=M(v,j),G=o+k+B+.5-p*.5;e.rect(y,G,w,p)}e.fill()}if(b){var{index:W=null}=s??{};if(W==null&&r!=null&&i!=null&&(W=ee.getRowSeparatorIndex(r,i,a,l)),W!=null){e.strokeStyle=b;var z=M(m,W),q=M(v,W),V=o+z+q+.5,I=h.indexOf(W),_=I<h.length-1?h[I+1]:null,H=_!=null?v.get(_):null,X=q===0,Q=H!=null&&H===0;X?(e.strokeStyle=C,e.fillStyle=C,e.fillRect(y,V,w,p*.5)):Q&&(e.fillStyle=b,e.fillRect(y,V-p*.5,w,p*.5)),e.beginPath(),e.moveTo(.5,V),e.lineTo(u+.5,V),e.stroke()}}e.beginPath(),e.rect(0,o,u,d),e.clip(),e.fillStyle=g,e.textAlign="right";for(var ne=0;ne<h.length;ne+=1){var oe=h[ne],ie=M(v,oe),ae=M(m,oe)+o;this.drawRowHeader(e,t,oe,ae,ie)}e.restore()}}drawRowHeader(e,t,r,i,a){if(!(a<=0)){var{metrics:l,model:s,theme:o}=t,{modelRows:u,rowHeaderWidth:d}=l,h=M(u,r),v=d-o.cellHorizontalPadding,m=i+a*.5;e.fillText(s.textForRowHeader(h),v,m)}}drawRowFooters(e,t){var{mouseX:r,mouseY:i,metrics:a,model:l,theme:s,draggingRowSeparator:o}=t,{gridY:u,gridX:d,maxX:h,modelRows:v,rowFooterWidth:m,height:f,verticalBarWidth:g,visibleRows:p,allRowHeights:C,allRowYs:S,width:b}=a;if(!(m<=0)){var{cellHorizontalPadding:w,headerBackgroundColor:y,headerColor:T,headerHiddenSeparatorSize:E,headerHiddenSeparatorHoverColor:P,headerSeparatorColor:O,headerSeparatorHoverColor:D}=s,N=m*.5,F=m*.5-N*.5,A=Math.min(d+h,b-m-g);if(e.save(),e.beginPath(),e.fillStyle=y,e.fillRect(A,u,m,f),O){e.strokeStyle=O,e.beginPath(),e.moveTo(A,u+.5),e.lineTo(m,u+.5);for(var j=[],k=!1,B=0;B<p.length;B+=1){var G=p[B],W=M(S,G),z=M(C,G);if(z>0){var q=u+W+z+.5;e.moveTo(A+.5,q),e.lineTo(A+m-.5,q),k=!1}else k||(k=!0,j.push(G))}e.moveTo(A+.5,u),e.lineTo(A+.5,f),e.stroke(),e.beginPath(),e.fillStyle=O;for(var V=0;V<j.length;V+=1){var I=j[V],_=M(S,I),H=M(C,I),X=u+_+H+.5-E*.5;e.rect(A+F,X,N,E)}e.fill()}if(D){var{index:Q=null}=o??{};if(Q==null&&r!=null&&i!=null&&(Q=ee.getRowSeparatorIndex(r,i,a,s)),Q!=null){e.strokeStyle=D;var ne=M(S,Q),oe=M(C,Q),ie=u+ne+oe+.5,ae=p.indexOf(Q),Oe=ae<p.length-1?p[ae+1]:null,Le=Oe!=null?C.get(Oe):null,Ze=oe===0,Je=Le!=null&&Le===0;Ze?(e.strokeStyle=P,e.fillStyle=P,e.fillRect(F,ie,N,E*.5)):Je&&(e.fillStyle=D,e.fillRect(F,ie-E*.5,N,E*.5)),e.beginPath(),e.moveTo(A+.5,ie),e.lineTo(A+m+.5,ie),e.stroke()}}e.beginPath(),e.rect(A,u,m,f),e.clip(),e.fillStyle=T,e.textAlign="left";for(var Ye=A+w,Ue=0;Ue<p.length;Ue+=1){var et=p[Ue],De=M(C,et);if(De>0){var it=M(S,et)+u,mt=M(v,et),$t=it+De*.5;e.fillText(l.textForRowFooter(mt),Ye,$t)}}e.restore()}}drawSelectedRanges(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},{cursorColumn:i,cursorRow:a,draggingRow:l,draggingColumn:s,editingCell:o,metrics:u,model:d,selectedRanges:h,theme:v}=t,{allColumnWidths:m,allColumnXs:f,allRowHeights:g,allRowYs:p,width:C,height:S}=u,{left:b=u.left,top:w=u.top,right:y=u.right,bottom:T=u.bottom,minY:E=-10,maxY:P=S+10,minX:O=-10,maxX:D=C+10}=r;if(h.length!==0){var N=He(d)&&d.isEditable&&o==null&&l==null&&s==null&&i!=null&&a!=null&&f.has(i)&&p.has(a);if(N){var F=M(f,i),A=M(p,a),j=M(m,i),k=M(g,a);e.save(),e.beginPath(),e.rect(0,0,C,S),e.rect(F,A,j,k),e.clip("evenodd")}e.beginPath();for(var B=0;B<h.length;B+=1){var G=h[B],W=G.startColumn!==null?G.startColumn:b,z=G.startRow!==null?G.startRow:w,q=G.endColumn!==null?G.endColumn:y,V=G.endRow!==null?G.endRow:T;if(V>=w&&T>=z&&q>=b&&y>=W){var I=W>=b&&f.has(W)?Math.round(M(f,W))+.5:O,_=z>=w&&p.has(z)?Math.max(Math.round(M(p,z))+.5,.5):E,H=q<=y&&f.has(q)?Math.round(M(f,q)+M(m,q))-.5:D,X=V<=T&&p.has(V)?Math.round(M(p,V)+M(g,V))-.5:P;e.rect(I,_,H-I,X-_)}e.fillStyle=v.selectionColor,e.fill(),e.save(),e.clip(),e.strokeStyle=v.selectionOutlineCasingColor,e.lineWidth=3,e.stroke(),e.restore(),e.strokeStyle=v.selectionOutlineColor,e.lineWidth=1,e.stroke()}N&&i!=null&&a!=null&&(e.restore(),this.drawActiveCell(e,t,i,a))}}drawActiveCell(e,t,r,i){var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:Er.ACTIVE_CELL_BORDER_WIDTH,{metrics:l,theme:s}=t,{allColumnWidths:o,allColumnXs:u,allRowHeights:d,allRowYs:h}=l,v=M(u,r),m=M(h,i),f=M(o,r),g=M(d,i),p=v-a*.5,C=m-a*.5,S=f+a,b=g+a;p<=0&&(S+=p-1,p=1),C<=0&&(b+=C-1,C=1);var{lineWidth:w}=e;e.beginPath(),e.lineWidth=a,e.strokeStyle=s.selectionOutlineColor,this.drawRoundedRect(e,p,C,S,b),e.stroke(),e.lineWidth=w}drawRoundedRect(e,t,r,i,a){var l=arguments.length>5&&arguments[5]!==void 0?arguments[5]:Er.DEFAULT_EDGE_RADIUS;e.beginPath(),e.moveTo(t+l,r),e.lineTo(t+i-l,r),e.quadraticCurveTo(t+i,r,t+i,r+l),e.lineTo(t+i,r+a-l),e.quadraticCurveTo(t+i,r+a,t+i-l,r+a),e.lineTo(t+l,r+a),e.quadraticCurveTo(t,r+a,t,r+a-l),e.lineTo(t,r+l),e.quadraticCurveTo(t,r,t+l,r),e.closePath()}drawDraggingColumn(e,t){var r,{draggingColumn:i,metrics:a,mouseX:l,theme:s,model:o}=t;if(!(i==null||l==null)){var{range:u,depth:d}=i,{gridX:h,gridY:v,allColumnXs:m,allColumnWidths:f,height:g,width:p,columnHeaderMaxDepth:C,columnHeaderHeight:S,movedColumns:b,modelColumns:w,floatingLeftWidth:y}=a,T=(r=w.get(u[0]))!==null&&r!==void 0?r:ee.getModelIndex(u[0],b),E=o.getColumnHeaderGroup(T,d);if(!(d>0&&!E)){var[P,O]=u,D=M(m,P),N=M(m,O)+M(f,O),F=N-D,A=i.left,{backgroundColor:j,font:k,headerFont:B,reorderOffset:G,shadowBlur:W,shadowColor:z}=s,q=(C-d-1)*S;e.save(),e.translate(h,0),e.save(),e.beginPath(),e.rect(y,0,p,g),e.clip(),e.fillStyle=j,e.fillRect(D,q,F,g),e.restore(),e.translate(0,G),e.save(),e.shadowColor=z,e.shadowBlur=W,e.fillStyle=j,e.fillRect(i.left,q+G,i.width,g),e.restore(),e.beginPath(),e.rect(i.left,q,i.width+1,g),e.clip(),e.translate(A-D,0),e.font=B;for(var V=[],I=i.range[0];I<=i.range[1];I+=1)V.push(I);this.drawColumnHeaders(e,t),this.drawColumnHeadersForRange(e,t,[V[0],V[V.length-1]],{minX:D,maxX:p}),e.translate(0,v),e.font=k,this.drawGridBackground(e,t);for(var _=P;_<=O;_+=1)this.drawColumnCellContents(e,t,_);e.restore()}}}drawDraggingRow(e,t){var{draggingRow:r,draggingRowOffset:i,metrics:a,mouseY:l,theme:s}=t;if(!(r==null||l==null)){var{gridX:o,gridY:u,allRowYs:d,allRowHeights:h,width:v}=a,m=M(d,r),f=M(h,r)+1,{backgroundColor:g,font:p,headerFont:C,reorderOffset:S,shadowBlur:b,shadowColor:w}=s;e.save(),e.translate(0,u),e.fillStyle=g,e.fillRect(0,m,v,f),e.translate(o+S,l-m-u-(i??0)),e.save(),e.shadowColor=w,e.shadowBlur=b,e.fillStyle=g,e.fillRect(-o,m,v,f),e.restore(),e.beginPath(),e.rect(-o,m,v,f),e.clip(),e.font=p,this.drawGridBackground(e,t),this.drawCellContents(e,t),e.translate(-o,-u),e.font=C,this.drawRowHeaders(e,t),e.restore()}}drawScrollBars(e,t){var{isDraggingHorizontalScrollBar:r,isDraggingVerticalScrollBar:i,isDragging:a,metrics:l,mouseX:s,mouseY:o,theme:u}=t;if(!(u.scrollBarSize<=0)){var{width:d,height:h,handleHeight:v,handleWidth:m,scrollX:f,scrollY:g,hasHorizontalBar:p,hasVerticalBar:C,barWidth:S,barHeight:b,barLeft:w,barTop:y}=l,{scrollBarBackgroundColor:T,scrollBarHoverBackgroundColor:E,scrollBarCasingColor:P,scrollBarCornerColor:O,scrollBarColor:D,scrollBarHoverColor:N,scrollBarActiveColor:F,scrollBarSize:A,scrollBarHoverSize:j,scrollBarCasingWidth:k,scrollBarSelectionTick:B,scrollBarSelectionTickColor:G,scrollBarActiveSelectionTickColor:W,autoSelectRow:z,autoSelectColumn:q}=u,V=s!=null&&o!=null&&s<=d&&o<=h,I=i||C&&!r&&!a&&s!=null&&o!=null&&s>=d-j&&o>=y&&V,_=r||p&&!i&&!a&&!I&&s!=null&&o!=null&&o>=h-j&&s>=w&&V,H=_?j:A,X=I?j:A;if(e.translate(w,y),p&&C&&(e.fillStyle=P,e.fillRect(d-w-A,h-y-A,A,A),e.fillStyle=O,e.fillRect(d-w-A+k,h-y-A+k,A-k,A-k)),p){var Q=f,ne=h-y-H;if(e.fillStyle=P,e.fillRect(0,ne,S,H-k),e.fillStyle=_?E:T,e.fillRect(0,ne+k,S,H-k),r?e.fillStyle=F:_?e.fillStyle=N:e.fillStyle=D,e.fillRect(Q,ne+k,m,H-k),!z&&B&&G!=null&&W!=null){e.fillStyle=G;for(var{selectedRanges:oe,cursorColumn:ie}=t,{lastLeft:ae,columnCount:Oe}=l,Le=[...oe].filter(_e=>_e.startColumn!=null&&_e.endColumn!=null),Ze=Le.map(_e=>[_e.startColumn,_e.endColumn]).sort(ee.compareRanges),Je=ee.mergeSortedRanges(Ze),Ye=_e=>_e<=ae?_e/ae*(S-m):S-m+(_e-ae)/(Oe-ae)*m,Ue=0;Ue<Je.length;Ue+=1){var et=Je[Ue],De=et[0],it=et[1];if(De!=null&&it!=null&&(De!==ie||it!==ie)){var mt=Ye(De),$t=Math.max(1,Math.round(Ye(it+1)-mt)),Pt=H-k;e.fillRect(mt,ne+k+Math.round(Pt/3),$t,Math.round(Pt/3))}}if(ie!=null){var Rr=Ye(ie),tr=2,_t=H-k;e.fillStyle=W,e.fillRect(Rr,ne+k,tr,_t)}}}if(C){var ot=d-w-X,rr=g;if(e.fillStyle=P,e.fillRect(ot,0,X-k,b),e.fillStyle=I?E:T,e.fillRect(ot+k,0,X-k,b),i?e.fillStyle=F:I?e.fillStyle=N:e.fillStyle=D,e.fillRect(ot+k,rr,X-k,v),!q&&B&&G!=null&&W!=null){var{selectedRanges:Wt,cursorRow:pt}=t,{lastTop:Ht,rowCount:Rt}=l,Ct=_e=>_e<=Ht?_e/Ht*(b-v):b-v+(_e-Ht)/(Rt-Ht)*v;e.fillStyle=G;for(var zt=[...Wt].filter(_e=>_e.startRow!=null&&_e.endRow!=null),Dt=zt.map(_e=>[_e.startRow,_e.endRow]).sort(ee.compareRanges),Hr=ee.mergeSortedRanges(Dt),Dr=0;Dr<Hr.length;Dr+=1){var gr=Hr[Dr],Kt=gr[0],pr=gr[1];if(Kt!=null&&pr!=null&&(Kt!==pt||pr!==pt)){var Ur=Ct(Kt),xn=X-k,ni=Math.max(1,Math.round(Ct(pr+1)-Ur));e.fillRect(ot+k+Math.round(xn/3),Ur,Math.round(xn/3),ni)}}if(pt!=null){var Ln=Math.round(Ct(pt)),kn=X-k,jn=2;e.fillStyle=W,e.fillRect(ot+k,Ln,kn,jn)}}}e.translate(-w,-y)}}}pn(Er,"DEFAULT_EDGE_RADIUS",2);pn(Er,"ACTIVE_CELL_BORDER_WIDTH",2);const wh=Er;function vi(n,e,t){return e=Lf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Lf(n){var e=kf(n,"string");return typeof e=="symbol"?e:String(e)}function kf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Lo=100;class jf extends Qe{constructor(){super(...arguments),vi(this,"startPoint",void 0),vi(this,"hasExtendedFloating",!1),vi(this,"timer",void 0),vi(this,"lastTriggerTime",void 0),vi(this,"dragBounds",void 0)}onDown(e,t,r){var{x:i,y:a,column:l,row:s}=e,{metrics:o}=t;if(!o)throw new Error("metrics not set");var{gridX:u,gridY:d,maxX:h,maxY:v}=o,m=i-u,f=a-d;if(m<0||f<0||l==null&&m>h||s==null&&f>v)return!1;var g=ee.isModifierKeyDown(r),p=r.shiftKey;g||(p?t.trimSelectedRanges():t.clearSelectedRanges());var C=t.getTheme(),{autoSelectRow:S,autoSelectColumn:b}=C;return(l!==null||!b)&&(s!==null||!S)&&(t.focus(),t.moveCursorToPosition(l,s,p,!1,p&&g)),this.startPoint=e,this.hasExtendedFloating=!1,this.dragBounds=ee.getScrollDragBounds(o,s,l),!0}onDrag(e,t){if(this.startPoint===void 0)return!1;this.stopTimer();var{row:r,column:i}=this.startPoint,{x:a,y:l}=e,{row:s,column:o}=e,{metrics:u}=t;if(!u)throw new Error("metrics not set");var{left:d,lastLeft:h,top:v,lastTop:m,columnWidth:f,rowHeight:g}=u,p=ee.getScrollDragBounds(u,r,i),C=0,S=0;if(d<h&&(a<p.x1?C=a-p.x1:a>p.x2&&(C=a-p.x2)),v<m&&(l<p.y1?S=l-p.y1:l>p.y2&&(S=l-p.y2)),C!==0||S!==0)this.startTimer(t,e,C>0?Math.ceil(C/f):Math.floor(C/f),S>0?Math.ceil(S/g):Math.floor(S/g));else if(s!=null&&o!=null){var{floatingTopRowCount:b,floatingBottomRowCount:w,floatingLeftColumnCount:y,floatingRightColumnCount:T,columnCount:E,rowCount:P,bottom:O,right:D,topVisible:N,bottomVisible:F,leftVisible:A,rightVisible:j}=u;this.hasExtendedFloating||(r!==null&&r<b&&s>=b?(s=b,this.hasExtendedFloating=!0):r!==null&&r>=P-w&&s<P-w&&(s=P-w-1,this.hasExtendedFloating=!0),i!==null&&i<y&&o>=y?(o=y,this.hasExtendedFloating=!0):i!==null&&i>=E-T&&o<E-T&&(o=E-T-1,this.hasExtendedFloating=!0)),r!==null&&!ee.isFloatingRow(r,u)&&ee.isFloatingRow(s,u)&&(r>s&&s<v?s=N-1:r<s&&s>O&&(s=F+1)),i!==null&&!ee.isFloatingColumn(i,u)&&ee.isFloatingColumn(o,u)&&(i>o&&o<d?o=A-1:i<o&&o>D&&(o=j+1)),t.moveCursorToPosition(o,s,!0,!0)}return!0}onUp(e,t){return this.startPoint!==void 0&&(this.startPoint=void 0,this.dragBounds=void 0,this.stopTimer(),t.commitSelection()),!1}moveSelection(e,t,r,i){var{row:a,column:l}=t,{metrics:s}=e;if(!s)throw new Error("metrics not set");var{selectionEndRow:o,selectionEndColumn:u}=e.state;if(o==null||u==null)throw new Error("selection not set");var{rowCount:d,columnCount:h}=s,v=r<0&&l!=null?l:0,m=r>0&&l!=null?l:h-1,f=i<0&&a!=null?a:0,g=i>0&&a!=null?a:d-1;e.moveCursorToPosition(Math.min(Math.max(v,u+r),m),Math.min(Math.max(f,o+i),g),!0),this.lastTriggerTime=Date.now()}startTimer(e,t,r,i){this.stopTimer();var a=this.lastTriggerTime!=null?Lo-Math.min(Lo,Date.now()-this.lastTriggerTime):0;this.timer=setTimeout(()=>{this.moveSelection(e,t,r,i),this.startTimer(e,t,r,i)},a)}stopTimer(){this.timer!==void 0&&(clearTimeout(this.timer),this.timer=void 0)}}const _f=jf;function ko(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 Ft(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ko(Object(t),!0).forEach(function(r){tn(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ko(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function tn(n,e,t){return e=Hf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Hf(n){var e=Uf(n,"string");return typeof e=="symbol"?e:String(e)}function Uf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var jo=5,Vf=1e3/60,Ji=10;function Wr(n,e,t,r){var i,{modelColumns:a,movedColumns:l,allColumnXs:s,columnCount:o,allColumnWidths:u,userColumnWidths:d,calculatedColumnWidths:h,floatingLeftWidth:v,maxX:m}=t;if(e==null||n==null||n>o||n<0)return null;var f=(i=a.get(n))!==null&&i!==void 0?i:ee.getModelIndex(n,l),g=r.getColumnHeaderGroup(f,e),p=g!=null,C,S,b;if(g!=null){var w,y,T,[E,P]=g.getVisibleRange(l);C=(w=s.get(E))!==null&&w!==void 0?w:v,S=((y=s.get(P))!==null&&y!==void 0?y:m)+((T=u.get(P))!==null&&T!==void 0?T:0),b=[E,P]}else{var O,D,N,F=s.get(n);if(F==null)return null;C=F,S=C+((O=(D=(N=u.get(n))!==null&&N!==void 0?N:d.get(f))!==null&&D!==void 0?D:h.get(f))!==null&&O!==void 0?O:0),b=[n,n]}return{visibleIndex:n,modelIndex:f,left:C,right:S,width:S-C,isColumnGroup:p,range:b,depth:e}}class Bf extends Qe{constructor(){super(...arguments),tn(this,"cursor",null),tn(this,"draggingOffset",void 0),tn(this,"initialOffset",void 0),tn(this,"initialGridPoint",void 0),tn(this,"scrollingInterval",void 0),tn(this,"scrollingDirection",void 0),tn(this,"draggingColumn",null)}setScrollInterval(e,t){this.scrollingInterval!=null&&t===this.scrollingDirection||(this.scrollingDirection=t,this.scrollingInterval=window.setInterval(()=>{var{metrics:r}=e;if(r){var{left:i,lastLeft:a,leftOffset:l,userColumnWidths:s,calculatedColumnWidths:o,movedColumns:u,allColumnWidths:d}=r,h=i,v=l;if(t==="left")for(v-=Ji;v<0;){var m;h-=1;var f=ee.getModelIndex(i-1,u),g=(m=s.get(f))!==null&&m!==void 0?m:o.get(f);g===void 0?v=0:v+=g,h<0&&(v=0,h=0)}else{v+=Ji;for(var p=d.get(i);p!==void 0&&v>p;){var C;h+=1,v-=p;var S=ee.getModelIndex(i+1,u);p=(C=s.get(S))!==null&&C!==void 0?C:o.get(S),h>a&&(v=0,h=a)}}var{mouseX:b,mouseY:w}=e.state;r==null||b==null||w==null||(this.moveDraggingColumn(b,e,t==="left"?-Ji:Ji),e.setState({left:h,leftOffset:v}),(t==="left"&&h===0&&l===0||t==="right"&&h===a)&&this.clearScrollInterval())}},Vf))}clearScrollInterval(){this.scrollingDirection=void 0,window.clearInterval(this.scrollingInterval),this.scrollingInterval=void 0}onLeave(){return this.clearScrollInterval(),!1}onDown(e,t){var{model:r}=t.props,{x:i,column:a,columnHeaderDepth:l}=e,{metrics:s}=t;if(!s)throw new Error("Metrics not set");var o=Wr(a,l,s,r);if(a==null||o==null||l==null||l>0&&!o.isColumnGroup)return!1;var{rowHeaderWidth:u}=s;return this.initialGridPoint=e,this.draggingColumn=null,this.cursor=null,o.modelIndex!=null&&l!=null&&r.isColumnMovable(o.modelIndex,l)&&(this.draggingOffset=i-o.left-u,this.initialOffset=this.draggingOffset),!1}onDrag(e,t,r){if(this.draggingOffset===void 0||this.initialGridPoint===void 0||this.initialOffset===void 0)return!1;var{x:i,y:a}=e,{columnHeaderDepth:l}=this.initialGridPoint,{model:s}=t.props,{draggingColumn:o}=this,{metrics:u}=t;if(!u)throw new Error("Metrics not set");if(!o&&Math.abs(this.initialGridPoint.x-i)<jo&&Math.abs(this.initialGridPoint.y-a)<jo)return!1;if(o==null){var d=Wr(this.initialGridPoint.column,l,u,s);if(!d||l==null||!s.isColumnMovable(d.modelIndex)||l>0&&!d.isColumnGroup||d.range[0]==null)return!1;o={range:d.range,depth:l,left:d.left,width:d.width};var h=Wr(o.range[0],0,u,s),v=Wr(o.range[1],0,u,s);if(!h||!v)return!1;this.draggingColumn=o,t.setState({draggingColumn:o,isDragging:!0})}return this.cursor="move",this.moveDraggingColumn(e.x,t,r.movementX),!0}moveDraggingColumn(e,t,r){var i;if(!(this.draggingOffset===void 0||this.initialGridPoint===void 0||this.initialOffset===void 0||this.draggingColumn==null||r===0)){if(this.initialOffset!==this.draggingOffset){this.draggingOffset<this.initialOffset&&this.initialOffset<this.draggingOffset+r||this.draggingOffset>this.initialOffset&&this.initialOffset>this.draggingOffset+r?this.draggingOffset=this.initialOffset:this.draggingOffset+=r,this.draggingColumn=Ft(Ft({},this.draggingColumn),{},{left:e-this.draggingOffset}),t.setState({draggingColumn:this.draggingColumn});return}var{depth:a}=this.draggingColumn,{model:l}=t.props,{movedColumns:s}=t.state,{metrics:o}=t;if(!o)throw new Error("Metrics not set");var{floatingLeftWidth:u,width:d,columnHeaderMaxDepth:h,allColumnXs:v}=o,m=r<0,f=Wr(this.draggingColumn.range[0],a,o,l);if(f){var g=e-this.draggingOffset,p=g+f.width;this.draggingColumn=Ft(Ft({},this.draggingColumn),{},{left:g}),t.setState({draggingColumn:this.draggingColumn});var C=Wr(ee.getColumnAtX(Ae(m?g:p,u,d),o,!0),a,o,l),S=l.getColumnHeaderParentGroup(f.modelIndex,f.depth);if(C){if(S!==void 0){var b=S.getVisibleRange(s);if(C.visibleIndex<b[0]){var w,y=this.moveColumn(f,b[0],s);this.draggingOffset=e-((w=v.get(b[0]))!==null&&w!==void 0?w:0),this.draggingColumn=Ft(Ft({},this.draggingColumn),{},{left:e-this.draggingOffset}),this.clearScrollInterval(),t.setState({draggingColumn:this.draggingColumn,movedColumns:y});return}if(C.visibleIndex>b[1]){var T,E=this.moveColumn(f,b[1]-(f.range[1]-f.range[0]),s),{right:P=0}=(T=Wr(b[1],0,o,l))!==null&&T!==void 0?T:{};this.draggingOffset=e-(P-f.width),this.draggingColumn=Ft(Ft({},this.draggingColumn),{},{left:e-this.draggingOffset}),this.clearScrollInterval(),t.setState({draggingColumn:this.draggingColumn,movedColumns:E});return}}if(!l.isColumnMovable(C.modelIndex)){var O=C.visibleIndex;if(m)for(O+=1;O<f.visibleIndex&&!l.isColumnMovable(ee.getModelIndex(O,s));)O+=1;else for(O-=1;O>f.visibleIndex&&!l.isColumnMovable(ee.getModelIndex(O,s));)O-=1;if(O!==f.visibleIndex){m||(O-=f.range[1]-f.range[0]);var D=this.moveColumn(f,O,s);t.setState({movedColumns:D,draggingColumn:this.draggingColumn})}var N=Wr(O,0,o,l);if(m){var F;this.draggingOffset=e-((F=N?.left)!==null&&F!==void 0?F:0)}else{var A;this.draggingOffset=e-(((A=N?.right)!==null&&A!==void 0?A:0)-f.width)}this.draggingColumn=Ft(Ft({},this.draggingColumn),{},{left:e-this.draggingOffset}),t.setState({draggingColumn:this.draggingColumn});return}if(g<=u?this.setScrollInterval(t,"left"):p>d?this.setScrollInterval(t,"right"):this.clearScrollInterval(),C.visibleIndex!==f.visibleIndex&&!(m&&f.visibleIndex<C.visibleIndex||!m&&f.visibleIndex>C.visibleIndex)){for(var j=C.left+C.width*.5,k=l.getColumnHeaderParentGroup(f.modelIndex,f.depth),B,G=((i=k?.depth)!==null&&i!==void 0?i:h)-1;G>=0&&B===void 0;)B=l.getColumnHeaderGroup(C.modelIndex,G),G-=1;var W;m&&g<j&&(!B||C.visibleIndex===B.getVisibleRange(s)[0])&&(W=this.moveColumn(f,C.range[0],s)),!m&&p>j&&(!B||C.visibleIndex===B.getVisibleRange(s)[1])&&(W=this.moveColumn(f,C.range[1]-(f.range[1]-f.range[0]),s)),W&&(this.draggingColumn=Ft(Ft({},this.draggingColumn),{},{left:g}),t.setState({movedColumns:W,draggingColumn:this.draggingColumn}))}}}}}moveColumn(e,t,r){var i=e.isColumnGroup?ee.moveRange(e.range,t,r):ee.moveItem(e.visibleIndex,t,r),a=t-e.range[0],l=[e.range[0]+a,e.range[1]+a];return this.draggingColumn&&(this.draggingColumn=Ft(Ft({},this.draggingColumn),{},{range:l})),i}onUp(e,t){return this.cursor=null,this.clearScrollInterval(),this.draggingOffset!=null?(this.draggingOffset=void 0,t.setState({draggingColumn:null,isDragging:!1}),!0):!1}}const Gf=Bf;function _o(n,e,t){return e=$f(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function $f(n){var e=Wf(n,"string");return typeof e=="symbol"?e:String(e)}function Wf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Ds extends Qe{constructor(){super(...arguments),_o(this,"dragOffset",void 0),_o(this,"cursor","default")}static getLeftWithOffsetFromRawLeft(e,t){var r=e.getTheme(),{metrics:i,metricCalculator:a}=e;if(!i)throw new Error("metrics not set");if(r.scrollSnapToColumn){var l=Math.round(t),s=0;return{left:l,leftOffset:s}}var o=Math.floor(t),u=t-o,d=i.allColumnWidths.get(o);if(d==null){var h=e.getMetricState();d=a.getVisibleColumnWidth(o,h)}var v=d*u;return{left:o,leftOffset:v}}isInScrollBar(e,t){var r=t.getTheme(),{scrollBarSize:i,scrollBarHoverSize:a}=r,{metrics:l}=t;if(!l)throw new Error("metrics not set");var{x:s,y:o}=e,{barLeft:u,barWidth:d,height:h,hasHorizontalBar:v}=l;return v&&i>0&&o>=h-a&&o<h&&s>u&&s<u+d}getLeftWithOffset(e,t){var r,{metrics:i}=t;if(!i)throw new Error("metrics not set");var{x:a}=e,{barWidth:l,handleWidth:s,lastLeft:o,barLeft:u,columnCount:d,scrollableContentWidth:h,scrollableViewportWidth:v}=i,m=a-u,f=Ae((m-((r=this.dragOffset)!==null&&r!==void 0?r:0))/(l-s),0,1);if(d===1)return{left:0,leftOffset:f*(h-v)};var g=f*o;return Ds.getLeftWithOffsetFromRawLeft(t,g)}onDown(e,t){var{metrics:r}=t;if(!r)throw new Error("metrics not set");var{x:i}=e,{handleWidth:a,barLeft:l,scrollX:s}=r;if(!this.isInScrollBar(e,t))return!1;var o=i-l;if(o>=s&&o<=s+a)this.dragOffset=o-s,t.setState({isDraggingHorizontalScrollBar:!0});else{this.dragOffset=0;var{left:u,leftOffset:d}=this.getLeftWithOffset(e,t);t.setViewState({left:u,leftOffset:d,isDraggingHorizontalScrollBar:!0,isDragging:!0})}return!0}onDrag(e,t){if(this.dragOffset!=null){var{left:r,leftOffset:i}=this.getLeftWithOffset(e,t);return t.setViewState({left:r,leftOffset:i,isDraggingHorizontalScrollBar:!0,isDragging:!0}),!0}return!1}onMove(e,t){return this.isInScrollBar(e,t)}onUp(e,t){return this.dragOffset!==void 0&&(this.dragOffset=void 0,t.setState({isDraggingHorizontalScrollBar:!1,isDragging:!1})),this.isInScrollBar(e,t)}onClick(e,t){return this.isInScrollBar(e,t)}}const zf=Ds;function Ho(n,e,t){return e=Kf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Kf(n){var e=Yf(n,"string");return typeof e=="symbol"?e:String(e)}function Yf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class qf extends Qe{constructor(){super(...arguments),Ho(this,"cursor","move"),Ho(this,"draggingOffset",void 0)}onDown(e,t){var{model:r}=t.props,{x:i,y:a,row:l}=e,{metrics:s}=t;if(!s)throw new Error("metrics not set");var{columnHeaderHeight:o,rowHeaderWidth:u,allRowYs:d}=s;if(i<=u&&l!==null&&r.isRowMovable(l)){var h=M(d,l);this.draggingOffset=a-h-o,t.setState({draggingRowOffset:this.draggingOffset})}return!1}onDrag(e,t){if(this.draggingOffset==null)return!1;var{model:r}=t.props,{draggingRow:i}=t.state,{mouseX:a,mouseY:l}=t.state;if(a==null||l==null)return!1;if(i==null){var{row:s}=t.getGridPointFromXY(a,l);if(s!=null&&!r.isRowMovable(s)||(i=s,t.setState({draggingRow:i,isDragging:!0}),i==null))return!1}var{metrics:o}=t;if(!o)throw new Error("metrics not set");var{top:u,lastTop:d,bottom:h,bottomVisible:v,rowCount:m,columnHeaderHeight:f,allRowHeights:g,allRowYs:p,height:C}=o,S=f;if(u<i){var b=i-1;S=M(p,b)+M(g,b)*.5+f}var w=C;if(i<h){var y=i+1;w=M(p,y)+M(g,y)*.5+f}var{movedRows:T}=t.state;l<S&&i>0&&r.isRowMovable(i-1)?(T=ee.moveItem(i,i-1,T),i-=1):w<l&&i<m-1&&r.isRowMovable(i+1)&&(T=ee.moveItem(i,i+1,T),i+=1),t.setState({movedRows:T,draggingRow:i});var E=f+M(g,u)*.5,P=f+M(p,v)+M(g,v)*.5;return l<E&&u>0?t.setState({top:u-1}):l>P&&u<d&&t.setState({top:u+1}),!0}onUp(e,t){return this.draggingOffset!==void 0?(this.draggingOffset=void 0,t.setState({draggingRowOffset:null,draggingRow:null,isDragging:!1}),!0):!1}}const Xf=qf;function wt(n,e,t){return e=Qf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Qf(n){var e=Zf(n,"string");return typeof e=="symbol"?e:String(e)}function Zf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Fs extends gh{constructor(){super(...arguments),wt(this,"hiddenCursor","s-resize"),wt(this,"defaultCursor","row-resize"),wt(this,"pointProperty","y"),wt(this,"userSizesProperty","userRowHeights"),wt(this,"visibleOffsetProperty","visibleRowYs"),wt(this,"visibleSizesProperty","visibleRowHeights"),wt(this,"marginProperty","columnHeaderHeight"),wt(this,"calculatedSizesProperty","calculatedRowHeights"),wt(this,"initialSizesProperty","initialRowHeights"),wt(this,"modelIndexesProperty","modelRows"),wt(this,"firstIndexProperty","firstRow"),wt(this,"treePaddingProperty","treePaddingY"),wt(this,"getHiddenItems",ee.getHiddenRows),wt(this,"getNextShownItem",ee.getNextShownRow),wt(this,"getSeparator",Fs.getRowSeparator)}static getRowSeparator(e,t,r,i){if(!i.allowRowResize)return null;var{x:a,y:l}=e,s=ee.getRowSeparatorIndex(a,l,t,i);return s!=null?{index:s,depth:0}:null}setSize(e,t,r){e.setRowHeight(t,r)}resetSize(e,t){e.resetRowHeight(t)}updateSeparator(e,t){e.setState({draggingRowSeparator:t,isDragging:t!==null})}}const Jf=Fs;class Pa extends Qe{static isInTreeBox(e,t){var{column:r,row:i,x:a,y:l}=e,{metrics:s}=t;if(!s)throw new Error("metrics not set");var{gridX:o,gridY:u,firstColumn:d,allColumnXs:h,allColumnWidths:v,allRowHeights:m,allRowYs:f,visibleRowTreeBoxes:g}=s;if(r===d&&i!=null&&g.get(i)!=null&&a>o&&l>u){var p=M(h,r),C=M(v,r),S=M(f,i),b=M(m,i);if(a>=o+p&&a<=o+p+C&&l>=u+S&&l<=u+S+b)return!0}return!1}onDown(e,t){return Pa.isInTreeBox(e,t)}onClick(e,t,r){if(Pa.isInTreeBox(e,t)){var{row:i}=e;if(i!==null)return t.toggleRowExpanded(i,ee.isModifierKeyDown(r)),!0}return!1}}const Wl=Pa;class eg extends Qe{isInCorner(e,t){var r=t.getTheme(),{scrollBarSize:i}=r,{metrics:a}=t;if(!a)throw new Error("metrics not set");var{x:l,y:s}=e,{width:o,height:u,hasVerticalBar:d,hasHorizontalBar:h}=a;return i>0&&d&&h&&l>=o-i&&s>=u-i&&l<=o&&s<=u}onDown(e,t){return this.isInCorner(e,t)}onUp(e,t){return this.isInCorner(e,t)}onClick(e,t){return this.isInCorner(e,t)}}const tg=eg;function Uo(n,e,t){return e=rg(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function rg(n){var e=ng(n,"string");return typeof e=="symbol"?e:String(e)}function ng(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Ns extends Qe{constructor(){super(...arguments),Uo(this,"dragOffset",void 0),Uo(this,"cursor","default")}static getTopWithOffsetFromRawTop(e,t){var r=e.getTheme(),{metrics:i,metricCalculator:a}=e;if(!i)throw new Error("metrics not set");if(r.scrollSnapToRow){var l=Math.round(t),s=0;return{top:l,topOffset:s}}var o=Math.floor(t),u=t-o,d=i.allRowHeights.get(o);if(d==null){var h=e.getMetricState();d=a.getVisibleRowHeight(o,h)}var v=d*u;return{top:o,topOffset:v}}isInScrollBar(e,t){var r=t.getTheme(),{scrollBarSize:i,scrollBarHoverSize:a}=r,{metrics:l}=t;if(!l)throw new Error("metrics not set");var{x:s,y:o}=e,{barTop:u,barHeight:d,width:h,hasVerticalBar:v}=l;return v&&i>0&&s>=h-a&&s<h&&o>u&&o<u+d}getTopWithOffset(e,t){var r,{metrics:i}=t;if(!i)throw new Error("metrics not set");var{y:a}=e,{barHeight:l,handleHeight:s,lastTop:o,barTop:u,rowCount:d,scrollableContentHeight:h,scrollableViewportHeight:v}=i,m=a-u,f=Ae((m-((r=this.dragOffset)!==null&&r!==void 0?r:0))/(l-s),0,1);if(d===1)return{top:0,topOffset:f*(h-v)};var g=f*o;return Ns.getTopWithOffsetFromRawTop(t,g)}onDown(e,t){var{metrics:r}=t;if(!r)throw new Error("metrics not set");var{y:i}=e,{handleHeight:a,barTop:l,scrollY:s}=r;if(!this.isInScrollBar(e,t))return!1;var o=i-l;if(o>=s&&o<=s+a)this.dragOffset=o-s,t.setState({isDraggingVerticalScrollBar:!0});else{this.dragOffset=0;var{top:u,topOffset:d}=this.getTopWithOffset(e,t);t.setViewState({top:u,topOffset:d,isDraggingVerticalScrollBar:!0,isDragging:!0})}return!0}onMove(e,t){return this.isInScrollBar(e,t)}onDrag(e,t){if(this.dragOffset!=null){var{top:r,topOffset:i}=this.getTopWithOffset(e,t);return t.setViewState({top:r,topOffset:i,isDraggingVerticalScrollBar:!0,isDragging:!0}),!0}return!1}onUp(e,t){return this.dragOffset!==void 0&&(this.dragOffset=void 0,t.setState({isDraggingVerticalScrollBar:!1,isDragging:!1})),this.isInScrollBar(e,t)}onClick(e,t){return this.isInScrollBar(e,t)}}const ig=Ns;class ag extends Qe{onDoubleClick(e,t){var{column:r,row:i}=e,{model:a}=t.props;return He(a)&&r!=null&&i!=null&&a.isEditableRange(U.makeCell(r,i))?(t.startEditing(r,i),!0):!1}}const lg=ag;function yh(n){return n?.getTokenBoxesForVisibleCell!==void 0}function Ei(n,e,t){return e=sg(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function sg(n){var e=og(n,"string");return typeof e=="symbol"?e:String(e)}function og(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Ba extends Qe{constructor(){super(...arguments),Ei(this,"timeoutId",void 0),Ei(this,"isHold",!1),Ei(this,"isDown",!1),Ei(this,"currentLinkBox",void 0)}isHoveringLink(e,t){var{column:r,row:i,x:a,y:l}=e,{renderer:s,metrics:o,props:u}=t,{model:d}=u;if(r==null||i==null||o==null)return this.currentLinkBox=void 0,!1;var{modelRows:h,modelColumns:v}=o,m=M(h,i),f=M(v,r),g=d.renderTypeForCell(f,m),p=s.getCellRenderer(g);if(!yh(p))return!1;if(this.currentLinkBox!=null){var{x1:C,y1:S,x2:b,y2:w}=this.currentLinkBox;if(a>=C&&a<=b&&l>=S&&l<=w)return!0}for(var y=t.updateRenderState(),T=p.getTokenBoxesForVisibleCell(r,i,y),E=0;E<T.length;E+=1)if(Oa(T[E].token)){var P=ee.translateTokenBox(T[E],o),{x1:O,x2:D,y1:N,y2:F}=P;if(a>=O&&a<=D&&l>=N&&l<=F)return this.currentLinkBox=P,!0}return this.currentLinkBox=void 0,!1}setCursor(e,t){return this.isHoveringLink(e,t)?this.cursor="pointer":this.cursor=null,!1}onMove(e,t){return this.setCursor(e,t)}onDown(e,t,r){var i=this.isHoveringLink(e,t);return ee.isModifierKeyDown(r)||r.shiftKey||!i?!1:(this.isDown=!0,this.timeoutId!=null&&clearTimeout(this.timeoutId),this.isHold=!1,this.timeoutId=setTimeout(()=>{this.isHold=!0;var{column:a,row:l}=e,{model:s}=t.props;t.clearSelectedRanges(),t.focus(),t.moveCursorToPosition(a,l),He(s)&&a!=null&&l!=null&&s.isEditableRange(U.makeCell(a,l))&&t.startEditing(a,l)},Ba.HOLD_LENGTH),!0)}onClick(e,t){var r=this.isHoveringLink(e,t);if(!r||!this.isDown||this.currentLinkBox==null)return this.isDown=!1,this.isHold=!1,!1;if(!this.isHold){var i;this.timeoutId!=null&&clearTimeout(this.timeoutId),this.timeoutId=void 0,t.props.onTokenClicked((i=this.currentLinkBox)===null||i===void 0?void 0:i.token)}return this.isHold=!1,this.isDown=!1,!0}}Ei(Ba,"HOLD_LENGTH",1e3);const ug=Ba;function dg(n,e,t){return e=hg(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function hg(n){var e=cg(n,"string");return typeof e=="symbol"?e:String(e)}function cg(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class vg{constructor(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:5e3;dg(this,"order",void 0),this.order=e}onDown(e,t){return!1}}const In=vg;class mg extends In{onDown(e,t){switch(e.key){case"a":if(ee.isModifierKeyDown(e))return t.selectAll(),!0;break;case"ArrowUp":return this.handleArrowMove(0,-1,e,t);case"ArrowDown":return this.handleArrowMove(0,1,e,t);case"ArrowRight":return this.handleArrowMove(1,0,e,t);case"ArrowLeft":return this.handleArrowMove(-1,0,e,t);case"k":case"K":return ee.isModifierKeyDown(e)?!1:this.handlePageUp(e,t);case"j":case"J":return ee.isModifierKeyDown(e)?!1:this.handlePageDown(e,t);case"h":case"H":return ee.isModifierKeyDown(e)?!1:(e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(0,t.state.cursorRow,e.shiftKey),!0);case"l":case"L":{if(ee.isModifierKeyDown(e))return!1;var{model:r}=t.props,{columnCount:i}=r;return e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(i-1,t.state.cursorRow,e.shiftKey),!0}case"PageDown":return this.handlePageDown(e,t);case"PageUp":return this.handlePageUp(e,t);case"Home":return e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(ee.isModifierKeyDown(e)?t.state.cursorColumn:0,ee.isModifierKeyDown(e)?0:t.state.cursorRow,e.shiftKey,!0,!0),!0;case"End":{var{model:a}=t.props,{columnCount:l,rowCount:s}=a;return e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(ee.isModifierKeyDown(e)?t.state.cursorColumn:l-1,ee.isModifierKeyDown(e)?s-1:t.state.cursorRow,e.shiftKey,!0,!0),!0}case"Escape":return t.clearSelectedRanges(),{preventDefault:!1,stopPropagation:!1};case"Enter":if(t.state.selectedRanges.length>0)return t.moveCursorInDirection(e.shiftKey?U.SELECTION_DIRECTION.UP:U.SELECTION_DIRECTION.DOWN),!0;break;case"Tab":if(t.state.selectedRanges.length>0)return t.moveCursorInDirection(e.shiftKey?U.SELECTION_DIRECTION.LEFT:U.SELECTION_DIRECTION.RIGHT),!0;break}return!1}handleArrowMove(e,t,r,i){var a=r.shiftKey,l=ee.isModifierKeyDown(r);a?i.trimSelectedRanges():i.clearSelectedRanges();var{cursorRow:s,cursorColumn:o,selectionEndColumn:u,selectionEndRow:d}=i.state,h=a?u:o,v=a?d:s;if(l){var{model:m}=i.props,{columnCount:f,rowCount:g}=m,p=l&&a,C=null,S=null;e<0?(C=0,S=v):e>0?(C=f-1,S=v):t<0?(C=h,S=0):t>0&&(C=h,S=g-1),C!=null&&S!=null&&i.moveCursorToPosition(C,S,a,!0,p)}else{if(!i.metrics)throw new Error("grid.metrics are not set");var{theme:b}=i.props,{autoSelectRow:w=!1,autoSelectColumn:y=!1}=b;if(w&&e!==0){var{lastLeft:T}=i.metrics,{left:E}=i.state;E=Ae(E+e,0,T),i.moveCursorToPosition(E,s,a,!1),i.setViewState({left:E})}else if(y&&t!==0){var{lastTop:P}=i.metrics,{top:O}=i.state;O=Ae(O+t,0,P),i.moveCursorToPosition(O,o,a,!1),i.setViewState({top:O})}else i.moveCursor(e,t,a)}return!0}handlePageUp(e,t){var r=e.shiftKey;r?t.trimSelectedRanges():t.clearSelectedRanges();var{cursorColumn:i,selectionEndRow:a}=t.state,l=a,s=i;if(l==null)return!1;var o=t.getMetricState(),{metricCalculator:u}=t,{bottomVisible:d,topVisible:h,hasHorizontalBar:v}=u.getMetrics(o),m=l-(d-h);m-=v?0:1,m=Math.max(m,0);var f=Math.max(m-(l-h),0);return t.moveCursorToPosition(s,m,r,!1),t.setViewState({top:f}),!0}handlePageDown(e,t){var r=e.shiftKey;r?t.trimSelectedRanges():t.clearSelectedRanges();var{selectionEndRow:i,cursorColumn:a}=t.state,l=i,s=a;if(l===null)return!1;var o=t.getMetricState(),{metricCalculator:u}=t,{bottomVisible:d,topVisible:h,hasHorizontalBar:v,rowCount:m,lastTop:f}=u.getMetrics(o),g=m-1,p=d-h+l;p+=v?0:1,p=Math.min(p,g);var C=Math.min(f,p-(l-h));return t.moveCursorToPosition(s,p,r,!1),t.setViewState({top:C}),!0}}const fg=mg;class gg extends In{onDown(e,t){switch(e.key){case"Enter":case" ":return this.handleExpandKey(e,t)}return!1}handleExpandKey(e,t){var{selectedRanges:r}=t.state;if(r.length===1){var i=r[0];if(i.startRow===i.endRow&&i.startColumn===i.endColumn){if(!t.metrics)throw new Error("grid.metrics not set");var{model:a}=t.props,{startRow:l,startColumn:s}=i;if(l!=null){var o=t.getModelRow(l);if((s===0||s==null)&&xe(a)&&a.isRowExpandable(o))return t.toggleRowExpanded(l),!0}}}return!1}}const pg=gg;class Cg extends In{onDown(e,t){if(ee.isModifierKeyDown(e))return!1;var{model:r}=t.props,{cursorColumn:i,cursorRow:a}=t.state;if(i==null||a==null||!He(r)||!r.isEditableRange(U.makeCell(i,a)))return!1;var l=i,s=a;return l==null||s==null?!1:e.key.length===1?(t.startEditing(l,s,!0,[1,1],e.key),!0):e.key==="F2"?(t.startEditing(l,s),!0):e.key==="Backspace"?(t.startEditing(l,s,!0,void 0,""),!0):e.key==="Delete"?(t.setValueForCell(l,s,""),!0):!1}}const Sg=Cg;function bg(n){for(var e=[],t=n.querySelectorAll("tr"),r=0;r<t.length;r+=1){for(var i=t[r],a=i.querySelectorAll("td"),l=[],s=0;s<a.length;s+=1){var o,u,d=a[s];l.push((o=(u=d.textContent)===null||u===void 0?void 0:u.trim())!==null&&o!==void 0?o:"")}e.push(l)}return e}function wg(n){var e=[];return n.forEach(t=>{var r,i=(r=t.textContent)!==null&&r!==void 0?r:"";i.length>0&&e.push(i.split(/\t|\u00a0\u00a0 \u00a0/))}),e}function yg(n){var e,t,r=n.querySelector("table");if(r!=null)return bg(r);var i=(e=(t=n.textContent)===null||t===void 0?void 0:t.trim())!==null&&e!==void 0?e:"";if(i.length>0){var{childNodes:a}=n,l=i.includes(" "),s=i.includes("    ");return l&&a.length!==0&&(a.length===1||a.length>1&&(a[0].textContent==null||!a[0].textContent.includes(" ")))?i.split(`
2
+ `).map(o=>o.split(" ")):a.length>1||s?wg(n.childNodes):i}return null}class Tg extends In{onDown(e,t){switch(e.key){case"v":if(ee.isModifierKeyDown(e)){var r=document.createElement("div");document.body.appendChild(r),r.setAttribute("contenteditable","true"),r.setAttribute("style",'clip-path: "inset(50%)"; height: 1px; width: 1px; margin: -1px; overflow: hidden; padding 0; position: absolute;');var i=()=>{r.removeEventListener("input",i),r.remove(),t.focus();var a=yg(r);a!=null&&t.pasteValue(a)};return r.addEventListener("input",i),r.focus(),{preventDefault:!1,stopPropagation:!0}}break}return!1}}const Eg=Tg;var Og=n=>{switch(n){case"ArrowDown":return er.DOWN;case"ArrowUp":return er.UP;case"ArrowLeft":return er.LEFT;case"ArrowRight":return er.RIGHT;default:return}};function Is(n){var{selectionRange:e=void 0,className:t="",disabled:r=!1,value:i="",isQuickEdit:a=!0,onChange:l=()=>{},onCancel:s=()=>{},onDone:o=()=>{},onContextMenu:u=()=>{},style:d={}}=n,h=R.useRef(null),v=R.useRef(!1),[m]=R.useState(i),[f,g]=R.useState(!1),[p,C]=R.useState(a),[S,b]=R.useState(i);R.useEffect(function(){var{current:A}=h;A!=null&&(A.focus(),e?A.setSelectionRange(e[0],e[1]):A.setSelectionRange(A.value.length,A.value.length))},[e]);var w=R.useCallback(F=>{l(F)},[l]),y=R.useCallback(F=>{var{value:A}=F.target;b(A),g(!0),w(A)},[w,b,g]),T=R.useCallback(()=>{v.current=!0,f&&w(m),g(!1),s()},[m,f,s,w]),E=R.useCallback(()=>{C(!1)},[C]),P=R.useCallback(function(F){var A=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;o(S,{direction:F,fillRange:A})},[o,S]),O=R.useCallback(()=>{v.current||P(null)},[v,P]),D=R.useCallback(F=>{switch(F.stopPropagation(),F.key){case"Escape":F.preventDefault(),T();break;case"Enter":if(F.preventDefault(),ee.isModifierKeyDown(F))P(void 0,!0);else if(F.altKey){var A="".concat(S,`
3
+ `);b(A),g(!0),w(A)}else P(F.shiftKey?er.UP:er.DOWN);break;case"Tab":F.preventDefault(),P(F.shiftKey?er.LEFT:er.RIGHT);break;case"ArrowDown":case"ArrowUp":case"ArrowLeft":case"ArrowRight":p&&(F.preventDefault(),P(Og(F.key)));break}},[T,P,p,b,g,w,S]),N=R.useCallback(F=>{u(F)},[u]);return c.jsx("textarea",{ref:h,className:re("grid-cell-input-field",t),value:S,onBlur:O,onChange:y,onKeyDown:D,onContextMenu:N,onClick:E,autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",spellCheck:"false",disabled:r,style:d})}Is.propTypes={selectionRange:Z.arrayOf(Z.number),className:Z.string,disabled:Z.bool,isQuickEdit:Z.bool,value:Z.string,onChange:Z.func,onCancel:Z.func,onDone:Z.func,onContextMenu:Z.func,style:Z.shape({})};Is.defaultProps={selectionRange:null,className:"",disabled:!1,value:"",isQuickEdit:!0,onChange:()=>{},onCancel:()=>{},onDone:()=>{},onContextMenu:()=>{},style:{}};var Pg=Me.createContext({});const Rg=Pg;function Vo(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function Dg(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Vo(a,r,i,l,s,"next",o)}function s(o){Vo(a,r,i,l,s,"throw",o)}l(void 0)})}}function Bo(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 Sn(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Bo(Object(t),!0).forEach(function(r){Xe(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Bo(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Xe(n,e,t){return e=Fg(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Fg(n){var e=Ng(n,"string");return typeof e=="symbol"?e:String(e)}function Ng(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Vt extends R.PureComponent{static getScale(e){var t,r,i,a,l,s=window.devicePixelRatio||1,o=e,u=(t=(r=(i=(a=(l=o.webkitBackingStorePixelRatio)!==null&&l!==void 0?l:o.mozBackingStorePixelRatio)!==null&&a!==void 0?a:o.msBackingStorePixelRatio)!==null&&i!==void 0?i:o.oBackingStorePixelRatio)!==null&&r!==void 0?r:o.backingStorePixelRatio)!==null&&t!==void 0?t:1;return s/u}static getCursorClassName(e){return e!=null&&e!==""?"grid-cursor-".concat(e):null}constructor(e){super(e),Xe(this,"renderer",void 0),Xe(this,"metricCalculator",void 0),Xe(this,"canvas",void 0),Xe(this,"canvasContext",void 0),Xe(this,"animationFrame",void 0),Xe(this,"prevMetrics",void 0),Xe(this,"metrics",void 0),Xe(this,"renderState",void 0),Xe(this,"documentCursor",void 0),Xe(this,"dragTimer",void 0),Xe(this,"keyHandlers",void 0),Xe(this,"mouseHandlers",void 0),Xe(this,"getCachedKeyHandlers",Se(o=>[...o,...this.keyHandlers].sort((u,d)=>u.order-d.order))),Xe(this,"getCachedMouseHandlers",Se(o=>[...o,...this.mouseHandlers].sort((u,d)=>u.order-d.order))),this.handleClick=this.handleClick.bind(this),this.handleContextMenu=this.handleContextMenu.bind(this),this.handleEditCellCancel=this.handleEditCellCancel.bind(this),this.handleEditCellChange=this.handleEditCellChange.bind(this),this.handleEditCellCommit=this.handleEditCellCommit.bind(this),this.handleDoubleClick=this.handleDoubleClick.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleMouseDown=this.handleMouseDown.bind(this),this.handleMouseDrag=this.handleMouseDrag.bind(this),this.handleMouseMove=this.handleMouseMove.bind(this),this.handleMouseLeave=this.handleMouseLeave.bind(this),this.handleMouseUp=this.handleMouseUp.bind(this),this.handleResize=this.handleResize.bind(this),this.handleWheel=this.handleWheel.bind(this);var{isStuckToBottom:t,isStuckToRight:r,metricCalculator:i,movedColumns:a,movedRows:l,renderer:s}=e;this.renderer=s||new wh,this.metricCalculator=i||new ef,this.canvas=null,this.canvasContext=null,this.animationFrame=null,this.prevMetrics=null,this.metrics=null,this.renderState={},this.documentCursor=null,this.dragTimer=null,this.keyHandlers=[new Sg(400),new Eg(450),new fg(500),new pg(900)],this.mouseHandlers=[new Jf(100),new ph(200),new Xf(300),new Gf(400),new lg(450),new ig(500),new zf(600),new tg(700),new Wl(800),new ug(875),new _f(900)],this.state={top:0,left:0,topOffset:0,leftOffset:0,draggingColumn:null,draggingRow:null,draggingRowOffset:null,draggingColumnSeparator:null,draggingRowSeparator:null,isDraggingHorizontalScrollBar:!1,isDraggingVerticalScrollBar:!1,isDragging:!1,mouseX:null,mouseY:null,movedColumns:a,movedRows:l,cursorRow:null,cursorColumn:null,selectionStartRow:null,selectionStartColumn:null,selectionEndRow:null,selectionEndColumn:null,selectedRanges:Re,lastSelectedRanges:Re,cursor:null,editingCell:null,isStuckToBottom:t,isStuckToRight:r}}componentDidMount(){var e;this.initContext(),(e=this.canvas)===null||e===void 0||e.addEventListener("wheel",this.handleWheel,{passive:!1}),window.addEventListener("resize",this.handleResize),this.updateCanvas();var{isStuckToBottom:t,isStuckToRight:r}=this.props;t&&this.scrollToBottom(),r&&this.scrollToRight()}componentDidUpdate(e,t){var{isStickyBottom:r,isStickyRight:i,movedColumns:a,movedRows:l,onMovedColumnsChanged:s,onMoveColumnComplete:o,onMovedRowsChanged:u,onMoveRowComplete:d}=this.props,{isStickyBottom:h,isStickyRight:v,movedColumns:m,movedRows:f}=e,{movedColumns:g,movedRows:p}=t,{draggingColumn:C,draggingRow:S,movedColumns:b,movedRows:w}=this.state;m!==a&&this.setState({movedColumns:a}),f!==l&&this.setState({movedRows:l}),g!==b&&s(b),t.draggingColumn!=null&&C==null&&o(b),p!==w&&u(w),t.draggingRow!=null&&S==null&&d(w),r!==h&&this.setState({isStuckToBottom:!1}),i!==v&&this.setState({isStuckToRight:!1}),this.updateMetrics(),this.requestUpdateCanvas(),this.checkStickyScroll(),this.validateSelection()&&this.checkSelectionChange(t)}componentWillUnmount(){var e;this.animationFrame!=null&&cancelAnimationFrame(this.animationFrame),(e=this.canvas)===null||e===void 0||e.removeEventListener("wheel",this.handleWheel),window.removeEventListener("mousemove",this.handleMouseDrag,!0),window.removeEventListener("mouseup",this.handleMouseUp,!0),window.removeEventListener("resize",this.handleResize),this.stopDragTimer()}getTheme(){var{theme:e}=this.props;return Vt.getTheme(this.context,e)}getGridPointFromEvent(e){Po(this.canvas);var t=this.canvas.getBoundingClientRect(),r=e.clientX-t.left,i=e.clientY-t.top;return this.getGridPointFromXY(r,i)}getGridPointFromXY(e,t){if(!this.metrics)throw new Error("metrics must be set");return ee.getGridPointFromXY(e,t,this.metrics)}getMetricState(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.state,t=this.getTheme(),{model:r,stateOverride:i}=this.props;if(!this.canvasContext||!this.canvas)throw new Error("Canvas and context must be defined to get metrics");var a=this.canvasContext,l=this.canvas.clientWidth,s=this.canvas.clientHeight,{left:o,top:u,leftOffset:d,topOffset:h,movedColumns:v,movedRows:m,isDraggingHorizontalScrollBar:f,isDraggingVerticalScrollBar:g,draggingColumn:p}=e;return Sn({left:o,top:u,leftOffset:d,topOffset:h,width:l,height:s,context:a,theme:t,model:r,movedColumns:v,movedRows:m,isDraggingHorizontalScrollBar:f,isDraggingVerticalScrollBar:g,draggingColumn:p},i)}getKeyHandlers(){var{keyHandlers:e}=this.props;return this.getCachedKeyHandlers(e)}getMouseHandlers(){var{mouseHandlers:e}=this.props;return this.getCachedMouseHandlers(e)}getModelColumn(e){var t,r,i=(t=this.metrics)===null||t===void 0||(r=t.modelColumns)===null||r===void 0?void 0:r.get(e);if(i===void 0)throw new Error("Unable to get ModelIndex for column ".concat(e));return i}getModelRow(e){var t,r,i=(t=this.metrics)===null||t===void 0||(r=t.modelRows)===null||r===void 0?void 0:r.get(e);if(i===void 0)throw new Error("Unable to get ModelIndex for row ".concat(e));return i}toggleRowExpanded(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,r=this.getModelRow(e),{model:i}=this.props;xe(i)&&i.isRowExpandable(r)&&i.setRowExpanded(r,!i.isRowExpanded(r),t),this.clearSelectedRanges(),this.commitSelection(),this.moveCursorToPosition(0,e),this.commitSelection(),this.setState({isStuckToBottom:!1})}scrollToBottom(){if(this.metrics){var{bottomVisible:e,rowCount:t,top:r,lastTop:i}=this.metrics;(e<t-1&&e>0||r>i)&&this.setState({top:i})}}scrollToRight(){if(this.metrics){var{rightVisible:e,columnCount:t,left:r,lastLeft:i}=this.metrics;(e<t-1&&e>0||r>i)&&this.setState({left:i})}}setSelectedRanges(e){var{model:t}=this.props,{columnCount:r,rowCount:i}=t,{cursorRow:a,cursorColumn:l,selectedRanges:s}=this.state;if(this.setState({selectedRanges:e,lastSelectedRanges:s}),e.length>0){var o=U.boundedRange(e[0],r,i),u=a,d=l;o.containsCell(l,a)||({row:u,column:d}=o.startCell()),this.setState({selectionStartColumn:o.startColumn,selectionStartRow:o.startRow,selectionEndColumn:o.endColumn,selectionEndRow:o.endRow,cursorColumn:d,cursorRow:u})}}initContext(){var{canvas:e}=this,{canvasOptions:t}=this.props;if(!e)throw new Error("Canvas not set");this.canvasContext=e.getContext("2d",t)}requestUpdateCanvas(){this.animationFrame==null&&(this.animationFrame=requestAnimationFrame(()=>{this.animationFrame=null,this.updateCanvas()}))}updateCanvas(){this.updateCanvasScale(),this.updateMetrics(),this.updateRenderState();var{canvasContext:e,metrics:t,renderState:r}=this;L(e),L(t),L(r),this.renderer.configureContext(e,r);var{onViewChanged:i}=this.props;i(t),this.drawCanvas(t)}updateCanvasScale(){var{canvas:e,canvasContext:t}=this;if(!e)throw new Error("canvas not set");if(!t)throw new Error("canvasContext not set");if(!e.parentElement)throw new Error("Canvas has no parent element");var r=Vt.getScale(t),i=e.parentElement.getBoundingClientRect(),a=Math.floor(i.width),l=Math.floor(i.height);e.style.width="".concat(a,"px"),e.style.height="".concat(l,"px"),e.width=a*r,e.height=l*r,t.scale(r,r)}updateScrollBounds(){if(!this.metrics)throw new Error("metrics not set");var{left:e,top:t}=this.state,{lastLeft:r,lastTop:i}=this.metrics;e>r&&this.setState({left:r,leftOffset:0}),t>i&&this.setState({top:i,topOffset:0})}checkStickyScroll(){if(this.metrics){if(this.prevMetrics){var{rowCount:e,columnCount:t,height:r,width:i}=this.metrics,{rowCount:a,columnCount:l,height:s,width:o}=this.prevMetrics;if(a!==e||r!==s){var{isStuckToBottom:u}=this.state;u&&this.scrollToBottom()}if(l!==t||i!==o){var{isStuckToRight:d}=this.state;d&&this.scrollToRight()}}this.prevMetrics=this.metrics}}updateMetrics(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.state;this.prevMetrics=this.metrics;var{metricCalculator:t}=this,r=this.getMetricState(e);return this.metrics=t.getMetrics(r),this.updateScrollBounds(),this.metrics}checkSelectionChange(e){var{selectedRanges:t}=e,{selectedRanges:r}=this.state;if(r!==t){var{onSelectionChanged:i}=this.props;i(r)}}validateSelection(){for(var{model:e}=this.props,{selectedRanges:t}=this.state,{columnCount:r,rowCount:i}=e,a=0;a<t.length;a+=1){var l=t[a];if(l.endColumn!=null&&l.endColumn>=r||l.endRow!=null&&l.endRow>=i)return this.setState({selectedRanges:[],lastSelectedRanges:[]}),!1}return!0}clearSelectedRanges(){var{selectedRanges:e}=this.state;this.setState({selectedRanges:[],lastSelectedRanges:e})}trimSelectedRanges(){var{selectedRanges:e}=this.state;e.length>0&&this.setState({selectedRanges:e.slice(e.length-1)})}beginSelection(e,t){this.setState({selectionStartColumn:e,selectionStartRow:t,selectionEndColumn:e,selectionEndRow:t,cursorColumn:e,cursorRow:t})}moveSelection(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;this.setState(a=>{var{selectedRanges:l,selectionStartRow:s,selectionStartColumn:o}=a,{theme:u}=this.props,{autoSelectRow:d,autoSelectColumn:h}=u;if(r&&l.length>0){var v=l[l.length-1],m=null,f=null,g=null,p=null;if(i){var C,S,b,w;m=d!==void 0&&d?null:Math.min(e??0,(C=v.startColumn)!==null&&C!==void 0?C:0),f=h!==void 0&&h?null:Math.min(t??0,(S=v.startRow)!==null&&S!==void 0?S:0),g=d!==void 0&&d?null:Math.max(e??0,(b=v.endColumn)!==null&&b!==void 0?b:0),p=h!==void 0&&h?null:Math.max(t??0,(w=v.endRow)!==null&&w!==void 0?w:0)}else m=v.startColumn,f=v.startRow,(o!=null||s!=null)&&((d===void 0||!d)&&(m=o),(h===void 0||!h)&&(f=s)),g=d!==void 0&&d?null:e,p=h!==void 0&&h?null:t;var y=U.makeNormalized(m,f,g,p);if(v.equals(y))return null;var T=[...l];return T[T.length-1]=y,{selectedRanges:T,selectionEndColumn:e,selectionEndRow:t}}var E=[...l],P=d!==void 0&&d?null:e,O=h!==void 0&&h?null:t;return E.push(U.makeNormalized(P,O,P,O)),{selectedRanges:E,selectionEndColumn:e,selectionEndRow:t}})}commitSelection(){this.setState(e=>{var{theme:t}=this.props,{autoSelectRow:r}=t,{selectedRanges:i,lastSelectedRanges:a,cursorRow:l,cursorColumn:s}=e;if(i.length===1&&(r!==void 0&&r?U.rowCount(i)===1:U.cellCount(i)===1)&&U.rangeArraysEqual(i,a))return{selectedRanges:[],lastSelectedRanges:[],cursorColumn:null,cursorRow:null};var o=i.slice();if(o.length>1){for(var u=o[o.length-1],d=0;d<o.length-1;d+=1){var h=o[d];if(h.contains(u)){var v=h.subtract(u);o.pop(),o.splice(d,1),o=o.concat(v);break}}o=U.consolidate(o)}var m=s,f=l;if(!U.containsCell(o,s,l)){var{model:g}=this.props,{columnCount:p,rowCount:C}=g,S=U.nextCell(U.boundedRanges(i,p,C));S!=null?{column:m,row:f}=S:(m=null,f=null)}return o.length===0&&(m=null,f=null),{cursorRow:f,cursorColumn:m,selectedRanges:o,lastSelectedRanges:i}})}setFocusRow(e){var t;if(!(!this.metrics||!this.prevMetrics)){var{gridY:r,height:i,lastTop:a,userRowHeights:l,rowHeight:s}=this.metrics,o=i-r,u=Math.round(o/2)+((t=l.get(e))!==null&&t!==void 0?t:s),d=this.getMetricState(),h=this.metricCalculator.getLastTop(d,e+1,u);this.setState({top:Math.min(a,h),selectedRanges:[new U(null,e,null,e)],isStuckToBottom:!1});var{cursorColumn:v}=this.state;this.moveCursorToPosition(v,e,!1,!1)}}selectAll(){var{model:e,theme:t}=this.props,{autoSelectRow:r,autoSelectColumn:i}=t,a=i!==void 0&&i?null:0,l=i!==void 0&&i?null:e.rowCount-1,s=r!==void 0&&r?null:0,o=r!==void 0&&r?null:e.columnCount-1;this.setSelectedRanges([new U(s,a,o,l)])}moveCursor(e,t,r){var{cursorRow:i,cursorColumn:a,selectionEndColumn:l,selectionEndRow:s}=this.state,o=r?l:a,u=r?s:i;if(u===null||o===null){var{left:d,top:h}=this.state;this.moveCursorToPosition(d,h,r)}else{var{model:v}=this.props,{columnCount:m,rowCount:f}=v,g=Ae(o+e,0,m-1),p=Ae(u+t,0,f-1);this.moveCursorToPosition(g,p,r)}}moveCursorInDirection(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:U.SELECTION_DIRECTION.DOWN,{model:t}=this.props,{columnCount:r,rowCount:i}=t,{cursorRow:a,cursorColumn:l,selectedRanges:s}=this.state,o=s.length>0?s:[U.makeCell(l,a)],u=null;if(o.length===1&&U.cellCount(o)===1){var d,h=new U(0,0,r-1,i-1);u=(d=h.nextCell(l,a,e))!==null&&d!==void 0?d:h.startCell(e)}else u=U.nextCell(U.boundedRanges(o,r,i),l,a,e);if(u!=null){var{column:v,row:m}=u;this.setState({cursorColumn:v,cursorRow:m}),U.containsCell(s,v,m)||this.setState({selectedRanges:[U.makeCell(v,m)],selectionStartColumn:v,selectionStartRow:m,selectionEndColumn:v,selectionEndRow:m}),this.moveViewToCell(u.column,u.row)}}moveCursorToPosition(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;r||this.beginSelection(e,t),this.moveSelection(e,t,r,a),i&&this.moveViewToCell(e,t)}moveViewToCell(e,t){if(!this.metrics)throw new Error("metrics not set");var{metricCalculator:r}=this,{bottomVisible:i,rightVisible:a,topVisible:l,leftVisible:s}=this.metrics,o=this.getMetricState(this.state),{top:u,left:d,topOffset:h,leftOffset:v}=this.state;t!=null&&!ee.isFloatingRow(t,this.metrics)&&(t<l?(u=r.getTopForTopVisible(o,t),h=0):t>i&&(u=r.getTopForBottomVisible(o,t),h=0)),e!=null&&!ee.isFloatingColumn(e,this.metrics)&&(e<s?(d=r.getLeftForLeftVisible(o,e),v=0):e>a&&(d=r.getLeftForRightVisible(o,e),v=0)),this.setViewState({top:u,left:d,topOffset:h,leftOffset:v})}setViewState(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;if(!this.metrics)throw new Error("metrics not set");var{isStickyBottom:r,isStickyRight:i}=this.props,{top:a,left:l}=e,{lastTop:s,lastLeft:o}=this.metrics;a!=null&&this.setState({isStuckToBottom:r&&a>=s}),l!=null&&this.setState({isStuckToRight:i&&l>=o}),this.setState(e),t&&this.forceUpdate()}startEditing(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3?arguments[3]:void 0,a=arguments.length>4?arguments[4]:void 0,{model:l}=this.props;if(!He(l))throw new Error("model is not editable");var s=this.getModelColumn(e),o=this.getModelRow(t),u={column:e,row:t,selectionRange:i,value:a!==void 0?a:l.editValueForCell(s,o),isQuickEdit:r};this.setState({editingCell:u,cursorColumn:e,cursorRow:t}),this.moveViewToCell(e,t)}isValidForCell(e,t,r){var{model:i}=this.props,a=this.getModelColumn(e),l=this.getModelRow(t);return He(i)&&i.isValidForCell(a,l,r)}pasteValue(e){var t=this;return Dg(function*(){var{model:r}=t.props,{movedColumns:i,movedRows:a,selectedRanges:l}=t.state;try{if(Ro(r),!r.isEditable||!l.every(p=>r.isEditableRange(p)))throw new El("Can't paste in to read-only area.");if(l.length<=0)throw new El("Select an area to paste to.");if(typeof e=="string"){var s=[],o=ee.getModelRanges(l,i,a);U.forEachCell(o,(p,C)=>{s.push({column:p,row:C,text:e})}),yield r.setValues(s);return}var u=e.length,d=e[0].length,{columnCount:h,rowCount:v}=r,m=l;if(m.every(p=>{var C,S;return U.cellCount([p])===1&&((C=p.startColumn)!==null&&C!==void 0?C:0)+d<=h&&((S=p.startRow)!==null&&S!==void 0?S:0)+u<=v})&&(m=m.map(p=>{var C,S;return new U(p.startColumn,p.startRow,((C=p.startColumn)!==null&&C!==void 0?C:0)+d-1,((S=p.startRow)!==null&&S!==void 0?S:0)+u-1)}),t.setSelectedRanges(m)),!m.every(p=>U.rowCount([p])===u&&U.columnCount([p])===d))throw new El("Copy and paste area are not same size.");var f=[];m.forEach(p=>{for(var C=0;C<d;C+=1)for(var S=0;S<u;S+=1){var b,w;f.push({column:((b=p.startColumn)!==null&&b!==void 0?b:0)+C,row:((w=p.startRow)!==null&&w!==void 0?w:0)+S,text:e[S][C]})}}),yield r.setValues(f)}catch(p){var{onError:g}=t.props;g(p instanceof Error?p:new Error("".concat(p)))}})()}setValueForCell(e,t,r){var{model:i}=this.props;Ro(i);var a=this.getModelColumn(e),l=this.getModelRow(t);return i.isValidForCell(a,l,r)?(i.setValueForCell(a,l,r),!0):!1}setValueForRanges(e,t){var{model:r}=this.props,{movedColumns:i,movedRows:a}=this.state,l=ee.getModelRanges(e,i,a);He(r)&&r.setValueForRanges(l,t)}isSelected(e,t){for(var{selectedRanges:r}=this.state,i=0;i<r.length;i+=1){var a,l,s=r[i],o=s.startRow===null||s.startRow<=e&&e<=((a=s.endRow)!==null&&a!==void 0?a:0),u=s.startColumn===null||s.startColumn<=t&&t<=((l=s.endColumn)!==null&&l!==void 0?l:0);if(o&&u)return!0}return!1}addDocumentCursor(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:null;this.documentCursor!==Vt.getCursorClassName(e)&&(this.documentCursor!=null&&document.documentElement.classList.remove(this.documentCursor),this.documentCursor=Vt.getCursorClassName(e),this.documentCursor!=null&&document.documentElement.classList.add(this.documentCursor),document.documentElement.classList.add("grid-block-events"))}removeDocumentCursor(){this.documentCursor!=null&&(document.documentElement.classList.remove(this.documentCursor),document.documentElement.classList.remove("grid-block-events"),this.documentCursor=null)}startDragTimer(e){this.stopDragTimer();var t=new MouseEvent("custom",e.nativeEvent);this.dragTimer=setTimeout(()=>{this.handleMouseDrag(t)},Vt.dragTimeout)}stopDragTimer(){this.dragTimer&&(clearTimeout(this.dragTimer),this.dragTimer=null)}drawCanvas(){if(arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.updateMetrics(),!this.canvas)throw new Error("canvas is not set");if(!this.canvasContext)throw new Error("context not set");var{renderer:e,canvasContext:t,renderState:r}=this;t.save(),e.drawCanvas(r),t.restore()}focus(){var e;(e=this.canvas)===null||e===void 0||e.focus()}isFocused(){return document.activeElement===this.canvas}handleClick(e){for(var t,r=this.getGridPointFromEvent(e),i=this.getMouseHandlers(),a=0;a<i.length;a+=1){var l=i[a];if(l.onClick(r,this,e)!==!1){e.stopPropagation(),e.preventDefault();break}}(t=this.canvas)===null||t===void 0||t.focus()}handleContextMenu(e){for(var t=this.getGridPointFromEvent(e),r=this.getMouseHandlers(),i=0;i<r.length;i+=1){var a=r[i];if(a.onContextMenu(t,this,e)!==!1){e.stopPropagation(),e.preventDefault();break}}}handleKeyDown(e){for(var t=this.getKeyHandlers(),r=0;r<t.length;r+=1){var i=t[r],a=i.onDown(e,this);if(a!==!1){var l,s,o=a;(!((l=o?.stopPropagation)!==null&&l!==void 0)||l)&&e.stopPropagation(),(!((s=o?.preventDefault)!==null&&s!==void 0)||s)&&e.preventDefault();break}}}notifyMouseHandlers(e,t){for(var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,a=this.getGridPointFromEvent(t),l=this.getMouseHandlers(),s=null,o=0;o<l.length;o+=1){var u=l[o],d=u[e]!=null&&u[e](a,this,t);if(d!==!1){var h,v;u.cursor!=null&&({cursor:s}=u,i&&this.addDocumentCursor(s));var m=d;(!((h=m?.stopPropagation)!==null&&h!==void 0)||h)&&t.stopPropagation(),(!((v=m?.preventDefault)!==null&&v!==void 0)||v)&&t.preventDefault();break}}if(this.setState({cursor:s}),r){var{x:f,y:g}=a;this.setState({mouseX:f,mouseY:g})}}handleMouseDown(e){window.addEventListener("mousemove",this.handleMouseDrag,!0),window.addEventListener("mouseup",this.handleMouseUp,!0),!(e.button!=null&&e.button!==0)&&(this.notifyMouseHandlers("onDown",e),this.startDragTimer(e))}handleDoubleClick(e){this.notifyMouseHandlers("onDoubleClick",e)}handleMouseMove(e){this.notifyMouseHandlers("onMove",e)}handleMouseLeave(e){this.notifyMouseHandlers("onLeave",e,!1),this.setState({mouseX:null,mouseY:null})}handleMouseDrag(e){this.setState({isDragging:!0}),this.notifyMouseHandlers("onDrag",e,!0,!0),this.stopDragTimer()}handleMouseUp(e){window.removeEventListener("mousemove",this.handleMouseDrag,!0),window.removeEventListener("mouseup",this.handleMouseUp,!0),!(e.button!=null&&e.button!==0)&&(this.notifyMouseHandlers("onUp",e,!1),this.stopDragTimer(),this.removeDocumentCursor())}handleResize(){if(this.updateCanvas(),!this.metrics)throw new Error("metrics not set");this.forceUpdate()}handleWheel(e){if(this.notifyMouseHandlers("onWheel",e),!e.defaultPrevented){var{metricCalculator:t,metrics:r}=this,i=this.getMetricState();if(!r)throw new Error("metrics not set");for(var{lastTop:a,lastLeft:l,columnCount:s,rowCount:o,scrollableContentWidth:u,scrollableViewportWidth:d,scrollableContentHeight:h,scrollableViewportHeight:v,hasHorizontalBar:m,hasVerticalBar:f}=r,{top:g,left:p,topOffset:C,leftOffset:S}=r,b=this.getTheme(),{deltaX:w,deltaY:y}=ee.getScrollDelta(e,r.barWidth,r.barHeight,r.rowHeight,r.rowHeight);m&&w!==0;){if(S+=w,w=0,s>1){if(S>0&&p>=l||S<0&&p<=0){S=0;break}}else{if(S<=0){S=0;break}var T=u-d;if(S>=T){S=T;break}}if(S>0){var E,P=(E=r.allColumnWidths.get(p))!==null&&E!==void 0?E:t.getVisibleColumnWidth(p,i);S>=P?(w=S-P,S=0,p+=1):b.scrollSnapToColumn&&s>1&&(S=0,p+=1)}else if(S<0){var O,D=(O=r.allColumnWidths.get(p-1))!==null&&O!==void 0?O:t.getVisibleColumnWidth(p-1,i);Math.abs(S)<=D&&b.scrollSnapToColumn&&s>1?(S=0,p-=1):(w=S+D,S=0,p-=1)}}for(;f&&y!==0;){if(C+=y,y=0,o>1){if(C>0&&g>=a||C<0&&g<=0){C=0;break}}else{if(C<=0){C=0;break}var N=h-v;if(C>=N){C=N;break}}if(C>0){var F,A=(F=r.allRowHeights.get(g))!==null&&F!==void 0?F:t.getVisibleRowHeight(g,i);C>=A?(y=C-A,C=0,g+=1):b.scrollSnapToRow&&o>1&&(C=0,g+=1)}else if(C<0){var j,k=(j=r.allRowHeights.get(g-1))!==null&&j!==void 0?j:t.getVisibleRowHeight(g-1,i);Math.abs(C)<=k&&b.scrollSnapToRow&&o>1?(C=0,g-=1):(y=C+k,C=0,g-=1)}}this.setViewState({top:g,left:p,leftOffset:S,topOffset:C}),e.stopPropagation(),e.preventDefault()}}handleEditCellCancel(){this.setState({editingCell:null}),this.focus()}handleEditCellChange(e){this.setState(t=>{var{editingCell:r}=t;try{return Po(r),{editingCell:Sn(Sn({},r),{},{value:e})}}catch(a){var{onError:i}=this.props;return i(a instanceof Error?a:new Error("".concat(a))),null}})}handleEditCellCommit(e){var{direction:t=er.DOWN,fillRange:r=!1}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},{editingCell:i,selectedRanges:a}=this.state;if(!i)throw new Error("editingCell not set");var{column:l,row:s}=i;if(!this.isValidForCell(l,s,e)){t===null&&this.setState({editingCell:null});return}r?this.setValueForRanges(a,e):this.setValueForCell(l,s,e),t!==null&&this.moveCursorInDirection(t),this.setState({editingCell:null}),this.focus()}renderInputField(){var{model:e}=this.props,{editingCell:t}=this.state,{metrics:r}=this;if(t==null||r==null||!He(e))return null;var{selectionRange:i,value:a,isQuickEdit:l}=t,{column:s,row:o}=t,{gridX:u,gridY:d,allColumnXs:h,allRowYs:v,allColumnWidths:m,allRowHeights:f}=r,g=h.get(s),p=v.get(o),C=m.get(s),S=f.get(o),b=g!=null&&p!=null&&C!=null&&S!=null?{position:"absolute",left:u+g,top:d+p,width:C,height:S}:{opacity:0},w=this.getModelColumn(s),y=this.getModelRow(o),T=w!=null&&y!=null?{textAlign:e.textAlignForCell(w,y)}:void 0,E=e.isValidForCell(w,y,a);return c.jsx("div",{style:b,children:c.jsx(Is,{selectionRange:i,className:re({error:!E}),onCancel:this.handleEditCellCancel,onChange:this.handleEditCellChange,onDone:this.handleEditCellCommit,isQuickEdit:l,style:T,value:a},"".concat(s,",").concat(o))})}updateRenderState(){if(!this.canvas)throw new Error("canvas is not set");if(!this.canvasContext)throw new Error("context not set");var{cursorColumn:e,cursorRow:t,draggingColumn:r,draggingColumnSeparator:i,draggingRow:a,draggingRowOffset:l,draggingRowSeparator:s,editingCell:o,isDraggingHorizontalScrollBar:u,isDraggingVerticalScrollBar:d,isDragging:h,mouseX:v,mouseY:m,selectedRanges:f}=this.state,{model:g,stateOverride:p}=this.props,{metrics:C}=this,S=this.canvasContext,b=this.getTheme(),w=this.canvas.clientWidth,y=this.canvas.clientHeight;return L(C),this.renderState=Sn({width:w,height:y,context:S,theme:b,model:g,metrics:C,mouseX:v,mouseY:m,selectedRanges:f,draggingColumn:r,draggingColumnSeparator:i,draggingRow:a,draggingRowOffset:l,draggingRowSeparator:s,editingCell:o,isDraggingHorizontalScrollBar:u,isDraggingVerticalScrollBar:d,isDragging:h,cursorColumn:e,cursorRow:t},p),this.renderState}render(){var{cursor:e}=this.state;return c.jsxs(c.Fragment,{children:[c.jsx("canvas",{className:re("grid-canvas",Vt.getCursorClassName(e)),ref:t=>{this.canvas=t},onClick:this.handleClick,onContextMenu:this.handleContextMenu,onDoubleClick:this.handleDoubleClick,onKeyDown:this.handleKeyDown,onMouseDown:this.handleMouseDown,onMouseMove:this.handleMouseMove,onMouseLeave:this.handleMouseLeave,tabIndex:0,children:"Your browser does not support HTML canvas. Update your browser?"}),this.renderInputField()]})}}Xe(Vt,"contextType",Rg);Xe(Vt,"defaultProps",{canvasOptions:{alpha:!1},isStickyBottom:!1,isStickyRight:!1,isStuckToBottom:!1,isStuckToRight:!1,keyHandlers:Re,mouseHandlers:Re,movedColumns:Re,movedRows:Re,onError:()=>{},onSelectionChanged:()=>{},onMovedColumnsChanged:n=>{},onMoveColumnComplete:()=>{},onMovedRowsChanged:()=>{},onMoveRowComplete:()=>{},onViewChanged:n=>{},onTokenClicked:n=>{Oa(n)&&window.open(n.href,"_blank","noopener,noreferrer")},stateOverride:{},theme:{autoSelectColumn:!1,autoSelectRow:!1}});Xe(Vt,"pixelsPerLine",100/3);Xe(Vt,"dragTimeout",1e3);Xe(Vt,"getTheme",Se((n,e)=>Sn(Sn(Sn({},rf),n),e)));const Ig=Vt;function Ag(n,e,t){return e=Mg(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Mg(n){var e=xg(n,"string");return typeof e=="symbol"?e:String(e)}function xg(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ol=5e3;class Lg extends jc{constructor(){super(...arguments),Ag(this,"getCachedTokensInText",mr((e,t)=>{if(t>=e.length)return ee.findTokensWithProtocolInText(e);var r=e.slice(t-1,Ol).search(/\s/),i=t+r;r===-1&&(i=Math.min(Ol,e.length));var a=e.substring(0,i);return ee.findTokensWithProtocolInText(a)}))}get floatingTopRowCount(){return 0}get floatingBottomRowCount(){return 0}get floatingLeftColumnCount(){return 0}get floatingRightColumnCount(){return 0}get columnHeaderMaxDepth(){return 1}truncationCharForCell(e,t){}textAlignForCell(e,t){return"left"}colorForCell(e,t,r){return r.textColor}backgroundColorForCell(e,t,r){return null}colorForColumnHeader(e){return null}textForRowHeader(e){return""}textForRowFooter(e){return""}isColumnMovable(e){return!0}isRowMovable(e){return!0}getColumnHeaderGroup(e,t){}getColumnHeaderParentGroup(e,t){}tokensForCell(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Ol,i=this.textForCell(e,t);return this.getCachedTokensInText(i,r)}renderTypeForCell(e,t){return"text"}}const kg=Lg;function jg(n,e){var t=Ug(n);if(t!==void 0){var r=zg(n);return"".concat(r," ? ").concat(t," : ").concat(e)}}function _g(n,e){return n.Column.formatRowColor(e)}function Hg(n,e){return n.formatColor(e)}var Pi=fe.module("ConditionalFormattingUtils"),jt;(function(n){n.CONDITIONAL="conditional",n.ROWS="rows"})(jt||(jt={}));var ue;(function(n){n.IS_EQUAL="is-equal",n.IS_NOT_EQUAL="is-not-equal",n.IS_BETWEEN="is-between",n.GREATER_THAN="greater-than",n.GREATER_THAN_OR_EQUAL="greater-than-or-equal",n.LESS_THAN="less-than",n.LESS_THAN_OR_EQUAL="less-than-or-equal",n.IS_NULL="is-null",n.IS_NOT_NULL="is-not-null"})(ue||(ue={}));var we;(function(n){n.IS_EXACTLY="is-exactly",n.IS_NOT_EXACTLY="is-not-exactly",n.CONTAINS="contains",n.DOES_NOT_CONTAIN="does-not-contain",n.STARTS_WITH="starts-with",n.ENDS_WITH="ends-with",n.IS_NULL="is-null",n.IS_NOT_NULL="is-not-null"})(we||(we={}));var pe;(function(n){n.IS_EXACTLY="is-exactly",n.IS_NOT_EXACTLY="is-not-exactly",n.IS_BEFORE="is-before",n.IS_BEFORE_OR_EQUAL="is-before-or-equal",n.IS_AFTER="is-after",n.IS_AFTER_OR_EQUAL="is-after-or-equal",n.IS_NULL="is-null",n.IS_NOT_NULL="is-not-null"})(pe||(pe={}));var rt;(function(n){n.IS_TRUE="is-true",n.IS_FALSE="is-false",n.IS_NULL="is-null",n.IS_NOT_NULL="is-not-null"})(rt||(rt={}));var Ke;(function(n){n.IS_EQUAL="is-equal",n.IS_NOT_EQUAL="is-not-equal",n.IS_NULL="is-null",n.IS_NOT_NULL="is-not-null"})(Ke||(Ke={}));var ye;(function(n){n.NO_FORMATTING="no-formatting",n.POSITIVE="positive",n.NEGATIVE="negative",n.WARN="warn",n.NEUTRAL="neutral",n.ACCENT_1="accent-1",n.ACCENT_2="accent-2",n.CUSTOM="custom"})(ye||(ye={}));function Go(n){switch(n){case ye.NO_FORMATTING:return"No formatting";case ye.POSITIVE:return"Positive";case ye.NEGATIVE:return"Negative";case ye.WARN:return"Warn";case ye.NEUTRAL:return"Neutral";case ye.ACCENT_1:return"Accent 1";case ye.ACCENT_2:return"Accent 2";case ye.CUSTOM:return"Custom..."}}function Ra(n){var{type:e,customConfig:t}=n;switch(e){case ye.NO_FORMATTING:return;case ye.POSITIVE:return"#9fde6f";case ye.NEGATIVE:return"#ff6087";case ye.WARN:return"#f67f40";case ye.NEUTRAL:return"#ffd95c";case ye.ACCENT_1:return"#78dce8";case ye.ACCENT_2:return"#ab9bf5";case ye.CUSTOM:return t?.background;default:return}}function Da(n){var{type:e,customConfig:t}=n;switch(e){case ye.NO_FORMATTING:return;case ye.POSITIVE:return"#526a3f";case ye.NEGATIVE:return"#802f44";case ye.WARN:return"#663318";case ye.NEUTRAL:return"#63562b";case ye.ACCENT_1:return"#3f6469";case ye.ACCENT_2:return"#554d72";case ye.CUSTOM:return t?.color;default:return}}function Ug(n){var e=Da(n.style),t=Ra(n.style);if(!(e===void 0||t===void 0))return"bgfg(`".concat(t,"`, `").concat(e,"`)")}function Vg(n){var{column:e,value:t,start:r,end:i}=n;return np(e.name,n.condition,t,r,i)}function Bg(n){var{column:e,value:t}=n;return ip(e.name,n.condition,t)}function Gg(n){var{column:e,value:t}=n;return ap(e.name,n.condition,t)}function $g(n){var{column:e}=n;return lp(e.name,n.condition)}function Wg(n){var{column:e,value:t}=n;return sp(e.name,n.condition,t)}function zg(n){var{column:e}=n;if(x.isNumberType(e.type))return Vg(n);if(x.isCharType(e.type))return Wg(n);if(x.isStringType(e.type))return Bg(n);if(x.isDateType(e.type))return Gg(n);if(x.isBooleanType(e.type))return $g(n);throw new Error("Invalid column type")}function Kg(n){switch(n){case ue.IS_EQUAL:return"is equal to";case ue.IS_NOT_EQUAL:return"is not equal to";case ue.IS_BETWEEN:return"is between";case ue.GREATER_THAN:return"greater than";case ue.GREATER_THAN_OR_EQUAL:return"greater than or equal to";case ue.LESS_THAN:return"less than";case ue.LESS_THAN_OR_EQUAL:return"less than or equal to";case ue.IS_NULL:return"is null";case ue.IS_NOT_NULL:return"is not null"}}function Yg(n){switch(n){case we.IS_EXACTLY:return"is exactly";case we.IS_NOT_EXACTLY:return"is not exactly";case we.CONTAINS:return"contains";case we.DOES_NOT_CONTAIN:return"does not contain";case we.STARTS_WITH:return"starts with";case we.ENDS_WITH:return"ends with";case we.IS_NULL:return"is null";case we.IS_NOT_NULL:return"is not null"}}function qg(n){switch(n){case pe.IS_EXACTLY:return"is";case pe.IS_NOT_EXACTLY:return"is not";case pe.IS_BEFORE:return"is before";case pe.IS_BEFORE_OR_EQUAL:return"is before or equal";case pe.IS_AFTER:return"is after";case pe.IS_AFTER_OR_EQUAL:return"is after or equal";case pe.IS_NULL:return"is null";case pe.IS_NOT_NULL:return"is not null"}}function Xg(n){switch(n){case rt.IS_TRUE:return"is true";case rt.IS_FALSE:return"is false";case rt.IS_NULL:return"is null";case rt.IS_NOT_NULL:return"is not null"}}function Qg(n){switch(n){case Ke.IS_EQUAL:return"is";case Ke.IS_NOT_EQUAL:return"is not";case Ke.IS_NULL:return"is null";case Ke.IS_NOT_NULL:return"is not null"}}function Th(n){if(x.isNumberType(n))return ue.IS_EQUAL;if(x.isCharType(n))return Ke.IS_EQUAL;if(x.isStringType(n))return we.IS_EXACTLY;if(x.isDateType(n))return pe.IS_EXACTLY;if(x.isBooleanType(n))return rt.IS_TRUE;throw new Error("Invalid column type")}function Eh(n){if(x.isCharType(n)||x.isStringType(n))return""}function Oh(n){var{condition:e,value:t,start:r,end:i}=n;return{condition:e,value:t,start:r,end:i}}function Ga(n){return{condition:Th(n),value:Eh(n),start:void 0,end:void 0}}function Ph(){return{type:ye.NO_FORMATTING}}function Zg(n){switch(n){case we.IS_EXACTLY:return"==";case we.IS_NOT_EXACTLY:return"!=";case we.CONTAINS:return"contains";case we.DOES_NOT_CONTAIN:return"does not contain";case we.STARTS_WITH:return"starts with";case we.ENDS_WITH:return"ends with";case we.IS_NULL:return"is null";case we.IS_NOT_NULL:return"is not null"}}function Jg(n){switch(n){case pe.IS_EXACTLY:return"==";case pe.IS_NOT_EXACTLY:return"!=";case pe.IS_BEFORE:return"<";case pe.IS_BEFORE_OR_EQUAL:return"<=";case pe.IS_AFTER:return">";case pe.IS_AFTER_OR_EQUAL:return">=";case pe.IS_NULL:return"is null";case pe.IS_NOT_NULL:return"is not null"}}function ep(n){switch(n){case rt.IS_TRUE:return"is true";case rt.IS_FALSE:return"is false";case rt.IS_NULL:return"is null";case rt.IS_NOT_NULL:return"is not null"}}function tp(n){switch(n){case Ke.IS_EQUAL:return"==";case Ke.IS_NOT_EQUAL:return"!=";case Ke.IS_NULL:return"is null";case Ke.IS_NOT_NULL:return"is not null"}}function rp(n){switch(n){case ue.IS_EQUAL:return"==";case ue.IS_NOT_EQUAL:return"!=";case ue.IS_BETWEEN:return"==";case ue.GREATER_THAN:return">";case ue.GREATER_THAN_OR_EQUAL:return">=";case ue.LESS_THAN:return"<";case ue.LESS_THAN_OR_EQUAL:return"<=";case ue.IS_NULL:return"is null";case ue.IS_NOT_NULL:return"is not null"}}function np(n,e,t,r,i){switch(e){case ue.IS_EQUAL:return"".concat(n," == ").concat(t);case ue.IS_NOT_EQUAL:return"".concat(n," != ").concat(t);case ue.IS_BETWEEN:return"".concat(n," > ").concat(r," && ").concat(n," < ").concat(i);case ue.GREATER_THAN:return"".concat(n," > ").concat(t);case ue.GREATER_THAN_OR_EQUAL:return"".concat(n," >= ").concat(t);case ue.LESS_THAN:return"".concat(n," < ").concat(t);case ue.LESS_THAN_OR_EQUAL:return"".concat(n," <= ").concat(t);case ue.IS_NULL:return"".concat(n," == null");case ue.IS_NOT_NULL:return"".concat(n," != null")}}function ip(n,e,t){switch(e){case we.IS_EXACTLY:return"".concat(n,' == "').concat(t,'"');case we.IS_NOT_EXACTLY:return"".concat(n,' != "').concat(t,'"');case we.CONTAINS:return"".concat(n," != null && ").concat(n,'.contains("').concat(t,'")');case we.DOES_NOT_CONTAIN:return"".concat(n," != null && !").concat(n,'.contains("').concat(t,'")');case we.STARTS_WITH:return"".concat(n," != null && ").concat(n,'.startsWith("').concat(t,'")');case we.ENDS_WITH:return"".concat(n," != null && ").concat(n,'.endsWith("').concat(t,'")');case we.IS_NULL:return"".concat(n," == null");case we.IS_NOT_NULL:return"".concat(n," != null")}}function ap(n,e,t){switch(e){case pe.IS_EXACTLY:return"".concat(n,' == convertDateTime("').concat(t,'")');case pe.IS_NOT_EXACTLY:return"".concat(n," != convertDateTime(`").concat(t,"`)");case pe.IS_BEFORE:return"".concat(n," < convertDateTime(`").concat(t,"`)");case pe.IS_BEFORE_OR_EQUAL:return"".concat(n,' <= convertDateTime("').concat(t,'")');case pe.IS_AFTER:return"".concat(n," > convertDateTime(`").concat(t,"`)");case pe.IS_AFTER_OR_EQUAL:return"".concat(n," >= convertDateTime(`").concat(t,"`)");case pe.IS_NULL:return"".concat(n," == null");case pe.IS_NOT_NULL:return"".concat(n," != null")}}function lp(n,e){switch(e){case rt.IS_TRUE:return"".concat(n," == true");case rt.IS_FALSE:return"".concat(n," == false");case rt.IS_NULL:return"".concat(n," == null");case rt.IS_NOT_NULL:return"".concat(n," != null")}}function sp(n,e,t){switch(e){case Ke.IS_EQUAL:return"".concat(n," == '").concat(t,"'");case Ke.IS_NOT_EQUAL:return"".concat(n," != '").concat(t,"'");case Ke.IS_NULL:return"isNull(".concat(n,")");case Ke.IS_NOT_NULL:return"!isNull(".concat(n,")")}}function op(n,e){if(x.isNumberType(n))return rp(e);if(x.isCharType(n))return tp(e);if(x.isStringType(n))return Zg(e);if(x.isDateType(n))return Jg(e);if(x.isBooleanType(n))return ep(e);throw new Error("Invalid column type")}function up(n,e,t){if(t===void 0)return Pi.debug("no rules passed."),[];var r=[],i,a=new Map;return t.forEach(l=>{var s,{config:o,type:u}=l,{column:d}=o,h=e.find(C=>{var{name:S,type:b}=C;return S===d.name&&b===d.type});if(h===void 0){Pi.debug("Column ".concat(d.name,":").concat(d.type," not found. Ignoring format rule."),o);return}var[v,m]=(s=u===jt.CONDITIONAL?a.get(h.name):i)!==null&&s!==void 0?s:["null",void 0],f=jg(o,v);if(f===void 0){Pi.debug("Ignoring format rule.",o);return}var g=m===void 0?-1:r.indexOf(m);g>-1&&r.splice(g,1);var p=u===jt.CONDITIONAL?Hg(h,f):_g(n,f);r.push(p),u===jt.CONDITIONAL?a.set(h.name,[f,p]):i=[f,p]}),r}function dp(n,e,t){switch(e){case pe.IS_NULL:case pe.IS_NOT_NULL:return!0;default:{var[r,...i]=(t??"").split(" "),a=i.join(" ");try{Tn.parseDateTimeString(r)}catch{return Pi.debug("Invalid datetime string",r),!1}try{n.i18n.TimeZone.getTimeZone(a)}catch{return Pi.debug("Invalid timezone string",a),!1}return!0}}}function hp(n){var{type:e}=n;return x.isNumberType(e)||x.isCharType(e)||x.isStringType(e)||x.isDateType(e)||x.isBooleanType(e)}function $a(n){var{animation:e="iris-grid-bottom-bar-slide-up",children:t,className:r,isShown:i,onClick:a,onEntering:l,onEntered:s,onExiting:o,onExited:u}=n;return c.jsx(vr,{in:i,timeout:ze.transitionMs,classNames:e,onEntering:l,onEntered:s,onExiting:o,onExited:u,mountOnEnter:!0,unmountOnExit:!0,children:c.jsx("div",{className:re("iris-grid-bottom-bar",r),role:"presentation",onClick:a,onKeyPress:a,children:t})})}var cp=3e3,vp=5;function mp(n){var{isSaving:e=!1,onSave:t,onDiscard:r,discardTooltip:i,saveTooltip:a,error:l,pendingDataErrors:s,pendingDataMap:o,onEntering:u,onEntered:d,onExiting:h,onExited:v}=n,[m,f]=R.useState(!1),[g,p]=R.useState(!1),C=R.useRef(),S=Qd(e),b=R.useMemo(()=>s.size===0?l:s.size<=vp?"Key can't be empty (on pending row".concat(s.size>1?"s":""," ").concat(Array.from(s.keys()).join(", ").trim(),")"):"Key can't be empty (on ".concat(s.size," rows)"),[l,s]);R.useEffect(function(){S!=null&&S&&!e&&b==null&&(f(!0),p(!0),C.current=setTimeout(()=>{f(!1)},cp))},[b,e,S]),R.useEffect(function(){C.current&&o.size>0&&(clearTimeout(C.current),f(!1),p(!1))},[o]),R.useEffect(function(){return()=>C.current?clearTimeout(C.current):void 0},[]);var w=o.size,y;return e?y=c.jsx(Dn,{className:"loading-spinner-vertical-align"}):g&&(y=ps),c.jsxs($a,{className:"pending-data-bottom-bar",isShown:w>0||m||b!=null,onEntering:u,onEntered:d,onExiting:h,onExited:()=>{p(!1),v&&v()},children:[b!=null&&b!==""&&c.jsxs("div",{className:"error-message",children:[c.jsx(le,{icon:Wn}),c.jsx("span",{children:"".concat(b)})]}),(b==null||b==="")&&c.jsx("div",{className:"status-message",children:w>0&&c.jsx("span",{children:"".concat(w," row").concat(w>1?"s":""," pending")})}),c.jsxs("div",{className:"buttons-container",children:[!e&&!g&&c.jsx(Y,{kind:"secondary",onClick:r,tooltip:i,children:"Discard"}),c.jsxs(Y,{kind:g?"success":"primary",onClick:t,icon:y,disabled:e||g||b!=null,tooltip:a,children:[e&&"Committing...",!e&&g&&"Success",!e&&!g&&"Commit"]})]})]})}var zl;(function(n){n.COUNT="Count",n.MIN="Min",n.MAX="Max",n.SUM="Sum",n.ABS_SUM="AbsSum",n.VAR="Var",n.AVG="Avg",n.STD="Std",n.FIRST="First",n.LAST="Last",n.SKIP="Skip",n.COUNT_DISTINCT="CountDistinct",n.DISTINCT="Distinct",n.UNIQUE="Unique"})(zl||(zl={}));const Ie=zl;var fp=[Ie.SUM,Ie.ABS_SUM,Ie.MIN,Ie.MAX,Ie.VAR,Ie.AVG,Ie.STD,Ie.FIRST,Ie.LAST,Ie.COUNT_DISTINCT,Ie.DISTINCT,Ie.COUNT,Ie.UNIQUE],gp=n=>{switch(n){default:return!1}},pp=(n,e)=>{switch(n){case Ie.COUNT:case Ie.FIRST:case Ie.LAST:case Ie.COUNT_DISTINCT:case Ie.DISTINCT:case Ie.UNIQUE:return!0;case Ie.MIN:case Ie.MAX:return x.isNumberType(e)||x.isDateType(e)||x.isTextType(e);case Ie.SUM:case Ie.ABS_SUM:case Ie.VAR:case Ie.AVG:case Ie.STD:return x.isNumberType(e);case Ie.SKIP:return!1}},As=(n,e)=>n.filter(t=>pp(e,t.type)),Cp=(n,e,t,r)=>As(n,e).map(i=>{var{name:a}=i;return a}).filter(i=>t.includes(i)?!r:r);const on={isRollupOperation:gp,filterValidColumns:As,getOperationColumnNames:Cp};var Kl;(function(n){n.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS="filter-control-change-clears-all-filters",n.LINK_CHANGE_CLEARS_ALL_FILTERS="link-change-clears-all-filters"})(Kl||(Kl={}));const Yn=Kl;var Sp=Object.freeze([[Yn.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS,!1],[Yn.LINK_CHANGE_CLEARS_ALL_FILTERS,!1]]);const Rh={DEFAULTS:Sp};function rn(n,e,t){return e=bp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function bp(n){var e=wp(n,"string");return typeof e=="symbol"?e:String(e)}function wp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var yp=fe.module("ColumnHeaderGroup");function Pl(n){return n instanceof Zt}class Zt{constructor(e){var{name:t,children:r,color:i,depth:a,childIndexes:l,parent:s}=e;rn(this,"name",void 0),rn(this,"children",void 0),rn(this,"depth",void 0),rn(this,"parent",void 0),rn(this,"color",void 0),rn(this,"childIndexes",void 0),rn(this,"getVisibleRange",Se(o=>{var u=this.childIndexes.flat(),d=K.getVisibleIndexes(u,o),h=Math.min(...d),v=Math.max(...d);return v-h!==u.length-1&&yp.warn("Column header group ".concat(this.name," is not contiguous")),[h,v]})),this.name=t,this.children=r,this.color=i,this.depth=a,this.childIndexes=l,this.parent=s}setParent(e){this.parent=e}addChildren(e){var t=new Set(this.children.concat(e));this.children=[...t]}removeChildren(e){var t=new Set(this.children);e.forEach(r=>t.delete(r)),this.children=[...t]}get isNew(){return this.name.startsWith(Zt.NEW_GROUP_PREFIX)}}rn(Zt,"NEW_GROUP_PREFIX",":newGroup");var Tp=["selectedValues"],Ep=["selectedValues"];function $o(n,e){if(n==null)return{};var t=Op(n,e),r,i;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(n);for(i=0;i<a.length;i++)r=a[i],!(e.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(n,r)&&(t[r]=n[r])}return t}function Op(n,e){if(n==null)return{};var t={},r=Object.keys(n),i,a;for(a=0;a<r.length;a++)i=r[a],!(e.indexOf(i)>=0)&&(t[i]=n[i]);return t}function Wo(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?Wo(Object(t),!0).forEach(function(r){Yl(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Wo(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Yl(n,e,t){return e=Pp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Pp(n){var e=Rp(n,"string");return typeof e=="symbol"?e:String(e)}function Rp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var mi=fe.module("IrisGridUtils");function zr(n,e){return n>=0&&n<e.length}function Dp(n){return n.asDate!=null}class ke{static dehydrateGridState(e,t){var{isStuckToBottom:r,isStuckToRight:i,movedColumns:a,movedRows:l}=t,{columns:s}=e;return{isStuckToBottom:r,isStuckToRight:i,movedColumns:[...a].filter(o=>{var{to:u,from:d}=o;return zr(u,s)&&(typeof d=="number"&&zr(d,s)||Array.isArray(d)&&zr(d[0],s)&&zr(d[1],s))}).map(o=>{var{to:u,from:d}=o;return{to:s[u].name,from:Array.isArray(d)?[s[d[0]].name,s[d[1]].name]:s[d].name}}),movedRows:[...l]}}static hydrateGridState(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[],{isStuckToBottom:i,isStuckToRight:a,movedColumns:l,movedRows:s}=t,{columns:o}=e,u=ke.parseCustomColumnNames(r),d=o.map(h=>{var{name:v}=h;return v}).concat(u);return{isStuckToBottom:i,isStuckToRight:a,movedColumns:[...l].map(h=>{var{to:v,from:m}=h,f=g=>typeof g=="string"?d.findIndex(p=>p===g):g;return{to:f(v),from:Array.isArray(m)?[f(m[0]),f(m[1])]:f(m)}}).filter(h=>{var{to:v,from:m}=h;return zr(v,d)&&(typeof m=="number"&&zr(m,d)||Array.isArray(m)&&zr(m[0],d)&&zr(m[1],d))}),movedRows:[...s]}}static dehydrateIrisGridPanelState(e,t){var{isSelectingPartition:r,partition:i,partitionColumn:a,advancedSettings:l}=t;return{isSelectingPartition:r,partition:i,partitionColumn:a!=null?a.name:null,advancedSettings:[...l]}}static hydrateIrisGridPanelState(e,t){var r,{isSelectingPartition:i,partition:a,partitionColumn:l,advancedSettings:s}=t,{columns:o}=e;return{isSelectingPartition:i,partition:a??null,partitionColumn:l!=null&&(r=ke.getColumnByName(o,l))!==null&&r!==void 0?r:null,advancedSettings:new Map([...Rh.DEFAULTS,...s])}}static dehydrateQuickFilters(e){return[...e].map(t=>{var[r,i]=t,{text:a}=i;return[r,{text:a}]})}static dehydrateLong(e){return e!=null?"".concat(e):null}static dehydrateSort(e){return e.map(t=>{var{column:r,isAbs:i,direction:a}=t;return{column:r.name,isAbs:i,direction:a}})}static extractTableSettings(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],{irisGridPanelState:r,irisGridState:i}=e,{partitionColumn:a,partition:l}=r,{advancedFilters:s,quickFilters:o,sorts:u}=i;return{advancedFilters:s,inputFilters:t,partition:l,partitionColumn:a,quickFilters:o,sorts:u}}static getInputFiltersForColumns(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];return t.filter(r=>{var{name:i,type:a}=r;return e.find(l=>{var{name:s,type:o}=l;return s===i&&o===a})})}static getFiltersFromFilterMap(e){for(var t=[],r=Array.from(e.keys()),i=0;i<r.length;i+=1){var a=r[i],l=e.get(a);l?.filter!=null&&t.push(l.filter)}return t}static getHiddenColumns(e){return[...e.entries()].filter(t=>{var[,r]=t;return r===0}).map(t=>{var[r]=t;return r})}static parseCustomColumnNames(e){return e.map(t=>t.split("=")[0])}static getRemovedCustomColumnNames(e,t){var r=ke.parseCustomColumnNames(e),i=ke.parseCustomColumnNames(t);return r.filter(a=>!i.includes(a))}static removeSortsInColumns(e,t){return e.filter(r=>!t.includes(r.column.name))}static removeFiltersInColumns(e,t,r){var i=e.map(l=>{var{name:s}=l;return s}),a=new Map(t);return r.forEach(l=>a.delete(i.indexOf(l))),a}static removeColumnFromMovedColumns(e,t,r){for(var i=e.map(o=>{var{name:u}=o;return u}),a=[...t],l=function(){for(var u=r[s],d=i.findIndex(C=>C===u),h=[],v=0;v<a.length;v+=1){var m=a[v],f=Ir({},m),[g,p]=Array.isArray(m.from)?m.from:[m.from,m.from];d<=m.to&&(f.to-=1),d<g&&(g-=1),d<=p&&(p-=1),g<=p&&g!==f.to&&(g===p?h.push(Ir(Ir({},f),{},{from:g})):h.push(Ir(Ir({},f),{},{from:[g,p]}))),d=K.applyItemMoves(d,d,[m])[0][0]}a=h,i.splice(i.findIndex(C=>C===u),1)},s=0;s<r.length;s+=1)l();return a}static removeColumnsFromSelectDistinctColumns(e,t){return e.filter(r=>!t.includes(r))}static getVisibleColumnsInRange(e,t,r,i,a){for(var l=[],s=t;s<=r;s+=1){var o=K.getModelIndex(s,i);o>=0&&o<e.length&&!a.includes(o)&&l.push(e[o])}return l}static getPrevVisibleColumns(e,t,r,i,a){for(var l=[],s=t;s>=0&&l.length<r;){var o=K.getModelIndex(s,i);o>=0&&o<e.length&&!a.includes(o)&&l.unshift(e[o]),s-=1}return l}static getNextVisibleColumns(e,t,r,i,a){for(var l=[],s=t;s<e.length&&l.length<r;){var o=K.getModelIndex(s,i);o>=0&&o<e.length&&!a.includes(o)&&l.push(e[o]),s+=1}return l}static getColumnsToFetch(e,t,r){var i=[...t];return r.forEach(a=>{var l=e.find(s=>{var{name:o}=s;return o===a});l!=null&&!t.includes(l)&&i.push(l)}),i}static getModelViewportColumns(e,t,r,i){var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:[],l=arguments.length>5&&arguments[5]!==void 0?arguments[5]:[],s=arguments.length>6&&arguments[6]!==void 0?arguments[6]:0;if(t==null||r==null)return null;var o=ke.getVisibleColumnsInRange(e,t,r,i,a),u=o.length*s,d=ke.getPrevVisibleColumns(e,t-1,u,i,a),h=ke.getNextVisibleColumns(e,r+1,u,i,a),v=[...d,...o,...h];return ke.getColumnsToFetch(e,v,l)}static isValidSnapshotRanges(e){if(e==null||e.length===0)return!1;for(var t=new Map,r=0;r<e.length;r+=1){var i=e[r],a="".concat(i.startRow,":").concat(i.endRow),l="".concat(i.startColumn,":").concat(i.endColumn);t.has(a)||t.set(a,[]),t.get(a).push(l)}for(var s=[...t.keys()],o=t.get(s[0]).sort().join(","),u=1;u<s.length;u+=1)if(t.get(s[u]).sort().join(",")!==o)return!1;return!0}static isValidIndex(e){return!Number.isInteger(e)||typeof e!="number"?!1:e>=0}static columnsFromRanges(e,t){if(e==null||e.length===0)return[];if(e[0].startColumn===null&&e[0].endColumn===null)return[...t];for(var r=new Set,i=0;i<e.length;i+=1){var a=e[i];L(a.startColumn),L(a.endColumn);for(var l=(s=a.startColumn)!==null&&s!==void 0?s:0;l<=((o=a.endColumn)!==null&&o!==void 0?o:t.length-1);l+=1){var s,o;r.add(l)}}return[...r].map(u=>t[u])}static snapshotDataToMatrix(e){for(var{columns:t,rows:r}=e,i=[],a=0;a<r.length;a+=1){for(var l=r[a],s=[],o=0;o<t.length;o+=1){var u=t[o],d=l.get(u);s.push(d)}i.push(s)}return i}static getModelRollupConfig(e,t,r){var i,a;if(((i=t==null||(a=t.columns)===null||a===void 0?void 0:a.length)!==null&&i!==void 0?i:0)===0)return null;for(var{columns:l=[],showConstituents:s=!0,showNonAggregatedColumns:o=!0,includeDescriptions:u=!0}=t??{},{aggregations:d=[]}=r??{},h=d.map(C=>{var{operation:S,selected:b,invert:w}=C;return on.isRollupOperation(S)?[]:on.getOperationColumnNames(e,S,b,w)}),v={},m=0;m<d.length;m+=1)v[d[m].operation]=h[m];if(o){var f=new Set(e.map(C=>C.name).filter(C=>!l.includes(C)));if(h.forEach(C=>{C.forEach(S=>f.delete(S))}),f.size>0){var g,p=(g=v[Ie.FIRST])!==null&&g!==void 0?g:[];v[Ie.FIRST]=[...p,...f]}}return{groupingColumns:l,includeConstituents:s,includeDescriptions:u,aggregations:v}}static getPendingErrors(e){e.forEach((t,r)=>{if(!ke.isValidIndex(r))throw new Error("Invalid rowIndex ".concat(r));var{data:i}=t;i.forEach((a,l)=>{if(!ke.isValidIndex(l))throw new Error("Invalid columnIndex ".concat(l))})})}static getColumn(e,t){return t<e.length?e[t]:(mi.error("Unable to retrieve column",t,">=",e.length),null)}static getColumnByName(e,t){var r=e.find(i=>{var{name:a}=i;return a===t});return r==null&&mi.error("Unable to retrieve column by name",t,e.map(i=>{var{name:a}=i;return a})),r}static changeFilterColumnNamesToIndexes(e,t){return t.map(r=>{var{name:i,filter:a}=r,l=e.findIndex(s=>s.name===i);return l<0?null:[l,a]}).filter(r=>r!=null)}static combineFiltersFromList(e,t){t.sort((d,h)=>d.operator==="eq"&&h.operator!=="eq"?1:d.operator!=="eq"&&h.operator==="eq"?-1:d.startColumnIndex-h.startColumnIndex);for(var r="",i=0;i<t.length;i+=1){var{text:a,value:l,operator:s}=t[i];if(l!==void 0){var o="";s!==void 0&&(l==null&&s==="eq"?o="=":s!=="eq"&&(s==="startsWith"||s==="endsWith"?o="*":o=x.getFilterOperatorString(s)));var u="".concat(o).concat(a);s==="startsWith"&&(u="".concat(a).concat(o)),e!=null&&l!==null&&x.isCharType(e)&&(u="".concat(o).concat(String.fromCharCode(parseInt(a,10)))),i!==0&&(r+=s==="eq"?" || ":" && "),r+=u}}return r}static parseColumnHeaderGroups(e,t){var r=1,i=new Map,a=new Map,l=t?.filter(h=>{var{children:v}=h;return v.length>0});if(l.length===0)return{groups:[],maxDepth:r,parentMap:i,groupMap:a};var s=new Map(l.map(h=>[h.name,h])),o=new Set,u=h=>{var{name:v}=h;if(e.getColumnIndexByName(v)!=null)throw new Error("Column header group has same name as column: ".concat(v));var m=a.get(v);if(m)return m;var f=[],g=1;h.children.forEach(C=>{if(o.has(C))throw new Error("Column group child ".concat(C," specified in multiple groups"));o.add(C);var S=s.get(C),b=e.getColumnIndexByName(C);if(S){var w=u(S);f.push(...w.childIndexes),g=Math.max(g,w.depth+1)}else if(b!=null)f.push(b),g=Math.max(g,1);else throw new Error("Unknown child ".concat(C," in group ").concat(v))});var p=new Zt(Ir(Ir({},h),{},{depth:g,childIndexes:f.flat()}));return a.set(v,p),h.children.forEach(C=>i.set(C,p)),r=Math.max(r,p.depth+1),p},d=new Set;return l.forEach(h=>{var{name:v}=h;if(d.has(v))throw new Error("Duplicate column group name: ".concat(v));d.add(v),u(h)}),a.forEach(h=>{var v;h.setParent((v=i.get(h.name))===null||v===void 0?void 0:v.name)}),{groups:[...a.values()],maxDepth:r,groupMap:a,parentMap:i}}static convertValueToText(e,t){if(t!=null&&x.isCharType(t)&&e!=null&&typeof e=="number")return String.fromCharCode(e);if(x.isDateType(t)&&Dp(e)){var r=new Date(e.asDate()),i=r.getTimezoneOffset(),a=new Date(r.getTime()-i*60*1e3),l=a.toISOString(),s=l.replace("T"," ").substring(0,23);return s}return e==null?"":"".concat(e)}constructor(e){Yl(this,"dh",void 0),Yl(this,"tableUtils",void 0),this.dh=e,this.tableUtils=new x(e)}dehydrateIrisGridState(e,t){var{aggregationSettings:r={aggregations:Re,showOnTop:!1},advancedFilters:i,customColumnFormatMap:a,isFilterBarShown:l,metrics:s,quickFilters:o,customColumns:u,conditionalFormats:d=Re,reverseType:h,rollupConfig:v=void 0,showSearchBar:m,searchValue:f,selectDistinctColumns:g=Re,selectedSearchColumns:p,sorts:C,invertSearchColumns:S,pendingDataMap:b=xr,frozenColumns:w,columnHeaderGroups:y}=t;L(s);var{userColumnWidths:T,userRowHeights:E}=s,{columns:P}=e;return{advancedFilters:this.dehydrateAdvancedFilters(P,i),aggregationSettings:r,customColumnFormatMap:[...a],isFilterBarShown:l,quickFilters:ke.dehydrateQuickFilters(o),sorts:ke.dehydrateSort(C),userColumnWidths:[...T].filter(O=>{var[D]=O;return D!=null&&D>=0&&D<P.length}).map(O=>{var[D,N]=O;return[P[D].name,N]}),userRowHeights:[...E],customColumns:[...u],conditionalFormats:[...d],reverseType:h,rollupConfig:v,showSearchBar:m,searchValue:f,selectDistinctColumns:[...g],selectedSearchColumns:p,invertSearchColumns:S,pendingDataMap:this.dehydratePendingDataMap(P,b),frozenColumns:w,columnHeaderGroups:y?.map(O=>({name:O.name,children:O.children,color:O.color}))}}hydrateIrisGridState(e,t){var r,i,{advancedFilters:a,aggregationSettings:l={aggregations:[],showOnTop:!1},customColumnFormatMap:s,isFilterBarShown:o,quickFilters:u,sorts:d,customColumns:h,conditionalFormats:v,userColumnWidths:m,userRowHeights:f,reverseType:g,rollupConfig:p=void 0,showSearchBar:C,searchValue:S,selectDistinctColumns:b,selectedSearchColumns:w,invertSearchColumns:y=!0,pendingDataMap:T=[],frozenColumns:E,columnHeaderGroups:P}=t,{columns:O,formatter:D}=e;return{advancedFilters:this.hydrateAdvancedFilters(O,a,D.timeZone),aggregationSettings:l,customColumnFormatMap:new Map(s),isFilterBarShown:o,quickFilters:this.hydrateQuickFilters(O,u,D.timeZone),sorts:this.hydrateSort(O,d),userColumnWidths:new Map(m.map(N=>{var[F,A]=N;return typeof F=="string"||F instanceof String?[O.findIndex(j=>{var{name:k}=j;return k===F}),A]:[F,A]}).filter(N=>{var[F]=N;return F!=null&&F>=0&&F<O.length})),customColumns:h,conditionalFormats:v,userRowHeights:new Map(f),reverseType:g,rollupConfig:p,showSearchBar:C,searchValue:S,selectDistinctColumns:b,selectedSearchColumns:w,invertSearchColumns:y,pendingDataMap:this.hydratePendingDataMap(O,T),frozenColumns:E,columnHeaderGroups:ke.parseColumnHeaderGroups(e,(r=P??((i=e.layoutHints)===null||i===void 0?void 0:i.columnGroups))!==null&&r!==void 0?r:[]).groups}}hydrateQuickFilters(e,t,r){var i=t.map(a=>{var[l,s]=a,{text:o}=s,u=null;try{var d=ke.getColumn(e,l);d!=null&&(u=this.tableUtils.makeQuickFilter(d,o,r))}catch(h){mi.error("hydrateQuickFilters error with",o,h)}return[l,{text:o,filter:u}]});return new Map(i)}dehydrateAdvancedFilters(e,t){return[...t].map(r=>{var[i,a]=r,l=ke.getColumn(e,i);L(l);var s=this.dehydrateAdvancedFilterOptions(l,a.options);return[i,{options:s}]})}hydrateAdvancedFilters(e,t,r){var i=t.map(a=>{var[l,s]=a,o=ke.getColumn(e,l);L(o);var u=this.hydrateAdvancedFilterOptions(o,s.options),d=null;try{var h=ke.getColumn(e,l);h!=null&&(d=this.tableUtils.makeAdvancedFilter(o,u,r))}catch(v){mi.error("hydrateAdvancedFilters error with",u,v)}return[l,{options:u,filter:d}]});return new Map(i)}dehydrateAdvancedFilterOptions(e,t){var{selectedValues:r}=t,i=$o(t,Tp);return Ir({selectedValues:r?.map(a=>this.dehydrateValue(a,e?.type))},i)}hydrateAdvancedFilterOptions(e,t){var{selectedValues:r}=t,i=$o(t,Ep);return Ir({selectedValues:r?.map(a=>this.hydrateValue(a,e?.type))},i)}dehydratePendingDataMap(e,t){return[...t].map(r=>{var[i,{data:a}]=r;return[i,{data:[...a].map(l=>{var[s,o]=l;return[e[s].name,this.dehydrateValue(o,e[s].type)]})}]})}hydratePendingDataMap(e,t){var r=new Map,i=a=>(r.has(a)||r.set(a,e.findIndex(l=>{var{name:s}=l;return s===a})),r.get(a));return new Map(t.map(a=>{var[l,{data:s}]=a;return[l,{data:new Map(s.map(o=>{var u,[d,h]=o,v=i(d);return L(v),[(u=i(d))!==null&&u!==void 0?u:null,this.hydrateValue(h,e[v].type)]}))}]}))}dehydrateValue(e,t){return x.isDateType(t)?this.dehydrateDateTime(e):x.isLongType(t)?ke.dehydrateLong(e):e}hydrateValue(e,t){return x.isDateType(t)?this.hydrateDateTime(e):x.isLongType(t)?this.hydrateLong(e):e}dehydrateDateTime(e){return e!=null?this.dh.i18n.DateTimeFormat.format(Tn.FULL_DATE_FORMAT,e):null}hydrateDateTime(e){return e!=null?this.dh.i18n.DateTimeFormat.parse(Tn.FULL_DATE_FORMAT,e):null}hydrateLong(e){return e!=null?this.dh.LongWrapper.ofString(e):null}hydrateSort(e,t){var{dh:r}=this;return t.map(i=>{var{column:a,isAbs:l,direction:s}=i;if(s===x.sortDirection.reverse)return r.Table.reverse();var o=typeof a=="string"?ke.getColumnByName(e,a):ke.getColumn(e,a);if(o!=null){var u=o.sort();return l&&(u=u.abs()),s===x.sortDirection.descending?u=u.desc():u=u.asc(),u}return null}).filter(i=>i!=null&&i.direction!==x.sortDirection.reverse)}applyTableSettings(e,t,r){var{columns:i}=e,a=[];t.quickFilters&&(a=ke.getFiltersFromFilterMap(this.hydrateQuickFilters(i,t.quickFilters,r)));var l=[];t.advancedFilters&&(l=ke.getFiltersFromFilterMap(this.hydrateAdvancedFilters(i,t.advancedFilters,r)));var s=this.getFiltersFromInputFilters(i,t.inputFilters,r),o=[];t.sorts&&(o=this.hydrateSort(i,t.sorts));var u=[...a,...l],{partition:d,partitionColumn:h}=t;if(d!=null&&h!=null){var v=ke.getColumnByName(i,h);if(v){var m=v.filter().eq(this.dh.FilterValue.ofString(d));u=[m,...u]}}u=[...s,...u],e.applyFilter(u),e.applySort(o)}getFiltersFromInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],r=arguments.length>2?arguments[2]:void 0;return t.map(i=>{var{name:a,type:l,value:s}=i,o=e.find(u=>{var{name:d,type:h}=u;return d===a&&h===l});if(o)try{return this.tableUtils.makeQuickFilter(o,s,r)}catch(u){mi.debug("Unable to create input filter",u)}return null}).filter(i=>i!=null)}rangeSetFromRanges(e){var{dh:t}=this,r=e.slice().sort((i,a)=>(L(i.startRow),L(a.startRow),i.startRow-a.startRow)).map(i=>{var{startRow:a,endRow:l}=i;return L(a),L(l),t.RangeSet.ofRange(a,l)});return t.RangeSet.ofRanges(r)}}const me=ke;function zo(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function Rl(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){zo(a,r,i,l,s,"next",o)}function s(o){zo(a,r,i,l,s,"throw",o)}l(void 0)})}}function dn(n,e,t){return e=Fp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Fp(n){var e=Np(n,"string");return typeof e=="symbol"?e:String(e)}function Np(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Nt=fe.module("IrisGridCopyHandler");class Te extends R.Component{static getStatusMessageText(e,t){switch(e){case Te.COPY_STATES.CONFIRMATION_REQUIRED:return"Are you sure you want to copy ".concat(t.toLocaleString()," rows to your clipboard?");case Te.COPY_STATES.CLICK_REQUIRED:return"Fetched ".concat(t.toLocaleString()," rows!");case Te.COPY_STATES.FETCH_ERROR:return"Unable to copy data.";case Te.COPY_STATES.FETCH_IN_PROGRESS:return"Fetching ".concat(t.toLocaleString()," rows for clipboard...");case Te.COPY_STATES.DONE:return"Copied to Clipboard!";default:return""}}static getCopyButtonText(e){switch(e){case Te.BUTTON_STATES.FETCH_IN_PROGRESS:return"Fetching";case Te.BUTTON_STATES.CLICK_TO_COPY:return"Click to Copy";case Te.BUTTON_STATES.RETRY:return"Retry";default:return"Copy"}}constructor(e){super(e),dn(this,"textData",void 0),dn(this,"hideTimer",void 0),dn(this,"fetchPromise",void 0),this.handleBackgroundClick=this.handleBackgroundClick.bind(this),this.handleCancelClick=this.handleCancelClick.bind(this),this.handleCopyClick=this.handleCopyClick.bind(this),this.handleHideTimeout=this.handleHideTimeout.bind(this),this.state={error:void 0,copyState:Te.COPY_STATES.IDLE,buttonState:Te.BUTTON_STATES.COPY,isShown:!1,rowCount:0}}componentDidMount(){var{copyOperation:e}=this.props;e!=null&&this.startCopy()}componentDidUpdate(e){var{copyOperation:t}=this.props;e.copyOperation!==t&&this.startCopy()}componentWillUnmount(){this.stopCopy()}startCopy(){Nt.debug2("startCopy"),this.stopCopy();var{copyOperation:e}=this.props;if(e==null){Nt.debug2("No copy operation set, cancelling out"),this.setState({isShown:!1});return}var{ranges:t,error:r}=e;if(r!=null){Nt.debug("Showing copy error",r),this.setState({isShown:!0,copyState:Te.COPY_STATES.DONE,error:r}),this.startHideTimer();return}var i=U.rowCount(t);this.setState({rowCount:i,isShown:!0,error:void 0}),i>Te.NO_PROMPT_THRESHOLD?this.setState({buttonState:Te.BUTTON_STATES.COPY,copyState:Te.COPY_STATES.CONFIRMATION_REQUIRED}):this.startFetch()}stopCopy(){this.textData=void 0,this.stopFetch(),this.stopHideTimer()}handleBackgroundClick(){Nt.debug2("handleBackgroundClick");var{copyState:e}=this.state;e===Te.COPY_STATES.DONE&&this.setState({isShown:!1})}handleCancelClick(){Nt.debug2("handleCancelClick"),this.stopFetch(),this.setState({isShown:!1})}handleCopyClick(){var e=this;return Rl(function*(){if(Nt.debug2("handleCopyClick"),e.textData!=null)try{yield e.copyText(e.textData),e.showCopyDone()}catch(t){Nt.error("Error copying text",t),e.setState({error:"Unable to copy. Verify your browser permissions."})}else e.startFetch()})()}handleHideTimeout(){Nt.debug2("handleHideTimeout"),this.stopHideTimer(),this.setState({isShown:!1})}copyText(e){var t=this;return Rl(function*(){Nt.debug2("copyText",e),t.textData=e,yield _a(e)})()}showCopyDone(){this.setState({copyState:Te.COPY_STATES.DONE}),this.startHideTimer()}startFetch(){var e=this;return Rl(function*(){e.stopFetch(),e.setState({buttonState:Te.BUTTON_STATES.FETCH_IN_PROGRESS,copyState:Te.COPY_STATES.FETCH_IN_PROGRESS});var{model:t,copyOperation:r}=e.props,{ranges:i,includeHeaders:a,userColumnWidths:l,movedColumns:s,formatValues:o}=r;Nt.debug("startFetch",i);var u=me.getHiddenColumns(l),d=K.getModelRanges(i,s);if(u.length>0){var h=u.map(U.makeColumn);d=U.subtractRangesFromRanges(d,h)}var v=o!=null&&o?(f,g)=>t.displayString(f,g.type,g.name):f=>"".concat(f);e.fetchPromise=st.makeCancelable(t.textSnapshot(d,a,v));try{var m=yield e.fetchPromise;e.fetchPromise=void 0;try{yield e.copyText(m),e.showCopyDone()}catch(f){Nt.error("Error copying text",f),e.setState({buttonState:Te.BUTTON_STATES.CLICK_TO_COPY,copyState:Te.COPY_STATES.CLICK_REQUIRED})}}catch(f){f instanceof Zd?Nt.debug("User cancelled copy."):(Nt.error("Error fetching contents",f),e.fetchPromise=void 0,e.setState({buttonState:Te.BUTTON_STATES.RETRY,copyState:Te.COPY_STATES.FETCH_ERROR}))}})()}stopFetch(){this.fetchPromise&&(Nt.debug2("stopFetch"),this.fetchPromise.cancel(),this.fetchPromise=void 0)}startHideTimer(){this.stopHideTimer(),this.hideTimer=setTimeout(this.handleHideTimeout,Te.HIDE_TIMEOUT)}stopHideTimer(){this.hideTimer!=null&&(clearTimeout(this.hideTimer),this.hideTimer=void 0)}render(){var{onEntering:e,onEntered:t,onExiting:r,onExited:i}=this.props,{buttonState:a,copyState:l,isShown:s,rowCount:o,error:u}=this.state,d=l===Te.COPY_STATES.DONE?"fade":"copy-slide-up",h=Te.getCopyButtonText(a),v=u??Te.getStatusMessageText(l,o),m=l!==Te.COPY_STATES.DONE,f=a===Te.BUTTON_STATES.FETCH_IN_PROGRESS,g=l===Te.COPY_STATES.DONE;return c.jsxs($a,{animation:d,isShown:s,className:re("iris-grid-copy-handler",{"copy-done":g}),onClick:this.handleBackgroundClick,onEntering:e,onEntered:t,onExiting:r,onExited:i,children:[c.jsx("div",{className:"status-message",children:c.jsx("span",{children:v})}),c.jsx(vr,{in:m,timeout:ze.transitionMs,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0,children:c.jsxs("div",{className:"buttons-container",children:[c.jsx("button",{type:"button",className:"btn btn-outline-secondary btn-cancel",onClick:this.handleCancelClick,children:"Cancel"}),c.jsxs(Y,{kind:f?"tertiary":"primary",className:re("btn-copy",{"btn-spinner":f}),onClick:this.handleCopyClick,disabled:f,children:[f&&c.jsx(Dn,{className:"loading-spinner-vertical-align"}),h]})]})})]})}}dn(Te,"NO_PROMPT_THRESHOLD",1e4);dn(Te,"HIDE_TIMEOUT",3e3);dn(Te,"COPY_STATES",{IDLE:"IDLE",CONFIRMATION_REQUIRED:"CONFIRMATION_REQUIRED",FETCH_IN_PROGRESS:"FETCH_IN_PROGRESS",FETCH_ERROR:"FETCH_ERROR",CLICK_REQUIRED:"CLICK_REQUIRED",DONE:"DONE"});dn(Te,"BUTTON_STATES",{COPY:"COPY",FETCH_IN_PROGRESS:"FETCH_IN_PROGRESS",CLICK_TO_COPY:"CLICK_TO_COPY",RETRY:"RETRY"});dn(Te,"defaultProps",{copyOperation:null,onEntering:()=>{},onEntered:()=>{},onExiting:()=>{},onExited:()=>{}});const Ip=Te;function Ca(n,e,t){return e=Ap(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ap(n){var e=Mp(n,"string");return typeof e=="symbol"?e:String(e)}function Mp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Dh extends R.PureComponent{constructor(e){super(e),Ca(this,"inputField",void 0),Ca(this,"initialValue",void 0),Ca(this,"debouncedSendUpdate",void 0);var{debounceMs:t}=e;this.debouncedSendUpdate=ct(this.sendUpdate.bind(this),t),this.handleCancel=this.handleCancel.bind(this),this.handleChange=this.handleChange.bind(this),this.handleCommit=this.handleCommit.bind(this),this.handleFocus=this.handleFocus.bind(this),this.handleBlur=this.handleBlur.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleContextMenu=this.handleContextMenu.bind(this),this.inputField=null;var{value:r}=e;this.initialValue=r,this.state={isChanged:!1,value:r}}componentDidMount(){var e;(e=this.inputField)===null||e===void 0||e.focus()}componentDidUpdate(e){var{debounceMs:t}=this.props;e.debounceMs!==t&&(this.debouncedSendUpdate.flush(),this.debouncedSendUpdate=ct(this.sendUpdate.bind(this),t))}componentWillUnmount(){this.debouncedSendUpdate.cancel()}setValue(e){this.initialValue=e,this.setState({value:e})}focus(){var e;(e=this.inputField)===null||e===void 0||e.focus()}handleChange(e){var{value:t}=e.target;this.setState({value:t,isChanged:!0}),this.debouncedSendUpdate(t)}handleCancel(){this.debouncedSendUpdate.cancel();var{initialValue:e}=this,{isChanged:t}=this.state;t&&this.sendUpdate(e);var{onDone:r}=this.props;r()}handleCommit(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;this.debouncedSendUpdate.flush();var{onDone:r}=this.props;r(e,t)}handleFocus(){var e;(e=this.inputField)===null||e===void 0||e.select()}handleBlur(e){var{relatedTarget:t}=e;t!=null&&t.classList.contains("context-menu-container")?this.handleCommit(!1,!0):t!=null&&t.classList.contains("advanced-filter-button")?this.handleCommit(!1,!1):this.handleCommit(!0,!0)}handleTab(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;this.debouncedSendUpdate.flush();var{onTab:t}=this.props;t(e)}handleKeyDown(e){switch(e.key){case"Escape":e.stopPropagation(),e.preventDefault(),this.handleCancel();break;case"Enter":e.stopPropagation(),e.preventDefault(),this.handleCommit();break;case"Tab":e.stopPropagation(),e.preventDefault(),this.handleTab(e.shiftKey);break}}handleContextMenu(e){var{onContextMenu:t}=this.props;t(e)}sendUpdate(e){var{onChange:t}=this.props;t(e)}render(){var{className:e,style:t,isAdvancedFilterSet:r,onAdvancedFiltersTriggered:i}=this.props,{value:a}=this.state;return c.jsxs("div",{style:t,className:"iris-grid-input-autosized-wrapper","data-value":a,children:[c.jsx("input",{ref:l=>{this.inputField=l},className:re("iris-grid-input-field",e),type:"text",value:a,onBlur:this.handleBlur,onFocus:this.handleFocus,onChange:this.handleChange,onKeyDown:this.handleKeyDown,onContextMenu:this.handleContextMenu,autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",spellCheck:"false"}),c.jsx("div",{className:"advanced-filter-button-container",children:c.jsx(Y,{kind:"ghost",className:re("btn-link-icon advanced-filter-button",{"filter-set":r}),onClick:i,onContextMenu:this.handleContextMenu,children:c.jsxs("div",{className:"fa-layers ",children:[c.jsx(le,{icon:Cs,className:"filter-solid"}),c.jsx(le,{icon:ya,className:"filter-light"})]})})})]})}}Ca(Dh,"defaultProps",{style:{},className:"",value:"",isAdvancedFilterSet:!1,onAdvancedFiltersTriggered:()=>{},onChange:()=>{},onDone:()=>{},onTab:()=>{},onContextMenu:()=>{},debounceMs:150});const xp=Dh;function Lp(n,e,t){return e=kp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function kp(n){var e=jp(n,"string");return typeof e=="symbol"?e:String(e)}function jp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class _p extends In{constructor(e){super(),Lp(this,"irisGrid",void 0),this.irisGrid=e}onDown(e){var{selectedRanges:t}=this.irisGrid.state;return e.key==="c"&&Kn.isModifierKeyDown(e)?(me.isValidSnapshotRanges(t)?this.irisGrid.copyRanges(t):this.irisGrid.copyRanges(t,!1,!1,"Invalid copy ranges"),!0):!1}}const Hp=_p;function Up(n,e,t){return e=Vp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Vp(n){var e=Bp(n,"string");return typeof e=="symbol"?e:String(e)}function Bp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Gp extends In{constructor(e){super(),Up(this,"irisGrid",void 0),this.irisGrid=e}onDown(e){if(dr.TABLE.REVERSE.matchesEvent(e)){if(!this.irisGrid.isReversible())return!1;var{reverseType:t}=this.irisGrid.state;return t===x.REVERSE_TYPE.NONE?this.irisGrid.reverse(x.REVERSE_TYPE.POST_SORT):this.irisGrid.reverse(x.REVERSE_TYPE.NONE),!0}return!1}}const $p=Gp;function Wp(n,e,t){return e=zp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function zp(n){var e=Kp(n,"string");return typeof e=="symbol"?e:String(e)}function Kp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Yp extends In{constructor(e){super(),Wp(this,"irisGrid",void 0),this.irisGrid=e}onDown(e){return dr.TABLE.CLEAR_FILTERS.matchesEvent(e)?(this.irisGrid.clearAllFilters(),!0):!1}}const qp=Yp;function Xp(n,e,t){return e=Qp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Qp(n){var e=Zp(n,"string");return typeof e=="symbol"?e:String(e)}function Zp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Jp extends Qe{constructor(e){super(850),Xp(this,"irisGrid",void 0),this.irisGrid=e}destroyColumnTooltip(){this.irisGrid.setState({overflowButtonTooltipProps:null})}setCursor(e){return this.isHoveringOverflowButton(e)?(this.cursor="pointer",{stopPropagation:!1,preventDefault:!1}):(this.cursor=null,!1)}getButtonPosition(e){var{x:t,y:r,column:i,row:a}=e;if(i==null||a==null)return null;var{renderer:l,grid:s,state:o,props:u}=this.irisGrid;if(!s)return null;var{metrics:d}=o,{model:h}=u,{canvasContext:v}=s,m=s.getTheme(),f={context:v,mouseX:t,mouseY:r,metrics:d,model:h,theme:m},{left:g,top:p,width:C,height:S}=l.getCellOverflowButtonPosition(f);return g==null||C==null||p==null||S==null?null:{left:g,top:p,width:C,height:S}}isHoveringOverflowButton(e){var t,{x:r,y:i}=e,{left:a,top:l,width:s,height:o}=(t=this.getButtonPosition(e))!==null&&t!==void 0?t:{};if(a==null||s==null||l==null||o==null)return!1;var{renderer:u,grid:d,state:h,props:v}=this.irisGrid;if(!d)return!1;var{metrics:m}=h,{model:f}=v,{canvasContext:g}=d,p=d.getTheme(),C={context:g,mouseX:r,mouseY:i,metrics:m,model:f,theme:p};return u.shouldRenderOverflowButton(C)&&r>=a&&r<=a+s&&i>=l&&i<=l+o}onMove(e){if(this.isHoveringOverflowButton(e)){var{overflowButtonTooltipProps:t}=this.irisGrid.state,r=this.getButtonPosition(e);ht(t,r)||this.irisGrid.setState({overflowButtonTooltipProps:r})}else this.destroyColumnTooltip();return this.setCursor(e)}onWheel(e){return this.destroyColumnTooltip(),this.onMove(e)}onDown(e){this.destroyColumnTooltip();var{column:t,row:r}=e;return this.isHoveringOverflowButton(e)&&this.irisGrid.setState({showOverflowModal:!0,overflowText:this.irisGrid.getValueForCell(t,r)}),!1}onContextMenu(){return this.destroyColumnTooltip(),!1}onLeave(){return this.destroyColumnTooltip(),!1}}const eC=Jp;function tC(n,e,t){return e=rC(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function rC(n){var e=nC(n,"string");return typeof e=="symbol"?e:String(e)}function nC(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class iC extends Qe{constructor(e){super(),tC(this,"irisGrid",void 0),this.irisGrid=e,this.cursor=null}isActive(){var{isSelectingColumn:e}=this.irisGrid.props;return e}isValidColumn(e){if(e==null)return!1;var{columnSelectionValidator:t}=this.irisGrid.props;return t!=null?t(e):!0}updateColumnSelectionStatus(){var{columnSelectionValidator:e}=this.irisGrid.props;e?.(null)}getTableColumn(e){if(e==null)return null;var{model:t}=this.irisGrid.props,r=this.irisGrid.getModelColumn(e);return r==null?null:t.columns[r]}onMove(e){if(!this.isActive())return!1;var{columnAllowedCursor:t,columnNotAllowedCursor:r}=this.irisGrid.props,{column:i}=e,a=this.getTableColumn(i);return this.isValidColumn(a)?(this.cursor=t,this.irisGrid.setState({hoverSelectColumn:i})):(this.cursor=r,this.irisGrid.setState({hoverSelectColumn:null})),!0}onWheel(e){if(!this.isActive())return!1;var{columnAllowedCursor:t,columnNotAllowedCursor:r}=this.irisGrid.props,{column:i}=e,a=this.getTableColumn(i);return this.isValidColumn(a)?(this.cursor=t,this.irisGrid.setState({hoverSelectColumn:i})):(this.cursor=r,this.irisGrid.setState({hoverSelectColumn:null})),{preventDefault:!1,stopPropagation:!1}}onLeave(){return this.isActive()&&this.irisGrid.setState({hoverSelectColumn:null}),this.updateColumnSelectionStatus(),!1}onDown(){return this.isActive()}onClick(e){if(!this.isActive())return!1;var{column:t}=e,r=this.getTableColumn(t);return r!=null&&this.isValidColumn(r)&&this.irisGrid.selectColumn(r),!0}}const aC=iC;function lC(n,e,t){return e=sC(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function sC(n){var e=oC(n,"string");return typeof e=="symbol"?e:String(e)}function oC(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class uC extends Qe{constructor(e){super(),lC(this,"irisGrid",void 0),this.irisGrid=e}hideColumnTooltip(){var{tooltip:e}=this.irisGrid;e&&(e.stopTimer(),e.hide())}onDown(){return this.hideColumnTooltip(),!1}onContextMenu(){return this.hideColumnTooltip(),!1}onWheel(){return this.hideColumnTooltip(),!1}onLeave(e,t,r){var{relatedTarget:i}=r instanceof MouseEvent?r:r.nativeEvent,{tooltip:a}=this.irisGrid;if(!a)return!1;var l=a.popper.current;return l&&i instanceof Element&&l.element.contains(i)||this.hideColumnTooltip(),!1}onMove(e){var{column:t,row:r,columnHeaderDepth:i}=e,{shownColumnTooltip:a}=this.irisGrid.state,l=null;return t!==null&&r===null&&i===0&&(l=t),l!==a&&this.irisGrid.setState({shownColumnTooltip:l}),!1}}const dC=uC;function Fh(n,e,t){return e=hC(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function hC(n){var e=cC(n,"string");return typeof e=="symbol"?e:String(e)}function cC(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Wa extends R.Component{constructor(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:Wa.defaultProps;super(e),Fh(this,"inputRef",void 0),this.handleInputChange=this.handleInputChange.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.inputRef=Me.createRef()}handleInputChange(){var{onChange:e}=this.props;this.inputRef.current&&e(this.inputRef.current.value)}closeContextMenu(){var{forwardedProps:e}=this.props,{closeMenu:t}=e;t(!0)}revertToDefault(){var{onChange:e}=this.props;e(null)}returnFocusToContextMenu(){var e=xv.getClosestByClassName(this.inputRef.current,"context-menu-container");e instanceof HTMLElement&&e.focus()}handleKeyDown(e){switch(e.key){case"Enter":e.stopPropagation(),this.closeContextMenu();break;case"Escape":e.stopPropagation(),this.revertToDefault(),this.closeContextMenu();break;case"ArrowRight":case"ArrowLeft":e.stopPropagation();break;case"ArrowUp":case"ArrowDown":this.returnFocusToContextMenu();break;default:e.stopPropagation()}}render(){var{formatString:e,forwardedProps:t,placeholder:r,title:i}=this.props,{menuItem:{description:a},iconElement:l}=t;return c.jsxs("div",{className:"form-group flex-grow mb-0",children:[c.jsxs("div",{className:"custom-format-title",children:[c.jsx("span",{className:"icon",children:l}),c.jsxs("label",{className:"title mb-0",htmlFor:"custom-format-input",children:[i,a!=null&&c.jsx(Jt,{children:a})]})]}),c.jsx("div",{className:"pl-2 pr-2 pb-2",children:c.jsx("input",{id:"custom-format-input",className:"form-control text-right mb-0",type:"text",defaultValue:e,ref:this.inputRef,placeholder:r,onKeyDown:this.handleKeyDown,onChange:this.handleInputChange,autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",spellCheck:"false"})})]})}}Fh(Wa,"defaultProps",{formatString:"",forwardedProps:{menuItem:{},closeMenu(n){},iconElement:null},placeholder:"",title:"",onChange(n){}});const vC=Wa;class mC{static isDefaultSelected(e){return!e||![pa.TYPE_CONTEXT_CUSTOM,pa.TYPE_CONTEXT_PRESET].includes(e.type)}static isCustomSelected(e){return e!=null&&e.type===pa.TYPE_CONTEXT_CUSTOM}static makeOption(e,t,r,i){return{title:e,description:e,group:r,format:t,isSelected:i}}static makeCustomFormatOption(e,t,r,i,a){return{title:e.label,description:e.label,format:e,group:t,isSelected:i,menuElement:c.jsx(vC,{formatString:e.formatString,title:e.label,placeholder:r,onChange:a})}}}const Bt=mC;function Ms(n,e,t){return e=fC(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function fC(n){var e=gC(n,"string");return typeof e=="symbol"?e:String(e)}function gC(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class xt{static getOptions(e,t){var r=new Date,i=[{group:xt.dateGroup,formatString:"yyyy-MM-dd"},{group:xt.dateGroup,formatString:"MM-dd-yyyy"},{group:xt.timeGroup,formatString:"HH:mm:ss"},{group:xt.timeGroup,formatString:"HH:mm:ss.SSS"},{group:xt.timeGroup,formatString:"HH:mm:ss.SSSSSSSSS"},{group:xt.dateTimeGroup,formatString:"yyyy-MM-dd HH:mm:ss"},{group:xt.dateTimeGroup,formatString:"yyyy-MM-dd HH:mm:ss.SSS"},{group:xt.dateTimeGroup,formatString:"yyyy-MM-dd HH:mm:ss.SSSSSSSSS"}],a=i.map(s=>{var o=wn.makeFormat("",s.formatString,wn.TYPE_CONTEXT_PRESET),u=e.getFormattedString(r,x.dataType.DATETIME,"",o);return Bt.makeOption(u,o,s.group,wn.isSameFormat(o,t))}),l=Bt.makeOption("Default",null,xt.dateGroup,Bt.isDefaultSelected(t));return[l,...a]}}Ms(xt,"dateGroup",10);Ms(xt,"timeGroup",20);Ms(xt,"dateTimeGroup",30);const pC=xt;function za(n,e,t){return e=CC(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function CC(n){var e=SC(n,"string");return typeof e=="symbol"?e:String(e)}function SC(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Ot{static getOptions(e,t,r){var i=[{format:Yt.FORMAT_PERCENT,group:Ot.presetGroup},{format:Yt.FORMAT_BASIS_POINTS,group:Ot.presetGroup},{format:Yt.FORMAT_MILLIONS,group:Ot.presetGroup},{format:Yt.FORMAT_SCIENTIFIC_NOTATION,group:Ot.presetGroup},{format:Yt.FORMAT_ROUND,group:Ot.presetRoundGroup},{format:Yt.FORMAT_ROUND_TWO_DECIMALS,group:Ot.presetRoundGroup},{format:Yt.FORMAT_ROUND_FOUR_DECIMALS,group:Ot.presetRoundGroup}],a=Bt.makeOption("Default",null,Ot.defaultGroup,Bt.isDefaultSelected(t)),l=i.map(d=>Bt.makeOption(d.format.label,d.format,d.group,Yt.isSameFormat(d.format,t))),s=Bt.isCustomSelected(t),o=s?t:Yt.makeCustomFormat(),u=Bt.makeCustomFormatOption(o,Ot.customGroup,Yt.DEFAULT_FORMAT_STRING,s,d=>{if(d!=null){var h=Yt.makeCustomFormat(d);Yt.isValid(e,h)&&r(h)}else r(null)});return[a,...l,u]}}za(Ot,"defaultGroup",10);za(Ot,"presetGroup",20);za(Ot,"presetRoundGroup",30);za(Ot,"customGroup",40);const bC=Ot;function xs(n,e,t){return e=wC(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function wC(n){var e=yC(n,"string");return typeof e=="symbol"?e:String(e)}function yC(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Lr{static getOptions(e,t,r){var i=[{format:cn.FORMAT_MILLIONS,group:Lr.presetGroup},{format:cn.FORMAT_SCIENTIFIC_NOTATION,group:Lr.presetGroup}],a=Bt.makeOption("Default",null,Lr.defaultGroup,Bt.isDefaultSelected(t)),l=i.map(d=>Bt.makeOption(d.format.label,d.format,d.group,cn.isSameFormat(d.format,t))),s=Bt.isCustomSelected(t),o=s?t:cn.makeCustomFormat(),u=Bt.makeCustomFormatOption(o,Lr.customGroup,cn.DEFAULT_FORMAT_STRING,s,d=>{if(d!=null){var h=cn.makeCustomFormat(d);cn.isValid(e,h)&&r(h)}else r(null)});return[a,...l,u]}}xs(Lr,"defaultGroup",10);xs(Lr,"presetGroup",20);xs(Lr,"customGroup",30);const TC=Lr;function Ko(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 Yo(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ko(Object(t),!0).forEach(function(r){Gt(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ko(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Gt(n,e,t){return e=EC(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function EC(n){var e=OC(n,"string");return typeof e=="symbol"?e:String(e)}function OC(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var qo=fe.module("IrisGridContextMenuHandler"),PC=150,Xo="yyyy-MM-dd HH:mm:ss.SSSSSSSSS";class $ extends Qe{static getQuickFilterCondition(e,t,r){return e&&r==="&&"?e.and(t):e&&r==="||"?e.or(t):t}static getQuickFilterText(e,t,r){return r&&e!=null?"".concat(e," ").concat(r," ").concat(t):t}static getOperatorAsText(e){return e==="&&"?"And":"Or"}static getRowOptionFormatted(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:30;return"".concat(e,' "').concat(Er.truncate(t,r-e.length-3),'"')}constructor(e,t){super(),Gt(this,"irisGrid",void 0),Gt(this,"debouncedUpdateCustomFormat",void 0),Gt(this,"dh",void 0),this.debouncedUpdateCustomFormat=ct(e.handleFormatSelection,PC),this.dh=t,this.irisGrid=e}componentWillUnmount(){this.debouncedUpdateCustomFormat.flush()}getHeaderActions(e,t){var{irisGrid:r}=this,{column:i}=t;L(i);var{model:a}=r.props,{columns:l}=a,s=l[e],o=[],{metrics:u,reverseType:d,quickFilters:h,advancedFilters:v,searchFilter:m}=r.state,f=r.getTheme();L(u);var{filterIconColor:g,filterBarActiveColor:p,contextMenuSortIconColor:C,contextMenuReverseIconColor:S}=f,b=a.sort,w=x.getSortForColumn(b,s.name),y=d!==x.REVERSE_TYPE.NONE,{userColumnWidths:T}=u,E=[...T.values()].some(F=>F===0),P=a.getColumnHeaderParentGroup(e,0)===void 0&&!(xe(a)&&a.hasExpandableRows),O=a.isColumnFrozen(e),D=a.isColumnSortable(e);if(o.push({title:"Hide Column",group:$.GROUP_HIDE_COLUMNS,action:()=>{this.irisGrid.hideColumnByVisibleIndex(i)}}),o.push({title:O?"Unfreeze Column":"Freeze Column",group:$.GROUP_HIDE_COLUMNS,disabled:!P,action:()=>{O?this.irisGrid.unFreezeColumnByColumnName(s.name):this.irisGrid.freezeColumnByColumnName(s.name)},order:10}),o.push({title:"Show All Columns",group:$.GROUP_HIDE_COLUMNS,action:()=>{this.irisGrid.showAllColumns()},disabled:!E}),o.push({title:"Quick Filters",icon:Nr,iconColor:p,shortcut:dr.TABLE.TOGGLE_QUICK_FILTER,group:$.GROUP_FILTER,order:10,action:()=>{this.irisGrid.toggleFilterBar(i)}}),o.push({title:"Advanced Filters",icon:v.get(e)?Cs:ya,iconColor:g,group:$.GROUP_FILTER,order:20,action:()=>{this.irisGrid.handleAdvancedMenuOpened(i)}}),o.push({title:"Clear Table Filters",group:$.GROUP_FILTER,order:40,shortcut:dr.TABLE.CLEAR_FILTERS,action:()=>{this.irisGrid.clearAllFilters()},disabled:!(h.size>0||v.size>0||m!=null)}),o.push({title:"Sort by",icon:Nr,iconColor:C,group:$.GROUP_SORT,order:10,actions:this.sortByActions(s,e,w),disabled:!D}),o.push({title:"Add Additional Sort",disabled:w&&b.length===1||y&&b.length===1||w&&y&&b.length===2||b.length===0||!D,group:$.GROUP_SORT,order:20,actions:this.additionalSortActions(s,e)}),o.push({title:"Clear Table Sorting",disabled:b.length===0||y&&b.length===1,group:$.GROUP_SORT,action:()=>{this.irisGrid.sortColumn(i,$.COLUMN_SORT_DIRECTION.none)},order:30}),o.push({title:d===x.REVERSE_TYPE.NONE?"Reverse Table":"Clear Reverse Table",icon:Nr,iconColor:S,group:$.GROUP_SORT,order:40,disabled:!a.isReversible,shortcut:dr.TABLE.REVERSE,action:()=>{d===x.REVERSE_TYPE.NONE?this.irisGrid.reverse(x.REVERSE_TYPE.POST_SORT):this.irisGrid.reverse(x.REVERSE_TYPE.NONE)}}),o.push({title:"Copy Column Name",group:$.GROUP_COPY,action:()=>{var F;_a((F=a.textForColumnHeader(e))!==null&&F!==void 0?F:"").catch(A=>qo.error("Unable to copy header",A))}}),x.isDateType(s.type))o.push({title:"Date/Time Format",group:$.GROUP_FORMAT,actions:this.dateFormatActions(s)});else if(x.isNumberType(s.type)){var N;o.push({title:"Number Format",group:$.GROUP_FORMAT,actions:(N=this.numberFormatActions(s))!==null&&N!==void 0?N:void 0})}return o}getCellActions(e,t,r){L(e);var{dh:i,irisGrid:a}=this,{column:l,row:s}=r,{model:o,canCopy:u}=a.props,{columns:d}=o,h=a.getModelRow(s);L(h);var v=o.valueForCell(e,h),m=o.textForCell(e,h),f=d[e],g=[],{quickFilters:p}=a.state,C=a.getTheme(),{filterIconColor:S}=C,{settings:b}=a.props,w=new wn(i,{timeZone:b?.timeZone,showTimeZone:!1,showTSeparator:!0,defaultDateTimeFormatString:Xo}),y=new wn(i,{timeZone:b?.timeZone,showTimeZone:b?.showTimeZone,showTSeparator:b?.showTSeparator,defaultDateTimeFormatString:Xo});if(f==null||s==null)return g;if(o.isFilterable(e)){var T={title:"Filter by Value",icon:Nr,iconColor:S,group:$.GROUP_FILTER,order:10,actions:[]};if(v==null)p.get(e)&&T.actions.push({title:"And",actions:this.nullFilterActions(f,p.get(e),"&&"),order:2,group:he.groups.high}),T.actions.push(...this.nullFilterActions(f));else if(v==="")p.get(e)&&T.actions.push({title:"And",actions:this.emptyStringFilterActions(f,p.get(e),"&&"),order:2,group:he.groups.high}),T.actions.push(...this.emptyStringFilterActions(f));else if(x.isBooleanType(f.type))p.get(e)&&T.actions.push({title:"Or",actions:this.booleanFilterActions(f,m,p.get(e),"||"),order:2,group:he.groups.high}),T.actions.push(...this.booleanFilterActions(f,m));else if(x.isNumberType(f.type)||x.isCharType(f.type)){L(e);var E=x.isCharType(f.type)?String.fromCharCode(v):"".concat(v);p.get(e)&&T.actions.push({title:"And",actions:this.numberFilterActions(f,E,v,p.get(e),"&&"),order:2,group:he.groups.high}),T.actions.push(...this.numberFilterActions(f,E,v,p.get(e)))}else if(x.isDateType(f.type)){var P=w.format(v),O=y.format(v);p.get(e)&&T.actions.push({title:"And",actions:this.dateFilterActions(f,P,O,v,p.get(e),"&&"),order:2,group:he.groups.high}),T.actions.push(...this.dateFilterActions(f,P,O,v,p.get(e)))}else p.get(e)&&T.actions.push({title:"And",actions:this.stringFilterActions(f,m,v,p.get(e),"&&"),order:2,group:he.groups.high}),T.actions.push(...this.stringFilterActions(f,m,v));T.actions!=null&&T.actions.length>0&&g.push(T)}if(xe(o)&&o.isRowExpandable(h)){var D=o.groupedColumns.length>0?o.depthForRow(h)-1:0,N=o.valueForCell(D,h),F=N==null?"null":o.textForCell(D,h);g.push({title:$.getRowOptionFormatted(o.isRowExpanded(h)?"Collapse":"Expand",F),group:$.GROUP_EXPAND_COLLAPSE,order:10,action:()=>{o.setRowExpanded(h,!o.isRowExpanded(h))}}),o.isExpandAllAvailable===!0&&g.push({title:$.getRowOptionFormatted("Expand All in",F),group:$.GROUP_EXPAND_COLLAPSE,order:20,action:()=>{o.setRowExpanded(h,!0,!0)}})}xe(o)&&o.hasExpandableRows&&o.isExpandAllAvailable===!0&&(g.push({title:"Expand Entire Table",group:$.GROUP_EXPAND_COLLAPSE,order:30,action:()=>{o.expandAll()}}),g.push({title:"Collapse Entire Table",group:$.GROUP_EXPAND_COLLAPSE,order:40,action:()=>{o.collapseAll()}}));var A={title:"Go to",iconColor:S,shortcut:dr.TABLE.GOTO_ROW,group:$.GROUP_GOTO,order:10,action:()=>this.irisGrid.toggleGotoRow("".concat(s+1),"".concat(v),f.name)};return g.push(A),u&&(g.push({title:"Copy Cell",group:$.GROUP_COPY,order:10,action:()=>{a.copyCell(l,s)}}),g.push({title:"Copy Cell Unformatted",group:$.GROUP_COPY,order:20,action:()=>{a.copyCell(l,s,!0)}})),g}getNumberValueEqualsFilter(e,t){var{dh:r}=this,i=e.filter();if(t===Number.POSITIVE_INFINITY)return r.FilterCondition.invoke("isInf",i).and(i.greaterThan(r.FilterValue.ofNumber(0)));if(t===Number.NEGATIVE_INFINITY)return r.FilterCondition.invoke("isInf",i).and(i.lessThan(r.FilterValue.ofNumber(0)));if(Number.isNaN(t))return r.FilterCondition.invoke("isNaN",i);var a=this.getFilterValueForNumberOrChar(e.type,t);return i.eq(a)}getFilterValueForNumberOrChar(e,t){var{dh:r}=this;return x.isCharType(e)?r.FilterValue.ofString(String.fromCharCode(t)):r.FilterValue.ofNumber(t)}onContextMenu(e,t,r){var{irisGrid:i}=this,{y:a,column:l,row:s,columnHeaderDepth:o}=e,u=i.getModelColumn(l),d=i.getModelRow(s),{model:h,canCopy:v}=i.props,{columns:m}=h,{metrics:f,isFilterBarShown:g,quickFilters:p,advancedFilters:C,selectedRanges:S}=i.state;L(f);var{columnHeaderHeight:b,gridY:w,columnHeaderMaxDepth:y}=f,T=[];if(u!=null&&d!=null){var E=h.valueForCell(u,d),P=h.textForCell(u,d),O=m[u],{onContextMenu:D}=i.props;O!=null&&T.push(...D({model:h,value:E,valueText:P,column:O,rowIndex:s,columnIndex:l,modelRow:d,modelColumn:u}))}return u!=null&&h.isFilterable(u)&&T.push({title:"Clear Column Filter",group:$.GROUP_FILTER,order:30,action:()=>{this.irisGrid.removeColumnFilter(u)},disabled:!(p.has(u)||C.has(u))}),(g?a<=w:a<=b*y&&o===0)?u!=null&&T.push(...this.getHeaderActions(u,e)):(u!=null&&d!=null&&T.push(...this.getCellActions(u,t,e)),v&&S.length>0&&(T.push({title:"Copy Selection",shortcut:Jd.COPY,group:$.GROUP_COPY,order:30,action:()=>{i.copyRanges(S)}}),T.push({title:"Copy Selection w/ Headers",group:$.GROUP_COPY,order:40,action:()=>{i.copyRanges(S,!0)}})),He(h)&&h.isEditable&&S.length>0&&T.push({title:"Delete Selected Rows",group:$.GROUP_EDIT,order:50,action:()=>{this.irisGrid.deleteRanges(S)}})),T.length===0?!1:(L(i.gridWrapper),he.triggerMenu(i.gridWrapper,r.clientX,r.clientY,T),!0)}dateFormatActions(e){for(var t=this,{model:r}=this.irisGrid.props,{formatter:i}=r,a=i.getColumnFormat(e.type,e.name),l=pC.getOptions(i,a),s=[],o=function(){var{description:h,format:v,group:m,isSelected:f,title:g}=l[u];s.push({title:g,description:h,icon:f?Ta:void 0,group:m,order:u,action:()=>{var p=r.getColumnIndexByName(e.name);L(p),t.irisGrid.handleFormatSelection(p,v)}})},u=0;u<l.length;u+=1)o();return s}numberFormatActions(e){var t=this,{model:r}=this.irisGrid.props,{formatter:i}=r,{dh:a}=this,l=i.getColumnFormat(e.type,e.name),s,o=r.getColumnIndexByName(e.name);if(x.isDecimalType(e.type))s=bC.getOptions(a,l,v=>{L(o),this.debouncedUpdateCustomFormat(o,v)});else if(x.isIntegerType(e.type))s=TC.getOptions(a,l,v=>{L(o),this.debouncedUpdateCustomFormat(o,v)});else return qo.error("Invalid column type in numberFormatActions"),null;for(var u=[],d=function(){var{format:m,isSelected:f}=s[h];u.push(Yo(Yo({},s[h]),{},{icon:f?Ta:void 0,order:h,action:()=>{o===void 0&&m&&m.type===pa.TYPE_CONTEXT_CUSTOM||(L(o),t.irisGrid.handleFormatSelection(o,m))}}))},h=0;h<s.length;h+=1)d();return u}stringFilterActions(e,t,r,i,a){var{dh:l}=this,s=l.FilterValue.ofString(r),o=i;o||(o={filter:null,text:null});var{filter:u,text:d}=o,h=[],{model:v}=this.irisGrid.props,m=v.getColumnIndexByName(e.name),f=x.escapeQuickTextFilter(t);return L(m),h.push({menuElement:c.jsxs("div",{className:"iris-grid-filter-menu-item-value",children:[a?$.getOperatorAsText(a):""," ",'"',t,'"']}),order:1,group:he.groups.high}),h.push({title:"text is exactly",description:"Show only rows where ".concat(e.name," is ").concat(r," (case sensitive)"),action:()=>{this.irisGrid.setQuickFilter(m,$.getQuickFilterCondition(u,e.filter().eq(s),a),$.getQuickFilterText(d,"".concat(f),a))},order:10,group:he.groups.low}),h.push({title:"text is not exactly",description:"Show only rows where ".concat(e.name," is not ").concat(t," (case sensitive)"),action:()=>{this.irisGrid.setQuickFilter(m,$.getQuickFilterCondition(u,e.filter().notEq(s),a),$.getQuickFilterText(d,"!=".concat(f),a))},order:20,group:he.groups.low}),h.push({title:"text contains",description:"Show only rows where ".concat(e.name," contains ").concat(t),action:()=>{this.irisGrid.setQuickFilter(m,$.getQuickFilterCondition(u,e.filter().isNull().not().and(e.filter().contains(s)),a),$.getQuickFilterText(d,"~".concat(f),a))},order:30,group:he.groups.low}),h.push({title:"text does not contain",description:"Show only rows where ".concat(e.name," does not contain ").concat(r),action:()=>{this.irisGrid.setQuickFilter(m,$.getQuickFilterCondition(u,e.filter().isNull().or(e.filter().contains(s).not()),a),$.getQuickFilterText(d,"!~".concat(f),a))},order:40,group:he.groups.low}),h.push({title:"text starts with",description:"Show only rows where ".concat(e.name," starts with ").concat(t),action:()=>{this.irisGrid.setQuickFilter(m,$.getQuickFilterCondition(u,e.filter().isNull().not().and(e.filter().invoke("startsWith",s)),a),$.getQuickFilterText(d,"".concat(f,"*"),a))},order:50,group:he.groups.low}),h.push({title:"text ends with",description:"Show only rows where ".concat(e.name," ends with ").concat(t),action:()=>{this.irisGrid.setQuickFilter(m,$.getQuickFilterCondition(u,e.filter().isNull().not().and(e.filter().invoke("endsWith",s)),a),$.getQuickFilterText(d,"*".concat(f),a))},order:60,group:he.groups.low}),h}numberFilterActions(e,t,r,i,a){var l=this.getFilterValueForNumberOrChar(e.type,r),s=null,o=null;i&&(s=i.filter,o=i.text);var u=[],d=r!==Number.POSITIVE_INFINITY&&r!==Number.NEGATIVE_INFINITY&&!Number.isNaN(r),{model:h}=this.irisGrid.props,v=h.getColumnIndexByName(e.name);return L(v),u.push({menuElement:c.jsxs("div",{className:"iris-grid-filter-menu-item-value",children:[a?$.getOperatorAsText(a):""," ",'"',t,'"']}),order:1,group:he.groups.high}),u.push({title:"is equal to",description:"Show only rows where ".concat(e.name," is ").concat(t),action:()=>{var m=this.getNumberValueEqualsFilter(e,r);this.irisGrid.setQuickFilter(v,$.getQuickFilterCondition(s,m,a),$.getQuickFilterText(o,"=".concat(t),a))},order:10,group:he.groups.low}),u.push({title:"is not equal to",description:"Show only rows where ".concat(e.name," is not ").concat(t),action:()=>{var m=this.getNumberValueEqualsFilter(e,r).not();this.irisGrid.setQuickFilter(v,$.getQuickFilterCondition(s,m,a),$.getQuickFilterText(o,"!=".concat(t),a))},order:20,group:he.groups.low}),d&&!x.isCharType(e.type)&&(u.push({title:"greater than",description:"Show only rows where ".concat(e.name," is greater than ").concat(t),action:()=>{this.irisGrid.setQuickFilter(v,$.getQuickFilterCondition(s,e.filter().greaterThan(l),a),$.getQuickFilterText(o,">".concat(t),a))},order:30,group:he.groups.low}),u.push({title:"greater than or equal to",description:"Show only rows where ".concat(e.name," is greater than or equal to ").concat(t),action:()=>{this.irisGrid.setQuickFilter(v,$.getQuickFilterCondition(s,e.filter().greaterThanOrEqualTo(l),a),$.getQuickFilterText(o,">=".concat(t),a))},order:40,group:he.groups.low}),u.push({title:"less than",description:"Show only rows where ".concat(e.name," is less than ").concat(t),action:()=>{this.irisGrid.setQuickFilter(v,$.getQuickFilterCondition(s,e.filter().lessThan(l),a),$.getQuickFilterText(o,"<".concat(t),a))},order:50,group:he.groups.low}),u.push({title:"less than or equal to",description:"Show only rows where ".concat(e.name," is less than or equal to ").concat(t),action:()=>{this.irisGrid.setQuickFilter(v,$.getQuickFilterCondition(s,e.filter().lessThanOrEqualTo(l),a),$.getQuickFilterText(o,"<=".concat(t),a))},order:60,group:he.groups.low})),u}booleanFilterActions(e,t,r,i){var a=[],{model:l}=this.irisGrid.props,{filter:s,text:o}=r||{},u=l.getColumnIndexByName(e.name);return L(u),a.push({menuElement:c.jsxs("div",{className:"iris-grid-filter-menu-item-value",children:[i?$.getOperatorAsText(i):""," ",'"',t??"null",'"']}),order:1,group:he.groups.high}),a.push({title:"true",description:"Show only rows where ".concat(e.name," is true"),action:()=>{this.irisGrid.setQuickFilter(u,$.getQuickFilterCondition(s,e.filter().isTrue(),i),$.getQuickFilterText(o,"true",i))},order:10,group:he.groups.low}),a.push({title:"false",description:"Show only rows where ".concat(e.name," is false"),action:()=>{this.irisGrid.setQuickFilter(u,$.getQuickFilterCondition(s,e.filter().isFalse(),i),$.getQuickFilterText(o,"false",i))},order:20,group:he.groups.low}),a.push({title:"is null",description:"Show only rows where ".concat(e.name," is null"),action:()=>{this.irisGrid.setQuickFilter(u,$.getQuickFilterCondition(s,e.filter().isNull(),i),$.getQuickFilterText(o,"null",i))},order:30,group:he.groups.low}),a.push({title:"is not null",description:"Show only rows where ".concat(e.name," is not null"),action:()=>{this.irisGrid.setQuickFilter(u,$.getQuickFilterCondition(s,e.filter().isNull().not(),i),$.getQuickFilterText(o,"!null",i))},order:40,group:he.groups.low}),a}dateFilterActions(e,t,r,i,a,l){var{dh:s}=this,o=s.FilterValue.ofNumber(i),u=null,d=null;a&&(u=a.filter,d=a.text);var{model:h}=this.irisGrid.props,v=h.getColumnIndexByName(e.name);L(v);var m=[];return m.push({menuElement:c.jsxs("div",{className:"iris-grid-filter-menu-item-value",children:[l?$.getOperatorAsText(l):""," ",'"',r,'"']}),order:1,group:he.groups.high}),m.push({title:"date is",description:"Show only rows where ".concat(e.name," is ").concat(r),action:()=>{this.irisGrid.setQuickFilter(v,$.getQuickFilterCondition(u,e.filter().eq(o),l),$.getQuickFilterText(d,"=".concat(t),l))},order:10,group:he.groups.low}),m.push({title:"date is not",description:"Show only rows where ".concat(e.name," is not ").concat(r),action:()=>{this.irisGrid.setQuickFilter(v,$.getQuickFilterCondition(u,e.filter().notEq(o),l),$.getQuickFilterText(d,"!=".concat(t),l))},order:20,group:he.groups.low}),m.push({title:"date is before",description:"Show only rows where ".concat(e.name," is before ").concat(r),action:()=>{this.irisGrid.setQuickFilter(v,$.getQuickFilterCondition(u,e.filter().lessThan(o),l),$.getQuickFilterText(d,"<".concat(t),l))},order:30,group:he.groups.low}),m.push({title:"date is before or equal",description:"Show only rows where ".concat(e.name," is before or equal to ").concat(r),action:()=>{this.irisGrid.setQuickFilter(v,$.getQuickFilterCondition(u,e.filter().lessThanOrEqualTo(o),l),$.getQuickFilterText(d,"<=".concat(t),l))},order:40,group:he.groups.low}),m.push({title:"date is after",description:"Show only rows where ".concat(e.name," is greater than ").concat(r),action:()=>{this.irisGrid.setQuickFilter(v,$.getQuickFilterCondition(u,e.filter().greaterThan(o),l),$.getQuickFilterText(d,">".concat(t),l))},order:50,group:he.groups.low}),m.push({title:"date is after or equal",description:"Show only rows where ".concat(e.name," is after or equal to ").concat(r),action:()=>{this.irisGrid.setQuickFilter(v,$.getQuickFilterCondition(u,e.filter().greaterThanOrEqualTo(o),l),$.getQuickFilterText(d,">=".concat(t),l))},order:60,group:he.groups.low}),m}emptyStringFilterActions(e,t,r){var{dh:i}=this,a=i.FilterValue.ofString(""),l=t;l||(l={filter:null,text:null});var{filter:s,text:o}=l,u=[],{model:d}=this.irisGrid.props,h=d.getColumnIndexByName(e.name);return L(h),u.push({menuElement:c.jsxs("div",{className:"iris-grid-filter-menu-item-value",children:[r?$.getOperatorAsText(r):""," ",c.jsx("i",{className:"text-muted",children:"empty"})]}),order:1,group:he.groups.high}),u.push({title:"is empty string",description:"Show only rows where ".concat(e.name," is empty"),action:()=>{this.irisGrid.setQuickFilter(h,$.getQuickFilterCondition(s,e.filter().eq(a),r),$.getQuickFilterText(o,"=",r))},order:10,group:he.groups.low}),u.push({title:"is not empty string",description:"Show only rows where ".concat(e.name," is not empty"),action:()=>{this.irisGrid.setQuickFilter(h,$.getQuickFilterCondition(s,e.filter().notEq(a),r),$.getQuickFilterText(o,"!=",r))},order:20,group:he.groups.low}),u}nullFilterActions(e,t,r){var i=null,a=null;t&&(i=t.filter,a=t.text);var l=[],{model:s}=this.irisGrid.props,o=s.getColumnIndexByName(e.name);return L(o),l.push({menuElement:c.jsxs("div",{className:"iris-grid-filter-menu-item-value",children:[r?$.getOperatorAsText(r):""," ",c.jsx("i",{className:"text-muted",children:"null"})]}),order:1,group:he.groups.high}),l.push({title:"is null",description:"Show only rows where ".concat(e.name," is null"),action:()=>{this.irisGrid.setQuickFilter(o,$.getQuickFilterCondition(i,e.filter().isNull(),r),$.getQuickFilterText(a,"null",r))},order:10,group:he.groups.low}),l.push({title:"is not null",description:"Show only rows where ".concat(e.name," is not null"),action:()=>{this.irisGrid.setQuickFilter(o,$.getQuickFilterCondition(i,e.filter().isNull().not(),r),$.getQuickFilterText(a,"!null",r))},order:20,group:he.groups.low}),l}sortByActions(e,t,r){var i=this.irisGrid.getTheme(),{contextMenuSortIconColor:a}=i,l=[{title:"".concat(e.name," Ascending"),order:10,action:()=>{this.irisGrid.sortColumn(t,$.COLUMN_SORT_DIRECTION.ascending)},icon:this.checkColumnSort(r,$.COLUMN_SORT_DIRECTION.ascending)?Nr:void 0,iconColor:a},{title:"".concat(e.name," Descending"),order:20,action:()=>{this.irisGrid.sortColumn(t,$.COLUMN_SORT_DIRECTION.descending)},icon:this.checkColumnSort(r,$.COLUMN_SORT_DIRECTION.descending)?Nr:void 0,iconColor:a},{title:"Remove Sort",order:50,action:()=>{this.irisGrid.sortColumn(t,$.COLUMN_SORT_DIRECTION.none,!1,!0)},disabled:!r}];return x.isNumberType(e.type)&&(l.push({title:"ABS(".concat(e.name,") Ascending"),order:30,action:()=>{this.irisGrid.sortColumn(t,$.COLUMN_SORT_DIRECTION.ascending,!0)},icon:this.checkColumnSort(r,$.COLUMN_SORT_DIRECTION.ascending,!0)?Nr:void 0,iconColor:a}),l.push({title:"ABS(".concat(e.name,") Descending"),order:40,action:()=>{this.irisGrid.sortColumn(t,$.COLUMN_SORT_DIRECTION.descending,!0)},icon:this.checkColumnSort(r,$.COLUMN_SORT_DIRECTION.descending,!0)?Nr:void 0,iconColor:a})),l}additionalSortActions(e,t){var r=this.irisGrid.getTheme(),{contextMenuSortIconColor:i}=r,a=[{title:"Add Sort By",menuElement:c.jsxs("div",{className:"btn-context-menu menu-title",children:[c.jsx("span",{className:"icon",children:c.jsx(le,{icon:Nr,style:{color:i??void 0}})}),c.jsx("span",{className:"title",children:"Add Additional Sort"}),c.jsx("span",{className:"shortcut",children:Kn.isMacPlatform()?"⌘Click":"Ctrl+Click"})]}),order:1},{title:"".concat(e.name," Ascending"),order:10,action:()=>{this.irisGrid.sortColumn(t,$.COLUMN_SORT_DIRECTION.ascending,!1,!0)}},{title:"".concat(e.name," Descending"),order:20,action:()=>{this.irisGrid.sortColumn(t,$.COLUMN_SORT_DIRECTION.descending,!1,!0)}}];return x.isNumberType(e.type)&&(a.push({title:"ABS(".concat(e.name,") Ascending"),order:30,action:()=>{this.irisGrid.sortColumn(t,$.COLUMN_SORT_DIRECTION.ascending,!0,!0)}}),a.push({title:"ABS(".concat(e.name,") Descending"),order:40,action:()=>{this.irisGrid.sortColumn(t,$.COLUMN_SORT_DIRECTION.descending,!0,!0)}})),a}checkColumnSort(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;return e?e.direction===t&&e.isAbs===r:!1}}Gt($,"GROUP_EDIT",he.groups.high+10);Gt($,"GROUP_HIDE_COLUMNS",he.groups.high+25);Gt($,"GROUP_FILTER",he.groups.high+50);Gt($,"GROUP_EXPAND_COLLAPSE",he.groups.high+55);Gt($,"GROUP_GOTO",he.groups.high+60);Gt($,"GROUP_SORT",he.groups.high+75);Gt($,"GROUP_COPY",he.groups.high+100);Gt($,"GROUP_FORMAT",he.groups.high+150);Gt($,"COLUMN_SORT_DIRECTION",{ascending:"ASC",descending:"DESC",none:null});const RC=$;function DC(n,e,t){return e=FC(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function FC(n){var e=NC(n,"string");return typeof e=="symbol"?e:String(e)}function NC(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class IC extends Qe{constructor(e){super(),DC(this,"irisGrid",void 0),this.irisGrid=e}onDoubleClick(e){var{column:t,row:r}=e;return r==null||t==null?!1:(this.irisGrid.selectData(t,r),!0)}}const AC=IC;function MC(n,e,t){return e=xC(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function xC(n){var e=LC(n,"string");return typeof e=="symbol"?e:String(e)}function LC(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class kC extends Qe{constructor(e){super(),MC(this,"irisGrid",void 0),this.irisGrid=e}onDown(e){var{y:t,column:r,row:i}=e;if(r!==null&&i===null){var{isFilterBarShown:a,metrics:l}=this.irisGrid.state;if(!l)throw new Error("Metrics not set");var{columnHeaderMaxDepth:s}=l,o=this.irisGrid.getTheme();if(a&&o.columnHeaderHeight!=null&&o.filterBarHeight!=null&&t>o.columnHeaderHeight*s&&t<=o.columnHeaderHeight*s+o.filterBarHeight)return this.irisGrid.focusFilterBar(r),!0}return!1}onMove(e){var{y:t,column:r}=e,{isFilterBarShown:i,hoverAdvancedFilter:a,metrics:l}=this.irisGrid.state;if(!l)throw new Error("Metrics not set");var{columnHeaderMaxDepth:s}=l,o=this.irisGrid.getTheme(),u=null;return i&&o.columnHeaderHeight!=null&&o.filterBarHeight!=null&&r!==null&&t>=o.columnHeaderHeight*s&&t<=o.columnHeaderHeight*s+o.filterBarHeight&&(u=r),u!==a&&this.irisGrid.setState({hoverAdvancedFilter:u}),!1}onLeave(e){var{column:t}=e,{hoverAdvancedFilter:r}=this.irisGrid.state;return r!==null&&t!==r&&this.irisGrid.setState({hoverAdvancedFilter:null}),!1}}const jC=kC;function _C(n,e,t){return e=HC(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function HC(n){var e=UC(n,"string");return typeof e=="symbol"?e:String(e)}function UC(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class VC extends Qe{constructor(e){super(750),_C(this,"irisGrid",void 0),this.irisGrid=e}destroyTooltip(){this.irisGrid.setState({expandCellTooltipProps:null})}setCursor(e,t){return Wl.isInTreeBox(e,t)?(this.cursor="pointer",{stopPropagation:!1,preventDefault:!1}):(this.cursor=null,!1)}getButtonPosition(e){var{x:t,y:r,column:i,row:a}=e;if(i==null||a==null)return null;var{renderer:l,grid:s,state:o,props:u}=this.irisGrid;if(!s)return null;var{metrics:d}=o,{model:h}=u,{canvasContext:v}=s,m=s.getTheme(),f={context:v,mouseX:t,mouseY:r,metrics:d,model:h,theme:m},g=xe(h)?h.depthForRow(a):null,{left:p,top:C,width:S,height:b}=l.getExpandButtonPosition(f,g);return p==null||S==null||C==null||b==null?null:{left:p,top:C,width:S,height:b}}onMove(e,t){if(Wl.isInTreeBox(e,t)){var{expandCellTooltipProps:r}=this.irisGrid.state,{model:i}=this.irisGrid.props,a=this.getButtonPosition(e),{row:l}=e;L(l);var s=xe(i)&&i.isRowExpanded(l);ht(r,a)||this.irisGrid.setState({expandCellTooltipProps:a,expandTooltipDisplayValue:s?"collapse":"expand"})}else this.destroyTooltip();return this.setCursor(e,t)}onDown(){return this.destroyTooltip(),!1}onContextMenu(){return this.destroyTooltip(),!1}onWheel(){return this.destroyTooltip(),!1}onLeave(){return this.destroyTooltip(),!1}}const BC=VC;function Qo(n,e,t){return e=GC(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function GC(n){var e=$C(n,"string");return typeof e=="symbol"?e:String(e)}function $C(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class WC extends Qe{constructor(e){super(),Qo(this,"irisGrid",void 0),Qo(this,"column",void 0),this.column=null,this.irisGrid=e}getColumnFromGridPoint(e){var{column:t,row:r,columnHeaderDepth:i}=e;return t!==null&&r===null&&i===0?t:null}onDown(e){return this.column=this.getColumnFromGridPoint(e),!1}onClick(e,t,r){var i=this.getColumnFromGridPoint(e);if(i!=null&&i===this.column){var a=Kn.isModifierKeyDown(r);return this.irisGrid.toggleSort(i,a),!0}return!1}}const zC=WC;class KC extends Qe{constructor(e){super(),this.irisGrid=e}onWheel(e,t,r){var{irisGrid:i}=this,{model:a}=i.props,{metrics:l,pendingRowCount:s}=i.state;L(l);var{bottom:o,rowCount:u,rowHeight:d}=l,{deltaY:h}=K.getScrollDelta(r);return He(a)&&a.isEditable&&o>=u-1&&h>0&&i.setState({pendingRowCount:s+Math.ceil(h/d)}),!1}}const YC=KC;function Zo(n,e,t){return e=qC(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function qC(n){var e=XC(n,"string");return typeof e=="symbol"?e:String(e)}function XC(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class QC extends Qe{constructor(e){super(),Zo(this,"irisGrid",void 0),Zo(this,"currentLinkBox",void 0),this.irisGrid=e}destroyTooltip(){this.irisGrid.setState({linkHoverTooltipProps:null})}isHoveringLink(e,t){var{column:r,row:i,x:a,y:l}=e,{renderer:s,metrics:o,props:u}=t,{model:d}=u;if(r==null||i==null||o==null)return this.currentLinkBox=void 0,!1;var{modelRows:h,modelColumns:v}=o,m=M(h,i),f=M(v,r),g=d.renderTypeForCell(f,m),p=s.getCellRenderer(g);if(!yh(p))return!1;if(this.currentLinkBox!=null){var{x1:C,y1:S,x2:b,y2:w}=this.currentLinkBox;if(a>=C&&a<=b&&l>=S&&l<=w)return!0}for(var y=t.updateRenderState(),T=p.getTokenBoxesForVisibleCell(r,i,y),E=0;E<T.length;E+=1)if(Oa(T[E].token)){var P=K.translateTokenBox(T[E],o),{x1:O,x2:D,y1:N,y2:F}=P;if(a>=O&&a<=D&&l>=N&&l<=F)return this.currentLinkBox=P,!0}return this.currentLinkBox=void 0,!1}setCursor(e,t){return this.isHoveringLink(e,t)?(this.cursor="pointer",{stopPropagation:!1,preventDefault:!1}):(this.cursor=null,!1)}onMove(e,t){var r=this.isHoveringLink(e,t);if(r&&this.currentLinkBox!=null&&Oa(this.currentLinkBox.token)){var{linkHoverTooltipProps:i}=this.irisGrid.state;if(this.currentLinkBox==null)return!1;var{x1:a,y1:l,x2:s,y2:o}=this.currentLinkBox,{href:u}=this.currentLinkBox.token,d=s-a,h=o-l,v={left:a,top:l+1,width:d,height:h};ht(i,v)||this.irisGrid.setState({linkHoverTooltipProps:v,linkHoverDisplayValue:u})}else this.destroyTooltip();return this.setCursor(e,t)}onDown(){return this.destroyTooltip(),!1}onContextMenu(){return this.destroyTooltip(),!1}onWheel(){return this.destroyTooltip(),!1}onLeave(){return this.destroyTooltip(),!1}}const ZC=QC;var JC=3e3;function eS(n){var{children:e=null,onEntering:t,onEntered:r,onExiting:i,onExited:a}=n,[l,s]=R.useState(!1),o=R.useRef(),u=Qd(e),d=R.useCallback(()=>{s(!0),o.current&&clearTimeout(o.current),o.current=setTimeout(()=>{s(!1)},JC)},[s,o]);return R.useEffect(()=>{u!==e&&e!=null&&d()},[e,u,s,d]),R.useEffect(()=>()=>o.current?clearTimeout(o.current):void 0,[]),c.jsx($a,{className:"toast-bottom-bar",isShown:l,onEntering:t,onEntered:r,onExiting:i,onExited:a,children:e})}class tS extends Nn{getGridY(e){var t=super.getGridY(e),{isFilterBarShown:r,theme:i,advancedFilters:a,quickFilters:l,sorts:s,reverseType:o}=e;return r?t+=i.filterBarHeight:(l!=null&&l.size>0||a!=null&&a.size>0)&&(t+=i.filterBarCollapsedHeight),o!==x.REVERSE_TYPE.NONE&&s!=null&&s.length>0&&(t+=i.reverseHeaderBarHeight),t}getUserColumnWidths(){return this.userColumnWidths}}const rS=tS;var nS=1,Nh=Me.memo(n=>{var{model:e,modelColumns:t,top:r,bottom:i,left:a,right:l,filter:s,formatter:o,reverseType:u=x.REVERSE_TYPE.NONE,sorts:d,customColumns:h,movedColumns:v,hiddenColumns:m,alwaysFetchColumns:f,rollupConfig:g=null,totalsConfig:p=null,selectDistinctColumns:C=Re,pendingRowCount:S=0,pendingDataMap:b=xr,frozenColumns:w,formatColumns:y,columnHeaderGroups:T}=n,E=R.useMemo(()=>me.getModelViewportColumns(t,a,l,v,m,f,nS),[t,a,l,v,m,f]);return R.useEffect(function(){e.filter=s},[e,s]),R.useEffect(function(){var O=[...d];u!==x.REVERSE_TYPE.NONE&&O.push(e.dh.Table.reverse()),e.sort=O},[e,d,u]),R.useEffect(function(){e.formatter=o},[e,o]),R.useEffect(function(){e.isCustomColumnsAvailable&&(e.customColumns=h)},[e,h]),R.useEffect(function(){e.isFormatColumnsAvailable&&(e.formatColumns=y)},[e,y]),R.useEffect(function(){e.setViewport(r,i,E)},[e,r,i,E]),R.useEffect(function(){e.isRollupAvailable&&(e.rollupConfig=g)},[e,e.isRollupAvailable,g]),R.useEffect(function(){e.isSelectDistinctAvailable&&(e.selectDistinctColumns=C)},[e,C]),R.useEffect(function(){e.isTotalsAvailable&&(e.totalsConfig=p)},[e,e.isTotalsAvailable,p]),R.useEffect(function(){e.pendingRowCount=S},[e,S]),R.useEffect(function(){e.pendingDataMap=b},[e,b]),R.useEffect(function(){w&&e.updateFrozenColumns(w)},[e,w]),R.useEffect(function(){e.columnHeaderGroups=T},[e,T]),null});Nh.displayName="IrisGridModelUpdater";const iS=Nh;var ql=16,aS=new Map([["sortUp",Lv],["sortDown",kv],["caretDown",Ss],["caretRight",jv],["cellOverflow",_v]]),lS=mr(n=>{var e=aS.get(n);if(e===void 0)throw new Error("Icon is undefined");var t=Array.isArray(e.icon[4])?e.icon[4][0]:e.icon[4],r=new Path2D(t),i=new Path2D,a={a:ql/e.icon[0],d:ql/e.icon[1]};return i.addPath(r,a),i},{max:1e3});function Ri(n){return lS(n)}class sS{static drawTreeMarker(e,t,r,i,a,l,s){e.save();var{x1:o,y1:u}=a,d=Ri(s?"caretDown":"caretRight"),h=r+o-2,v=i+u+2.5;e.fillStyle=l,e.textAlign="center",e.translate(h,v),e.fill(d),e.restore()}}const Ih=sS;class oS extends bh{drawCellContent(e,t,r,i){var a,{metrics:l,model:s}=t,{modelColumns:o,modelRows:u}=l,d=M(u,i),h=o.get(r);if(h!==void 0){var v=s.valueForCell(h,d);if(x.isTextType((a=s.columns[h])===null||a===void 0?void 0:a.type)&&(v===null||v==="")){var m=e.font;e.font="italic ".concat(m),super.drawCellContent(e,t,r,i),e.font=m;return}super.drawCellContent(e,t,r,i)}}getTextRenderMetrics(e,t,r){var i=K.getTextRenderMetrics(e,t,r),{mouseX:a,mouseY:l,metrics:s,theme:o}=e;if(a==null||l==null)return i;var{column:u,row:d}=K.getGridPointFromXY(a,l,s);if(t===u&&r===d){var{left:h}=this.getCellOverflowButtonPosition(a,l,s,o);this.shouldRenderOverflowButton(e)&&h!=null&&(i.width=h-s.gridX-i.x)}return i}getCellOverflowButtonPosition(e,t,r,i){var a={left:null,top:null,width:null,height:null};if(e==null||t==null||r==null)return a;var{rowHeight:l,columnWidth:s,left:o,top:u}=K.getCellInfoFromXY(e,t,r);if(o==null||s==null||u==null)return a;var{width:d,verticalBarWidth:h}=r,{cellHorizontalPadding:v}=i,m=ql+2*v,f=l,g=Math.min(r.gridX+o+s,d-h),p=g-m,C=r.gridY+u;return{left:p,top:C,width:m,height:f}}shouldRenderOverflowButton(e){var t,r,{context:i,mouseX:a,mouseY:l,metrics:s,model:o,theme:u}=e;if(a==null||l==null)return!1;var{row:d,column:h,modelRow:v,modelColumn:m}=K.getCellInfoFromXY(a,l,s);if(d==null||h==null||v==null||m==null||!x.isStringType(o.columns[m].type))return!1;var f=(t=o.textForCell(m,v))!==null&&t!==void 0?t:"",{width:g}=K.getTextRenderMetrics(e,h,d),p=(r=s.fontWidths.get(u.font))!==null&&r!==void 0?r:En;i.save(),i.font=u.font;var C=this.getCachedTruncatedString(i,f,g,p,o.truncationCharForCell(m,v));return i.restore(),f!==""&&C!==f}drawTreeMarker(e,t,r,i,a,l,s){Ih.drawTreeMarker(e,t,r,i,a,l,s)}}const uS=oS;class dS extends Sh{drawTreeMarker(e,t,r,i,a,l,s){Ih.drawTreeMarker(e,t,r,i,a,l,s)}}const hS=dS;function Jo(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 eu(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Jo(Object(t),!0).forEach(function(r){Xl(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Jo(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Xl(n,e,t){return e=cS(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function cS(n){var e=vS(n,"string");return typeof e=="symbol"?e:String(e)}function vS(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Dl=Object.freeze({SORT_UP:"sortUp",SORT_DOWN:"sortDown",CARET_DOWN:"caretDown",CARET_RIGHT:"caretRight",CELL_OVERFLOW:"cellOverflow"}),tu=10;class Fa extends Er{constructor(){super(...arguments),Xl(this,"textCellRenderer",new uS),Xl(this,"dataBarCellRenderer",new hS)}static isFilterValid(e,t){var r=e==null||e.filter!=null,i=t==null||t.filter!=null;return r&&i}getSortIcon(e){return e?e.direction===x.sortDirection.ascending?Ri(Dl.SORT_UP):e.direction===x.sortDirection.descending?Ri(Dl.SORT_DOWN):null:null}drawCanvas(e){super.drawCanvas(e),this.drawScrim(e)}drawGrid(e,t){super.drawGrid(e,t),this.drawCellOverflowButton(t)}drawGridLines(e,t){super.drawGridLines(e,t),this.drawGroupedColumnLine(e,t),this.drawPendingRowLine(e,t)}drawCellContent(e,t,r,i){var{metrics:a,model:l}=t,{modelColumns:s,modelRows:o}=a,u=s.get(r),d=M(o,i);if(u!==void 0){var h=l.renderTypeForCell(u,d),v=this.getCellRenderer(h);v.drawCellContent(e,t,r,i)}}getCellOverflowButtonPosition(e){var{mouseX:t,mouseY:r,metrics:i,theme:a}=e;return this.textCellRenderer.getCellOverflowButtonPosition(t,r,i,a)}shouldRenderOverflowButton(e){return this.textCellRenderer.shouldRenderOverflowButton(e)}drawCellOverflowButton(e){var{context:t,mouseX:r,mouseY:i,theme:a}=e;if(!(r==null||i==null)&&this.shouldRenderOverflowButton(e)){var{left:l,top:s,width:o,height:u}=this.getCellOverflowButtonPosition(e),{cellHorizontalPadding:d,overflowButtonColor:h,overflowButtonHoverColor:v}=a;t.save(),v!=null&&l!=null&&o!=null&&s!=null&&u!=null&&r>=l&&r<=l+o&&i>=s&&i<=s+u?t.fillStyle=v:h!=null&&(t.fillStyle=h);var m=Ri(Dl.CELL_OVERFLOW);l!=null&&s!=null&&t.translate(l+d,s+2),t.fill(m),t.restore()}}drawGroupedColumnLine(e,t){var{metrics:r,model:i,theme:a}=t,{groupedColumns:l}=i,{maxY:s,allColumnWidths:o,allColumnXs:u}=r;if(!(l.length===0||a.groupedColumnDividerColor==null)){var d=l.length-1,h=u.get(d),v=o.get(d);if(!(h==null||v==null)){var m=h+v+.5;e.strokeStyle=a.groupedColumnDividerColor,e.lineWidth=1,e.beginPath(),e.moveTo(m,0),e.lineTo(m,s),e.stroke()}}}drawPendingRowLine(e,t){var{metrics:r,model:i,theme:a}=t,{allRowYs:l,maxX:s}=r,{pendingRowCount:o}=i;if(!(o<=0)){var u=i.rowCount-i.pendingRowCount-i.floatingBottomRowCount,d=l.get(u);d!=null&&(d-=.5,e.save(),e.setLineDash([4,2]),e.strokeStyle=a.pendingTextColor,e.lineWidth=1,e.beginPath(),e.moveTo(0,d),e.lineTo(s,d),e.stroke(),e.restore())}}drawMouseColumnHover(e,t){var{theme:r,metrics:i,hoverSelectColumn:a}=t;if(!(a==null||r.linkerColumnHoverBackgroundColor==null)){var{allColumnWidths:l,allColumnXs:s,maxY:o}=i,u=M(s,a),d=M(l,a);e.fillStyle=r.linkerColumnHoverBackgroundColor,e.fillRect(u,0,d,o)}}drawMouseRowHover(e,t){var{isSelectingColumn:r}=t;r||super.drawMouseRowHover(e,t)}drawScrim(e){var{context:t,loadingScrimProgress:r,metrics:i,theme:a}=e;if(r!=null){var{width:l,height:s,gridY:o}=i,{scrimBlurSize:u,scrimColor:d}=a;t.save(),t.globalCompositeOperation="color",t.filter="blur(".concat(u,"px)"),d!=null&&(t.fillStyle=d),t.beginPath(),t.rect(0,o,l,s-o),t.clip(),t.fillRect(-u,-u+o,u*2+l,(u*2+(s-o))*r),t.globalCompositeOperation="overlay",t.filter="blur(".concat(u,"px) opacity(15%)"),t.fillRect(-u,-u+o,u*2+l,(u*2+(s-o))*r),t.restore()}}drawColumnHeaders(e,t){super.drawColumnHeaders(e,t);var{theme:r,metrics:i,model:a,reverseType:l}=t,{columnHeaderHeight:s}=i;if(this.drawFilterHeaders(e,t),!(s<=0)){var{sort:o}=a;if(o.length===1){var u=l!==x.REVERSE_TYPE.NONE,d;u?d=r.headerReverseBarColor:d=r.headerSortBarColor,this.drawHeaderBar(e,t,d,u?r.reverseHeaderBarHeight:r.sortHeaderBarHeight)}else o.length>1&&(l!==x.REVERSE_TYPE.NONE&&this.drawHeaderBar(e,t,r.headerReverseBarColor,r.reverseHeaderBarHeight,!1),this.drawHeaderBar(e,t,r.headerSortBarColor,r.sortHeaderBarHeight))}}drawHeaderBar(e,t,r,i){var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,{theme:l,metrics:s,model:o}=t,{columnHeaderHeight:u,width:d}=s,h=0;a||(h=i),e.fillStyle=l.headerBarCasingColor,e.fillRect(0,o.columnHeaderMaxDepth*u-i-2+h,d,i+2),e.fillStyle=r,e.fillRect(0,o.columnHeaderMaxDepth*u-i-1+h,d,i)}drawColumnHeadersAtDepth(e,t,r,i,a){var{metrics:l,model:s,isMenuShown:o}=t,{columnHeaderMaxDepth:u}=s,{width:d}=l,h=eu(eu({},i),{},{maxX:a===u-1&&i.maxX===d?d-(o?0:30):i.maxX});super.drawColumnHeadersAtDepth(e,t,r,h,a)}drawColumnHeaderAtIndex(e,t,r,i){var a,l;super.drawColumnHeaderAtIndex(e,t,r,i);var{metrics:s,model:o,theme:u}=t,{modelColumns:d,allColumnWidths:h,allColumnXs:v,gridX:m,columnHeaderHeight:f,fontWidths:g}=s,{headerHorizontalPadding:p}=u,C=M(h,r,0),S=M(v,r)+m,b=d.get(r);if(b!=null){var w=(a=o.columns[b])===null||a===void 0?void 0:a.name;if(w!=null){var y=x.getSortForColumn(o.sort,w);if(y){var T=this.getSortIcon(y);if(T){var E=o.textForColumnHeader(b);if(E!==void 0){var P=(l=g.get(e.font))!==null&&l!==void 0?l:En;L(P);var O=E.length*P,D=m+S+O+p,{maxX:N}=i;N-=p;var F=m+S+C-p-1,A=D>N?D+1:Math.min(N,F),j=y.direction===x.sortDirection.ascending?-6:-12,k=f*.5+j;e.save(),e.beginPath(),e.rect(S,0,C,f),e.clip(),e.fillStyle=u.headerSortBarColor,e.translate(A,k),e.fill(T),e.restore()}}}}}}drawFilterHeaders(e,t){var{isFilterBarShown:r,quickFilters:i,advancedFilters:a}=t;r?this.drawExpandedFilterHeaders(e,t):(i!=null&&i.size>0||a!=null&&a.size>0)&&this.drawCollapsedFilterHeaders(e,t)}drawExpandedFilterHeaders(e,t){var{metrics:r,model:i,theme:a,quickFilters:l,advancedFilters:s}=t,{filterBarHeight:o}=a;if(!(o<=0)){var{gridX:u,gridY:d,maxX:h,modelColumns:v,visibleColumns:m,allColumnWidths:f,allColumnXs:g}=r,p=d-o;e.save(),e.font=a.font,e.textAlign="left",l!=null&&l.size>0||s!=null&&s.size>0?e.fillStyle=a.filterBarExpandedActiveBackgroundColor:e.fillStyle=a.filterBarExpandedBackgroundColor,e.fillRect(u,p,h,o-1),e.fillStyle=a.headerBarCasingColor,e.fillRect(u,p+o-1,h,1);var C=p;e.strokeStyle=a.filterBarSeparatorColor,e.beginPath();for(var S=0;S<m.length;S+=1){var b=m[S],w=M(v,b),y=M(g,b),T=M(f,b);if(i.isFilterable(w)&&T>0){var E=u+(y??0);e.rect(E+.5,C+.5,T,o-2)}}e.stroke();for(var P=0;P<m.length;P+=1){var O=m[P],D=M(f,O),N=M(g,O),F=N+u;this.drawExpandedFilterHeader(e,t,O,F,D)}e.restore()}}drawExpandedFilterHeader(e,t,r,i,a){if(!(a<=0)){var{metrics:l,theme:s,quickFilters:o,advancedFilters:u}=t,{modelColumns:d,gridY:h}=l,{filterBarHeight:v,filterBarExpandedActiveCellBackgroundColor:m,filterBarErrorColor:f,filterBarHorizontalPadding:g,headerColor:p}=s,C=h-v,S=d.get(r);if(S!==void 0){var b=o.get(S),w=u.get(S);if(!(b==null&&w==null)){var y=null;if(b!=null){var{text:T}=b;if(y=T,y||(y=x.getFilterText(b.filter)),y!=null){var{fontWidths:E}=l,P=E.get(e.font);(P==null||P===0)&&(P=e.measureText("8").width,P||(P=10));var O=(a-g*2)/P;O<=0?y="":y.length>O&&(y="".concat(y.substring(0,O-1),"…"))}}e.save();var D=Fa.isFilterValid(w,b);if(D&&m!=null)e.fillStyle=m,e.fillRect(i+1,C+1,a-1,v-3);else if(f!=null){e.fillStyle=f,e.lineWidth=2,e.strokeStyle=f;var N=i+2,F=C+2,A=a-3,j=v-5;e.strokeRect(N,F,A,j)}if(y!=null&&y!==""){var k=i+g,B=C+v*.5+1;e.fillStyle=p,e.fillText(y,k,B)}e.restore()}}}}drawCollapsedFilterHeaders(e,t){var{metrics:r,theme:i}=t,{headerSeparatorColor:a,filterBarCollapsedHeight:l}=i;if(!(l<=0)){var{gridX:s,gridY:o,maxX:u,visibleColumns:d,allColumnWidths:h,allColumnXs:v}=r,m=o-l;e.save(),e.fillStyle=a,e.fillRect(s,m,u,l);for(var f=0;f<d.length;f+=1){var g=d[f],p=h.get(g),C=v.get(g);if(C!=null&&p!=null){var S=C+s;this.drawCollapsedFilterHeader(e,t,g,S,p)}}e.restore()}}drawCollapsedFilterHeader(e,t,r,i,a){if(!(a<=0)){var{metrics:l,theme:s,quickFilters:o,advancedFilters:u}=t,{modelColumns:d,gridY:h}=l,v=d.get(r);if(v!==void 0){var m=o.get(v),f=u.get(v),{filterBarCollapsedHeight:g,filterBarActiveColor:p,filterBarActiveBackgroundColor:C,filterBarErrorColor:S}=s;e.save();var b=Fa.isFilterValid(f,m);C!=null&&m==null&&f==null?e.fillStyle=C:p!=null&&b?e.fillStyle=p:S!=null&&(e.fillStyle=S);var w=i+1,y=h-g,T=a-1,E=g-1;e.fillRect(w,y,T,E),e.restore()}}}drawRowFooters(e,t){var{metrics:r,model:i,mouseX:a,mouseY:l,theme:s}=t,{gridY:o,gridX:u,maxX:d,modelRows:h,floatingTopHeight:v,floatingBottomHeight:m,floatingRows:f,rowFooterWidth:g,height:p,horizontalBarHeight:C,verticalBarWidth:S,allRowHeights:b,allRowYs:w,width:y}=r;if(!(g<=0||f.length===0)){var{cellHorizontalPadding:T,floatingGridRowColor:E,floatingRowBackgroundColors:P,headerColor:O,rowHoverBackgroundColor:D}=s;e.translate(u,o),e.beginPath();var N=Math.min(d,y-g-S-u);e.fillStyle=P,v>0&&e.rect(N,0,g,v),m>0&&e.rect(N,p-o-C-m,g,m),e.fill();var F=a!=null&&l!=null&&a>=u&&a<=d+g?K.getRowAtY(l,r):null;if(D!=null&&F!==null&&f.includes(F)){e.fillStyle=D;var A=w.get(F),j=b.get(F);L(A),L(j),e.fillRect(N,A,g,j)}if(e.beginPath(),E!=null&&(e.strokeStyle=E),v>0&&(e.moveTo(N+.5,.5),e.lineTo(N+.5,v-.5)),m>0){var k=p-o-C-m;e.moveTo(N-.5,k+.5),e.lineTo(N-.5,k+m-.5)}e.stroke(),e.fillStyle=O,e.textAlign="left";for(var B=N+T,G=0;G<f.length;G+=1){var W=f[G],z=b.get(W),q=w.get(W),V=h.get(W);if(q!=null&&z!=null&&V!=null){var I=q+z*.5;e.fillText(i.textForRowFooter(V),B,I)}}e.translate(-u,-o)}}getExpandButtonPosition(e,t){var{mouseX:r,mouseY:i,metrics:a,theme:l}=e,s={left:null,top:null,width:null,height:null};if(r==null||i==null||t==null||!a)return s;var{rowHeight:o,left:u,top:d}=K.getCellInfoFromXY(r,i,a);L(u),L(o),L(d);var{cellHorizontalPadding:h}=l,v=tu+2*h,m=Math.max(u+tu*t,a.gridX),f=a.gridY+d;return{left:m,top:f,width:v,height:o}}}const mS=Fa,fS="12px Fira Sans, sans-serif",gS="#f0f0ee",pS="#1a171a",te={"grid-bg":"#211f22",font:fS,white:gS,black:pS,"header-bg":"#2d2a2e","header-color":"#f0f0ee","header-height":"30px","header-separator-color":"#211f22","header-separator-hover-color":"#929192","header-hidden-separator-hover-color":"#4878ea","header-sort-bar-color":"#aa9af4","header-reverse-bar-color":"#548d29","header-bar-casing-color":"#211f22","header-font":"600 12px Fira Sans, sans-serif","row-height":"19px","row-background-colors":"#373438 #2d2a2e","selection-color":"rgba(118, 217, 228, 0.09)","selection-outline-color":"#76d9e4","selection-outline-casing-color":"#211f22","row-hover-bg":"#4b494c","selected-row-hover-bg":"rgba(118, 217, 228, 0.25)","scroll-bar-active-selection-tick-color":"rgba(118, 217, 228, 0.5)","scroll-bar-bg":"#322f33","scroll-bar-hover-bg":"#373438","scroll-bar-casing-color":"#555356","scroll-bar-corner-color":"#322f33","scroll-bar-color":"#5b5a5c","scroll-bar-hover-color":"#929192","scroll-bar-active-color":"#c0bfbf","text-color":"#f0f0ee","hyperlink-color":"#4878ea","positive-number-color":"#9edc6f","negative-number-color":"#f95d84","zero-number-color":"#fcd65b","date-color":"#fcd65b","pending-text-color":"#fde38d","error-text-color":"#f95d84","null-string-color":"#929192","filter-bar-active-bg":"#425175","filter-bar-active-color":"#4878ea","filter-bar-expanded-bg":"#373438","filter-bar-expanded-active-bg":"#313849","filter-bar-expanded-active-cell-bg":"#374d80","filter-bar-separator-color":"#929192","filter-bar-error-color":"#f95d84","filter-icon-color":"#4878ea","scrim-color":"#211f22","context-menu-sort-icon-color":"#aa9af4","context-menu-reverse-icon-color":"#548d29","linker-column-hover-bg":"rgba(118, 217, 228, 0.09)","tree-line-color":"#5b5a5c","tree-marker-color":"#c0bfbf","tree-marker-hover-color":"#fcfcfa","grouped-column-divider-color":"#1a171a","floating-grid-row-color":"#555356","floating-row-background-colors":"#403e41","floating-divider-inner-color":"#403e41","floating-divider-outer-color":"#211f22","overflow-button-color":"#c0bfbf","overflow-button-hover-color":"#fcfcfa","zero-line-color":"#5b5a5c","positive-bar-color":"#9edc6f","negative-bar-color":"#f95d84","marker-bar-color":"#f0f0ee"};var CS=Object.freeze({backgroundColor:te["grid-bg"],white:te.white,black:te.black,font:te.font,headerBackgroundColor:te["header-bg"],headerColor:te["header-color"],headerSeparatorColor:te["header-separator-color"],headerSeparatorHoverColor:te["header-separator-hover-color"],headerHiddenSeparatorHoverColor:te["header-hidden-separator-hover-color"],headerSortBarColor:te["header-sort-bar-color"],headerReverseBarColor:te["header-reverse-bar-color"],headerBarCasingColor:te["header-bar-casing-color"],headerFont:te["header-font"],rowBackgroundColors:te["row-background-colors"],rowHoverBackgroundColor:te["row-hover-bg"],selectionColor:te["selection-color"],selectionOutlineColor:te["selection-outline-color"],selectionOutlineCasingColor:te["selection-outline-casing-color"],selectedRowHoverBackgroundColor:te["selected-row-hover-bg"],scrollBarBackgroundColor:te["scroll-bar-bg"],scrollBarHoverBackgroundColor:te["scroll-bar-hover-bg"],scrollBarCasingColor:te["scroll-bar-casing-color"],scrollBarCornerColor:te["scroll-bar-corner-color"],scrollBarColor:te["scroll-bar-color"],scrollBarHoverColor:te["scroll-bar-hover-color"],scrollBarActiveColor:te["scroll-bar-active-color"],scrollBarSelectionTickColor:te["selected-row-hover-bg"],scrollBarActiveSelectionTickColor:te["scroll-bar-active-selection-tick-color"],textColor:te["text-color"],hyperlinkColor:te["hyperlink-color"],positiveNumberColor:te["positive-number-color"],negativeNumberColor:te["negative-number-color"],zeroNumberColor:te["zero-number-color"],dateColor:te["date-color"],pendingTextColor:te["pending-text-color"],errorTextColor:te["error-text-color"],nullStringColor:te["null-string-color"],filterBarActiveBackgroundColor:te["filter-bar-active-bg"],filterBarExpandedBackgroundColor:te["filter-bar-expanded-bg"],filterBarExpandedActiveBackgroundColor:te["filter-bar-expanded-active-bg"],filterBarExpandedActiveCellBackgroundColor:te["filter-bar-expanded-active-cell-bg"],filterBarSeparatorColor:te["filter-bar-separator-color"],filterBarActiveColor:te["filter-bar-active-color"],filterBarErrorColor:te["filter-bar-error-color"],filterIconColor:te["filter-icon-color"],scrimColor:te["scrim-color"],contextMenuSortIconColor:te["context-menu-sort-icon-color"],contextMenuReverseIconColor:te["context-menu-reverse-icon-color"],allowRowResize:!1,autoSelectRow:!0,gridColumnColor:null,gridRowColor:null,groupedColumnDividerColor:te["grouped-column-divider-color"],columnHoverBackgroundColor:null,headerHorizontalPadding:12,scrollBarSize:13,scrollBarHoverSize:16,minScrollHandleSize:24,rowHeight:parseInt(te["row-height"],10)||19,columnWidth:100,rowHeaderWidth:0,rowFooterWidth:60,columnHeaderHeight:parseInt(te["header-height"],10)||30,filterBarHeight:30,filterBarCollapsedHeight:5,sortHeaderBarHeight:2,reverseHeaderBarHeight:4,filterBarHorizontalPadding:4,scrimBlurSize:25,minScrimTransitionTime:150,maxScrimTransitionTime:350,scrollSnapToRow:!0,linkerColumnHoverBackgroundColor:te["linker-column-hover-bg"],treeLineColor:te["tree-line-color"],treeMarkerColor:te["tree-marker-color"],treeMarkerHoverColor:te["tree-marker-hover-color"],floatingGridColumnColor:null,floatingGridRowColor:te["floating-grid-row-color"],floatingRowBackgroundColors:te["floating-row-background-colors"],floatingDividerInnerColor:te["floating-divider-inner-color"],floatingDividerOuterColor:te["floating-divider-outer-color"],overflowButtonColor:te["overflow-button-color"],overflowButtonHoverColor:te["overflow-button-hover-color"],zeroLineColor:te["zero-line-color"],positiveBarColor:te["positive-bar-color"],negativeBarColor:te["negative-bar-color"],markerBarColor:te["marker-bar-color"]});const Ah=CS;function Mh(n,e,t){return e=SS(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function SS(n){var e=bS(n,"string");return typeof e=="symbol"?e:String(e)}function bS(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Fl=fe.module("ColumnStatistics"),wS={SIZE:"Number of Rows"};class Mi extends R.Component{static getStatsLabel(e){var t;return(t=wS[e])!==null&&t!==void 0?t:e.split(" ").map(r=>r[0].toUpperCase()+r.substr(1).toLowerCase()).join(" ")}constructor(e){super(e),Mh(this,"cancelablePromise",void 0),this.handleError=this.handleError.bind(this),this.handleGenerateStatistics=this.handleGenerateStatistics.bind(this),this.handleStatistics=this.handleStatistics.bind(this),this.cancelablePromise=null,this.state={error:null,loading:!1,statistics:null,numRows:0}}componentDidMount(){this.maybeGenerateStatistics()}componentWillUnmount(){this.cancelablePromise&&this.cancelablePromise.cancel()}maybeGenerateStatistics(){var{model:e}=this.props,t=e.rowCount-e.pendingRowCount-e.floatingBottomRowCount-e.floatingTopRowCount;this.setState({numRows:t}),e.isColumnStatisticsAvailable?t<Mi.AUTO_GENERATE_LIMIT&&this.handleGenerateStatistics():this.setState({loading:!1})}handleGenerateStatistics(){this.setState({loading:!0});var{column:e,model:t}=this.props;this.cancelablePromise=st.makeCancelable(t.columnStatistics(e)),this.cancelablePromise.then(this.handleStatistics).catch(this.handleError)}handleStatistics(e){Fl.debug("Received statistics",e);var{model:t,onStatistics:r}=this.props,i=[];e.statisticsMap.forEach((a,l)=>{i.push({operation:Mi.getStatsLabel(l),value:a,type:e.getType(l)})}),e.uniqueValues.forEach((a,l)=>{i.push({operation:l,className:"column-statistics-unique-value",value:a,type:"long"})}),this.setState({loading:!1,statistics:i,numRows:t.rowCount-t.pendingRowCount-t.floatingBottomRowCount-t.floatingTopRowCount}),r()}handleError(e){if(e!=null&&st.isCanceled(e)){Fl.debug("Called handleError on a cancelled promise result");return}Fl.error("Error generating statistics",e),this.setState({error:e,loading:!1,statistics:null})}render(){var{column:e,model:t}=this.props,{error:r,loading:i,statistics:a,numRows:l}=this.state,s=!i&&r==null&&a==null&&t.isColumnStatisticsAvailable,o=[],u=e.type.substring(e.type.lastIndexOf(".")+1),d=e.description===null?null:e.description;if(a!=null)for(var h=0;h<a.length;h+=1){var{operation:v,className:m,value:f,type:g}=a[h],p=g?t.displayString(f,g):t.displayString(f,e.type,e.name),C=c.jsxs(Me.Fragment,{children:[c.jsx("div",{className:re("column-statistic-operation",m),children:v}),c.jsx("div",{className:"column-statistic-value",children:p})]},v);o.push(C)}var S=xe(t)&&t.hasExpandableRows?"Expanded Rows":"Number of Rows",b=t.displayString(l,"long"),w=t.getColumnIndexByName(e.name);return c.jsxs("div",{className:"column-statistics",children:[c.jsxs("div",{className:"column-statistics-title",children:[e.name,c.jsxs("span",{className:"column-statistics-type",children:[" (",u,")"]}),c.jsx(vs,{className:"column-statistics-copy",tooltip:"Copy column name",copy:e.name})]}),d!=null&&c.jsx("div",{className:"column-statistics-description",children:d}),w!=null&&!t.isColumnSortable(w)&&c.jsxs("div",{className:"column-statistics-status",children:[c.jsx(le,{icon:Hv,className:"mr-1"}),"Not sortable"]}),w!=null&&!t.isColumnMovable(w)&&c.jsxs("div",{className:"column-statistics-status",children:[c.jsx(le,{icon:t.isColumnFrozen(w)?Uv:Vv,className:"mr-1"}),t.isColumnFrozen(w)?"Frozen":"Not movable"]}),c.jsxs("div",{className:"column-statistics-grid",children:[a==null&&c.jsxs(c.Fragment,{children:[c.jsx("div",{className:"column-statistic-operation",children:S}),c.jsx("div",{className:"column-statistic-value",children:b})]}),o]}),s&&c.jsx(Y,{kind:"ghost",className:"px-0",onClick:this.handleGenerateStatistics,children:"Generate Stats"}),r!=null&&c.jsx("div",{className:"error-message",children:"".concat(r)}),a&&!i&&c.jsx(Y,{kind:"ghost",className:"px-0",onClick:this.handleGenerateStatistics,icon:c.jsx(le,{icon:bs,className:"mr-1"}),children:"Refresh"}),i&&c.jsxs("div",{className:"column-statistics-loading",children:[c.jsx(Dn,{className:"loading-spinner-vertical-align"}),"Calculating Stats..."]})]})}}Mh(Mi,"AUTO_GENERATE_LIMIT",1e5);const yS=Mi;function ru(n,e,t){return e=TS(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function TS(n){var e=ES(n,"string");return typeof e=="symbol"?e:String(e)}function ES(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ea=fe.module("AdvancedFilterCreatorFilterItem");class Ls extends R.PureComponent{static getLabelForFilter(e,t){try{if(x.isNumberType(e)||x.isCharType(e))return ch(t);if(x.isTextType(e))return hh(t);if(x.isDateType(e))return vh(t);if(x.isBooleanType(e))return Em(t);throw new Error("Unrecognized column type: ".concat(e))}catch(r){return ea.warn(r),""}}constructor(e){super(e),ru(this,"typeDropdown",void 0),ru(this,"getCachedIsValid",Se((a,l,s,o,u)=>{try{return!s||u.makeAdvancedValueFilter(a,l,s,o)!=null}catch{return!1}})),this.handleDelete=this.handleDelete.bind(this),this.handleTypeChange=this.handleTypeChange.bind(this),this.handleValueChange=this.handleValueChange.bind(this),this.typeDropdown=null;var{value:t="",filterTypes:r,selectedType:i=r[0]}=e;this.state={selectedType:i,value:t}}componentDidMount(){var e;(e=this.typeDropdown)===null||e===void 0||e.focus()}componentDidUpdate(e){var{value:t,selectedType:r}=this.props;r!==void 0&&e.selectedType!==r&&this.setState({selectedType:r}),t!==void 0&&e.value!==t&&this.setState({value:t})}handleTypeChange(e){var t=e.target.value;ea.debug2("typeChange",t),this.setState({selectedType:t});var{onChange:r}=this.props,{value:i}=this.state;i!=null&&i.length>0&&r(t,i)}handleValueChange(e){ea.debug2("valueChange");var{value:t}=e.target;this.setState({value:t});var{onChange:r}=this.props,{selectedType:i}=this.state;i!=null&&r(i,t)}handleDelete(){ea.debug("delete");var{onDelete:e}=this.props;e()}render(){for(var{column:e,filterTypes:t,formatter:r,tableUtils:i}=this.props,{selectedType:a,value:l}=this.state,s=!x.isBooleanType(e.type),o=[],u=this.getCachedIsValid(e,a,l,r.timeZone,i),d=0;d<t.length;d+=1){var h=t[d],v=Ls.getLabelForFilter(e.type,h),m=c.jsx("option",{value:h,children:v},h);o.push(m)}return c.jsx("div",{className:"advanced-filter-creator-filter-item",children:c.jsxs("div",{className:"form-row",children:[c.jsx("div",{className:"form-group col",children:c.jsx("select",{className:"form-control custom-select",value:a,onChange:this.handleTypeChange,ref:f=>{this.typeDropdown=f},children:o})}),s&&c.jsx("div",{className:"form-group col",children:c.jsx("div",{className:"input-group",children:c.jsx("input",{type:"text",className:re("form-control",{error:!u}),placeholder:"Enter value",value:l,onChange:this.handleValueChange})})}),c.jsx("div",{className:"form-group col-1 px-0",children:c.jsx(Y,{kind:"ghost",className:"w-100 h-100 p-0 m-0",onClick:this.handleDelete,icon:fr,tooltip:"Remove Filter"})})]})})}}const OS=Ls;function Ql(n,e,t){return e=PS(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function PS(n){var e=RS(n,"string");return typeof e=="symbol"?e:String(e)}function RS(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var nu=fe.module("AdvancedFilterCreatorSelectValueList");class xi extends R.PureComponent{static indexOf(e,t){for(var r=0;r<t.length;r+=1){var i=t[r];if(i===e||i!=null&&i.valueOf!=null&&e!=null&&e.valueOf!=null&&i.valueOf()===e.valueOf())return r}return-1}constructor(e){super(e),Ql(this,"dh",void 0),Ql(this,"list",void 0),this.handleSelect=this.handleSelect.bind(this),this.handleViewportChange=this.handleViewportChange.bind(this),this.handleSelectionUpdate=this.handleSelectionUpdate.bind(this),this.handleTableUpdate=this.handleTableUpdate.bind(this);var{selectedValues:t,dh:r}=this.props;this.dh=r,this.list=null,this.state={itemCount:0,items:[],offset:0,selectedValues:t,isLoading:!0}}componentDidMount(){var{table:e}=this.props;e&&this.startListening(e)}componentDidUpdate(e){var{filters:t,invertSelection:r,selectedValues:i,table:a}=this.props;e.table!==a&&(e.table&&this.stopListening(e.table),a&&this.startListening(a),this.resetViewport()),e.invertSelection!==r&&this.setState({selectedValues:[]},this.handleSelectionUpdate),e.selectedValues!==i&&this.setState({selectedValues:i},this.handleSelectionUpdate),e.filters!==t&&(a?.applyFilter(t),this.resetViewport())}componentWillUnmount(){var{table:e}=this.props;e&&this.stopListening(e)}handleSelect(e,t){var{invertSelection:r}=this.props,{selectedValues:i}=this.state;i=[...i];var a=xi.indexOf(t,i);a>=0?i.splice(a,1):i.push(t);var l=a<0;r&&(l=!l);var{offset:s}=this.state,{items:o}=this.state;o=[...o];var u=e-s;u>=0&&u<o.length&&(o[u].isSelected=l),this.setState({items:o,selectedValues:i});var{onChange:d}=this.props;d(i,r)}handleViewportChange(e,t){this.updateViewport(e,t)}handleSelectionUpdate(){this.updateItemSelection()}handleTableUpdate(e){var{table:t,formatter:r}=this.props;if(t){for(var i=e.detail,{offset:a}=i,l=[],s=t.columns[0],o=0;o<i.rows.length;o+=1){var u=i.rows[o],d=u.get(s),h=void 0;d==null?h=c.jsx("i",{className:"text-muted",children:"null"}):d===""?h=c.jsx("i",{className:"text-muted",children:"empty"}):h=r.getFormattedString(d,s.type,s.name);var v=this.isValueSelected(d);l.push({displayValue:h,value:d,isSelected:v})}nu.debug2("Received table update:",a,l.length);var m=t.size;this.setState({itemCount:m,items:l,offset:a,isLoading:!1})}}isValueSelected(e){var{invertSelection:t}=this.props,{selectedValues:r}=this.state,i=xi.indexOf(e,r);return t?i<0:i>=0}startListening(e){e.addEventListener(this.dh.Table.EVENT_UPDATED,this.handleTableUpdate)}stopListening(e){e.removeEventListener(this.dh.Table.EVENT_UPDATED,this.handleTableUpdate)}resetViewport(){this.list&&this.list.topRow!=null&&this.list.bottomRow!=null&&this.updateViewport(this.list.topRow,this.list.bottomRow,!0)}updateItemSelection(){var{items:e}=this.state;e=[...e];for(var t=0;t<e.length;t+=1){var r=e[t],{value:i}=r;r.isSelected=this.isValueSelected(i)}this.setState({items:e})}updateViewport(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{table:i}=this.props;if(i!=null){r&&this.setState({isLoading:!0});var a=t-e+1,l=Math.max(0,e-a*3),s=Math.max(l,t+a*3);nu.debug2("Setting viewport",l,",",s),i.setViewport(l,s)}}render(){var{offset:e,isLoading:t,items:r,itemCount:i}=this.state;return c.jsxs("div",{className:"select-value-list-wrapper",children:[c.jsx(Tv,{itemCount:i,items:r,offset:e,onSelect:this.handleSelect,onViewportChange:this.handleViewportChange,ref:a=>{this.list=a}}),c.jsx(vr,{in:t,timeout:250,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0,children:c.jsx("div",{className:"loading-list",children:c.jsx(Dn,{className:"loading-spinner-large"})})})]})}}Ql(xi,"defaultProps",{invertSelection:!0,selectedValues:[],onChange:()=>{}});const DS=xi;function Di(n,e,t){return e=FS(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function FS(n){var e=NS(n,"string");return typeof e=="symbol"?e:String(e)}function NS(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Ui extends R.PureComponent{constructor(e){super(e),Di(this,"searchTablePromise",void 0),Di(this,"tableUtils",void 0),Di(this,"updateFilterTimer",void 0),this.handleSelectAllClick=this.handleSelectAllClick.bind(this),this.handleClearAllClick=this.handleClearAllClick.bind(this),this.handleListChange=this.handleListChange.bind(this),this.handleSearchChange=this.handleSearchChange.bind(this),this.handleUpdateFilterTimeout=this.handleUpdateFilterTimeout.bind(this);var{dh:t,invertSelection:r,selectedValues:i}=e;this.tableUtils=new x(t),this.state={filters:[],invertSelection:r,selectedValues:i,searchText:""}}componentDidMount(){this.initSearchTable()}componentDidUpdate(e,t){var{invertSelection:r,selectedValues:i,table:a}=this.props;e.table!==a&&this.initSearchTable(),e.invertSelection!==r&&this.setState({invertSelection:r}),e.selectedValues!==i&&this.setState({selectedValues:i});var{table:l,searchText:s}=this.state;l!==t.table&&(t.table!=null&&t.table.close(),l!=null&&this.startUpdateFilterTimer()),s!==t.searchText&&this.startUpdateFilterTimer()}componentWillUnmount(){var{table:e}=this.state;e?.close(),this.searchTablePromise=void 0,this.stopUpdateFilterTimer()}getColumnName(){var{table:e}=this.props;return e!=null?e.columns[0].name:""}getDisplayedValuesCount(){var{invertSelection:e,selectedValues:t,table:r}=this.state;return r==null?null:e?r.totalSize-t.length:t.length}getDisplayedValueText(){var e=this.getDisplayedValuesCount(),{table:t}=this.state,{formatter:r}=this.props;if(e!=null&&t!=null){var i=r.getFormattedString(e,"long"),a=r.getFormattedString(t.totalSize,"long"),l="";return e<1e6&&(l="Displaying "),"".concat(l).concat(i," of ").concat(a)}return null}initSearchTable(){var{table:e}=this.props;if(e!=null){var t=e.copy();this.searchTablePromise=t,this.searchTablePromise.then(r=>{this.searchTablePromise===t?(this.setState({table:r}),this.searchTablePromise=void 0):r.close()})}}handleListChange(e,t){this.setState({selectedValues:e,invertSelection:t});var{onChange:r}=this.props;r(e,t)}handleSearchChange(e){var t=e.target.value;this.setState({searchText:t})}handleSelectAllClick(){this.resetSelection(!0)}handleClearAllClick(){this.resetSelection(!1)}handleUpdateFilterTimeout(){this.updateFilterTimer=void 0,this.updateTableFilter()}resetSelection(e){var t=[];this.setState({invertSelection:e,selectedValues:t});var{onChange:r}=this.props;r(t,e)}startUpdateFilterTimer(){this.stopUpdateFilterTimer(),this.updateFilterTimer=setTimeout(this.handleUpdateFilterTimeout,Ui.searchDebounceTime)}stopUpdateFilterTimer(){this.updateFilterTimer!=null&&(clearTimeout(this.updateFilterTimer),this.updateFilterTimer=void 0)}updateTableFilter(){var{table:e,searchText:t}=this.state,{timeZone:r}=this.props,{tableUtils:i}=this,a=e?.columns[0],l=[];if(a!=null){var s;if(t.length>0){var o=null;x.isCharType(a.type)?o=i.makeQuickFilter(a,t):x.isTextType(a.type)?o=i.makeQuickFilter(a,"~".concat(t),r):o=i.makeQuickFilter(a,">=".concat(t),r),o!=null?l.push(o):s="Invalid search text"}this.setState({filters:l,error:s})}}render(){var{error:e,filters:t,invertSelection:r,selectedValues:i,searchText:a,table:l}=this.state,{dh:s,formatter:o,showSearch:u}=this.props,d=this.getColumnName(),h=this.getDisplayedValueText(),v=d?"Find ".concat(d,"..."):"";return c.jsxs("div",{className:"advanced-filter-creator-select-value",children:[c.jsxs("div",{className:u?"form-group":"",children:[c.jsx("label",{htmlFor:"advanced-filter-creator-select-value-input",children:"Select Values"}),u&&c.jsx("input",{type:"text",className:re("form-control",{"is-invalid":e!=null}),id:"advanced-filter-creator-select-value-input",placeholder:v,value:a,onChange:this.handleSearchChange})]}),c.jsx(DS,{dh:s,table:l,filters:t,invertSelection:r,selectedValues:i,formatter:o,onChange:this.handleListChange}),c.jsxs("div",{className:"advanced-filter-creator-select-meta-row",children:[c.jsxs("div",{children:[c.jsx(Y,{kind:"ghost",onClick:this.handleSelectAllClick,children:"Select All"}),c.jsx(Y,{kind:"ghost",onClick:this.handleClearAllClick,children:"Clear"})]}),c.jsx(vr,{in:h!=null,timeout:250,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0,children:c.jsx("div",{className:"row-count-info",children:h})})]})]})}}Di(Ui,"searchDebounceTime",250);Di(Ui,"defaultProps",{invertSelection:!0,selectedValues:[],onChange:()=>{},showSearch:!0});const IS=Ui;function Gn(n,e,t){return e=AS(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function AS(n){var e=MS(n,"string");return typeof e=="symbol"?e:String(e)}function MS(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var fi=fe.module("AdvancedFilterCreator");class yr extends R.PureComponent{static makeFilterItem(){return{key:nt()}}constructor(e){var t,r;super(e),Gn(this,"focusTrapContainer",void 0),Gn(this,"debounceTimeout",void 0),Gn(this,"valuesTablePromise",void 0),Gn(this,"getFilterTypes",Se(m=>x.getFilterTypes(m))),this.handleAddAnd=this.handleAddAnd.bind(this),this.handleAddOr=this.handleAddOr.bind(this),this.handleChangeFilterOperator=this.handleChangeFilterOperator.bind(this),this.handleDone=this.handleDone.bind(this),this.handleFilterChange=this.handleFilterChange.bind(this),this.handleFilterDelete=this.handleFilterDelete.bind(this),this.handleSelectValueChange=this.handleSelectValueChange.bind(this),this.handleReset=this.handleReset.bind(this),this.handleSortDown=this.handleSortDown.bind(this),this.handleSortUp=this.handleSortUp.bind(this),this.handleSubmit=this.handleSubmit.bind(this),this.handleFocusTrapStart=this.handleFocusTrapStart.bind(this),this.handleFocusTrapEnd=this.handleFocusTrapEnd.bind(this),this.handleUpdateTimeout=this.handleUpdateTimeout.bind(this),this.focusTrapContainer=Me.createRef();var{model:i,column:a,options:l}=e,{filterOperators:s,invertSelection:o,selectedValues:u}=l,d=(t=(r=l.filterItems)===null||r===void 0?void 0:r.map(m=>{var{selectedType:f,value:g}=m;return{selectedType:f,value:g,key:nt()}}))!==null&&t!==void 0?t:[];d.length===0&&d.push(yr.makeFilterItem()),s==null&&(s=[]),o==null&&(o=!0),u==null&&(u=[]);var h=i.getColumnIndexByName(a.name);L(h);var v=i.isColumnSortable(h);this.state={filterItems:d,filterOperators:s,invertSelection:o,selectedValues:u,valuesTableError:null,valuesTable:void 0,isSortable:v}}componentDidMount(){this.initValuesTable()}componentWillUnmount(){this.debounceTimeout!=null&&(clearTimeout(this.debounceTimeout),this.sendUpdate()),this.valuesTablePromise!=null&&this.valuesTablePromise.cancel()}getFilterChangeHandler(e){return this.handleFilterChange.bind(this,e)}getFilterDeleteHandler(e){return this.handleFilterDelete.bind(this,e)}initValuesTable(){var{model:e,column:t}=this.props;if(!e.isValuesTableAvailable){fi.debug("No values table for this model, just ignore");return}this.valuesTablePromise=x.makeCancelableTablePromise(e.valuesTable(t)),this.valuesTablePromise.then(r=>{var i;if(!((i=r.columns[0].isSortable)!==null&&i!==void 0)||i){var a=r.columns[0].sort().asc();r.applySort([a])}this.setState({valuesTable:r})}).catch(r=>{st.isCanceled(r)||(fi.error("Unable to open values table",r),this.setState({valuesTableError:r}))})}handleFocusTrapEnd(){var e,t;((e=this.focusTrapContainer)===null||e===void 0||(t=e.current)===null||t===void 0?void 0:t.querySelector("button,select,input,textarea")).focus()}handleFocusTrapStart(){var e,t,r=(e=this.focusTrapContainer)===null||e===void 0||(t=e.current)===null||t===void 0?void 0:t.querySelectorAll("button,select,input,textarea");if(r&&r.length>0){var i=r[r.length-1];i.focus()}}handleAddAnd(){var{filterItems:e,filterOperators:t}=this.state;e=e.concat(yr.makeFilterItem()),t=t.concat(di.and),this.setState({filterItems:e,filterOperators:t})}handleAddOr(){var{filterItems:e,filterOperators:t}=this.state;e=e.concat(yr.makeFilterItem()),t=t.concat(di.or),this.setState({filterItems:e,filterOperators:t})}handleChangeFilterOperator(e,t){var{filterOperators:r}=this.state;r=[...r],Ev(t),r[e]=t,this.setState({filterOperators:r}),this.startUpdateTimer()}handleFilterChange(e,t,r){var{filterItems:i}=this.state;i=[...i];var{key:a}=i[e];i[e]={key:a,selectedType:t,value:r},this.setState({filterItems:i}),this.startUpdateTimer()}handleFilterDelete(e){var{filterItems:t,filterOperators:r}=this.state;t=[...t],r=[...r],e<t.length&&t.splice(e,1),e<r.length?r.splice(e,1):e===r.length&&r.splice(r.length-1,1),t.length===0&&t.push(yr.makeFilterItem()),this.setState({filterItems:t,filterOperators:r}),this.startUpdateTimer()}handleSelectValueChange(e,t){this.setState({selectedValues:e,invertSelection:t}),this.startUpdateTimer()}handleReset(){fi.debug("Resetting Advanced Filter"),this.setState({filterItems:[yr.makeFilterItem()],filterOperators:[],selectedValues:[],invertSelection:!0}),this.startUpdateTimer()}handleSortDown(e){var t=Kn.isModifierKeyDown(e);this.sortTable(x.sortDirection.descending,t)}handleSortUp(e){var t=Kn.isModifierKeyDown(e);this.sortTable(x.sortDirection.ascending,t)}handleSubmit(e){fi.debug("Submitting Advanced Filter"),this.stopUpdateTimer(),this.sendUpdate(),e.preventDefault()}handleDone(e){fi.debug("Submitting and Closing Advanced Filter"),this.stopUpdateTimer(),this.sendUpdate();var{onDone:t}=this.props;t(),e.preventDefault()}handleUpdateTimeout(){this.debounceTimeout=void 0,this.sendUpdate()}shouldShowAddFilter(){var{filterItems:e}=this.state;if(e.length===0)return!1;var t=e[e.length-1],{selectedType:r,value:i}=t;return r!=null&&r.length>0&&i!=null&&i.length>0}sortTable(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,{column:r,onSortChange:i}=this.props,{isSortable:a}=this.state;a&&i(r,e,t)}startUpdateTimer(){this.stopUpdateTimer(),this.debounceTimeout=setTimeout(this.handleUpdateTimeout,yr.debounceFilterUpdate)}stopUpdateTimer(){this.debounceTimeout!==void 0&&(clearTimeout(this.debounceTimeout),this.debounceTimeout=void 0)}sendUpdate(){var{filterItems:e,filterOperators:t,invertSelection:r,selectedValues:i}=this.state,{column:a,onFilterChange:l,model:s,tableUtils:o}=this.props,{formatter:u}=s,d=e.filter(f=>{var{selectedType:g,value:p}=f;return g!=null&&p!=null&&p!==""}),h=t.filter((f,g)=>f!=null&&e[g].selectedType!=null&&e[g].value!=null&&e[g].value!=="").slice(0,d.length-1),v={filterItems:d,filterOperators:h,invertSelection:r,selectedValues:i},m=o.makeAdvancedFilter(a,v,u.timeZone);l(a,m,v)}render(){var e=this,{column:t,model:r,sortDirection:i,formatter:a,tableUtils:l}=this.props,{filterItems:s,filterOperators:o,invertSelection:u,selectedValues:d,valuesTable:h,valuesTableError:v,isSortable:m}=this.state,{dh:f,isValuesTableAvailable:g}=r,p=x.isBooleanType(t.type),C=x.isDateType(t.type),S=this.getFilterTypes(t.type),b=t.type.substring(t.type.lastIndexOf(".")+1),w=[];if(!p&&S.length)for(var y=function(D){var N=s[D],{key:F,selectedType:A,value:j}=N,k=c.jsx(OS,{column:t,filterTypes:S,onChange:e.getFilterChangeHandler(D),onDelete:e.getFilterDeleteHandler(D),selectedType:A,value:j,formatter:a,tableUtils:l},F);if(w.push(k),D<o.length){var B=o[D],G=B===di.and,W=c.jsxs("div",{className:"form-row justify-content-end advanced-filter-creator-filter-operator",children:[c.jsx(Y,{kind:"ghost",className:re("filter-operator",{active:G}),onClick:()=>e.handleChangeFilterOperator(D,di.and),children:"AND"}),c.jsx(Y,{kind:"ghost",className:re("filter-operator",{active:!G}),onClick:()=>e.handleChangeFilterOperator(D,di.or),children:"OR"})]},"filterOperator".concat(F));w.push(W)}},T=0;T<s.length;T+=1)y(T);var E=this.shouldShowAddFilter(),P=c.jsxs("div",{className:re("form-row justify-content-end add-filter-item",{hidden:!E}),children:[c.jsx("span",{className:"text-muted",children:c.jsx(le,{icon:Fn})}),c.jsx(Y,{kind:"ghost",className:"btn-filter-item",onClick:this.handleAddAnd,disabled:!E,tooltip:"Add filter with AND",children:"AND"}),c.jsx(Y,{kind:"ghost",className:"btn-filter-item",onClick:this.handleAddOr,disabled:!E,tooltip:"Add filter with OR",children:"OR"})]},"addFilterItem");return w.push(P),c.jsxs("div",{className:"advanced-filter-creator",role:"presentation",children:[c.jsx("div",{tabIndex:0,onFocus:this.handleFocusTrapStart}),c.jsxs("form",{onSubmit:this.handleSubmit,ref:this.focusTrapContainer,children:[c.jsxs("div",{className:"title-bar",children:[c.jsx("h6",{className:"advanced-filter-title",children:"Advanced Filters"}),c.jsxs("div",{className:"advanced-filter-menu-buttons",children:[c.jsx(Y,{kind:"ghost",className:re("sort-operator",{active:i===x.sortDirection.descending}),onClick:this.handleSortDown,icon:vo,tooltip:m?"Sort ".concat(t.name," Descending"):"Not sortable",disabled:!m}),c.jsx(Y,{kind:"ghost",className:re("sort-operator",{active:i===x.sortDirection.ascending}),onClick:this.handleSortUp,icon:c.jsx(le,{icon:vo,rotation:180}),tooltip:m?"Sort ".concat(t.name," Ascending"):"Not sortable",disabled:!m})]})]}),c.jsx("hr",{}),c.jsxs("div",{className:"advanced-filter-column-name",children:[t.name," ",c.jsxs("span",{className:"column-type",children:["(",b,")"]})]}),w,g&&v==null&&c.jsxs(c.Fragment,{children:[!p&&c.jsx("hr",{}),c.jsx("div",{className:"form-group",children:c.jsx(IS,{dh:f,table:h,onChange:this.handleSelectValueChange,invertSelection:u,selectedValues:d,formatter:a,showSearch:!C,timeZone:a.timeZone})})]}),c.jsxs("div",{className:"form-row justify-content-end",children:[c.jsx(Y,{kind:"secondary",className:"mr-2",onClick:this.handleReset,children:"Reset"}),c.jsx(Y,{kind:"primary",onClick:this.handleDone,children:"Done"})]})]}),c.jsx("div",{tabIndex:0,onFocus:this.handleFocusTrapEnd})]})}}Gn(yr,"debounceFilterUpdate",250);Gn(yr,"defaultProps",{options:{filterItems:null,filterOperators:null,invertSelection:!0,selectedValues:[]},sortDirection:null});const xS=yr;function iu(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 au(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?iu(Object(t),!0).forEach(function(r){LS(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):iu(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function LS(n,e,t){return e=kS(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function kS(n){var e=jS(n,"string");return typeof e=="symbol"?e:String(e)}function jS(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var lu=fe.module("Aggregations");function _S(n){var{isRollup:e,settings:t,onChange:r,onEdit:i}=n,{aggregations:a,showOnTop:l}=t,s=R.useMemo(()=>fp.filter(D=>!a.some(N=>N.operation===D)),[a]),[o,u]=R.useState(s[0]),[d,h]=R.useState([]),v=R.useCallback(D=>{r(au(au({},t),D))},[r,t]),m=R.useCallback(D=>{v({aggregations:D})},[v]),f=R.useCallback(D=>{v({showOnTop:D})},[v]),g=R.useCallback(()=>{lu.debug("handleDragStart"),cr.startDragging()},[]),p=R.useCallback(D=>{var{destination:N,source:F}=D;if(lu.debug("handleDragEnd",N,F),cr.stopDragging(),N!==null){var A=N.index;F.index<N.index&&(A+=1);var j=[...a],k=cr.reorder(j,d,j,A),B=cr.adjustDestinationIndex(A,d),G=[[B,B+k.length-1]];m(j),h(G)}},[m,a,d,h]),C=R.useCallback(D=>{u(D)},[u]),S=R.useCallback(()=>{m([...a,{operation:o,selected:[],invert:!0}])},[a,o,m]),b=R.useCallback(D=>{m(a.filter((N,F)=>F!==D))},[a,m]),w=R.useCallback(D=>{h(D)},[h]),y=R.useCallback(D=>{var N=a[D];on.isRollupOperation(N.operation)||i(N)},[a,i]),T=R.useCallback(D=>{f(D.target.value==="true")},[f]);R.useEffect(function(){s.length>0&&!s.includes(o)&&u(s[0])},[s,o]);var E=R.useCallback(D=>{var{item:N,itemIndex:F,isClone:A=!1,selectedCount:j}=D,k=N.operation,B=A?"".concat(j):void 0,G=A?"item-list-item-clone":void 0,W=on.isRollupOperation(N.operation),z=!A&&!W;return c.jsxs(c.Fragment,{children:[c.jsxs("div",{className:re("item-list-item-content","draggable-item-list-item-content",G),children:[c.jsxs("span",{className:"title",children:[k,!e&&W&&c.jsxs("span",{className:"small text-warning",children:[c.jsx(le,{icon:ah})," Requires rollup"]})]}),lr.renderBadge({text:B}),lr.renderHandle()]}),!A&&c.jsxs(c.Fragment,{children:[c.jsx(Y,{kind:"ghost",className:"btn-edit",icon:Hi,tooltip:"Edit Columns",onClick:()=>i(N),disabled:!z}),c.jsx(Y,{kind:"ghost",className:"btn-delete",icon:fr,tooltip:"Delete Aggregation",onClick:()=>b(F)})]})]})},[b,i,e]),P=s.length>0,O=a.length>0;return c.jsxs("div",{className:"aggregations",children:[P&&c.jsxs("div",{className:"form-inline",children:[c.jsx(Ov,{onChange:C,value:o,children:s.map(D=>c.jsx(Pv,{value:D,children:D},D))}),c.jsxs("button",{type:"button",className:"btn btn-link btn-add",onClick:S,children:[c.jsx(le,{icon:Fn}),"Add Aggregation"]})]}),P&&O&&c.jsx("hr",{}),O&&c.jsxs(c.Fragment,{children:[!e&&c.jsxs("div",{className:"form-inline",children:[c.jsx("label",{children:"Placement: "}),c.jsxs(Ha,{onChange:T,value:"".concat(l),children:[c.jsx(jr,{value:"true",children:"Top"}),c.jsx(jr,{value:"false",children:"Bottom"})]})]}),c.jsx(La,{onDragStart:g,onDragEnd:p,children:c.jsx(lr,{className:"selected-aggregations",itemCount:a.length,items:a,renderItem:E,offset:0,onSelectionChange:w,onSelect:y,selectedRanges:d,isMultiSelect:!0})})]})]})}function su(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 Kr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?su(Object(t),!0).forEach(function(r){HS(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):su(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function HS(n,e,t){return e=US(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function US(n){var e=VS(n,"string");return typeof e=="symbol"?e:String(e)}function VS(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var nr;(function(n){n[n.NONE=0]="NONE",n[n.ASCENDING=1]="ASCENDING",n[n.DESCENDING=2]="DESCENDING"})(nr||(nr={}));var BS=30;function GS(n){var{aggregation:e,columns:t,onChange:r}=n,[i,a]=R.useState(-1),[l,s]=R.useState(-1),[o,u]=R.useState(nr.NONE),{invert:d,selected:h}=e,v=R.useRef(null),m=R.useCallback(T=>h.includes(T)?!d:d,[d,h]),f=R.useMemo(()=>{var T=As(t,e.operation);return o!==nr.NONE&&(T=x.sortColumns(T,o===nr.ASCENDING)),T},[t,e.operation,o]),g=R.useMemo(()=>i>=0?f.slice(i,l+1).map(T=>({value:T.name,displayValue:T.name,isSelected:m(T.name)})):[],[f,m,l,i]),p=R.useCallback(T=>{var{name:E}=f[T],P=h.indexOf(E),O=[...h],D=d;P>=0?O.splice(P,1):(O.push(E),O.length===f.length&&(O=[],D=!d)),r(Kr(Kr({},e),{},{selected:O,invert:D}))},[e,d,f,h,r]),C=R.useCallback(()=>{u(nr.NONE),r(Kr(Kr({},e),{},{selected:[],invert:!0}))},[e,r]),S=R.useCallback((T,E)=>{a(T),s(E)},[a,s]),b=R.useCallback(()=>{h.length===0?r(Kr(Kr({},e),{},{invert:!d})):r(Kr(Kr({},e),{},{selected:[],invert:!0}))},[e,d,r,h]),w=h.length===0?d:null,y=h.length!==0||!d||o!==nr.NONE;return c.jsxs("div",{role:"menu",className:"aggregation-edit",children:[c.jsx("div",{className:"top-menu",children:c.jsxs("div",{className:"form-inline",children:[c.jsx(un,{checked:w,onChange:b,children:"Toggle All"}),c.jsx("div",{className:"spacer"}),c.jsx(vr,{in:y,timeout:ze.transitionSlowMs,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0,children:c.jsx(Y,{kind:"ghost",className:"btn-reset",onClick:C,children:"Reset"})}),c.jsx(Y,{kind:"ghost",className:re({active:o===nr.ASCENDING}),icon:ws,tooltip:"Sort ascending",onClick:()=>u(nr.ASCENDING)}),c.jsx(Y,{kind:"ghost",className:re({active:o===nr.DESCENDING}),icon:ys,tooltip:"Sort descending",onClick:()=>u(nr.DESCENDING)})]})}),c.jsx("div",{className:"aggregation-edit-item-list",children:c.jsx(Gl,{itemCount:f.length,items:g,offset:i,renderItem:T=>{var{item:E}=T;return c.jsx(un,{checked:m(E.value),children:E.displayValue})},onSelect:p,onViewportChange:S,rowHeight:BS,focusSelector:"input",ref:v})})]})}function ou(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 uu(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ou(Object(t),!0).forEach(function(r){$S(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ou(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function $S(n,e,t){return e=WS(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function WS(n){var e=zS(n,"string");return typeof e=="symbol"?e:String(e)}function zS(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function KS(n){return c.jsx("svg",uu(uu({width:48,height:48,xmlns:"http://www.w3.org/2000/svg"},n),{},{children:c.jsxs("g",{fill:"none",fillRule:"evenodd",children:[c.jsx("path",{fill:"#C1C0C0",d:"M44 43v1H4v-1z"}),c.jsx("path",{fill:"#7DA4FF",d:"M8 26h4v15H8zM15 17h4v24h-4zM22 21h4v20h-4zM29 17h4v24h-4zM36 11h4v30h-4z"})]})}))}function du(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 hu(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?du(Object(t),!0).forEach(function(r){YS(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):du(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function YS(n,e,t){return e=qS(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function qS(n){var e=XS(n,"string");return typeof e=="symbol"?e:String(e)}function XS(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function QS(n){return c.jsx("svg",hu(hu({width:48,height:48,xmlns:"http://www.w3.org/2000/svg"},n),{},{children:c.jsxs("g",{fill:"none",fillRule:"evenodd",children:[c.jsx("path",{fill:"#C1C0C0",d:"M44 43v1H4v-1z"}),c.jsx("path",{fill:"#7DA4FF",d:"M7 34h4v8H7zM12 31h4v11h-4zM17 27h4v15h-4zM22 22h4v20h-4zM27 27h4v15h-4zM32 29h4v13h-4zM37 31h4v11h-4z"})]})}))}function cu(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 vu(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?cu(Object(t),!0).forEach(function(r){ZS(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):cu(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function ZS(n,e,t){return e=JS(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function JS(n){var e=eb(n,"string");return typeof e=="symbol"?e:String(e)}function eb(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function tb(n){return c.jsx("svg",vu(vu({width:48,height:48,xmlns:"http://www.w3.org/2000/svg"},n),{},{children:c.jsxs("g",{fill:"none",fillRule:"evenodd",children:[c.jsx("path",{fill:"#C1C0C0",d:"M4 4h1v40H4zM44 43v1H5v-1z"}),c.jsx("path",{stroke:"#7DA4FF",d:"M7.984 32.44l7.982-11.378 5.273 3.739 9.952-10.838 2.826 1.894 7.45-5.802"}),c.jsx("path",{stroke:"#BECDEF",d:"M8.244 37.926L17 33.496l5 .87 10.637-10.35 10.615-1.381"})]})}))}function mu(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 fu(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?mu(Object(t),!0).forEach(function(r){rb(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):mu(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function rb(n,e,t){return e=nb(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function nb(n){var e=ib(n,"string");return typeof e=="symbol"?e:String(e)}function ib(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function ab(n){return c.jsx("svg",fu(fu({width:48,height:48,xmlns:"http://www.w3.org/2000/svg"},n),{},{children:c.jsxs("g",{fill:"none",fillRule:"evenodd",children:[c.jsx("path",{d:"M24 10c7.732 0 14 6.268 14 14s-6.268 14-14 14-14-6.268-14-14h14V10z",fill:"#80A6FF"}),c.jsx("path",{d:"M10 24c0-7.732 6.268-14 14-14v14H10z",fill:"#C1C0C0"})]})}))}function gu(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 pu(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?gu(Object(t),!0).forEach(function(r){lb(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):gu(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function lb(n,e,t){return e=sb(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function sb(n){var e=ob(n,"string");return typeof e=="symbol"?e:String(e)}function ob(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function ub(n){return c.jsx("svg",pu(pu({width:48,height:48,xmlns:"http://www.w3.org/2000/svg"},n),{},{children:c.jsxs("g",{fill:"none",fillRule:"evenodd",children:[c.jsx("path",{fill:"#C1C0C0",d:"M44 43v1H4v-1z"}),c.jsx("path",{fill:"#939293",d:"M44 34v1H4v-1zM44 25v1H4v-1zM44 16v1H4v-1z"}),c.jsx("circle",{fill:"#7DA4FF",cx:9.5,cy:37.5,r:1.5}),c.jsx("circle",{fill:"#7DA4FF",cx:16.5,cy:30.5,r:1.5}),c.jsx("circle",{fill:"#7DA4FF",cx:22.5,cy:36.5,r:1.5}),c.jsx("circle",{fill:"#7DA4FF",cx:28.5,cy:30.5,r:1.5}),c.jsx("circle",{fill:"#7DA4FF",cx:15.5,cy:38.5,r:1.5}),c.jsx("circle",{fill:"#7DA4FF",cx:23.5,cy:25.5,r:1.5}),c.jsx("circle",{fill:"#7DA4FF",cx:19.5,cy:19.5,r:1.5}),c.jsx("circle",{fill:"#7DA4FF",cx:29.5,cy:19.5,r:1.5}),c.jsx("circle",{fill:"#7DA4FF",cx:32.5,cy:26.5,r:1.5}),c.jsx("circle",{fill:"#7DA4FF",cx:36.5,cy:13.5,r:1.5})]})}))}function Cu(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 Su(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Cu(Object(t),!0).forEach(function(r){db(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Cu(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function db(n,e,t){return e=hb(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function hb(n){var e=cb(n,"string");return typeof e=="symbol"?e:String(e)}function cb(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function vb(n){return c.jsxs("svg",Su(Su({width:"48",height:"48",viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg"},n),{},{children:[c.jsx("rect",{width:"48",height:"48",fill:"none"}),c.jsx("rect",{x:"26",y:"10",width:"15",height:"4",fill:"#9FDE70"}),c.jsx("rect",{x:"26",y:"22",width:"15",height:"4",fill:"#9FDE70"}),c.jsx("rect",{x:"26",y:"28",width:"15",height:"4",fill:"#FFD95C"}),c.jsx("rect",{x:"26",y:"34",width:"15",height:"4",fill:"#9FDE70"})]}))}function bu(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 wu(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?bu(Object(t),!0).forEach(function(r){mb(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):bu(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function mb(n,e,t){return e=fb(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function fb(n){var e=gb(n,"string");return typeof e=="symbol"?e:String(e)}function gb(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function pb(n){return c.jsxs("svg",wu(wu({width:"48",height:"48",viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg"},n),{},{children:[c.jsx("rect",{width:"48",height:"48",fill:"none"}),c.jsx("rect",{x:"4",y:"16",width:"40",height:"4",fill:"#FFD95C"}),c.jsx("rect",{x:"4",y:"10",width:"40",height:"4",fill:"#78DCE8"}),c.jsx("rect",{x:"4",y:"34",width:"40",height:"4",fill:"#78DCE8"})]}))}var yu=fe.module("ChartBuilder");class ir extends R.PureComponent{static getMaxSeriesCount(e,t){switch(t){case e.plot.SeriesPlotStyle.PIE:return 1;case e.plot.SeriesPlotStyle.HISTOGRAM:return 0;default:return 100}}static makeSeriesItem(e){return{id:nt.generate(),value:e}}static makeDefaultSeriesItems(e,t,r){var i=ir.getMaxSeriesCount(e,t);if(i===0||r==null||r.length===0)return[];var a=r.length>1?r[1].name:r[0].name;return[ir.makeSeriesItem(a)]}static getDefaultXAxis(e,t){return t!=null&&t.length>0?t[0].name:null}constructor(e){super(e),this.handleAddSeries=this.handleAddSeries.bind(this),this.handleLinkStateChange=this.handleLinkStateChange.bind(this),this.handleReset=this.handleReset.bind(this),this.handleSeriesChange=this.handleSeriesChange.bind(this),this.handleSeriesDeleteClick=this.handleSeriesDeleteClick.bind(this),this.handleSubmit=this.handleSubmit.bind(this),this.handleTypeClick=this.handleTypeClick.bind(this),this.handleXAxisChange=this.handleXAxisChange.bind(this),this.sendChange=this.sendChange.bind(this);var{model:t}=e,{columns:r,dh:i}=t,a=this.getTypes()[0],l=ir.getDefaultXAxis(a,r),s=ir.makeDefaultSeriesItems(i,a,r);this.state={type:a,seriesItems:s,xAxis:l,isLinked:!0}}getTypes(){var{model:e}=this.props,{dh:t}=e;return[t.plot.SeriesPlotStyle.LINE,t.plot.SeriesPlotStyle.BAR,t.plot.SeriesPlotStyle.SCATTER,t.plot.SeriesPlotStyle.PIE]}getTypeName(e){var{model:t}=this.props,{dh:r}=t;switch(e){case r.plot.SeriesPlotStyle.LINE:return"Line";case r.plot.SeriesPlotStyle.BAR:return"Bar";case r.plot.SeriesPlotStyle.SCATTER:return"Scatter";case r.plot.SeriesPlotStyle.PIE:return"Pie";case r.plot.SeriesPlotStyle.HISTOGRAM:return"Histogram";default:return e}}getTypeIcon(e){var{model:t}=this.props,{dh:r}=t;switch(e){case r.plot.SeriesPlotStyle.LINE:return c.jsx(tb,{});case r.plot.SeriesPlotStyle.BAR:return c.jsx(KS,{});case r.plot.SeriesPlotStyle.SCATTER:return c.jsx(ub,{});case r.plot.SeriesPlotStyle.PIE:return c.jsx(ab,{});case r.plot.SeriesPlotStyle.HISTOGRAM:return c.jsx(QS,{});default:return null}}getXAxisLabel(e){var{model:t}=this.props,{dh:r}=t;switch(e){case r.plot.SeriesPlotStyle.PIE:return"Labels";case r.plot.SeriesPlotStyle.HISTOGRAM:return"Data";default:return"X-Axis"}}getSeriesLabel(e){var{model:t}=this.props,{dh:r}=t;switch(e){case r.plot.SeriesPlotStyle.PIE:return"Values";default:return"Series"}}handleAddSeries(){this.setState(e=>{var{seriesItems:t}=e,r=[...t],{model:i}=this.props,{columns:a}=i;return r.push({id:nt.generate(),value:a[0].name}),{seriesItems:r}},this.sendChange)}handleLinkStateChange(e){this.setState({isLinked:e.target.value==="true"},this.sendChange)}handleReset(){var{model:e}=this.props,{columns:t,dh:r}=e,i=this.getTypes()[0],a=ir.getDefaultXAxis(i,t),l=ir.makeDefaultSeriesItems(r,i,t),s=!0;this.setState({type:i,seriesItems:l,xAxis:a,isLinked:s},this.sendChange)}handleSeriesChange(e){var{value:t}=e.target,r=e.target.getAttribute("data-index"),i=parseInt(r,10);this.setState(a=>{var{seriesItems:l}=a;return l=[...l],l[i].value=t,{seriesItems:l}},this.sendChange)}handleSeriesDeleteClick(e){var t=e,r=t.target.getAttribute("data-index"),i=parseInt(r,10);this.setState(a=>{var{seriesItems:l}=a,s=[...l];return s.splice(i,1),{seriesItems:s}},this.sendChange)}handleSubmit(e){e.preventDefault();var{onSubmit:t}=this.props,{type:r,seriesItems:i,xAxis:a,isLinked:l}=this.state,s=i.map(o=>o.value);t({type:r,series:s,xAxis:a,isLinked:l})}handleTypeClick(e){var t=e,r=t.target.getAttribute("data-index"),i=parseInt(r,10),a=this.getTypes()[i];yu.debug2("handleTypeSelect",a),this.setState(l=>{var{model:s}=this.props,{dh:o}=s,u=ir.getMaxSeriesCount(o,a),{seriesItems:d}=l;if(d=d.slice(0,u),d.length===0&&u>0){var{columns:h}=s;d=ir.makeDefaultSeriesItems(o,a,h)}return{type:a,seriesItems:d}},this.sendChange)}handleXAxisChange(e){var t=e.target.value;yu.debug2("x-axis change",t),this.setState({xAxis:t},this.sendChange)}sendChange(){var{onChange:e}=this.props,{isLinked:t,type:r,seriesItems:i,xAxis:a}=this.state,l=i.map(s=>s.value);e({type:r,series:l,xAxis:a,isLinked:t})}render(){var{model:e}=this.props,{columns:t,dh:r}=e,{seriesItems:i,type:a,xAxis:l,isLinked:s}=this.state,o=ir.getMaxSeriesCount(r,a),u=this.getXAxisLabel(a),d=this.getSeriesLabel(a),h=i.length>0,v=i.length<o;return c.jsx("div",{className:"chart-builder",children:c.jsxs("form",{onSubmit:this.handleSubmit,children:[c.jsxs("div",{className:"form-row",children:[c.jsx("label",{children:"Select Chart Type"}),c.jsx("div",{className:"form-row",children:this.getTypes().map((m,f)=>{var g=m;return c.jsx("div",{className:"col col-chart-type",children:c.jsxs("button",{type:"button",className:re("btn","btn-icon","btn-chart-type",{active:m===a}),"data-index":f,onClick:this.handleTypeClick,children:[this.getTypeIcon(m),this.getTypeName(m)]})},g)})})]}),c.jsx("hr",{}),c.jsxs("div",{className:"form-row form-inline",children:[c.jsx("label",{className:"col-2 label-left",children:u}),c.jsx("select",{className:"form-control custom-select select-x-axis col",value:l,onChange:this.handleXAxisChange,children:t.map(m=>c.jsx("option",{value:m.name,children:m.name},m.name))})]}),h&&c.jsx("hr",{}),i.map((m,f)=>c.jsxs("div",{className:"form-row form-inline form-series-item","data-testid":"form-series-item-".concat(f),children:[c.jsx("label",{className:"col-2 label-left",children:f===0?d:""}),c.jsx("select",{className:"form-control custom-select select-series col",value:m.value,onChange:this.handleSeriesChange,"data-testid":"select-series-item-".concat(f),"data-index":f,children:t.map(g=>c.jsx("option",{value:g.name,"data-index":f,children:g.name},g.name))}),i.length>1&&c.jsx(Y,{kind:"ghost",className:"btn-delete-series ml-2 px-2","data-index":f,"data-testid":"delete-series-".concat(f),onClick:this.handleSeriesDeleteClick,icon:fr,tooltip:"Delete"})]},m.id)),v&&c.jsxs("div",{className:"form-row",children:[c.jsx("div",{className:"col-2"}),c.jsx(Y,{kind:"ghost",className:"btn-add-series mt-1",onClick:this.handleAddSeries,icon:Fn,children:"Add Series"})]}),c.jsxs("div",{className:"form-row chart-builder-link",children:[c.jsx("label",{className:"col-2 label-right",children:c.jsxs("div",{className:"fa-md fa-layers",children:[c.jsx(le,{mask:Bv,icon:Ai,transform:"right-5 down-5"}),c.jsx(le,{icon:s?Gv:$v,transform:"grow-2 right-8 down-6"})]})}),c.jsxs(Ha,{onChange:this.handleLinkStateChange,value:"".concat(s),children:[c.jsx(jr,{value:"true",children:"Sync State"}),c.jsx(jr,{value:"false",children:"Freeze State"})]})]}),c.jsxs("div",{className:"form-row",children:[c.jsx("div",{className:"col-2 label-right"}),c.jsx("div",{className:"col chart-builder-link-info",children:s?"Charts with synced state will update to match any filters or user modifications applied to the parent table.":"Freeze State disconnects the chart state from the parent table. New filters or user modifications on the parent table will not be applied."})]}),c.jsxs("div",{className:re("form-row","justify-content-end","my-3"),children:[c.jsx(Y,{kind:"secondary",className:"btn-reset",onClick:this.handleReset,children:"Reset"}),c.jsx(Y,{kind:"primary",type:"submit",className:"btn-submit",children:"Create"})]})]})})}}const Cb=ir;function Tu(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 Sb(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Tu(Object(t),!0).forEach(function(r){Na(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Tu(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Na(n,e,t){return e=bb(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function bb(n){var e=wb(n,"string");return typeof e=="symbol"?e:String(e)}function wb(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class xh extends R.Component{constructor(e){super(e),Na(this,"editorContainer",void 0),Na(this,"editor",void 0),this.handleContentChanged=this.handleContentChanged.bind(this),this.handleEditorFocus=this.handleEditorFocus.bind(this),this.handleEditorBlur=this.handleEditorBlur.bind(this),this.handleContainerClick=this.handleContainerClick.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.state={isEditorFocused:!1,isEditorEmpty:!0},this.editorContainer=null}componentDidMount(){this.initEditor()}componentWillUnmount(){this.destroyEditor()}initEditor(){var e,{value:t,editorSettings:r}=this.props,i=Sb({copyWithSyntaxHighlighting:"false",fixedOverflowWidgets:!0,folding:!1,fontFamily:"Fira Mono",glyphMargin:!1,language:"groovyDB",lineDecorationsWidth:8,lineNumbers:"off",minimap:{enabled:!1},renderLineHighlight:"none",scrollbar:{arrowSize:0,horizontal:"hidden",horizontalScrollbarSize:0},scrollBeyondLastLine:!1,padding:{top:6,bottom:6},tabCompletion:"off",useTabStops:!0,value:t,wordWrap:"on",automaticLayout:!0},r);if(!this.editorContainer)throw new Error("editorContainer is null");this.editor=ym.create(this.editorContainer,i),this.editor.layout(),(e=this.editor.getModel())===null||e===void 0||e.updateOptions({tabSize:0}),this.editor.onKeyDown(this.handleKeyDown),this.editor.onDidChangeModelContent(this.handleContentChanged),this.editor.onDidFocusEditorText(this.handleEditorFocus),this.editor.onDidBlurEditorText(this.handleEditorBlur)}destroyEditor(){var e;(e=this.editor)===null||e===void 0||e.dispose(),this.editor=void 0}handleContentChanged(){var e,t,{onContentChanged:r}=this.props,i=(e=this.editor)===null||e===void 0||(t=e.getModel())===null||t===void 0?void 0:t.getValue();i!==void 0&&this.setState({isEditorEmpty:i.length===0}),r(i)}handleEditorFocus(){this.setState({isEditorFocused:!0})}handleEditorBlur(){var e,t,r,i=(e=(t=this.editor)===null||t===void 0||(r=t.getModel())===null||r===void 0?void 0:r.getValue())!==null&&e!==void 0?e:"";this.setState({isEditorEmpty:i.length===0,isEditorFocused:!1})}handleContainerClick(){var e,{isEditorFocused:t}=this.state;t||(e=this.editor)===null||e===void 0||e.focus()}handleKeyDown(e){var{onTab:t,editorIndex:r}=this.props;e.code==="Tab"&&(e.stopPropagation(),e.preventDefault(),t(r,e.shiftKey))}render(){var{className:e,invalid:t,placeholder:r="",value:i}=this.props,{isEditorFocused:a,isEditorEmpty:l}=this.state;return c.jsxs("div",{className:re("input-editor-wrapper",{focused:a,invalid:t},e),role:"presentation",onClick:this.handleContainerClick,children:[c.jsx("div",{className:"editor-container",ref:s=>{this.editorContainer=s},"data-testid":"custom-column-formula"}),l&&!i&&r.length>0&&c.jsx("div",{className:"editor-placeholder text-muted",children:r})]})}}Na(xh,"defaultProps",{value:"",onContentChanged:()=>{},editorSettings:{},editorIndex:0,onTab:()=>{},invalid:!1});const yb=xh;function Eu(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 ta(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Eu(Object(t),!0).forEach(function(r){Tb(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Eu(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Tb(n,e,t){return e=Eb(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Eb(n){var e=Ob(n,"string");return typeof e=="symbol"?e:String(e)}function Ob(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ou=Object.freeze({NAME:"name",FORMULA:"formula"}),Pb=()=>{};function Rb(n){var{eventKey:e,name:t,inputIndex:r,formula:i,onChange:a,onDeleteColumn:l,onTabInEditor:s,invalid:o,isDuplicate:u}=n,d=t===""||as.isValidColumnName(t),h=R.useCallback(v=>{v!==void 0&&(v.replace(/(\r\n|\n|\r)/gm,""),a(e,Ou.FORMULA,v))},[a,e]);return c.jsx(Bd,{draggableId:e,index:r,disableInteractiveElementBlocking:!0,children:(v,m)=>c.jsxs("div",ta(ta({className:re("draggable-container",{dragging:m.isDragging}),ref:v.innerRef},v.draggableProps),{},{children:[c.jsxs("div",{className:"custom-column-input-container",children:[c.jsxs("div",{className:"pb-3",children:[c.jsxs("div",{className:"d-flex flex-row custom-column-name",children:[c.jsx("input",{className:re("form-control custom-column-input",{"is-invalid":o||!d||u}),placeholder:"Column Name",value:t,onChange:f=>{a(e,Ou.NAME,f.target.value)}}),c.jsx(Y,{kind:"ghost",className:"ml-1 px-2",onClick:()=>{l(e)},icon:fr,tooltip:"Delete custom column"}),c.jsx(Y,ta(ta({kind:"ghost",className:"btn-drag-handle",onClick:Pb},v.dragHandleProps),{},{icon:Ua,tooltip:"Drag column to re-order"}))]}),(!d||u)&&c.jsx("p",{className:"validate-label-error text-danger mb-0 mt-2 pl-1",children:d?"Duplicate name":"Invalid name"})]}),c.jsx(yb,{editorSettings:{language:"deephavenDb"},editorIndex:r,placeholder:"Column Formula",value:i,onContentChanged:h,onTab:s,invalid:o})]}),c.jsx("hr",{})]}))})}function Zl(n,e,t){return e=Db(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Db(n){var e=Fb(n,"string");return typeof e=="symbol"?e:String(e)}function Fb(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Nl=[];class Lh extends kg{constructor(e){super(),Zl(this,"dh",void 0),Zl(this,"listenerCount",void 0),this.dh=e,this.listenerCount=0}addEventListener(e,t,r){super.addEventListener(e,t,r),this.listenerCount+=1,this.listenerCount===1&&this.startListening()}removeEventListener(e,t,r){super.removeEventListener(e,t,r),this.listenerCount-=1,this.listenerCount===0&&this.stopListening()}startListening(){}stopListening(){}get originalColumns(){return this.columns}get layoutHints(){return null}get frontColumns(){return Nl}get backColumns(){return Nl}get frozenColumns(){return Nl}isColumnFrozen(e){return!1}isColumnSortable(e){return!1}get isFilterRequired(){return!1}get isReversible(){return!0}get isColumnStatisticsAvailable(){return!1}get description(){return""}get isCustomColumnsAvailable(){return!1}get isFormatColumnsAvailable(){return!1}get isExportAvailable(){return!1}get isValuesTableAvailable(){return!1}get isChartBuilderAvailable(){return!1}get isRollupAvailable(){return!1}get isSelectDistinctAvailable(){return!1}get isTotalsAvailable(){return!1}isFilterable(e){return!1}close(){}isRowMovable(){return!1}get isSeekRowAvailable(){return!1}dataBarOptionsForCell(e,t,r){throw new Error("Method not implemented.")}}Zl(Lh,"EVENT",Object.freeze({UPDATED:"UPDATED",FORMATTER_UPDATED:"FORMATTER_UPDATED",REQUEST_FAILED:"REQUEST_FAILED",COLUMNS_CHANGED:"COLUMNS_CHANGED",TABLE_CHANGED:"TABLE_CHANGED",FILTERS_CHANGED:"FILTERS_CHANGED",SORTS_CHANGED:"SORTS_CHANGED",DISCONNECT:"DISCONNECT",RECONNECT:"RECONNECT",TOTALS_UPDATED:"TOTALS_UPDATED",PENDING_DATA_UPDATED:"PENDING_DATA_UPDATED"}));const ce=Lh;function Pu(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 Il(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Pu(Object(t),!0).forEach(function(r){$n(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Pu(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function $n(n,e,t){return e=Nb(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Nb(n){var e=Ib(n,"string");return typeof e=="symbol"?e:String(e)}function Ib(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class an extends R.Component{static makeCustomColumnInputEventKey(){return nt.generate()}static createCustomColumnInput(){return{eventKey:nt.generate(),name:"",formula:""}}constructor(e){super(e),$n(this,"container",void 0),$n(this,"successButtonTimer",void 0),$n(this,"getInput",Se((t,r)=>t.find(i=>i.eventKey===r))),$n(this,"getInputIndex",Se((t,r)=>t.findIndex(i=>i.eventKey===r))),this.handleAddColumnClick=this.handleAddColumnClick.bind(this),this.handleSaveClick=this.handleSaveClick.bind(this),this.handleInputChange=this.handleInputChange.bind(this),this.handleDeleteColumn=this.handleDeleteColumn.bind(this),this.handleCustomColumnUpdated=this.handleCustomColumnUpdated.bind(this),this.handleRequestFailed=this.handleRequestFailed.bind(this),this.handleDragEnd=this.handleDragEnd.bind(this),this.resetRequestFailed=this.resetRequestFailed.bind(this),this.handleEditorTabNavigation=this.handleEditorTabNavigation.bind(this),this.state={inputs:[],isCustomColumnApplying:!1,errorMessage:null,hasRequestFailed:!1,isSuccessShowing:!1},this.container=null,this.successButtonTimer=null}componentDidMount(){var{customColumns:e}=this.props;this.parseCustomColumns(e),this.startListening()}componentWillUnmount(){this.stopListening(),this.successButtonTimer&&clearTimeout(this.successButtonTimer)}resetErrorMessage(){this.setState({errorMessage:null})}startListening(){var{model:e}=this.props;e.addEventListener(ce.EVENT.COLUMNS_CHANGED,this.handleCustomColumnUpdated),e.addEventListener(ce.EVENT.UPDATED,this.handleCustomColumnUpdated),e.addEventListener(ce.EVENT.REQUEST_FAILED,this.handleRequestFailed)}stopListening(){var{model:e}=this.props;e.removeEventListener(ce.EVENT.COLUMNS_CHANGED,this.handleCustomColumnUpdated),e.removeEventListener(ce.EVENT.UPDATED,this.handleCustomColumnUpdated),e.removeEventListener(ce.EVENT.REQUEST_FAILED,this.handleRequestFailed)}parseCustomColumns(e){if(e.length>0){var t=e.map(r=>{var i=r.split(/=(.+)/,2);return{eventKey:an.makeCustomColumnInputEventKey(),name:i[0],formula:i[1]}});this.setState({inputs:t})}else this.setState({inputs:[an.createCustomColumnInput()]})}handleAddColumnClick(){var{inputs:e}=this.state,t=[...e];t.push(an.createCustomColumnInput()),this.setState({inputs:t})}handleDeleteColumn(e){var{inputs:t}=this.state,r=this.getInputIndex(t,e),i=[...t];i.splice(r,1),i.length===0&&i.push(an.createCustomColumnInput()),this.setState({inputs:i})}handleInputChange(e,t,r){var{inputs:i}=this.state,a=this.getInputIndex(i,e),l=this.getInput(i,e),s=Il({},l);s[t]=r;var o=[...i];o.splice(a,1,s),this.setState({inputs:o})}handleCustomColumnUpdated(){var{isCustomColumnApplying:e}=this.state;e&&this.setState({isCustomColumnApplying:!1,isSuccessShowing:!0},()=>{this.successButtonTimer=setTimeout(()=>this.setState({isSuccessShowing:!1}),an.SUCCESS_SHOW_DURATION)})}handleRequestFailed(e){var t=e,{isCustomColumnApplying:r}=this.state;r&&this.setState({isCustomColumnApplying:!1,errorMessage:c.jsxs(c.Fragment,{children:[c.jsxs("p",{children:[c.jsx(le,{icon:Wn})," Failed to apply custom columns."]}),c.jsxs("div",{className:"error-box",children:[t.detail.errorMessage,c.jsx("br",{}),"Table configuration:"," ",JSON.stringify(t.detail.configuration)]})]}),hasRequestFailed:!0})}handleDragEnd(e){if(cr.stopDragging(),!!e.destination){var{inputs:t}=this.state,r=e.source.index,i=e.destination.index,a=[...t],l=t[r];a.splice(r,1),a.splice(i,0,l),this.setState({inputs:a})}}handleEditorTabNavigation(e,t){var{inputs:r}=this.state;if(t){var i;((i=this.container)===null||i===void 0?void 0:i.querySelectorAll(".btn-drag-handle")[e]).focus();return}if(e===r.length-1){var a,l;(a=this.container)===null||a===void 0||(l=a.querySelector(".btn-add-column"))===null||l===void 0||l.focus()}else{var s,o=e+1;((s=this.container)===null||s===void 0?void 0:s.querySelectorAll(".custom-column-input")[o]).focus()}}handleSaveClick(){var{onSave:e,customColumns:t}=this.props,{inputs:r,isCustomColumnApplying:i}=this.state;if(!i){var a=[];r.forEach(l=>{var{name:s,formula:o}=l;s&&o&&a.push("".concat(s,"=").concat(o))}),this.resetErrorMessage(),this.setState({isCustomColumnApplying:a.length>0||t.length>0}),e(a)}}resetRequestFailed(){this.setState(e=>{var{hasRequestFailed:t}=e;return t?{hasRequestFailed:!1}:null})}renderInputs(){var{inputs:e,hasRequestFailed:t}=this.state,r=new Map;return e.forEach(i=>{var a,{name:l}=i;return r.set(l,((a=r.get(l))!==null&&a!==void 0?a:0)+1)}),e.map((i,a)=>{var l,{eventKey:s,name:o,formula:u}=i,d=((l=r.get(o))!==null&&l!==void 0?l:0)>1;return c.jsx(Rb,{inputIndex:a,eventKey:s,name:o,formula:u,onChange:this.handleInputChange,onDeleteColumn:this.handleDeleteColumn,onTabInEditor:this.handleEditorTabNavigation,invalid:t,isDuplicate:d},s)})}renderSaveButton(){var{inputs:e,isCustomColumnApplying:t,isSuccessShowing:r}=this.state,i=e.length>1?"Save Columns":"Save Column",a=e.every(o=>{var{name:u}=o;return u===""||as.isValidColumnName(u)}),l=e.filter(o=>{var{name:u}=o;return u!==""}).map(o=>{var{name:u}=o;return u}),s=new Set(l).size===l.length;return c.jsxs(Y,{kind:r?"success":"primary",className:re("btn-apply",{"btn-spinner":t}),disabled:r||t||!a||!s,onClick:this.handleSaveClick,children:[t&&c.jsxs("span",{children:[c.jsx(Dn,{className:"loading-spinner-vertical-align"}),c.jsx("span",{className:"btn-normal-content",children:"Applying"})]}),!r&&!t&&i,r&&c.jsxs(c.Fragment,{children:[c.jsx(le,{icon:ps})," Success"]})]})}render(){var{onCancel:e}=this.props,{errorMessage:t}=this.state;return c.jsxs("div",{role:"presentation",className:"custom-column-builder-container",ref:r=>{this.container=r},onClick:this.resetRequestFailed,onFocus:this.resetRequestFailed,children:[c.jsx("hr",{}),c.jsx(La,{onDragStart:cr.startDragging,onDragEnd:this.handleDragEnd,children:c.jsx(is,{droppableId:"droppable-custom-columns",children:(r,i)=>c.jsxs("div",Il(Il({ref:r.innerRef},r.droppableProps),{},{className:re("droppable-container",{dragging:i.draggingFromThisWith}),children:[this.renderInputs(),r.placeholder]}))})}),c.jsx("div",{className:"pt-1 px-3",children:c.jsx(Y,{kind:"ghost",className:"btn-add-column",onClick:this.handleAddColumnClick,icon:Fn,children:"Add Another Column"})}),c.jsxs("div",{className:"custom-column-builder-footer",children:[t&&c.jsx("div",{className:"error-message",children:t}),c.jsxs("div",{className:"d-flex justify-content-end",children:[c.jsx(Y,{kind:"secondary",className:"mr-2",onClick:e,children:"Cancel"}),this.renderSaveButton()]})]})]})}}$n(an,"SUCCESS_SHOW_DURATION",750);const Ab=an;var Jl;(function(n){n.ADVANCED_SETTINGS="ADVANCED_SETTINGS",n.AGGREGATIONS="AGGREGATIONS",n.AGGREGATION_EDIT="AGGREGATIONS_EDIT",n.CHART_BUILDER="CHART_BUILDER",n.CUSTOM_COLUMN_BUILDER="CUSTOM_COLUMN_BUILDER",n.QUICK_FILTERS="QUICK_FILTERS",n.ROLLUP_ROWS="ROLLUP_ROWS",n.SEARCH_BAR="SEARCH_BAR",n.SELECT_DISTINCT="SELECT_DISTINCT",n.TABLE_EXPORTER="TABLE_EXPORTER",n.VISIBILITY_ORDERING_BUILDER="VISIBILITY_ORDERING_BUILDER",n.CONDITIONAL_FORMATTING="CONDITIONAL_FORMATTING",n.CONDITIONAL_FORMATTING_EDIT="CONDITIONAL_FORMATTING_EDIT",n.GOTO="GOTO"})(Jl||(Jl={}));const Fe=Jl;function Ru(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 Du(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ru(Object(t),!0).forEach(function(r){ln(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ru(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function ln(n,e,t){return e=Mb(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Mb(n){var e=xb(n,"string");return typeof e=="symbol"?e:String(e)}function xb(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var gi=fe.module("RollupRows"),Lb=150,ra="grouped-rollup-rows",na="ungrouped-rollup-rows";class Mt extends R.Component{static renderColumn(e){var{item:t,isClone:r,selectedCount:i}=e,a=t?.name,l=r!==void 0&&r?"".concat(i):void 0,s=r!==void 0&&r?"item-list-item-clone":"";return lr.renderTextItem({text:a,badgeText:l,className:s})}static addGroupings(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length;if(t==null||t.length===0)return e;var i=r,a=e.filter((l,s)=>t.includes(l)?(s<i&&(i-=1),!1):!0);return a.splice(i,0,...t),a}static isGroupable(e){return!x.isDecimalType(e.type)}constructor(e){super(e),ln(this,"ungroupedList",void 0),ln(this,"groupedList",void 0),ln(this,"search",ct(l=>{for(var s=this.getSortedUngroupedColumns(),o=[],u=null,d=0;d<s.length;d+=1){var h=s[d];h.name.toLowerCase().includes(l.toLowerCase())&&(u==null&&(u=d),o.push([d,d]))}L(u),this.setState({ungroupedSelectedRanges:o}),o.length>0&&this.ungroupedList.current&&this.ungroupedList.current.scrollToItem(u)},Lb)),ln(this,"getCachedUngroupedColumns",be((l,s)=>l.filter(o=>Mt.isGroupable(o)&&s.find(u=>u===o.name)==null))),ln(this,"getCachedSortedColumns",be((l,s)=>s==null?[...l]:x.sortColumns(l,s===Mt.SORT.ASCENDING))),this.handleDeleteClicked=this.handleDeleteClicked.bind(this),this.handleSearchChange=this.handleSearchChange.bind(this),this.handleUngroupedSelect=this.handleUngroupedSelect.bind(this),this.handleUngroupedSelectionChange=this.handleUngroupedSelectionChange.bind(this),this.handleDragStart=this.handleDragStart.bind(this),this.handleDragEnd=this.handleDragEnd.bind(this),this.handleGroupedSelectionChange=this.handleGroupedSelectionChange.bind(this),this.handleShowConstituentsChange=this.handleShowConstituentsChange.bind(this),this.handleShowNonAggregatedColumnsChange=this.handleShowNonAggregatedColumnsChange.bind(this),this.handleSortAscending=this.handleSortAscending.bind(this),this.handleSortDescending=this.handleSortDescending.bind(this),this.renderGroupedItem=this.renderGroupedItem.bind(this),this.ungroupedList=Me.createRef(),this.groupedList=Me.createRef();var{config:t}=e,{columns:r=[],showConstituents:i=!0,showNonAggregatedColumns:a=!0}=t??{};this.state={ungroupedSelectedRanges:[],columns:r,groupedSelectedRanges:[],searchFilter:"",showConstituents:i,showNonAggregatedColumns:a,dragSource:null,sort:null}}componentDidUpdate(e,t){var{config:r}=this.props,{columns:i,showConstituents:a,showNonAggregatedColumns:l}=this.state;r!==e.config?this.updateFromConfig():(i!==t.columns||a!==t.showConstituents||l!==t.showNonAggregatedColumns)&&(r==null||i!==r.columns||a!==r.showConstituents||l!==r.showNonAggregatedColumns)&&this.sendChange()}componentWillUnmount(){this.search.cancel()}handleSearchChange(e){var t=e.target.value;if(this.setState({searchFilter:t}),!t){this.search.cancel(),this.resetSelection();return}this.search(t)}handleSortAscending(){this.setState(e=>{var{sort:t}=e;return{sort:t===Mt.SORT.ASCENDING?null:Mt.SORT.ASCENDING}})}handleSortDescending(){this.setState(e=>{var{sort:t}=e;return{sort:t===Mt.SORT.DESCENDING?null:Mt.SORT.DESCENDING}})}resetSelection(){this.setState({ungroupedSelectedRanges:[],groupedSelectedRanges:[]})}handleDragStart(e){gi.debug("handleDragStart",e),document.documentElement.classList.add("drag-pointer-events-none"),this.setState({dragSource:e.source})}handleDragEnd(e){gi.debug("handleDragEnd",e),document.documentElement.classList.remove("drag-pointer-events-none"),this.setState({dragSource:null});var{destination:t,source:r}=e;if(!(t==null||r==null)){if(t.droppableId===na){this.setState(l=>{var{groupedSelectedRanges:s,columns:o}=l,u=[...o];return cr.reorder(u,s,[],0),{columns:u,ungroupedSelectedRanges:[],groupedSelectedRanges:[]}});return}var i=r.droppableId===ra,a=t.index;i&&r.index<t.index&&(a+=1),this.setState(l=>{var{columns:s,ungroupedSelectedRanges:o,groupedSelectedRanges:u}=l,d=[...s],h=i?d:this.getSortedUngroupedColumns().map(p=>p.name),v=i?u:o,m=cr.reorder(h,v,d,a),f=i?cr.adjustDestinationIndex(a,u):a,g=[[f,f+m.length-1]];return{columns:d,ungroupedSelectedRanges:[],groupedSelectedRanges:g}}),this.resetSelection()}}handleUngroupedSelect(e){gi.debug("handleUngroupedSelect"),this.setState(t=>{var{columns:r}=t;return{columns:Mt.addGroupings(r,[this.getSortedUngroupedColumns()[e].name]),ungroupedSelectedRanges:[],groupedSelectedRanges:[]}})}handleUngroupedSelectionChange(e){gi.debug2("handleUngroupedSelectionChange",e),this.setState(t=>{var{ungroupedSelectedRanges:r}=t;return e===r?null:{ungroupedSelectedRanges:e,groupedSelectedRanges:[]}})}handleGroupedSelectionChange(e){gi.debug2("handleGroupedSelectedRanges",e),this.setState(t=>{var{groupedSelectedRanges:r}=t;return e===r?null:{groupedSelectedRanges:e,ungroupedSelectedRanges:[]}})}handleDeleteClicked(e){this.setState(t=>{var{columns:r}=t,i=r.slice();return i.splice(e,1),{columns:i}})}handleShowConstituentsChange(){this.setState(e=>{var{showConstituents:t}=e;return{showConstituents:!t}})}handleShowNonAggregatedColumnsChange(){this.setState(e=>{var{showNonAggregatedColumns:t}=e;return{showNonAggregatedColumns:!t}})}updateFromConfig(){var{config:e}=this.props,{columns:t=[],showConstituents:r=!0,showNonAggregatedColumns:i=!0}=e??{};this.setState({columns:t,showConstituents:r,showNonAggregatedColumns:i})}sendChange(){var{onChange:e}=this.props,{columns:t,showConstituents:r,showNonAggregatedColumns:i}=this.state;e({columns:t,showConstituents:r,showNonAggregatedColumns:i})}getUngroupedColumns(){var{model:e}=this.props,{columns:t}=this.state,{originalColumns:r}=e;return this.getCachedUngroupedColumns(r,t)}getSortedUngroupedColumns(){var{sort:e}=this.state,t=this.getUngroupedColumns();return this.getCachedSortedColumns(t,e)}renderGroupedItem(e){var{item:t,itemIndex:r,isClone:i,selectedCount:a}=e,l=i!==void 0&&i?"":"  ".repeat(r),s="".concat(l).concat(t),o=i!==void 0&&i?"".concat(a):void 0,u=i!==void 0&&i?"item-list-item-clone":"";return c.jsxs(c.Fragment,{children:[lr.renderTextItem({text:s,badgeText:o,className:u}),(i===void 0||!i)&&c.jsx(Y,{kind:"ghost",className:"btn btn-link btn-link-icon btn-delete-grouping float-right",onClick:()=>this.handleDeleteClicked(r),children:c.jsx(le,{icon:fr})})]})}render(){var{columns:e,dragSource:t,searchFilter:r,groupedSelectedRanges:i,ungroupedSelectedRanges:a,showConstituents:l,showNonAggregatedColumns:s,sort:o}=this.state,u=this.getSortedUngroupedColumns(),d=e.length*lr.DEFAULT_ROW_HEIGHT;t?.droppableId===na&&(d+=lr.DEFAULT_ROW_HEIGHT);var h=u.length*lr.DEFAULT_ROW_HEIGHT+10,v=Math.min(3*lr.DEFAULT_ROW_HEIGHT,h);return c.jsx("div",{role:"menu",className:re("rollup-rows",{"is-dragging":t!=null}),tabIndex:0,children:c.jsxs(La,{onDragEnd:this.handleDragEnd,onDragStart:this.handleDragStart,children:[c.jsxs("div",{className:"rollup-rows-group-by",children:[c.jsx("div",{className:"section-title",children:"Group By"}),e.length===0&&c.jsx(is,{droppableId:"placeholder",children:(m,f)=>c.jsx("div",Du(Du({className:re("placeholder","text-muted",{"is-dragging-from-this":f.draggingFromThisWith,"is-dragging-over":f.isDraggingOver,"is-dropping":f.draggingOverWith}),ref:m.innerRef},m.droppableProps),{},{children:"To create a rollup, drag columns from the list below and drop them into this area."}))}),e.length>0&&c.jsx(lr,{draggingItemClassName:"rollup-rows-dragging-grouped-item",draggablePrefix:ra,droppableId:ra,itemCount:e.length,items:e,offset:0,onSelectionChange:this.handleGroupedSelectionChange,ref:this.groupedList,renderItem:this.renderGroupedItem,selectedRanges:i,style:{height:d},isMultiSelect:!0})]}),c.jsxs("div",{className:"rollup-rows-available-columns",children:[c.jsx("div",{className:"section-title",children:"Available Grouping Columns"}),c.jsxs("div",{className:"top-menu",children:[c.jsx(ms,{className:"w-100",value:r,matchCount:r?a.length:void 0,placeholder:"Find column...",onChange:this.handleSearchChange}),c.jsxs(Y,{kind:"ghost",className:re("btn-link btn-link-icon",{active:o===Mt.SORT.ASCENDING}),onClick:this.handleSortAscending,children:[c.jsx(le,{icon:ws}),c.jsx(Jt,{children:"Sort ascending"})]}),c.jsxs(Y,{kind:"ghost",className:re("btn-link btn-link-icon",{active:o===Mt.SORT.DESCENDING}),onClick:this.handleSortDescending,children:[c.jsx(le,{icon:ys}),c.jsx(Jt,{children:"Sort descending"})]})]}),c.jsx(lr,{className:"rollup-available-grouping-columns",draggablePrefix:na,droppableId:na,itemCount:u.length,items:u,renderItem:Mt.renderColumn,offset:0,onSelect:this.handleUngroupedSelect,onSelectionChange:this.handleUngroupedSelectionChange,ref:this.ungroupedList,selectedRanges:a,style:{maxHeight:h,minHeight:v},isDropDisabled:t?.droppableId!==ra,isMultiSelect:!0}),c.jsxs("div",{className:"bottom-menu",children:[c.jsx("div",{className:"label",children:"Show:"}),c.jsx(un,{checked:l,onChange:this.handleShowConstituentsChange,children:"Constituents"}),c.jsx(un,{checked:s,onChange:this.handleShowNonAggregatedColumnsChange,children:"Non-Aggregated Columns"})]})]})]})})}}ln(Mt,"SORT",Object.freeze({ASCENDING:"ASC",DESCENDING:"DESC"}));ln(Mt,"defaultProps",{config:null,onChange:()=>{}});const kb=Mt;function Fu(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function jb(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Fu(a,r,i,l,s,"next",o)}function s(o){Fu(a,r,i,l,s,"throw",o)}l(void 0)})}}function Nu(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 Iu(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Nu(Object(t),!0).forEach(function(r){An(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Nu(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function An(n,e,t){return e=_b(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function _b(n){var e=Hb(n,"string");return typeof e=="symbol"?e:String(e)}function Hb(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ub=fe.module("TableCsvExporter");class Pe extends R.Component{static getDateString(e){return e.i18n.DateTimeFormat.format(Pe.FILENAME_DATE_FORMAT,new Date)}constructor(e){super(e),this.handleDownloadClick=this.handleDownloadClick.bind(this),this.handleDownloadRowOptionChanged=this.handleDownloadRowOptionChanged.bind(this),this.handleCustomizedDownloadRowOptionChanged=this.handleCustomizedDownloadRowOptionChanged.bind(this),this.handleCustomizedDownloadRowsChanged=this.handleCustomizedDownloadRowsChanged.bind(this),this.handleIncludeColumnHeadersChanged=this.handleIncludeColumnHeadersChanged.bind(this),this.handleIncludeHiddenColumnsChanged=this.handleIncludeHiddenColumnsChanged.bind(this),this.handleUseUnformattedValuesChanged=this.handleUseUnformattedValuesChanged.bind(this);var{model:t,name:r}=e;this.state={fileName:"".concat(r,"-").concat(Pe.getDateString(t.dh),".csv"),downloadRowOption:Pe.DOWNLOAD_ROW_OPTIONS.ALL_ROWS,customizedDownloadRowOption:Pe.CUSTOMIZED_ROWS_OPTIONS.FIRST,customizedDownloadRows:Pe.DEFAULT_DOWNLOAD_ROWS,includeColumnHeaders:!0,includeHiddenColumns:!1,useUnformattedValues:!1,errorMessage:null,id:nt.generate()}}getSnapshotRanges(){var{model:e,selectedRanges:t}=this.props,{downloadRowOption:r,customizedDownloadRowOption:i,customizedDownloadRows:a}=this.state,{rowCount:l,columnCount:s}=e,o=[];switch(r){case Pe.DOWNLOAD_ROW_OPTIONS.ALL_ROWS:o.push(new U(0,0,s-1,l-1));break;case Pe.DOWNLOAD_ROW_OPTIONS.SELECTED_ROWS:o=t.map(u=>Iu(Iu({},u),{},{startColumn:0,endColumn:s-1})).sort((u,d)=>u.startRow!=null&&d.startRow!=null?u.startRow-d.startRow:0);break;case Pe.DOWNLOAD_ROW_OPTIONS.CUSTOMIZED_ROWS:switch(i){case Pe.CUSTOMIZED_ROWS_OPTIONS.FIRST:o.push(new U(0,0,s-1,Math.min(a-1,l-1)));break;case Pe.CUSTOMIZED_ROWS_OPTIONS.LAST:o.push(new U(0,Math.max(0,l-a),s-1,l-1));break}break}return o}getModelRanges(e){var{userColumnWidths:t,movedColumns:r}=this.props,{includeHiddenColumns:i}=this.state,a=me.getHiddenColumns(t),l=K.getModelRanges(e,r);if(!i&&a.length>0){var s=a.map(U.makeColumn);l=U.subtractRangesFromRanges(l,s)}return l}resetDownloadState(){this.setState({errorMessage:null})}handleDownloadClick(){var e=this;return jb(function*(){var{model:t,isDownloading:r,onDownloadStart:i,onDownload:a,onCancel:l}=e.props,{fileName:s,includeColumnHeaders:o,useUnformattedValues:u}=e.state;if(r){l();return}e.resetDownloadState();var d=e.getSnapshotRanges(),h=e.getModelRanges(d);if(e.validateOptionInput()){i();try{var v=yield t.export(),m=v.setViewport(0,0);yield m.getViewportData(),a(s,v,m,d,h,o,u)}catch(f){Ub.error("CSV download failed",f),e.setState({errorMessage:c.jsxs("p",{children:[c.jsx(le,{icon:Wn})," ","".concat(f)]})}),l()}}})()}handleDownloadRowOptionChanged(e){this.setState({downloadRowOption:e.target.value})}handleCustomizedDownloadRowOptionChanged(e){this.setState({customizedDownloadRowOption:e.target.value})}handleCustomizedDownloadRowsChanged(e){this.setState({customizedDownloadRows:parseInt(e.target.value,10)})}handleIncludeColumnHeadersChanged(){this.setState(e=>{var{includeColumnHeaders:t}=e;return{includeColumnHeaders:!t}})}handleIncludeHiddenColumnsChanged(){this.setState(e=>{var{includeHiddenColumns:t}=e;return{includeHiddenColumns:!t}})}handleUseUnformattedValuesChanged(){this.setState(e=>{var{useUnformattedValues:t}=e;return{useUnformattedValues:!t}})}validateOptionInput(){var{selectedRanges:e}=this.props,{downloadRowOption:t,customizedDownloadRows:r}=this.state;return t===Pe.DOWNLOAD_ROW_OPTIONS.SELECTED_ROWS&&e.length===0?(this.setState({errorMessage:c.jsxs("p",{children:[c.jsx(le,{icon:Wn})," No rows selected. Please select some rows in the table."]})}),!1):t===Pe.DOWNLOAD_ROW_OPTIONS.CUSTOMIZED_ROWS&&r<=0?(this.setState({errorMessage:c.jsxs("p",{children:[c.jsx(le,{icon:Wn})," Number of rows to output must be greater than 0"]})}),!1):!0}render(){var{model:e,isDownloading:t,tableDownloadProgress:r,tableDownloadEstimatedTime:i,selectedRanges:a,tableDownloadStatus:l}=this.props,{fileName:s,downloadRowOption:o,customizedDownloadRowOption:u,customizedDownloadRows:d,includeColumnHeaders:h,includeHiddenColumns:v,useUnformattedValues:m,errorMessage:f,id:g}=this.state,{rowCount:p}=e;return c.jsxs("div",{className:"table-csv-exporter",children:[c.jsx("div",{className:"section-title",children:"Download Rows"}),c.jsx("div",{className:"form-group",children:c.jsxs(Ha,{onChange:this.handleDownloadRowOptionChanged,value:o,disabled:t,children:[c.jsxs(jr,{value:Pe.DOWNLOAD_ROW_OPTIONS.ALL_ROWS,"data-testid":"radio-csv-exporter-download-all",children:["All Rows",c.jsx("span",{className:"text-muted ml-2",children:"(".concat(p.toString().replace(/(\d)(?=(\d{3})+(?!\d))/g,"$1,")," rows)")})]}),c.jsxs(jr,{value:Pe.DOWNLOAD_ROW_OPTIONS.SELECTED_ROWS,"data-testid":"radio-csv-exporter-only-selected",children:["Only Selected Rows",c.jsx("span",{className:"text-muted ml-2",children:a.length>0?"(".concat(U.rowCount(a).toString().replace(/(\d)(?=(\d{3})+(?!\d))/g,"$1,")," rows)"):null})]}),c.jsx(jr,{value:Pe.DOWNLOAD_ROW_OPTIONS.CUSTOMIZED_ROWS,"data-testid":"radio-csv-exporter-customized-rows",children:c.jsxs("div",{className:"radio-input-row",role:"presentation",onClick:()=>{this.setState({downloadRowOption:Pe.DOWNLOAD_ROW_OPTIONS.CUSTOMIZED_ROWS})},children:[c.jsxs("select",{value:u,"data-testid":"select-csv-exporter-customized-rows",className:"custom-select",disabled:t,onChange:this.handleCustomizedDownloadRowOptionChanged,children:[c.jsx("option",{value:"FIRST",children:"First"}),c.jsx("option",{value:"LAST",children:"Last"})]}),c.jsx("input",{type:"number",className:"form-control",id:"customizedRows-".concat(g),"data-testid":"input-csv-exporter-customized-rows",name:"customizedRows-".concat(g),placeholder:"100",value:d,disabled:t,onChange:this.handleCustomizedDownloadRowsChanged}),c.jsx("div",{children:"Rows"})]})})]})}),c.jsxs("div",{className:"form-group",children:[c.jsx("label",{htmlFor:"customizedRows-".concat(g),children:"File Name"}),c.jsx("input",{type:"text",className:"form-control",id:"filename-".concat(g),"data-testid":"input-csv-exporter-file-name",name:"filename-".concat(g),value:s,onChange:C=>{this.setState({fileName:C.target.value})},disabled:t})]}),c.jsxs("div",{className:"checkbox-options",children:[c.jsx(un,{checked:h,onChange:this.handleIncludeColumnHeadersChanged,children:"Include column headers"}),c.jsx(un,{checked:v,onChange:this.handleIncludeHiddenColumnsChanged,children:"Include hidden columns"}),c.jsx(un,{checked:m,onChange:this.handleUseUnformattedValuesChanged,children:"Use unformatted values"})]}),c.jsxs("div",{className:"section-footer flex-column",children:[f!=null&&c.jsx("div",{className:"error-message",children:f}),l&&c.jsxs("div",{className:"download-status",children:[(l===Pe.DOWNLOAD_STATUS.DOWNLOADING||l===Pe.DOWNLOAD_STATUS.INITIATING)&&c.jsxs(c.Fragment,{children:[l===Pe.DOWNLOAD_STATUS.INITIATING&&c.jsx("div",{className:"text-muted",children:"Starting Download..."}),l===Pe.DOWNLOAD_STATUS.DOWNLOADING&&c.jsxs("div",{className:"text-muted d-flex justify-content-between",children:[c.jsx("span",{children:i||i===0?"Estimated time: ".concat(Rv.formatElapsedTime(i)):null}),c.jsx("span",{children:"".concat(r,"%")})]})]}),l===Pe.DOWNLOAD_STATUS.FINISHED&&c.jsx("div",{className:"text-muted text-right",children:"Download Completed"}),l===Pe.DOWNLOAD_STATUS.CANCELED&&c.jsx("div",{className:"text-muted",children:"Download Canceled"}),(l===Pe.DOWNLOAD_STATUS.DOWNLOADING||l===Pe.DOWNLOAD_STATUS.INITIATING)&&c.jsx("div",{className:"progress",children:c.jsx("div",{className:"progress-bar progress-bar-striped progress-bar-animated",style:{width:"".concat(r,"%")}})}),l===Pe.DOWNLOAD_STATUS.FINISHED&&c.jsx("div",{className:"progress",children:c.jsx("div",{className:"progress-bar bg-success",style:{width:"".concat(r,"%")}})})]}),c.jsxs(Y,{kind:"primary","data-testid":"btn-csv-exporter-download",className:re("btn-downloading",{"btn-spinner btn-cancelable":t}),onClick:this.handleDownloadClick,children:[t&&c.jsxs("span",{children:[c.jsx(Dn,{className:"loading-spinner-vertical-align"}),c.jsx("span",{className:"btn-normal-content",children:"Downloading"}),c.jsx("span",{className:"btn-hover-content",children:"Cancel"})]}),!t&&"Download"]})]})]})}}An(Pe,"FILENAME_DATE_FORMAT","yyyy-MM-dd-HHmmss");An(Pe,"DOWNLOAD_STATUS",{INITIATING:"INITIATING",DOWNLOADING:"DOWNLOADING",FINISHED:"FINISHED",CANCELED:"CANCELED"});An(Pe,"DOWNLOAD_ROW_OPTIONS",{ALL_ROWS:"ALL_ROWS",SELECTED_ROWS:"SELECTED_ROWS",CUSTOMIZED_ROWS:"CUSTOMIZED_ROWS"});An(Pe,"CUSTOMIZED_ROWS_OPTIONS",{FIRST:"FIRST",LAST:"LAST"});An(Pe,"DEFAULT_DOWNLOAD_ROWS",100);An(Pe,"defaultProps",{onDownloadStart:()=>{},isDownloading:!1,tableDownloadStatus:"",tableDownloadProgress:0,tableDownloadEstimatedTime:null,selectedRanges:[]});const vn=Pe;function Ne(n,e,t){return e=Vb(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Vb(n){var e=Bb(n,"string");return typeof e=="symbol"?e:String(e)}function Bb(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ar=fe.module("TableSaver"),Gb="yyyy-MM-dd'T'HH:mm:ss.SSSSSSSSS z";function $b(n){return n.added!==void 0}function Wb(n){if(!$b(n))throw new Error("event is not UpdateEventData")}class Lt extends R.PureComponent{static csvEscapeString(e){return'"'.concat(e.replace(/"/g,'""'),'"')}constructor(e){super(e),Ne(this,"sw",void 0),Ne(this,"port",void 0),Ne(this,"fileWriter",void 0),Ne(this,"table",void 0),Ne(this,"tableSubscription",void 0),Ne(this,"columns",void 0),Ne(this,"fileName",void 0),Ne(this,"includeColumnHeaders",void 0),Ne(this,"useUnformattedValues",void 0),Ne(this,"chunkRows",void 0),Ne(this,"gridRanges",void 0),Ne(this,"gridRangeCounter",void 0),Ne(this,"rangedSnapshotsTotal",void 0),Ne(this,"rangedSnapshotCounter",void 0),Ne(this,"snapshotsTotal",void 0),Ne(this,"snapshotCounter",void 0),Ne(this,"snapshotsBuffer",void 0),Ne(this,"currentSnapshotIndex",void 0),Ne(this,"snapshotPending",void 0),Ne(this,"cancelableSnapshots",void 0),Ne(this,"streamTimeout",void 0),Ne(this,"snapshotHandlerTimeout",void 0),Ne(this,"downloadStartTime",void 0),Ne(this,"iframe",void 0),Ne(this,"useBlobFallback",void 0),Ne(this,"getCachedCustomColumnFormatFlag",mr(kr.isCustomColumnFormatDefined,{max:1e4})),this.handlePortMessage=this.handlePortMessage.bind(this),this.handleSnapshotResolved=this.handleSnapshotResolved.bind(this),this.handleDownloadTimeout=this.handleDownloadTimeout.bind(this),this.state={},this.gridRanges=[],this.gridRangeCounter=0,this.rangedSnapshotsTotal=[],this.rangedSnapshotCounter=0,this.includeColumnHeaders=!0,this.useUnformattedValues=!1,this.snapshotsTotal=0,this.snapshotCounter=0,this.snapshotsBuffer=new Map,this.currentSnapshotIndex=0,this.snapshotPending=0,this.cancelableSnapshots=[],this.useBlobFallback=!1}componentDidMount(){var{getDownloadWorker:e}=this.props;e().then(t=>{Ar.info("found active service worker"),this.sw=t,this.sw.postMessage("ping")}).catch(t=>{Ar.warn("Download csv is not optimized.",t),this.useBlobFallback=!0})}componentWillUnmount(){this.removeIframe(),this.streamTimeout&&clearTimeout(this.streamTimeout),this.snapshotHandlerTimeout&&clearTimeout(this.snapshotHandlerTimeout)}createWriterStream(e){var t=this.useBlobFallback,r=[],i=null;t&&(i=TextEncoder.prototype.encode.bind(new TextEncoder));var{fileName:a}=this,l={};return t?(l.write=s=>{L(i),s.header!==void 0&&r.push(i(s.header)),s.rows!==void 0&&r.push(i(s.rows))},l.close=()=>{L(a);var s=new Blob(r,{type:"application/octet-stream; charset=utf-8"}),o=document.createElement("a");o.href=URL.createObjectURL(s),o.download=a,o.click()},l.abort=()=>{e.postMessage({cancel:!0}),e.close()}):(l.write=s=>{e.postMessage(s)},l.close=()=>{e.postMessage({end:!0}),e.close()},l.abort=()=>{e.postMessage({cancel:!0}),e.close()}),new WritableStream(l)}startDownload(e,t,r,i,a,l,s){var{isDownloading:o}=this.props;if(!o){this.downloadStartTime=Date.now(),Ar.info("start downloading ".concat(e)),this.table=t,this.columns=me.columnsFromRanges(a,t.columns),this.tableSubscription=r,this.gridRanges=i,this.includeColumnHeaders=l,this.useUnformattedValues=s;var u=encodeURIComponent(e.replace(/\//g,":")).replace(/['()]/g,escape).replace(/\*/g,"%2A"),d=new MessageChannel;if(this.port=d.port1,this.fileName=e,this.fileWriter=this.createWriterStream(this.port).getWriter(),this.useBlobFallback){this.writeCsvTable(l);return}this.sw&&this.sw.postMessage({encodedFileName:u},[d.port2]),this.port.onmessage=this.handlePortMessage}}finishDownload(){this.table&&this.table.close(),this.tableSubscription&&this.tableSubscription.close(),this.fileWriter&&this.fileWriter.close();var{onDownloadCompleted:e}=this.props;e(),this.resetTableSaver(),this.downloadStartTime!==void 0&&Ar.info("download finished, total elapsed time ".concat((Date.now()-this.downloadStartTime)/1e3," seconds"))}cancelDownload(){var e,t,r;(e=this.table)===null||e===void 0||e.close(),(t=this.tableSubscription)===null||t===void 0||t.close(),(r=this.fileWriter)===null||r===void 0||r.abort(),this.cancelableSnapshots.forEach(a=>{a&&(a.catch(()=>null),a.cancel())});var{onDownloadCanceled:i}=this.props;i(),this.resetTableSaver()}resetTableSaver(){this.table=void 0,this.tableSubscription=void 0,this.columns=void 0,this.chunkRows=void 0,this.removeIframe(),this.gridRanges=[],this.gridRangeCounter=0,this.rangedSnapshotsTotal=[],this.rangedSnapshotCounter=0,this.includeColumnHeaders=!0,this.useUnformattedValues=!1,this.snapshotsTotal=0,this.snapshotCounter=0,this.snapshotsBuffer=new Map,this.currentSnapshotIndex=0,this.snapshotPending=0,this.cancelableSnapshots=[],this.streamTimeout!=null&&clearTimeout(this.streamTimeout),this.snapshotHandlerTimeout!=null&&clearTimeout(this.snapshotHandlerTimeout),this.streamTimeout=void 0,this.snapshotHandlerTimeout=void 0}handleDownloadTimeout(){Ar.info("download canceled"),this.cancelDownload()}writeTableHeader(){var e,t="";if(this.columns)for(var r=0;r<this.columns.length;r+=1)t+=this.columns[r].name,t+=r===this.columns.length-1?`
4
4
  `:",";(e=this.fileWriter)===null||e===void 0||e.write({header:t}).then(()=>null)}startWriteTableBody(){this.columns&&this.gridRanges!=null&&(this.chunkRows=Math.floor(Lt.DOWNLOAD_CELL_CHUNK/this.columns.length),this.rangedSnapshotsTotal=this.gridRanges.map(e=>(L(e.endRow),L(e.startRow),L(this.chunkRows),Math.ceil((e.endRow-e.startRow+1)/this.chunkRows))),this.snapshotsTotal=this.rangedSnapshotsTotal.reduce((e,t)=>e+t),Ar.info("start writing table, total snapshots: ",this.snapshotsTotal),this.makeSnapshot(Math.min(Lt.SNAPSHOT_BUFFER_SIZE,this.snapshotsTotal)))}writeCsvTable(e){e&&this.writeTableHeader(),this.startWriteTableBody()}writeSnapshot(e,t,r){if(this.currentSnapshotIndex===e&&this.fileWriter){for(;this.snapshotsBuffer.has(this.currentSnapshotIndex);){var i=this.snapshotsBuffer.get(this.currentSnapshotIndex);L(i),this.fileWriter.write({rows:this.convertSnapshotIntoCsv(i)}),this.snapshotsBuffer.delete(this.currentSnapshotIndex),this.currentSnapshotIndex+=1,this.updateDownloadProgress(e)}if(this.snapshotsTotal&&this.currentSnapshotIndex>=this.snapshotsTotal){this.finishDownload();return}}this.snapshotCounter&&this.snapshotsTotal&&this.snapshotCounter<this.snapshotsTotal&&(Ar.debug2(`
5
5
  current range index: `.concat(this.gridRangeCounter,`,
6
6
  snapshotIndexCounter: `).concat(this.snapshotCounter,`,
@@ -8,14 +8,14 @@ import{_ as Vd,r as R,H as Me,$ as ht,C as c,S as be,K as ct,L as we,a0 as Ae,a1
8
8
  snapshotpending: `).concat(this.snapshotPending,`,
9
9
  buffered `).concat(this.snapshotsBuffer.size,`
10
10
  making `).concat(Math.min(Lt.SNAPSHOT_BUFFER_SIZE-this.snapshotsBuffer.size-this.snapshotPending,this.snapshotsTotal-this.snapshotCounter),` more snapshots
11
- `)),this.makeSnapshot(Math.min(Lt.SNAPSHOT_BUFFER_SIZE-this.snapshotsBuffer.size-this.snapshotPending,this.snapshotsTotal-this.snapshotCounter)))}updateDownloadProgress(e){if(e!=null&&this.snapshotsTotal!=null&&this.downloadStartTime!=null){var{onDownloadProgressUpdate:t}=this.props,r=Math.floor(e*100/this.snapshotsTotal),i=e>1?Math.floor((Date.now()-this.downloadStartTime)*(this.snapshotsTotal-e)/e/1e3):null;t(r,i)}}convertSnapshotIntoCsv(e){for(var t="",r=e.added.iterator(),{dh:i,formatter:a}=this.props,l=[];r.hasNext();)l.push(r.next().value);L(this.columns);for(var{useUnformattedValues:s}=this,o=0;o<l.length;o+=1)for(var u=l[o],d=0;d<this.columns.length;d+=1){var{type:h,name:v}=this.columns[d],m=null;if(s){var f,g=(f=e.getData(u,this.columns[d]))!==null&&f!==void 0?f:"";g!==""&&x.isDateType(h)&&(g=i.i18n.DateTimeFormat.format($b,g,i.i18n.TimeZone.getTimeZone(a.timeZone))),m=g.toString()}else{var p=this.getCachedCustomColumnFormatFlag(a,v,h),C=null;if(!p){var S=e.getFormat(u,this.columns[d]);C=S?.formatString!=null?S:null}C?m=a.getFormattedString(e.getData(u,this.columns[d]),h,v,C):m=a.getFormattedString(e.getData(u,this.columns[d]),h,v)}t+=Lt.csvEscapeString(m),t+=d===this.columns.length-1?`
12
- `:","}return t}makeSnapshot(e){var t=this;if(!(e<=0)){var{dh:r}=this.props;L(this.gridRangeCounter);var i=0,a=this.gridRanges[this.gridRangeCounter];L(this.tableSubscription),L(this.columns);for(var l=function(){L(a),L(a.startRow),L(a.endRow),L(t.rangedSnapshotCounter),L(t.chunkRows);var o=a.startRow+t.rangedSnapshotCounter*t.chunkRows,u=Math.min(o+t.chunkRows-1,a.endRow),d=t.snapshotCounter;t.cancelableSnapshots.push(st.makeCancelable(t.tableSubscription.snapshot(r.RangeSet.ofRange(o,u),t.columns).then(h=>(zb(h),t.handleSnapshotResolved(h,d,o,u),d)).catch(h=>{Ar.error(h)}),h=>{Ar.info("snapshot ".concat(h," has been canceled"))})),t.rangedSnapshotCounter+=1,t.snapshotCounter+=1,t.snapshotPending+=1,t.rangedSnapshotCounter>=t.rangedSnapshotsTotal[t.gridRangeCounter]&&(t.gridRangeCounter+=1,t.rangedSnapshotCounter=0,a=t.gridRanges[t.gridRangeCounter]),i+=1};i<e;)l()}}handlePortMessage(e){var{data:t}=e,{download:r,readableStreamPulling:i}=t;if(!this.useBlobFallback){if(r!=null){var{includeColumnHeaders:a}=this;this.makeIframe("".concat(r)),this.writeCsvTable(a)}i!=null&&(this.useBlobFallback||(this.streamTimeout!=null&&clearTimeout(this.streamTimeout),this.streamTimeout=setTimeout(this.handleDownloadTimeout,Lt.STREAM_TIMEOUT)))}}handleSnapshotResolved(e,t,r,i){this.snapshotHandlerTimeout=setTimeout(()=>{this.snapshotsBuffer.set(t,e),this.snapshotPending-=1,this.writeSnapshot(t,r,i),this.cancelableSnapshots[t]=null},Lt.SNAPSHOT_HANDLER_TIMEOUT)}makeIframe(e){var t=document.createElement("iframe");t.hidden=!0,t.src=e,t.name="iframe",document.body.appendChild(t),this.iframe=t}removeIframe(){var e;(e=this.iframe)===null||e===void 0||e.remove(),this.iframe=void 0}render(){return null}}Ne(Lt,"DOWNLOAD_CELL_CHUNK",6e3);Ne(Lt,"SNAPSHOT_BUFFER_SIZE",5);Ne(Lt,"STREAM_TIMEOUT",8e3);Ne(Lt,"SNAPSHOT_HANDLER_TIMEOUT",5);Ne(Lt,"defaultProps",{isDownloading:!1,onDownloadCompleted:()=>{},onDownloadCanceled:()=>{},onDownloadProgressUpdate:()=>{}});function Kb(n){var e,{group:t,onDelete:r,onColorChange:i,onNameChange:a,validateName:l}=n,{isNew:s}=t,o=R.useRef(t),u=R.useRef(null),d=R.useRef(null),[h,v]=R.useState(!1),[m,f]=R.useState(s?"":t.name),[g,p]=R.useState(s),[C,S]=R.useState(!1),b=m!==t.name?l(m):"",w=s&&!C||b==="",y=R.useCallback(()=>{v(!1)},[]);R.useEffect(function(){g&&u.current&&(u.current.focus(),u.current.select())},[g]),R.useEffect(function(){return()=>{o.current.isNew&&r(o.current)}},[r]),R.useEffect(function(){if(h){var D,N;(D=d.current)===null||D===void 0||D.click(),(N=d.current)===null||N===void 0||N.focus(),window.addEventListener("click",y,!0)}return()=>window.removeEventListener("click",y,!0)},[h,y]);var T=()=>{w&&(a(t,m),p(!1))},E=()=>{if(s){r(t);return}f(t.name),p(!1)},P=O=>{S(!0),O.key==="Enter"&&(O.stopPropagation(),T()),O.key===" "&&O.stopPropagation(),O.key==="Escape"&&E()};return g?c.jsxs(c.Fragment,{children:[c.jsxs("div",{className:"editing-container",children:[c.jsx("input",{ref:u,className:re("form-control",{"is-invalid":!w}),value:m,placeholder:"Group Name",onChange:O=>f(O.target.value),onKeyDown:P,onBlur:()=>S(!0)}),c.jsx(Y,{kind:"ghost",icon:Ta,tooltip:"Confirm",onClick:T}),c.jsx(Y,{kind:"ghost",icon:zv,tooltip:"Cancel",onClick:E})]}),!w&&c.jsx("p",{className:"mb-0 validate-label-error text-danger",children:b})]}):c.jsxs("div",{className:"group-name-wrapper",children:[c.jsx("span",{className:"column-name",children:m}),c.jsx(Y,{className:"p-1 mx-1",kind:"ghost",icon:Hi,tooltip:"Edit",onClick:()=>{p(!0)}}),c.jsxs("span",{className:"right-buttons",children:[c.jsx(Y,{kind:"ghost",icon:fr,tooltip:"Delete group",onClick:()=>r(t)}),c.jsx(Y,{kind:"ghost",className:"color-swatch mr-1",icon:t.color!==void 0?c.jsxs("span",{className:"fa-layers",children:[c.jsx(ae,{className:"color-swatch",icon:Ea,color:ze.white,transform:"down-1"}),c.jsx(ae,{className:"color-swatch",icon:Ea,color:t.color,transform:"shrink-2 down-1"})]}):Kv,tooltip:"Set color",onClick:()=>v(O=>!O)}),h&&c.jsxs(c.Fragment,{children:[c.jsx("input",{"aria-label":"Color input",ref:d,type:"color",list:"presetColors",value:(e=t.color)!==null&&e!==void 0?e:ze["content-bg"],style:{visibility:"hidden",width:0,height:0,padding:0,border:0},onChange:O=>{t.color=O.target.value,i(t,O.target.value)}}),c.jsxs("datalist",{id:"presetColors",children:[c.jsx("option",{children:ze["content-bg"]}),c.jsx("option",{children:ze.primary}),c.jsx("option",{children:ze.foreground}),c.jsx("option",{children:ze.green}),c.jsx("option",{children:ze.yellow}),c.jsx("option",{children:ze.orange}),c.jsx("option",{children:ze.red}),c.jsx("option",{children:ze.purple}),c.jsx("option",{children:ze.blue}),c.jsx("option",{children:ze["gray-400"]})]})]})]})]})}function Au(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 Mu(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Au(Object(t),!0).forEach(function(r){Yb(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Au(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Yb(n,e,t){return e=qb(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function qb(n){var e=Xb(n,"string");return typeof e=="symbol"?e:String(e)}function Xb(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Qb(){}var Zb=R.forwardRef(function(e,t){var{value:r,clone:i,childCount:a,item:l,onVisibilityChange:s,onClick:o,onGroupDelete:u,onGroupColorChange:d,onGroupNameChange:h,validateGroupName:v,handleProps:m}=e,{group:f,modelIndex:g,isVisible:p}=l.data,C=R.useRef(null),S=R.useCallback(w=>{if(w.buttons===1){var y;s([g].flat(),!p),(y=C.current)===null||y===void 0||y.focus()}},[s,g,p]),b=R.useCallback(w=>{o(r,w)},[o,r]);return c.jsxs("div",Mu(Mu({ref:t,className:re("tree-item",{isSelected:l.selected,"two-dragged":a===2,"multiple-dragged":a>2}),onClick:b},m),{},{children:[c.jsx(Y,{ref:C,kind:"ghost",className:"px-1",onClick:Qb,onMouseDown:S,onMouseEnter:S,icon:p?ys:lh,tooltip:"Toggle visibility"}),c.jsx("span",{className:re("column-name",f&&"column-group"),children:f&&!i?c.jsx(Kb,{group:f,onDelete:u,onColorChange:d,onNameChange:h,validateName:v}):r}),c.jsxs("div",{children:[i&&a>1&&c.jsx("span",{className:"item-count",children:a}),c.jsx(Jt,{children:"Drag to re-order"}),c.jsx(ae,{icon:Ua})]})]}))});const Jb=Zb;function ew(n){return n.parentId!==void 0}function xu(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 Lu(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?xu(Object(t),!0).forEach(function(r){tw(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):xu(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function tw(n,e,t){return e=rw(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function rw(n){var e=nw(n,"string");return typeof e=="symbol"?e:String(e)}function nw(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function iw(n,e){return Math.round(n/e)}function kh(n,e,t,r,i,a){var l=n.findIndex(u=>u.name===r);if(l===-1){var s=t.get(r);if(s==null)throw new Error("Column or header group not found: ".concat(r));var o=s.childIndexes.flat();return{id:r,selected:a.has(r),children:s.children.map(u=>kh(n,e,t,u,i,a)).sort((u,d)=>{var h=Array.isArray(u.data.visibleIndex)?u.data.visibleIndex[0]:u.data.visibleIndex,v=Array.isArray(d.data.visibleIndex)?d.data.visibleIndex[0]:d.data.visibleIndex;return h-v}),data:{modelIndex:o,visibleIndex:s.getVisibleRange(e),group:s,isVisible:o.some(u=>!i.has(u))}}}return{id:r,children:[],selected:a.has(r),data:{modelIndex:l,visibleIndex:K.getVisibleIndex(l,e),isVisible:!i.has(l)}}}function aw(n,e,t,r,i){for(var a=[],l=new Set(i),s=new Map(t.map(h=>[h.name,h])),o=new Set(r),u=0,d=function(){for(var v=K.getModelIndex(u,e),m=n[v].name,f=t.find(p=>{var{children:C}=p;return C.includes(m)});f!==void 0&&f.parent!==void 0;)f=s.get(f.parent);var g=kh(n,e,s,f?f.name:m,o,l);a.push(g),Array.isArray(g.data.visibleIndex)?u+=g.data.visibleIndex[1]-g.data.visibleIndex[0]+1:u+=1};u<n.length;)d();return a}function Ia(n,e,t,r,i){var a=n.findIndex(C=>{var{id:S}=C;return S===t}),l=n.findIndex(C=>{var{id:S}=C;return S===e}),s=n[l],o=Hc(n,l,a),u=o[a-1],d=o[a+1],h=iw(r,i),v=s.depth+h,m=lw({previousItem:u,nextItem:d}),f=sw({nextItem:d}),g=v;return v>=m?g=m:v<f&&(g=f),{depth:g,maxDepth:m,minDepth:f,parentId:p()};function p(){var C;if(g===0||!u)return null;if(g===u.depth)return u.parentId;if(g>u.depth)return u.id;var S=(C=o.slice(0,a).reverse().find(b=>b.depth===g))===null||C===void 0?void 0:C.parentId;return S??null}}function lw(n){var e,t,{previousItem:r,nextItem:i}=n;return Math.max((e=r?.depth)!==null&&e!==void 0?e:0,(t=i?.depth)!==null&&t!==void 0?t:0)}function sw(n){var{nextItem:e}=n;return e?e.depth:0}function jh(n){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null,t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return n.reduce((r,i,a)=>[...r,Lu(Lu({},i),{},{parentId:e,depth:t,index:a}),...jh(i.children,i.id,t+1)],[])}function qt(n){return n.every(ew)?[...n]:jh(n)}function _h(n,e){for(var t=0;t<n.length;t+=1){var r=n[t],{id:i,children:a}=r;if(i===e)return r;if(a.length){var l=_h(a,e);if(l)return l}}}function Hh(n){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return n.reduce((t,r)=>{var{children:i}=r;return i.length?Hh(i,t+1):t+1},e)}function ow(n,e){var t=_h(n,e);return t?Hh(t.children):0}function ku(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 ia(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ku(Object(t),!0).forEach(function(r){uw(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ku(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function uw(n,e,t){return e=dw(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function dw(n){var e=hw(n,"string");return typeof e=="symbol"?e:String(e)}function hw(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var cw=[Tr.Down,Tr.Right,Tr.Up,Tr.Left],vw=[Tr.Left,Tr.Right];function mw(n,e,t){return(r,i)=>{var{currentCoordinates:a,context:{active:l,over:s,collisionRect:o,droppableRects:u,droppableContainers:d}}=i;if(cw.includes(r.code)){if(!l||!o)return;r.preventDefault();var{current:{items:h,offset:v}}=n;if(vw.includes(r.code)&&s?.id!=null){var{depth:m,maxDepth:f,minDepth:g}=Ia(h,l.id,s.id,v,t);switch(r.code){case Tr.Left:if(m>g)return ia(ia({},a),{},{x:a.x-t});break;case Tr.Right:if(m<f)return ia(ia({},a),{},{x:a.x+t});break}return}var p=[];d.forEach(k=>{if(!(k!=null&&k.disabled||k.id===s?.id)){var B=u.get(k.id);if(B)switch(r.code){case Tr.Down:o.top<B.top&&p.push(k);break;case Tr.Up:o.top>B.top&&p.push(k);break}}});var C=Uc({active:l,collisionRect:o,pointerCoordinates:null,droppableRects:u,droppableContainers:p}),S=Vc(C,"id");if(S===s?.id&&C.length>1&&(S=C[1].id),S!=null&&s?.id!=null){var b=u.get(l.id),w=u.get(S),y=d.get(S);if(b&&w&&y){var T=h.findIndex(k=>{var{id:B}=k;return B===S}),E=h[T],P=h.findIndex(k=>{var{id:B}=k;return B===l.id}),O=h[P];if(E!=null&&O!=null){var{depth:D}=Ia(h,l.id,S,(E.depth-O.depth)*t,t),N=T>P,F=N?1:-1,A=e?(o.height-b.height)/2:0,j={x:w.left+D*t,y:w.top+F*A};return j}}}}}}function fw(n,e,t){return e=gw(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function gw(n){var e=pw(n,"string");return typeof e=="symbol"?e:String(e)}function pw(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Uh extends Bc{}fw(Uh,"activators",[{eventName:"onPointerDown",handler:n=>{var{nativeEvent:e}=n;return!(!e.isPrimary||e.button!==0||Sw(e.target))}}]);var Cw=["button","input","textarea","select","option"];function Sw(n){return!!(n?.tagName!=null&&Cw.includes(n.tagName.toLowerCase()))}function Vh(n){var{clone:e=!1,depth:t,disableInteraction:r=!1,ghost:i=!1,handleProps:a,value:l,dragRef:s=null,wrapperRef:o=null,renderItem:u,item:d,childCount:h}=n,v=R.useMemo(()=>Array(t).fill(0).map((f,g)=>c.jsx("span",{className:"depth-line"},"depth-line-".concat(g))),[t]),m=R.useMemo(()=>({ref:s,clone:e,value:l,item:d,childCount:h,handleProps:a}),[s,e,l,d,h,a]);return c.jsxs("li",{className:re("item-wrapper",{clone:e,ghost:i,disableInteraction:r}),ref:o,children:[!e&&v,u(m)]},l)}Vh.displayName="TreeItem";var bw=["id","depth"];function ju(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 aa(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ju(Object(t),!0).forEach(function(r){ww(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ju(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function ww(n,e,t){return e=yw(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function yw(n){var e=Tw(n,"string");return typeof e=="symbol"?e:String(e)}function Tw(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Ew(n,e){if(n==null)return{};var t=Ow(n,e),r,i;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(n);for(i=0;i<a.length;i++)r=a[i],!(e.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(n,r)&&(t[r]=n[r])}return t}function Ow(n,e){if(n==null)return{};var t={},r=Object.keys(n),i,a;for(a=0;a<r.length;a++)i=r[a],!(e.indexOf(i)>=0)&&(t[i]=n[i]);return t}var Pw=n=>{var{isSorting:e,wasDragging:t}=n;return!(e||t)};function _u(n){var{id:e,depth:t}=n,r=Ew(n,bw),{attributes:i,isDragging:a,isSorting:l,listeners:s,setDraggableNodeRef:o,setDroppableNodeRef:u,transform:d,transition:h}=Gc({id:e,animateLayoutChanges:Pw}),v=Bl.Translate.toString(d),m=R.useMemo(()=>({transform:v,transition:h}),[v,h]),f=R.useMemo(()=>aa(aa(aa({},i),s),{},{style:m}),[i,s,m]);return c.jsx(Vh,aa({dragRef:o,wrapperRef:u,depth:t,ghost:a,disableInteraction:l,handleProps:f},r))}function Hu(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 Aa(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Hu(Object(t),!0).forEach(function(r){Rw(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Hu(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Rw(n,e,t){return e=Dw(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Dw(n){var e=Fw(n,"string");return typeof e=="symbol"?e:String(e)}function Fw(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Nw={keyframes(n){var{transform:e}=n;return[{opacity:1,transform:Bl.Transform.toString(e.initial)},{opacity:0,transform:Bl.Transform.toString(Aa(Aa({},e.final),{},{x:e.final.x+5,y:e.final.y+5}))}]},easing:"ease-out",sideEffects(n){var{active:e}=n;e.node.animate([{opacity:0},{opacity:1}],{duration:so.duration,easing:so.easing})}},la=null;function Iw(n){var e;return la==null&&n.activeNodeRect&&n.activatorEvent instanceof PointerEvent&&(la=Math.floor((n.activatorEvent.clientY-n.activeNodeRect.top)/n.activeNodeRect.height)*n.activeNodeRect.height),n.activeNodeRect||(la=null),Aa(Aa({},n.transform),{},{y:n.transform.y+((e=la)!==null&&e!==void 0?e:0)})}function Aw(n){var{items:e,renderItem:t,indentationWidth:r=30,indicator:i=!1,activeId:a,overId:l,offsetLeft:s}=n,o=$c(),u=R.useRef(o);R.useEffect(function(){u.current=o},[o]),R.useEffect(function(){u.current.measureDroppableContainers(e.map(f=>{var{id:g}=f;return g}))},[e]);var d=a!=null&&l!=null?Ia(e,a,l,s,r):null,h=R.useRef({items:e,offset:s}),v=a!=null?e.find(m=>{var{id:f}=m;return f===a}):null;return R.useEffect(()=>{h.current={items:e,offset:s}},[e,s]),c.jsxs(c.Fragment,{children:[c.jsx("div",{className:re("tree-container",a!=null&&"marching-ants"),children:e.map(m=>{var{id:f,depth:g}=m;return c.jsx(_u,{id:f,value:f,depth:f===a&&d?d.depth:g,item:m,renderItem:t},f)})}),Wc.createPortal(c.jsx(zc,{dropAnimation:Nw,modifiers:[Iw],className:"visibility-ordering-list",children:a!=null&&v?c.jsx(_u,{id:a,depth:v.depth,clone:!0,childCount:ow(e,a)+1,value:a.toString(),renderItem:t,item:v}):null}),document.body)]})}function Uu(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 sa(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Uu(Object(t),!0).forEach(function(r){Mw(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Uu(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Mw(n,e,t){return e=xw(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function xw(n){var e=Lw(n,"string");return typeof e=="symbol"?e:String(e)}function Lw(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var kw={droppable:{strategy:Zc.Always}},jw={activationConstraint:{distance:5}};function _w(n){var{items:e,indicator:t=!1,indentationWidth:r=30,onDragStart:i,onDragEnd:a,renderItem:l}=n,[s,o]=R.useState(null),[u,d]=R.useState(null),[h,v]=R.useState(0),m=R.useMemo(()=>{var O=qt(e);return s!=null?O.filter(D=>{var{id:N,selected:F}=D;return N===s||!F}):O},[s,e]),f=s!=null&&u!=null?Ia(m,s,u,h,r):null,g=R.useRef({items:m,offset:h}),p=R.useMemo(()=>({coordinateGetter:mw(g,t,r)}),[r,t]),C=Kc(oo(Uh,jw),oo(Jc,p)),S=R.useMemo(()=>m.map(O=>{var{id:D}=O;return D}),[m]);R.useEffect(()=>{g.current={items:m,offset:h}},[m,h]);var b=R.useCallback(O=>{var{active:{id:D}}=O;o(D),d(D),i?.(D),document.body.style.setProperty("cursor","grabbing")},[i]),w=R.useCallback(O=>{var{delta:D}=O;v(D.x)},[]),y=R.useCallback(O=>{var D,{over:N}=O;d((D=N?.id)!==null&&D!==void 0?D:null)},[]),T=R.useCallback(()=>{d(null),o(null),v(0),document.body.style.setProperty("cursor","")},[]),E=R.useCallback(O=>{var{active:D,over:N}=O;if(T(),f&&N){var{depth:F,parentId:A}=f,j=JSON.parse(JSON.stringify(qt(e))),k=j.findIndex(W=>{var{id:z}=W;return z===N.id}),B=j.findIndex(W=>{var{id:z}=W;return z===D.id}),G=j[B];j[B]=sa(sa({},G),{},{depth:F,parentId:A}),a?.(G,sa(sa({},j[k]),{},{parentId:f.parentId}))}},[e,a,f,T]),P=R.useCallback(()=>{T()},[T]);return c.jsx(Yc,{sensors:C,collisionDetection:qc,measuring:kw,onDragStart:b,onDragMove:w,onDragOver:y,onDragEnd:E,onDragCancel:P,children:c.jsx(Xc,{items:S,strategy:Qc,children:c.jsx(Aw,{items:m,renderItem:l,indicator:t,indentationWidth:r,activeId:s,overId:u,offsetLeft:h})})})}function Vu(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 Bu(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Vu(Object(t),!0).forEach(function(r){Hw(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Vu(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Hw(n,e,t){return e=Uw(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Uw(n){var e=Vw(n,"string");return typeof e=="symbol"?e:String(e)}function Vw(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Bw(n,e,t,r,i,a,l,s){var o=i.map((w,y)=>Bu(Bu({},w),{},{index:y})),u=[],d=r,h=a[0].data.visibleIndex,v=o.findIndex(w=>{var{id:y}=w;return y===n.id}),m=o.findIndex(w=>{var{id:y}=w;return y===e.id}),f=Array.isArray(h)?h[1]+1:h+1;d=nn(a[0],e.parentId,d);for(var g=1;g<a.length;g+=1){var{data:{visibleIndex:p}}=a[g];u=K.moveItemOrRange(p,f,u,!0),f+=Array.isArray(p)?p[1]-p[0]+1:1,d=nn(a[g],e.parentId,d)}var C=[Array.isArray(h)?h[0]:h,f-1],S=Array.isArray(e.data.visibleIndex)?e.data.visibleIndex[0]:e.data.visibleIndex,b=K.getVisibleIndex(S,u);return v>m&&b>S&&(b-=1),e.children.length>0&&(Array.isArray(h)?h[0]:h)<b&&(b-=1),C[0]<b&&(b-=C[1]-C[0]),u=K.moveItemOrRange(C,Ae(b,l,s),u),{groups:d,movedColumns:t.concat(u)}}function nn(n,e,t){if(n.parentId===e)return[...t];var r=t.map(p=>new Zt(p)),i=new Map(r.map(p=>[p.name,p])),a=r.find(p=>p.name===n.parentId),l=r.find(p=>p.name===e),s=r.find(p=>p.name===n.id);if(a!=null&&(a.children=a.children.filter(p=>p!==n.id),a.children.length===0)){var o,u=new Set([a.name]),{parent:d=""}=a,h=i.get(d);for((o=h)===null||o===void 0||o.removeChildren([a.name]);h&&h.children.length===0;){var v,m;u.add(h.name);var f=(v=(m=h)===null||m===void 0?void 0:m.parent)!==null&&v!==void 0?v:"",g=i.get(f);g?.removeChildren([h.name]),h=g}r=r.filter(p=>{var{name:C}=p;return!u.has(C)})}return l?.addChildren([n.id]),s?.setParent(e??void 0),r}function Gu(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 oa(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Gu(Object(t),!0).forEach(function(r){Xt(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Gu(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Xt(n,e,t){return e=Gw(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Gw(n){var e=$w(n,"string");return typeof e=="symbol"?e:String(e)}function $w(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ww=150;class qe extends R.Component{constructor(e){super(e),Xt(this,"list",void 0),Xt(this,"debouncedSearchColumns",ct(this.searchColumns,Ww)),Xt(this,"handleGroupColorChange",wa((t,r)=>{var{columnHeaderGroups:i,onColumnHeaderGroupChanged:a}=this.props,l=[...i],s=new Zt(oa(oa({},t),{},{color:r}));l.splice(l.findIndex(o=>{var{name:u}=o;return u===t.name}),1,s),a(l)},250)),Xt(this,"renderItem",we(t=>{var{value:r,clone:i,item:a,ref:l,handleProps:s}=t,{onColumnVisibilityChanged:o}=this.props,{selectedColumns:u}=this.state,d=r;if(i){var h=this.getSelectedParentItems().map(v=>{var{id:m}=v;return m});d=h.join(", ")}return c.jsx(Jb,{ref:l,value:d,clone:i,item:a,childCount:u.size,onVisibilityChange:o,onClick:this.handleItemClick,onGroupDelete:this.handleGroupDelete,onGroupColorChange:this.handleGroupColorChange,onGroupNameChange:this.handleGroupNameChange,validateGroupName:this.validateGroupName,handleProps:s})})),Xt(this,"getMemoizedFirstMovableIndex",we((t,r,i)=>{for(var a=0;a<r.length;a+=1){var l=K.getModelIndex(a,i);if(t.isColumnMovable(l))return a}return null})),Xt(this,"getMemoizedLastMovableIndex",we((t,r,i)=>{for(var a=r.length-1;a>=0;a-=1){var l=K.getModelIndex(a,i);if(t.isColumnMovable(l))return a}return null})),Xt(this,"memoizedGetTreeItems",we((t,r,i,a,l)=>aw(t,r,i,a,[...l.values()]))),Xt(this,"makeVisibilityOrderingList",we((t,r)=>{var{movedColumns:i}=this.props,a=[],l=this.getFirstMovableIndex(),s=this.getLastMovableIndex(),o=r.findIndex(w=>{var{data:y}=w;return Array.isArray(y.visibleIndex)?y.visibleIndex[0]===l:y.visibleIndex===l}),u=r.findIndex(w=>{var{data:y}=w;return Array.isArray(y.visibleIndex)?y.visibleIndex[1]===s:y.visibleIndex===s}),d=r.slice(o,u+1);if(l==null||s===null){for(var h=0;h<t.length;h+=1){var v=K.getModelIndex(h,i),m=t[v];a.push(this.renderImmovableItem(m.name))}return a}for(var f=0;f<l;f+=1){var g=K.getModelIndex(f,i),p=t[g];a.push(this.renderImmovableItem(p.name))}l!==null&&l>0&&a.push(c.jsx("hr",{},"top-horizontal-divider")),a.push(c.jsx(_w,{items:d,renderItem:this.renderItem,onDragStart:this.handleDragStart,onDragEnd:this.handleDragEnd},"movable-items")),s!=null&&s<t.length-1&&a.push(c.jsx("hr",{},"bottom-horizontal-divider"));for(var C=s+1;C<t.length;C+=1){var S=K.getModelIndex(C,i),b=t[S];a.push(this.renderImmovableItem(b.name))}return a})),Xt(this,"renderImmovableItem",we(t=>c.jsx("div",{className:"visibility-ordering-list-item immovable",children:c.jsx("div",{className:"column-item",children:c.jsx("span",{className:"column-name",children:t})})},t))),this.handleSearchInputChange=this.handleSearchInputChange.bind(this),this.searchColumns=this.searchColumns.bind(this),this.handleItemClick=this.handleItemClick.bind(this),this.handleDragEnd=this.handleDragEnd.bind(this),this.handleGroupDelete=this.handleGroupDelete.bind(this),this.handleGroupNameChange=this.handleGroupNameChange.bind(this),this.handleGroupCreate=this.handleGroupCreate.bind(this),this.validateGroupName=this.validateGroupName.bind(this),this.addColumnToSelected=this.addColumnToSelected.bind(this),this.handleDragStart=this.handleDragStart.bind(this),this.state={selectedColumns:new Set,lastSelectedColumn:"",searchFilter:""},this.list=null}componentWillUnmount(){this.debouncedSearchColumns.cancel()}resetVisibilityOrdering(){var{model:e,onReset:t,onMovedColumnsChanged:r,onColumnHeaderGroupChanged:i}=this.props;this.setState({selectedColumns:new Set,lastSelectedColumn:"",searchFilter:""}),t(),i(e.initialColumnHeaderGroups),r(e.initialMovedColumns)}resetSelection(){this.setState({selectedColumns:new Set,lastSelectedColumn:""})}handleSearchInputChange(e){var t=e.target.value;if(this.setState({searchFilter:t}),!t){this.debouncedSearchColumns.cancel(),this.resetSelection();return}this.debouncedSearchColumns(t)}searchColumns(e){var t=qt(this.getTreeItems()),r=t.filter(o=>{var u,d,{id:h,data:v}=o;return!((u=(d=v.group)===null||d===void 0?void 0:d.isNew)!==null&&u!==void 0&&u)&&h.toLowerCase().includes(e.toLowerCase())}),i=r.map(o=>{var{id:u}=o;return u}),a=t.findIndex(o=>{var{id:u}=o;return u.toLowerCase().includes(e.toLowerCase())});if(this.addColumnToSelected(i,!1),i.length>0){var l,s=(l=this.list)===null||l===void 0?void 0:l.querySelectorAll(".item-wrapper")[a];s?.scrollIntoView({block:"center"})}}moveSelectedColumns(e){var{columnHeaderGroups:t}=this.props,{selectedColumns:r}=this.state,i=qt(this.getTreeItems()),a=this.getFirstMovableIndex(),l=this.getLastMovableIndex();L(a),L(l);var s=this.getSelectedParentItems(),o=e===qe.MOVE_OPTIONS.UP||e===qe.MOVE_OPTIONS.TOP;o||s.reverse();for(var u=[],d=t,h=function(){var{id:f,parentId:g,depth:p,data:{visibleIndex:C}}=s[v];switch(e){case qe.MOVE_OPTIONS.TOP:{u=K.moveItemOrRange(C,a,u,!0);var S=Array.isArray(C)?C[1]-C[0]+1:1;a+=S,d=nn(s[v],null,d);break}case qe.MOVE_OPTIONS.BOTTOM:{u=K.moveItemOrRange(C,l,u,!0);var b=Array.isArray(C)?C[1]-C[0]+1:1;l-=b,d=nn(s[v],null,d);break}case qe.MOVE_OPTIONS.UP:{var w=i.findIndex(G=>G.id===f),y=i.map((G,W)=>W<w&&!r.has(G.id)).lastIndexOf(!0),T=i[y];if(T!=null&&T.parentId!==g)if(Math.abs(T.depth-p)>1){var E=i.map((G,W)=>W<y&&G.depth===p).lastIndexOf(!0),P=i[E];d=nn(s[v],P.id,d)}else d=nn(s[v],T.parentId,d);else{var O=Ae(Array.isArray(C)?C[0]-1:C-1,a,l);u=K.moveItemOrRange(C,O,u,!1);var D=Array.isArray(C)?C[1]-C[0]+1:1;a+=D}break}case qe.MOVE_OPTIONS.DOWN:{var N=i.findIndex(G=>G.id===f),F=i.find((G,W)=>W>N&&!r.has(G.id));if(F?.parentId!==g){var A,j=i.find(G=>G.id===g);d=nn(s[v],(A=j?.parentId)!==null&&A!==void 0?A:null,d);break}else if(F?.children.length>0){d=nn(s[v],F.id,d);break}var k=Ae(Array.isArray(C)?C[0]+1:C+1,a,l);u=K.moveItemOrRange(C,k,u,!1);var B=Array.isArray(C)?C[1]-C[0]+1:1;l-=B;break}}},v=0;v<s.length;v+=1)h();return{newMoves:u,groups:d}}handleMoveColumns(e){var{onMovedColumnsChanged:t,movedColumns:r,onColumnHeaderGroupChanged:i}=this.props,{newMoves:a,groups:l}=this.moveSelectedColumns(e),s;e===qe.MOVE_OPTIONS.TOP&&(s=()=>{var o,u;(o=this.list)===null||o===void 0||(u=o.parentElement)===null||u===void 0||u.scroll({top:0})}),e===qe.MOVE_OPTIONS.BOTTOM&&(s=()=>{var o,u;(o=this.list)===null||o===void 0||(u=o.parentElement)===null||u===void 0||u.scroll({top:this.list.parentElement.scrollHeight})}),i(l),a.length>0&&t(r.concat(a),s)}getSortMoves(e,t,r){var i=[...e],a=t===qe.SORTING_OPTIONS.ASC;i.sort((v,m)=>{var f=v.id.toUpperCase(),g=m.id.toUpperCase();return sr.sort(f,g,a)});for(var l=[...r],s=Math.min(...i.flatMap(v=>{var{modelIndex:m}=v.data;return Array.isArray(m)?K.getVisibleIndexes(m,l):K.getVisibleIndex(m,l)})),o=0;o<i.length;o+=1){var u=i[o],{modelIndex:d}=u.data,h=Array.isArray(d)?K.getVisibleIndexes(d,l):K.getVisibleIndex(d,l);l=Array.isArray(h)?K.moveRange([Math.min(...h),Math.max(...h)],s,l,!0):K.moveItem(h,s,l),Array.isArray(h)&&(l=this.getSortMoves(u.children,t,l)),s+=Array.isArray(d)?d.length:1}return l}handleSortColumns(e){var{model:t,onMovedColumnsChanged:r}=this.props,i=this.getSortMoves(this.getTreeItems(),e,t.initialMovedColumns);r(i)}handleItemClick(e,t){if(t.stopPropagation(),!(t.target instanceof HTMLElement&&(t.target.tagName==="BUTTON"||t.target.tagName==="INPUT"))){t.currentTarget.focus();var{selectedColumns:r,lastSelectedColumn:i}=this.state,a=K.isModifierKeyDown(t),l=t.shiftKey,s=r.has(e),o=[e];if(s&&a){this.removeColumnFromSelected(e);return}var u=qt(this.getTreeItems());if(s&&!l&&i===e){var d=u.find(f=>{var{id:g}=f;return g===e});L(d);var h=qt(d.children).length;if(h+1===r.size){this.resetSelection();return}}if(l){var v=u.findIndex(f=>f.id===e),m=u.findIndex(f=>f.id===i);o.push(...u.slice(Math.min(m,v),Math.max(m,v)+1).map(f=>f.id))}this.addColumnToSelected(o,a||l),this.setState({lastSelectedColumn:e})}}addColumnToSelected(e,t){var{selectedColumns:r}=this.state,i=new Set(t?[...r.values()].concat(e):e),a=qt(this.getTreeItems());a.forEach(l=>{var{id:s,children:o}=l;i.has(s)&&o.forEach(u=>i.add(u.id))}),this.setState({selectedColumns:i})}removeColumnFromSelected(e){var{selectedColumns:t}=this.state,r=qt(this.getTreeItems()),i=r.find(s=>{var{id:o}=s;return o===e});L(i);var a=r.find(s=>{var{id:o}=s;return o===i.parentId});qt(i?.children).forEach(s=>t.delete(s.id));for(var l=function(){t.delete(a.id);var o=a.parentId;a=r.find(u=>{var{id:d}=u;return d===o})};a!=null;)l();t.delete(e),this.setState({selectedColumns:new Set(t)})}handleDragStart(e){var{selectedColumns:t}=this.state;t.has(e)||this.addColumnToSelected([e],!1)}handleDragEnd(e,t){var{movedColumns:r,onMovedColumnsChanged:i,columnHeaderGroups:a,onColumnHeaderGroupChanged:l}=this.props,s=this.getSelectedParentItems(),o=qt(this.getTreeItems()).map((m,f)=>oa(oa({},m),{},{index:f})),u=this.getFirstMovableIndex(),d=this.getLastMovableIndex();L(u),L(d);var{groups:h,movedColumns:v}=Bw(e,t,r,a,o,s,u,d);l(h),i(v)}handleGroupNameChange(e,t){var{columnHeaderGroups:r,onColumnHeaderGroupChanged:i}=this.props,a=[...r],l=e.name,s=a.findIndex(v=>{var{name:m}=v;return m===l}),o=a[s];L(o);var u=new Zt(o);u.name=t,a.splice(s,1,u);var d=a.findIndex(v=>{var{name:m}=v;return m===u.parent});if(d>=0){var h=new Zt(a[d]);h.removeChildren([l]),h.addChildren([t]),a.splice(d,1,h)}i(a)}handleGroupDelete(e){var{columnHeaderGroups:t,onColumnHeaderGroupChanged:r}=this.props,i=t.filter(s=>s.name!==e.name),a=i.findIndex(s=>s.name===e.parent);if(a>=0){var l=new Zt(i[a]);l.addChildren(e.children),l.removeChildren([e.name]),i.splice(a,1,l)}r(i)}handleGroupCreate(){var{movedColumns:e,onMovedColumnsChanged:t,onColumnHeaderGroupChanged:r}=this.props,{newMoves:i,groups:a}=this.moveSelectedColumns(qe.MOVE_OPTIONS.TOP),l=a.filter(h=>!h.isNew),s=this.getSelectedParentItems(),o=s.map(h=>h.data.modelIndex).flat().filter(h=>h>=0),u="".concat(Zt.NEW_GROUP_PREFIX,"-").concat(Date.now()),d=new Zt({name:u,children:s.map(h=>{var{id:v}=h;return v}),depth:0,childIndexes:[...new Set(o)]});t(e.concat(i),()=>{var h,v;(h=this.list)===null||h===void 0||(v=h.parentElement)===null||v===void 0||v.scroll({top:0})}),r(l.concat([d])),this.resetSelection()}validateGroupName(e){var{model:t,columnHeaderGroups:r}=this.props,{columns:i}=t;return is.isValidColumnName(e)?i.some(a=>{var{name:l}=a;return l===e})||r.some(a=>{var{name:l}=a;return l===e})?"Duplicate name":"":"Invalid name"}getFirstMovableIndex(){var{model:e,movedColumns:t}=this.props;return this.getMemoizedFirstMovableIndex(e,e.columns,t)}getLastMovableIndex(){var{model:e,movedColumns:t}=this.props;return this.getMemoizedLastMovableIndex(e,e.columns,t)}getTreeItems(){var{model:e,movedColumns:t,hiddenColumns:r,columnHeaderGroups:i}=this.props,{selectedColumns:a}=this.state;return this.memoizedGetTreeItems(e.columns,t,i,r,a)}getSelectedParentItems(){var{selectedColumns:e}=this.state,t=qt(this.getTreeItems());return t.filter(r=>{var{id:i,parentId:a}=r;return e.has(i)&&!e.has(a??"")})}render(){var{model:e,hiddenColumns:t,onColumnVisibilityChanged:r}=this.props,{selectedColumns:i,searchFilter:a}=this.state,l=i.size>0,s=this.getTreeItems(),o=new Map(qt(s).map(g=>[g.id,g.data.modelIndex])),u=new Set(t),d=[...new Set(l?[...i.values()].map(g=>o.get(g)).filter(g=>g!=null).flat():s.map(g=>g.data.modelIndex).flat())],h=d.some(g=>!u.has(g)),v=h?"Hide All":"Show All",m=h?"Hide Selected":"Show Selected",f=this.makeVisibilityOrderingList(e.columns,s);return c.jsxs("div",{role:"menu",className:"visibility-ordering-builder",tabIndex:0,children:[c.jsxs("div",{className:"top-menu",children:[c.jsx(Y,{kind:"ghost",className:"toggle-visibility-btn",onClick:()=>{r(d,!h)},icon:h?ys:lh,tooltip:"Toggle column visibility",children:l?m:v}),c.jsx(vs,{className:"visibility-search",value:a,matchCount:a?i.size:void 0,onChange:this.handleSearchInputChange})]}),c.jsxs("div",{className:"top-menu",children:[c.jsx(Y,{kind:"ghost",icon:Yv,tooltip:"Reset to default",onClick:()=>{this.resetVisibilityOrdering()},children:"Reset"}),c.jsx("span",{className:"vertical-divider"}),c.jsx(Y,{kind:"ghost",icon:bs,tooltip:"Sort ascending",onClick:()=>{this.handleSortColumns(qe.SORTING_OPTIONS.ASC)}}),c.jsx(Y,{kind:"ghost",icon:ws,tooltip:"Sort descending",onClick:()=>{this.handleSortColumns(qe.SORTING_OPTIONS.DSC)}}),c.jsx("span",{className:"vertical-divider"}),c.jsxs(Y,{kind:"ghost",tooltip:"Create group from selection",disabled:!l,onClick:this.handleGroupCreate,children:[c.jsxs("span",{className:"fa-layers",style:{marginRight:"0.75rem"},children:[c.jsx(ae,{mask:qv,icon:Ai,transform:"right-7 down-5 shrink-6"}),c.jsx(ae,{icon:Xv,transform:"right-8 down-6 shrink-8"})]}),"Group"]}),c.jsx("span",{className:"vertical-divider"}),c.jsx(Y,{kind:"ghost",icon:Qv,tooltip:"Move selection up",onClick:()=>{this.handleMoveColumns(qe.MOVE_OPTIONS.UP)},disabled:!l}),c.jsx(Y,{kind:"ghost",icon:Zv,tooltip:"Move selection down",onClick:()=>{this.handleMoveColumns(qe.MOVE_OPTIONS.DOWN)},disabled:!l}),c.jsx(Y,{kind:"ghost",icon:Jv,tooltip:"Move selection to top",onClick:()=>{this.handleMoveColumns(qe.MOVE_OPTIONS.TOP)},disabled:!l}),c.jsx(Y,{kind:"ghost",icon:em,tooltip:"Move selection to bottom",onClick:()=>{this.handleMoveColumns(qe.MOVE_OPTIONS.BOTTOM)},disabled:!l})]}),c.jsx("div",{role:"menu",className:re("visibility-ordering-list"),children:c.jsx("div",{className:"column-list",ref:g=>{this.list=g},children:f})})]})}}Xt(qe,"SORTING_OPTIONS",{DSC:"DSC",ASC:"ASC"});Xt(qe,"MOVE_OPTIONS",{TOP:"TOP",BOTTOM:"BOTTOM",UP:"UP",DOWN:"DOWN"});const zw=qe;function Kw(n,e,t){return e=Yw(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Yw(n){var e=qw(n,"string");return typeof e=="symbol"?e:String(e)}function qw(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Xw extends R.PureComponent{static createSearchFilter(e,t,r,i,a){var l=a?i.filter(u=>!r.includes(u.name)).map(u=>u.name):r;if(t&&l.length>0){var s=e.FilterValue.ofString(t),o=l.length===i.length?e.FilterCondition.search(s):e.FilterCondition.search(s,i.filter(u=>l.includes(u.name)).map(u=>u.filter()));return o}}constructor(e){super(e),Kw(this,"searchField",void 0),this.handleSearchValueChange=this.handleSearchValueChange.bind(this),this.toggleColumn=this.toggleColumn.bind(this),this.selectAll=this.selectAll.bind(this),this.clear=this.clear.bind(this),this.selectNumbers=this.selectNumbers.bind(this),this.searchField=Me.createRef(),this.state={isConfigureColumnsShown:!1}}focus(){var e;(e=this.searchField.current)===null||e===void 0||e.focus()}handleSearchValueChange(e){var{onChange:t,selectedColumns:r,invertSelection:i}=this.props;t(e.target.value,r,i)}sendColumnChange(e,t){var{onChange:r,value:i}=this.props;r(i,e,t)}setInvertSelection(e){var{onChange:t,value:r}=this.props;t(r,[],e)}toggleColumn(e){var{selectedColumns:t,invertSelection:r}=this.props;if(t.includes(e))this.sendColumnChange(t.filter(a=>a!==e),r);else{var i=t.slice();i.push(e),this.sendColumnChange(i,r)}}selectAll(){this.setInvertSelection(!0)}clear(){this.setInvertSelection(!1)}selectNumbers(){var{columns:e}=this.props;this.sendColumnChange(e.filter(t=>x.isNumberType(t.type)).map(t=>t.name),!1)}render(){var{value:e,selectedColumns:t,invertSelection:r,columns:i}=this.props,{isConfigureColumnsShown:a}=this.state,l=t.length===0&&r===!0||t.length===i.length&&r===!1,s=t.length===0&&r===!1||t.length===i.length&&r===!0,o;return l?o=c.jsxs(c.Fragment,{children:[c.jsx(ae,{icon:Ea,mask:yl,transform:"shrink-2 down-5 right-7"}),c.jsx(ae,{icon:tm,className:"text-primary",transform:"shrink-4 down-5 right-7"})]}):s?o=c.jsxs(c.Fragment,{children:[c.jsx(ae,{icon:Ai,mask:yl,transform:"shrink-1 down-5 right-7"}),c.jsx(ae,{icon:mo,className:"text-danger",transform:"shrink-4 down-5 right-7"})]}):o=c.jsxs(c.Fragment,{children:[c.jsx(ae,{icon:Ea,mask:yl,transform:"shrink-2 down-5 right-7"}),c.jsx(ae,{icon:rm,className:"text-primary",transform:"shrink-4 down-5 right-7"})]}),c.jsxs("div",{className:"cross-column-container",children:[c.jsx(vs,{className:"cross-column-search",placeholder:"Search Data...","data-testid":"cross-column-search",value:e,onChange:this.handleSearchValueChange,ref:this.searchField}),c.jsxs("button",{type:"button",className:"btn btn-link btn-link-icon px-2",onClick:()=>{a?this.setState({isConfigureColumnsShown:!1}):this.setState({isConfigureColumnsShown:!0})},children:[c.jsx("div",{className:"fa-layers",children:o}),c.jsx(Jt,{children:"Configure Columns"}),c.jsx(eh,{isShown:a,className:"cross-column-popper",onExited:()=>{this.setState({isConfigureColumnsShown:!1})},closeOnBlur:!0,interactive:!0,children:c.jsxs("div",{className:"cross-column-popup",children:["Searched Columns",c.jsx("div",{className:"cross-column-scroll",children:i.map(u=>c.jsxs(Me.Fragment,{children:[c.jsx(un,{className:"cross-column-checkbox",checked:r?!t.includes(u.name):t.includes(u.name),onChange:()=>this.toggleColumn(u.name),children:u.name}),u.type.substring(u.type.lastIndexOf(".")+1)]},u.name))}),c.jsxs("div",{className:"cross-column-button-bar",children:[c.jsx("button",{type:"button",className:"btn btn-link",onClick:this.selectAll,children:"Select All"}),c.jsx("button",{type:"button",className:"btn btn-link",onClick:this.clear,children:"Clear"}),c.jsx("button",{type:"button",className:"btn btn-link",onClick:this.selectNumbers,children:"Numbers Only"})]}),s&&c.jsxs("p",{className:"text-danger",children:[c.jsx(ae,{icon:mo})," Select at least one column to search."]})]})})]})]})}}const ua=Xw;function sn(n,e,t){return e=Qw(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Qw(n){var e=Zw(n,"string");return typeof e=="symbol"?e:String(e)}function Zw(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Yr=ge.module("PartitionSelectorSearch"),Jw=150;class ti extends R.Component{static handleError(e){e instanceof Zd||Yr.error(e)}constructor(e){super(e),sn(this,"itemList",void 0),sn(this,"searchInput",void 0),sn(this,"timer",void 0),sn(this,"tableUtils",void 0),sn(this,"debounceUpdateFilter",ct(()=>{this.updateFilter()},Jw)),this.handleFilterChange=this.handleFilterChange.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleListKeydown=this.handleListKeydown.bind(this),this.handleSelect=this.handleSelect.bind(this),this.handleTableUpdate=this.handleTableUpdate.bind(this),this.handleTextChange=this.handleTextChange.bind(this),this.handleViewportChange=this.handleViewportChange.bind(this),this.itemList=null,this.searchInput=null,this.timer=null;var{dh:t}=e;this.tableUtils=new x(t),this.state={offset:0,itemCount:0,items:[],text:"",isLoading:!0}}componentDidMount(){this.startListening()}componentDidUpdate(e,t){var{isLoading:r,itemCount:i}=this.state,{onListResized:a}=this.props;(i!==t.itemCount||r!==t.isLoading)&&a()}componentWillUnmount(){this.debounceUpdateFilter.cancel(),this.stopListening()}handleKeyDown(e){if(this.itemList==null)return!1;var{items:t,itemCount:r}=this.state;switch(e.key){case"Enter":{var i=null;if(t.length>0)i=t[0].value;else{var{text:a}=this.state;i=a.trim()}if(i.length>0){var{onSelect:l}=this.props;l(i)}return e.stopPropagation(),e.preventDefault(),!0}case"ArrowDown":return r>0&&this.itemList.focusItem(1),e.stopPropagation(),e.preventDefault(),!0;default:return!1}}handleListKeydown(e){switch(e.key){case"Escape":break;default:this.focus();break}}handleFilterChange(){Yr.debug2("handleFilterChange");var{table:e}=this.props,t=e.size;this.setState({itemCount:t,isLoading:!0})}handleSelect(e){Yr.debug2("handleSelect",e);var{onSelect:t}=this.props,{offset:r,items:i}=this.state,a=e-r;if(a<0||i.length<=a){Yr.error("No data for item",e);return}var{value:l}=i[a];t(l)}handleTableUpdate(e){for(var t=e.detail,{offset:r}=t,i=[],{getFormattedString:a,table:l}=this.props,s=l.columns[0],o=0;o<t.rows.length;o+=1){var u=t.rows[o],d=u.get(s),h=a(d,s.type,s.name);i.push({displayValue:h,value:d})}var v=l.size;Yr.debug2("handleTableUpdate",v,r,i.length),this.setState({itemCount:v,items:i,offset:r,isLoading:!1})}handleTextChange(e){Yr.debug2("handleTextChange");var{table:t}=this.props,{value:r}=e.target;r!==""&&x.isIntegerType(t.columns[0].type)?this.setState({text:parseInt(r,10).toString()}):this.setState({text:r}),this.debounceUpdateFilter()}handleViewportChange(e,t){Yr.debug2("handleViewportChange",e,t);var r=Math.max(1,t-e),i=Math.max(0,e-r),a=t+r,{table:l}=this.props;l.setViewport(i,a)}focus(){this.searchInput&&this.searchInput.focus()}startListening(){var{dh:e,initialPageSize:t,table:r}=this.props;r.addEventListener(e.Table.EVENT_UPDATED,this.handleTableUpdate),r.addEventListener(e.Table.EVENT_FILTERCHANGED,this.handleFilterChange),r.setViewport(0,t)}stopListening(){var{dh:e,table:t}=this.props;t.removeEventListener(e.Table.EVENT_UPDATED,this.handleTableUpdate),t.removeEventListener(e.Table.EVENT_FILTERCHANGED,this.handleFilterChange)}updateFilter(){var{initialPageSize:e,table:t}=this.props,{text:r}=this.state,i=r.trim(),a=[];if(i.length>0){var l=t.columns[0],s=this.tableUtils.makeQuickFilterFromComponent(l,x.isStringType(l.type)?"~".concat(i):i);if(!s)throw new Error("Unable to create column filter for partition selector");a.push(s)}Yr.debug2("updateFilter",a),t.applyFilter(a),t.setViewport(0,e)}render(){var{table:e}=this.props,{isLoading:t,itemCount:r,items:i,offset:a,text:l}=this.state,s=Math.min(r,ti.MAX_VISIBLE_ITEMS)*Gl.DEFAULT_ROW_HEIGHT+11,o=x.isNumberType(e.columns[0].type)?"number":"text";return c.jsxs("div",{className:"iris-grid-partition-selector-search",children:[c.jsx("div",{className:"search-container",children:c.jsx("input",{type:o,ref:u=>{this.searchInput=u},value:l,placeholder:"Available Partitions",onChange:this.handleTextChange,onKeyDown:this.handleKeyDown,className:"form-control input-partition"})}),!t&&r>0&&c.jsx("div",{className:"iris-grid-partition-selector-search-list",onKeyDown:this.handleListKeydown,role:"presentation",style:{height:s},children:c.jsx(Gl,{ref:u=>{this.itemList=u},itemCount:r,items:i,offset:a,onSelect:this.handleSelect,onViewportChange:this.handleViewportChange})}),!t&&r===0&&c.jsx("div",{className:"iris-grid-partition-selector-search-empty",children:"No results"}),t&&c.jsxs("div",{className:"iris-grid-partition-selector-loading",children:[c.jsx(Dn,{className:"loading-spinner-vertical-align"})," Loading..."]})]})}}sn(ti,"MAX_VISIBLE_ITEMS",12);sn(ti,"defaultProps",{initialPageSize:100,onSelect:()=>{},onListResized:()=>{}});sn(ti,"propTypes",{getFormattedString:Z.func.isRequired,table:Z.shape({addEventListener:Z.func.isRequired,removeEventListener:Z.func.isRequired,columns:Z.arrayOf(Z.shape({name:Z.string.isRequired,type:Z.string.isRequired,filter:Z.func.isRequired})),size:Z.number.isRequired,applyFilter:Z.func.isRequired,setViewport:Z.func.isRequired}).isRequired,initialPageSize:Z.number,onSelect:Z.func,onListResized:Z.func});const ey=ti;function Sa(n,e,t){return e=ty(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ty(n){var e=ry(n,"string");return typeof e=="symbol"?e:String(e)}function ry(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Un=ge.module("IrisGridPartitionSelector"),ny=250;class Bh extends R.Component{constructor(e){super(e),Sa(this,"searchMenu",void 0),Sa(this,"selectorSearch",void 0),Sa(this,"debounceUpdate",ct(()=>{this.sendUpdate()},ny)),this.handleAppendClick=this.handleAppendClick.bind(this),this.handleCloseClick=this.handleCloseClick.bind(this),this.handleIgnoreClick=this.handleIgnoreClick.bind(this),this.handlePartitionChange=this.handlePartitionChange.bind(this),this.handlePartitionSelect=this.handlePartitionSelect.bind(this),this.handlePartitionListResized=this.handlePartitionListResized.bind(this),this.handleSearchOpened=this.handleSearchOpened.bind(this),this.handleSearchClosed=this.handleSearchClosed.bind(this),this.searchMenu=null,this.selectorSearch=null;var{partition:t}=e;this.state={partition:t}}componentWillUnmount(){this.debounceUpdate.cancel()}handleAppendClick(){Un.debug2("handleAppendClick");var{onAppend:e}=this.props,{partition:t}=this.state;e?.(t)}handleCloseClick(){Un.debug2("handleCloseClick"),this.sendDone()}handleIgnoreClick(){Un.debug2("handleIgnoreClick"),this.sendFetchAll()}handlePartitionChange(e){Un.debug2("handlePartitionChange");var{column:t}=this.props,{value:r}=e.target;this.setState({partition:x.isCharType(t.type)&&r.length>0?r.charCodeAt(0).toString():r}),this.debounceUpdate()}handlePartitionSelect(e){this.searchMenu&&this.searchMenu.closeMenu(),this.setState({partition:e},()=>{this.sendUpdate()})}handlePartitionListResized(){this.searchMenu&&this.searchMenu.scheduleUpdate()}handleSearchClosed(){var{table:e}=this.props;e.applyFilter([])}handleSearchOpened(){this.selectorSearch&&this.selectorSearch.focus()}sendDone(){this.debounceUpdate.flush();var{onDone:e}=this.props;e()}sendUpdate(){Un.debug2("sendUpdate");var{onChange:e}=this.props,{partition:t}=this.state;e(t)}sendFetchAll(){Un.debug2("sendFetchAll"),this.debounceUpdate.cancel();var{onFetchAll:e}=this.props;e()}render(){var{column:e,dh:t,getFormattedString:r,onAppend:i,onDone:a,table:l}=this.props,{partition:s}=this.state,o=c.jsx(ey,{dh:t,getFormattedString:r,table:l,onSelect:this.handlePartitionSelect,onListResized:this.handlePartitionListResized,ref:u=>{this.selectorSearch=u}},"search");return c.jsxs("div",{className:"iris-grid-partition-selector",children:[c.jsx("div",{className:"status-message",children:c.jsxs("span",{children:['Filtering "',e.name,'" partition to']})}),c.jsxs("div",{className:"input-group",children:[c.jsx("input",{type:"text",value:x.isCharType(e.type)&&s.toString().length>0?String.fromCharCode(parseInt(s,10)):fe.convertValueToText(s,e.type),onChange:this.handlePartitionChange,className:"form-control input-partition"}),c.jsx("div",{className:"input-group-append",children:c.jsxs("button",{type:"button",className:"btn btn-outline-primary",children:[c.jsx(ae,{icon:Cs}),c.jsx(Jt,{children:"Partitions"}),c.jsx(ms,{ref:u=>{this.searchMenu=u},actions:[{menuElement:o}],onMenuOpened:this.handleSearchOpened,onMenuClosed:this.handleSearchClosed})]})})]}),c.jsx("div",{className:"iris-grid-partition-selector-spacer"}),c.jsx("button",{type:"button",className:"btn btn-outline-primary btn-ignore",onClick:this.handleIgnoreClick,children:"Ignore & Fetch All"}),i!==void 0&&c.jsx("button",{type:"button",className:"btn btn-outline-primary btn-append",onClick:this.handleAppendClick,children:"Append Command"}),c.jsx("button",{type:"button",className:"btn btn-link btn-link-icon btn-close",onClick:a,children:c.jsx(ae,{icon:Ts})})]})}}Sa(Bh,"defaultProps",{onChange:()=>{},onFetchAll:()=>{},onDone:()=>{},partition:""});const iy=Bh;function ay(n,e,t){return e=ly(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ly(n){var e=sy(n,"string");return typeof e=="symbol"?e:String(e)}function sy(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var oy=ge.module("SelectDistinctBuilder");class Gh extends R.Component{constructor(e){super(e),this.handleAddColumnClick=this.handleAddColumnClick.bind(this),this.handleDeleteColumn=this.handleDeleteColumn.bind(this),this.handleDropdownChanged=this.handleDropdownChanged.bind(this);var{model:t,selectDistinctColumns:r}=this.props;this.state={inputs:r.length>0?[...r]:[""],columns:t.originalColumns}}componentDidUpdate(e,t){var{inputs:r}=this.state,{onChange:i}=this.props;if(t.inputs!==r){var a=r.filter(l=>l!=="");ht(t.inputs.filter(l=>l!==""),a)||i(a)}}handleAddColumnClick(){this.setState(e=>{var{inputs:t}=e;return{inputs:[...t,""]}})}handleDeleteColumn(e){this.setState(t=>{var{inputs:r}=t;return{inputs:r.length===1&&e===0?[""]:r.filter((i,a)=>e!==a)}})}handleDropdownChanged(e,t){oy.debug("handleDropdownChanged",e,t);var{value:r}=t.target;this.setState(i=>{var{inputs:a}=i,l=[...a];return l[e]=r,{inputs:l}})}renderInputs(){var{columns:e,inputs:t}=this.state;return t.map((r,i)=>{var a=e.filter(l=>{var{name:s}=l;return s===r||!t.includes(s)}).map(l=>{var{name:s}=l;return c.jsx("option",{value:s,children:s},s)});return c.jsxs("div",{className:"form-inline px-3 pb-3",children:[c.jsxs("select",{className:"form-control custom-select col",value:r,onChange:l=>this.handleDropdownChanged(i,l),children:[c.jsx("option",{value:"",children:"Select a column"}),a]}),(t.length>1||r!=="")&&c.jsx(Y,{kind:"ghost",className:"ml-1 px-2",onClick:()=>{this.handleDeleteColumn(i)},icon:c.jsx(ae,{icon:fr,transform:"grow-3"}),tooltip:"Delete column"})]},i)})}render(){var{columns:e,inputs:t}=this.state,r=t.length>=e.length;return c.jsxs("div",{role:"presentation",className:"select-distinct-builder-container h-100",children:[c.jsx("div",{className:"select-distinct-title",children:"Display Unique Values From"}),this.renderInputs(),c.jsx("hr",{}),c.jsx("div",{className:"pt-1 px-3",children:c.jsx(Y,{kind:"ghost",className:"btn-add-column",onClick:this.handleAddColumnClick,disabled:r,icon:Fn,children:"Add Additional Column"})}),c.jsx("div",{className:"select-distinct-builder-footer",children:c.jsx("div",{className:"select-distinct-builder-hint",children:"Display only unique values from the selected table columns. Note that this will reset any filters and display only the selected columns."})})]})}}ay(Gh,"defaultProps",{selectDistinctColumns:[],onChange:()=>{}});const uy=Gh;function ks(n){var{items:e,onChange:t=()=>{}}=n;return c.jsx(th,{items:Array.from(e.entries()).map(r=>{var[i,a]=r;return{title:ks.getAdvancedSettingsTitleForKey(i),isOn:a,onChange:l=>t(i,l)}})})}ks.getAdvancedSettingsTitleForKey=n=>{switch(n){case Yn.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS:return"Clear current table filters before applying new filters from a control";case Yn.LINK_CHANGE_CLEARS_ALL_FILTERS:return"Clear current table filters before applying new filters from an incoming link filter"}};function $u(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 Vn(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?$u(Object(t),!0).forEach(function(r){dy(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):$u(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function dy(n,e,t){return e=hy(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function hy(n){var e=cy(n,"string");return typeof e=="symbol"?e:String(e)}function cy(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Wu=ge.module("ConditionalFormattingMenu"),Al=()=>{};function vy(n){var{column:{type:e}}=n;if(x.isNumberType(e))return n.condition===oe.IS_NULL||n.condition===oe.IS_NOT_NULL?"":"".concat(n.value);if(x.isCharType(e))return n.condition===pe.IS_NULL||n.condition===pe.IS_NOT_NULL?"":"".concat(n.value);if(x.isStringType(e))return n.condition===ye.IS_NULL||n.condition===ye.IS_NOT_NULL?"":'"'.concat(n.value,'"');if(x.isDateType(e))return n.condition===pe.IS_NULL||n.condition===pe.IS_NOT_NULL?"":"".concat(n.value);if(x.isBooleanType(e))return"";throw new Error("Invalid column type ".concat(e," in getRuleValue"))}function my(n){return x.isNumberType(n.column.type)&&n.condition===oe.IS_BETWEEN?"".concat(n.start," < ").concat(n.column.name," < ").concat(n.end):"".concat(n.column.name," ").concat(up(n.column.type,n.condition),`
13
- `).concat(vy(n))}function fy(n){var{rules:e=[],onChange:t=Al,onCreate:r=Al,onSelect:i=Al}=n,a=R.useCallback((u,d,h)=>{u.stopPropagation(),Wu.debug("Rule clicked",d,h),i(h)},[i]),l=R.useCallback((u,d,h)=>{u.stopPropagation(),Wu.debug("Delete button clicked",d,h);var v=[...e];v.splice(h,1),t(v)},[t,e]),s=R.useCallback(u=>{u.stopPropagation()},[]),o=R.useCallback(u=>{if(cr.stopDragging(),u.destination!=null){var d=u.source.index,h=u.destination.index,v=[...e],m=e[d];v.splice(d,1),v.splice(h,0,m),t(v)}},[t,e]);return c.jsxs("div",{className:"conditional-formatting-rules",children:[c.jsx(La,{onDragStart:cr.startDragging,onDragEnd:o,children:c.jsx(ns,{droppableId:"droppable-custom-columns",children:(u,d)=>c.jsxs("div",Vn(Vn({ref:u.innerRef},u.droppableProps),{},{className:re("droppable-container",{dragging:d.draggingFromThisWith}),children:[e.length===0&&c.jsx("div",{className:"text-muted pl-2",children:"No formats defined"}),e.map((h,v)=>c.jsx(Bd,{draggableId:"".concat(v,"-").concat(h.type),index:v,disableInteractiveElementBlocking:!0,children:(m,f)=>c.jsx("div",Vn(Vn({role:"menuitem",tabIndex:0,onClick:g=>a(g,h,v),className:re("draggable-container",{dragging:f.isDragging}),ref:m.innerRef},m.draggableProps),{},{children:c.jsx("div",{className:"conditional-formatting-list-item",children:c.jsxs("div",{className:"formatting-item",children:[c.jsx("div",{className:"rule-icon",children:c.jsx("span",{className:"rule-icon-bg",style:{backgroundColor:Ra(h.config.style),color:Da(h.config.style)},children:h.type===jt.ROWS?"row":"col"})}),c.jsx("div",{className:"rule-title",children:my(h.config)}),c.jsx(Y,{kind:"ghost",className:"ml-1 px-2",onClick:g=>l(g,h,v),icon:fr,tooltip:"Delete rule"}),c.jsxs("button",Vn(Vn({type:"button",className:"btn btn-link btn-link-icon px-2 btn-drag-handle",onClick:s},m.dragHandleProps),{},{children:[c.jsx(Jt,{children:"Drag to re-order"}),c.jsx(ae,{icon:Ua})]}))]})})}))},"".concat(v,"-").concat(h.type))),u.placeholder]}))})}),c.jsx("hr",{}),c.jsx(Y,{kind:"ghost",onClick:r,icon:Fn,children:"Add New Rule"})]})}var mn=ge.module("ConditionEditor"),gy=()=>{},py=[oe.IS_EQUAL,oe.IS_NOT_EQUAL,oe.IS_BETWEEN,oe.GREATER_THAN,oe.GREATER_THAN_OR_EQUAL,oe.LESS_THAN,oe.LESS_THAN_OR_EQUAL,oe.IS_NULL,oe.IS_NOT_NULL].map(n=>c.jsx("option",{value:n,children:Yg(n)},n)),Cy=[ye.IS_EXACTLY,ye.IS_NOT_EXACTLY,ye.CONTAINS,ye.DOES_NOT_CONTAIN,ye.STARTS_WITH,ye.ENDS_WITH,ye.IS_NULL,ye.IS_NOT_NULL].map(n=>c.jsx("option",{value:n,children:qg(n)},n)),Sy=[pe.IS_EXACTLY,pe.IS_NOT_EXACTLY,pe.IS_BEFORE,pe.IS_BEFORE_OR_EQUAL,pe.IS_AFTER,pe.IS_AFTER_OR_EQUAL,pe.IS_NULL,pe.IS_NOT_NULL].map(n=>c.jsx("option",{value:n,children:Xg(n)},n)),by=[rt.IS_TRUE,rt.IS_FALSE,rt.IS_NULL,rt.IS_NOT_NULL].map(n=>c.jsx("option",{value:n,children:Qg(n)},n)),wy=[Ke.IS_EQUAL,Ke.IS_NOT_EQUAL,Ke.IS_NULL,Ke.IS_NOT_NULL].map(n=>c.jsx("option",{value:n,children:Zg(n)},n));function yy(n,e,t,r){return n===oe.IS_NULL||n===oe.IS_NOT_NULL||n===oe.IS_BETWEEN&&t!=null&&t!==""&&!Number.isNaN(Number.parseFloat(t))&&r!=null&&r!==""&&!Number.isNaN(Number.parseFloat(r))||n!==oe.IS_BETWEEN&&e!==void 0&&e!==""&&!Number.isNaN(Number.parseFloat(e))}function Ty(n,e,t,r,i,a,l){switch(n){case oe.IS_EQUAL:case oe.IS_NOT_EQUAL:case oe.GREATER_THAN:case oe.GREATER_THAN_OR_EQUAL:case oe.LESS_THAN:case oe.LESS_THAN_OR_EQUAL:return c.jsx("input",{type:"number",className:"form-control",placeholder:"Enter value",value:i??"",onChange:e});case oe.IS_BETWEEN:return c.jsxs("div",{className:"d-flex flex-row",children:[c.jsx("input",{type:"number",className:"form-control d-flex mr-2",placeholder:"Start value",value:a??"",onChange:t}),c.jsx("input",{type:"number",className:"form-control d-flex",placeholder:"End value",value:l??"",onChange:r})]});case oe.IS_NULL:case oe.IS_NOT_NULL:return null}}function Ey(n,e,t){switch(n){case ye.IS_NULL:case ye.IS_NOT_NULL:return null;default:return c.jsx("input",{type:"text",className:"form-control",placeholder:"Enter value",value:t??"",onChange:e})}}function Oy(n,e,t){switch(n){case pe.IS_NULL:case pe.IS_NOT_NULL:return null;default:return c.jsx("input",{type:"text",className:"form-control",placeholder:"Enter value",value:t??"",onChange:e})}}function Py(){return null}function Ry(n,e,t){switch(n){case Ke.IS_NULL:case Ke.IS_NOT_NULL:return null;default:return c.jsx("input",{type:"text",className:"form-control",maxLength:1,placeholder:"Enter value",value:t??"",onChange:e})}}function $h(n){var{column:e,config:t,dh:r,onChange:i=gy}=n,a=e.type,[l,s]=R.useState(a),[o,u]=R.useState(t.condition),[d,h]=R.useState(t.value),[v,m]=R.useState(t.start),[f,g]=R.useState(t.end);a!==l&&(u(Th(a)),h(Eh(a)),m(void 0),g(void 0),s(a));var p=R.useMemo(()=>{if(a===void 0)return[];if(x.isNumberType(a))return py;if(x.isCharType(a))return wy;if(x.isStringType(a))return Cy;if(x.isDateType(a))return Sy;if(x.isBooleanType(a))return by},[a]),C=R.useCallback(T=>{var{value:E}=T.target;mn.debug("handleConditionChange",E),u(E)},[]),S=R.useCallback(T=>{var{value:E}=T.target;mn.debug("handleValueChange",E),h(E)},[]),b=R.useCallback(T=>{var{value:E}=T.target;mn.debug("handleStartValueChange",E),m(E)},[]),w=R.useCallback(T=>{var{value:E}=T.target;mn.debug("handleEndValueChange",E),g(E)},[]);R.useEffect(function(){var E=!0;o===void 0?(mn.debug("Unable to create formatting rule. Condition is not selected."),E=!1):x.isNumberType(e.type)&&!yy(o,d,v,f)?(mn.debug("Unable to create formatting rule. Invalid value",d),E=!1):x.isDateType(e.type)&&!hp(r,o,d)&&(mn.debug("Unable to create formatting rule. Invalid date condition",d),E=!1),i({condition:o,value:d,start:v,end:f},E)},[i,e.type,r,o,d,v,f]);var y=R.useMemo(()=>{if(a===void 0)return null;if(x.isNumberType(a))return Ty(o,S,b,w,d,v,f);if(x.isCharType(a))return Ry(o,S,d);if(x.isStringType(a))return Ey(o,S,d);if(x.isDateType(a))return Oy(o,S,d);if(x.isBooleanType(a))return Py()},[a,o,d,v,f,S,b,w]);return c.jsxs("div",{className:"condition-editor mb-2",children:[c.jsx("select",{value:o,"data-testid":"condition-select",className:"custom-select mb-2",onChange:C,children:p}),y]})}var Dy=ge.module("StyleEditor"),Fy="#fcfcfa",Ny="#f0f0ee",Iy="#1a171a",Ay=200,My=()=>{};function Wh(n){var e,t,{config:r,onChange:i=My}=n,[a,l]=R.useState(r.type),[s,o]=R.useState((e=(t=r.customConfig)===null||t===void 0?void 0:t.background)!==null&&e!==void 0?e:Fy),[u,d]=R.useState(!1),[h,v]=R.useState(Ay),m=R.useRef(null),f=R.useCallback(y=>{var{value:T}=y.target;Dy.debug("handleBackgroundChange",T),o(T)},[]),g=R.useCallback(()=>{u&&d(!1)},[u]),p=R.useCallback(()=>{u||S(),d(!u)},[u]),C=R.useMemo(()=>[Te.NO_FORMATTING,Te.POSITIVE,Te.NEGATIVE,Te.WARN,Te.NEUTRAL,Te.ACCENT_1,Te.ACCENT_2,Te.CUSTOM],[]);function S(){m.current&&v(m.current.getBoundingClientRect().width)}R.useEffect(function(){i({type:a,customConfig:{color:dh.isDark(s)?Ny:Iy,background:s}})},[i,a,s]);var b=R.useCallback(()=>{for(var y=[],T=function(){var O=C[E],D="option-".concat(E,"-").concat(O);y.push(c.jsxs(Y,{kind:"inline",className:"style-option-btn",onClick:()=>{l(O),d(!1)},style:{color:Da({type:O}),background:Ra({type:O})},children:[O===a&&c.jsx(ae,{icon:Ta,className:"mr-2"}),O!==a&&c.jsx("span",{className:"mr-4"}),Go(O)]},D))},E=0;E<C.length;E+=1)T();return y},[C,a]),w=R.useCallback(()=>c.jsx("div",{className:"style-menu-container",role:"presentation",style:{width:h},children:c.jsx("div",{className:"style-options",children:b()})}),[h,b]);return c.jsxs("div",{className:"style-editor",children:[c.jsxs("div",{className:"mb-2",ref:m,children:[c.jsx("label",{className:"mb-0",children:"Style"}),c.jsxs(Y,{kind:"inline",className:"cs-dropdown",style:{color:Da({type:a}),background:Ra({type:a})},onClick:p,children:[Go(a),c.jsx("span",{children:c.jsx(ae,{icon:nm,className:"cs-caret"})}),c.jsx(ms,{isShown:u,actions:{menuElement:w()},popperOptions:{placement:"bottom-start"},popperClassName:"style-dropdown-menu",onMenuClosed:g,menuStyle:{maxWidth:"100rem"}})]})]}),a===Te.CUSTOM&&c.jsxs("div",{className:"mb-2",children:[c.jsx("label",{className:"mb-0",children:"Background"}),c.jsx("input",{type:"color",value:s,className:"custom-select color-select",onChange:f})]})]})}function zu(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 zh(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?zu(Object(t),!0).forEach(function(r){xy(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):zu(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function xy(n,e,t){return e=Ly(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ly(n){var e=ky(n,"string");return typeof e=="symbol"?e:String(e)}function ky(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var pi=ge.module("ColumnFormatEditor"),jy=()=>{};function _y(n){var{type:e,name:t}=n[0],r={type:e,name:t},i=zh({column:r,style:Ph()},Ga(e));return i}function Hy(n){var e,{columns:t,config:r=_y(t),dh:i,onChange:a=jy}=n,[l,s]=R.useState((e=t.find(S=>S.name===r.column.name&&S.type===r.column.type))!==null&&e!==void 0?e:t[0]),[o,u]=R.useState(Oh(r)),[d,h]=R.useState(!1),[v,m]=R.useState(r.style),f=R.useCallback(S=>{var b=t.find(w=>{var{name:y}=w;return y===S});b!==void 0?(s(b),l.type!==b.type&&(u(Ga(b.type)),h(!1))):pi.error("Column ".concat(S," not found."))},[t,l]),g=R.useCallback((S,b)=>{pi.debug("handleConditionChange",S,b),u(S),h(b)},[]),p=R.useCallback(S=>{pi.debug("handleStyleChange",S),m(S)},[]);R.useEffect(function(){var b=d;l===void 0&&(pi.debug("Column is not selected, invalidating update."),b=!1),(v===void 0||v.type===Te.NO_FORMATTING)&&(pi.debug("Style is not selected, invalidating update."),b=!1);var{type:w,name:y}=l,T={type:w,name:y};a(zh({column:T,style:v},o),b)},[a,l,v,o,d]);var C=t.map(S=>{var{name:b}=S;return{title:b,value:b}});return c.jsxs("div",{className:"conditional-rule-editor form",children:[c.jsxs("div",{className:"mb-2",children:[c.jsx("label",{className:"mb-0",children:"Format Cell If"}),c.jsx(rh,{defaultValue:l?.name,options:C,inputPlaceholder:"Select a column",spellCheck:!1,onChange:f,searchPlaceholder:"Filter columns"})]}),l!==void 0&&c.jsxs(c.Fragment,{children:[c.jsx($h,{dh:i,column:l,config:o,onChange:g}),c.jsx(Wh,{config:v,onChange:p})]})]})}function Ku(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 Kh(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ku(Object(t),!0).forEach(function(r){Uy(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ku(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Uy(n,e,t){return e=Vy(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Vy(n){var e=By(n,"string");return typeof e=="symbol"?e:String(e)}function By(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ci=ge.module("RowFormatEditor"),Gy=()=>{};function $y(n){var{type:e,name:t}=n[0],r={type:e,name:t},i=Kh({column:r,style:Ph()},Ga(e));return i}function Wy(n){var e,{columns:t,config:r=$y(t),dh:i,onChange:a=Gy}=n,[l,s]=R.useState((e=t.find(S=>S.name===r.column.name&&S.type===r.column.type))!==null&&e!==void 0?e:t[0]),[o,u]=R.useState(Oh(r)),[d,h]=R.useState(!1),[v,m]=R.useState(r.style),f=R.useCallback(S=>{var b=t.find(w=>{var{name:y}=w;return y===S});b!==void 0?(s(b),l.type!==b.type&&(u(Ga(b.type)),h(!1))):Ci.error("Column ".concat(S," not found."))},[t,l]),g=R.useCallback((S,b)=>{Ci.debug("handleConditionChange",S,b),u(S),h(b)},[]),p=R.useCallback(S=>{Ci.debug("handleStyleChange",S),m(S)},[]);R.useEffect(function(){if(l===void 0){Ci.debug("Column is not selected, skip update.");return}if(v===void 0){Ci.debug("Style is not selected, skip update.");return}var{type:b,name:w}=l,y={type:b,name:w};a(Kh({column:y,style:v},o),d)},[a,l,v,o,d]);var C=t.map(S=>{var{name:b}=S;return{title:b,value:b}});return c.jsxs("div",{className:"conditional-rule-editor form",children:[c.jsxs("div",{className:"mb-2",children:[c.jsx("label",{className:"mb-0",children:"Format Row If"}),c.jsx(rh,{defaultValue:l?.name,options:C,inputPlaceholder:"Select a column",spellCheck:!1,onChange:f,searchPlaceholder:"Filter columns"})]}),l!==void 0&&c.jsxs(c.Fragment,{children:[c.jsx($h,{column:l,config:o,dh:i,onChange:g}),c.jsx(Wh,{config:v,onChange:p})]})]})}var Ml=ge.module("ConditionalFormatEditor"),xl=()=>{};function zy(n){switch(n){case jt.CONDITIONAL:return c.jsx(mb,{});case jt.ROWS:return c.jsx(Cb,{})}}function Ky(n){switch(n){case jt.CONDITIONAL:return"Conditional";case jt.ROWS:return"Rows"}}var Yu=[jt.CONDITIONAL,jt.ROWS];function Yy(n){var e,{columns:t,dh:r,onSave:i=xl,onUpdate:a=xl,onCancel:l=xl,rule:s}=n,o=t.filter(cp),[u,d]=R.useState((e=s?.type)!==null&&e!==void 0?e:Yu[0]),[h,v]=R.useState(s),[m,f]=R.useState(!1),g=R.useCallback(()=>{l()},[l]),p=R.useCallback(()=>{if(h===void 0){Ml.error("Rule is not defined.");return}i(h)},[i,h]),C=R.useCallback(b=>{Ml.debug("handleFormatterChange",b),d(b)},[]),S=R.useCallback((b,w)=>{Ml.debug("handleRuleChange",b,w,u);var y={type:u,config:b};v(y),f(w),a(w?y:void 0)},[a,u]);return c.jsxs("div",{className:"conditional-format-editor form",children:[c.jsxs("div",{className:"mb-2",children:[c.jsx("label",{className:"mb-0",htmlFor:"formatter-select",children:"Select Formatter"}),c.jsx("div",{className:"formatter-list",children:Yu.map((b,w)=>c.jsx("div",{className:"formatter-type",children:c.jsxs("button",{type:"button",className:re("btn","btn-icon","btn-formatter-type",{active:b===u}),"data-index":w,onClick:()=>C(b),children:[zy(b),Ky(b)]})},b))})]}),u===jt.CONDITIONAL&&c.jsx(Hy,{columns:o,dh:r,config:h?.config,onChange:S}),u===jt.ROWS&&c.jsx(Wy,{columns:o,config:h?.config,dh:r,onChange:S}),c.jsx("hr",{}),c.jsxs("div",{className:"d-flex justify-content-end my-3",children:[c.jsx(Y,{kind:"secondary",onClick:g,className:"mr-2",children:"Cancel"}),c.jsx(Y,{kind:"primary",onClick:p,disabled:h===void 0||!m,children:"Done"})]})]})}function qy(n){var e,t,{text:r,isOpen:i,onClose:a}=n,[l,s]=R.useState(!1),[o,u]=R.useState(0),[d,h]=R.useState(!1),[v,m]=R.useState(!1),[f,g]=R.useState(!1),p=R.useRef();R.useEffect(function(){if(i){try{JSON.parse(r),g(!0)}catch{g(!1)}m(!1)}},[i,r]),R.useEffect(function(){p.current&&p.current.layout()},[o]),R.useEffect(function(){p.current&&p.current.updateOptions({lineNumbers:d?"on":"off"})},[d]);function C(){h(!d)}function S(){var T,E=(T=p.current)===null||T===void 0?void 0:T.getModel();!f||!E||(v?(E.setValue(r),m(!1)):(E.setValue(JSON.stringify(JSON.parse(r),void 0,2)),m(!0)),b())}function b(){var T,E,P=p.current;P&&h(((T=(E=P.getModel())===null||E===void 0?void 0:E.getLineCount())!==null&&T!==void 0?T:0)>1)}function w(){l&&(p.current=void 0,a())}function y(T){p.current=T,u(T.getContentHeight()),T.onDidContentSizeChange(E=>{var{contentHeight:P}=E;return u(P)}),b()}return!i&&!l?null:c.jsxs(sh,{isOpen:i,centered:!0,keyboard:!0,toggle:w,onOpened:()=>s(!0),onClosed:()=>{s(!1),u(0)},className:"theme-bg-dark cell-overflow-modal",size:"xl",children:[c.jsxs(oh,{toggle:a,children:[c.jsx("h5",{className:"overflow-modal-title",children:"Cell Contents"}),c.jsx(cs,{kind:"inline",tooltip:"Copy cell contents",copy:(e=(t=p.current)===null||t===void 0?void 0:t.getValue())!==null&&e!==void 0?e:r}),c.jsx(Y,{kind:"inline",active:d,icon:im,tooltip:"Toggle line numbers",onClick:C}),f&&c.jsx(Y,{kind:"inline",icon:am,active:v,tooltip:"Format as JSON",onClick:S})]}),c.jsx(uh,{style:{height:o},children:c.jsx(Gd,{onEditorInitialized:y,settings:{value:r,readOnly:!0,wordWrap:"on",language:f?"typescript":"plaintext",folding:f,padding:{bottom:16},lineNumbers:d?"on":"off",overviewRulerLanes:0,renderLineHighlight:"none",find:{seedSearchStringFromSelection:"never"}}})})]})}function Xy(n){return n.model!==void 0}var Qy="###,##0",Yh=R.forwardRef((n,e)=>{var{gotoRow:t,gotoRowError:r,gotoValueError:i,onGotoRowSubmit:a,isShown:l,onEntering:s,onEntered:o,onExiting:u,onExited:d,model:h,onGotoRowNumberChanged:v,onClose:m,gotoValueSelectedColumnName:f,gotoValue:g,gotoValueFilter:p,onGotoValueSelectedColumnNameChanged:C,onGotoValueSelectedFilterChanged:S,onGotoValueChanged:b,onGotoValueSubmit:w}=n,y=R.useRef(null),T=R.useRef(null),[E,P]=R.useState(!1),O=[];Xy(h)&&h.table!==void 0&&({columns:O}=h.table);var{dh:D,rowCount:N}=h,F=R.useMemo(()=>"goto-row-input-".concat(nt()),[]),A=I=>{I.key==="Enter"?(I.stopPropagation(),I.preventDefault(),w()):(I.key==="Backspace"||I.key==="Delete")&&(g==="".concat(Number.POSITIVE_INFINITY)||g==="".concat(Number.NEGATIVE_INFINITY))&&z("")},j=I=>{I.key==="Enter"&&(I.stopPropagation(),I.preventDefault(),w(I.shiftKey))},k=h.getColumnIndexByName(f),B=O[k??0],G=B?.type,W=x.getNormalizedType(G),z=I=>{b(I??"")};R.useImperativeHandle(e,()=>({focus(){var I;P(!0),(I=y.current)===null||I===void 0||I.select()}}));var q=()=>{if(E&&document.activeElement!==y.current){var I;(I=y.current)===null||I===void 0||I.select()}else if(!E&&document.activeElement!==T.current){var _;(_=T.current)===null||_===void 0||_.select()}};R.useEffect(q,[E]);var V=()=>{switch(W){case x.dataType.DECIMAL:case x.dataType.INT:return c.jsx("div",{className:"goto-row-input",children:c.jsx("input",{ref:T,className:re("form-control",{"is-invalid":i!==""}),onKeyDown:A,placeholder:"value",onChange:I=>{var _=I.target.value.toLowerCase();/^-?[0-9]*\.?[0-9]*$/.test(I.target.value)?z(I.target.value):_==="-i"||_==="-infinity"?z("".concat(Number.NEGATIVE_INFINITY)):(_==="i"||_==="infinity")&&z("".concat(Number.POSITIVE_INFINITY))},value:g,"aria-label":"Value Input"})});case x.dataType.DATETIME:return c.jsx("div",{className:"goto-value-date-time-input",children:c.jsx(Fv,{ref:T,className:re("form-control","goto-value-date-time-input",{"is-invalid":i!==""}),defaultValue:g,onChange:z,onSubmit:j,"aria-label":"Value Input"})});case x.dataType.STRING:return c.jsxs(c.Fragment,{children:[c.jsx("div",{className:"goto-row-input",children:c.jsxs("select",{className:"custom-select",onChange:I=>{S(I.target.value)},value:p,"aria-label":"filter-type-select",children:[c.jsx("option",{value:Ce.eqIgnoreCase,children:"Equals (case-insensitive)"},Ce.eqIgnoreCase),c.jsx("option",{value:Ce.containsIgnoreCase,children:"Contains (case-insensitive)"},Ce.containsIgnoreCase),c.jsx("option",{value:Ce.eq,children:"Equals"},Ce.eq),c.jsx("option",{value:Ce.contains,children:"Contains"},Ce.contains)]})}),c.jsx("div",{className:"goto-row-input",children:c.jsx("input",{ref:T,className:re("form-control",{"is-invalid":i!==""}),onKeyDown:j,placeholder:"value",onChange:I=>z(I.target.value),value:g,"aria-label":"Value Input"})})]});case x.dataType.BOOLEAN:return c.jsx("div",{className:"goto-row-input",children:c.jsxs("select",{className:"custom-select",onChange:I=>{z(I.target.value)},value:g,"aria-label":"Value Input",children:[c.jsx("option",{"aria-label":"null value",value:""},"null"),c.jsx("option",{value:"true",children:"true"},"true"),c.jsx("option",{value:"false",children:"false"},"false")]})});default:return c.jsx("div",{className:"goto-row-input",children:c.jsx("input",{ref:T,className:"form-control",onKeyDown:j,placeholder:"value",onChange:I=>z(I.target.value),value:g,"aria-label":"Value Input"})})}};return c.jsx($a,{isShown:l,className:re("goto-row"),onEntering:s,onEntered:()=>{o(),q()},onExiting:u,onExited:d,children:c.jsxs(c.Fragment,{children:[c.jsxs("div",{className:"goto-row-row",children:[c.jsxs("div",{className:re("goto-row-wrapper",{"is-inactive":!E}),onClick:()=>P(!0),onFocus:()=>P(!0),role:"group",children:[c.jsx("label",{className:"goto-row-text",htmlFor:F,children:"Go to row"}),c.jsx("div",{className:"goto-row-input",children:c.jsx("input",{ref:y,"data-testid":"goto-row-input",type:"number",onKeyDown:I=>{I.key==="Enter"&&(I.stopPropagation(),I.preventDefault(),a())},className:re("form-control",{"is-invalid":r!==""}),placeholder:"Row number",onChange:I=>{v(I)},value:t,id:F})}),c.jsxs("div",{className:"goto-row-text",children:["of"," ",D.i18n.NumberFormat.format(Qy,N)]}),r&&c.jsx("div",{className:"text-danger",children:r})]}),c.jsx("div",{className:"goto-row-close",children:c.jsx(Y,{kind:"ghost",onClick:m,children:c.jsx(ae,{icon:Ts,style:{marginRight:"0"}})})})]}),h.isSeekRowAvailable&&c.jsx("div",{className:"goto-row-row",children:c.jsxs("div",{className:re("goto-row-wrapper",{"is-inactive":E}),onClick:()=>P(!1),onFocus:()=>P(!1),role:"group",children:[c.jsx("div",{className:"goto-row-text",children:"Go to value"}),c.jsx("div",{className:"goto-row-input",children:c.jsx("select",{className:"custom-select",onChange:I=>{var _=I.target.value;C(_)},value:f,"aria-label":"column-name-select",children:O.map(I=>c.jsx("option",{value:I.name,children:I.name},I.name))})}),V(),c.jsxs("div",{children:[c.jsx(Y,{kind:"ghost",disabled:g==="",onClick:()=>{w(!0)},children:c.jsx(ae,{icon:lm})}),c.jsx(Y,{kind:"ghost",disabled:g==="",onClick:()=>{w(!1)},children:c.jsx(ae,{icon:sm})})]}),i&&c.jsx("div",{className:"text-danger",children:i})]})})]})})});Yh.displayName="GotoRow";const Zy=Yh;function qu(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}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){qu(a,r,i,l,s,"next",o)}function s(o){qu(a,r,i,l,s,"throw",o)}l(void 0)})}}function Xu(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 yt(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Xu(Object(t),!0).forEach(function(r){le(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Xu(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function le(n,e,t){return e=Jy(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Jy(n){var e=e0(n,"string");return typeof e=="symbol"?e:String(e)}function e0(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ue=ge.module("IrisGrid"),t0=500,r0=250,n0=250,i0=250,qh=Object.freeze({aggregations:Re,showOnTop:!1}),a0="yyyy-MM-dd'T'HH:mm:ss.SSSSSSSSS z";function Qu(n){var{advancedFilters:e,aggregationSettings:t,customColumns:r,quickFilters:i,reverseType:a,rollupConfig:l,searchFilter:s,selectDistinctColumns:o,sorts:u}=n;return e.size===0&&t.aggregations.length===0&&r.length===0&&i.size===0&&a===x.REVERSE_TYPE.NONE&&l==null&&s==null&&o.length===0&&u.length===0}class Or extends R.Component{constructor(e){var t,r,i,a;super(e),le(this,"grid",void 0),le(this,"gridWrapper",void 0),le(this,"lastFocusedFilterBarColumn",void 0),le(this,"lastLoadedConfig",void 0),le(this,"tooltip",void 0),le(this,"pending",void 0),le(this,"globalColumnFormats",void 0),le(this,"dateTimeFormatterOptions",void 0),le(this,"decimalFormatOptions",void 0),le(this,"integerFormatOptions",void 0),le(this,"truncateNumbersWithPound",void 0),le(this,"loadingScrimStartTime",void 0),le(this,"loadingScrimFinishTime",void 0),le(this,"animationFrame",void 0),le(this,"loadingTimer",void 0),le(this,"renderer",void 0),le(this,"tableSaver",void 0),le(this,"crossColumnRef",void 0),le(this,"isAnimating",void 0),le(this,"filterInputRef",void 0),le(this,"gotoRowRef",void 0),le(this,"toggleFilterBarAction",void 0),le(this,"toggleSearchBarAction",void 0),le(this,"toggleGotoRowAction",void 0),le(this,"discardAction",void 0),le(this,"commitAction",void 0),le(this,"contextActions",void 0),le(this,"tableUtils",void 0),le(this,"getAdvancedMenuOpenedHandler",we(I=>this.handleAdvancedMenuOpened.bind(this,I),{max:100})),le(this,"getCachedAdvancedFilterMenuActions",we((I,_,H,X,Q)=>c.jsx(LS,{model:I,column:_,onFilterChange:this.handleAdvancedFilterChange,onSortChange:this.handleAdvancedFilterSortChange,onDone:this.handleAdvancedFilterDone,options:H,sortDirection:X,formatter:Q,tableUtils:this.tableUtils}),{max:50})),le(this,"getCachedOptionItems",we((I,_,H,X,Q,ne,se,ie,de,he,Le,Ze,Je,Ye,Ue,et)=>{var De=[];return I&&De.push({type:Fe.CHART_BUILDER,title:"Chart Builder",icon:om}),De.push({type:Fe.VISIBILITY_ORDERING_BUILDER,title:"Organize Columns",icon:ys}),H&&De.push({type:Fe.CONDITIONAL_FORMATTING,title:"Conditional Formatting",icon:Hi}),_&&De.push({type:Fe.CUSTOM_COLUMN_BUILDER,title:"Custom Columns",icon:um}),X&&De.push({type:Fe.ROLLUP_ROWS,title:"Rollup Rows",icon:dm}),Q&&De.push({type:Fe.AGGREGATIONS,title:"Aggregate Columns",icon:hm}),ne&&De.push({type:Fe.SELECT_DISTINCT,title:"Select Distinct Values",icon:cm}),se&&Je&&De.push({type:Fe.TABLE_EXPORTER,title:"Download CSV",icon:vm}),et&&De.push({type:Fe.ADVANCED_SETTINGS,title:"Advanced Settings",icon:mm}),De.push({type:Fe.QUICK_FILTERS,title:"Quick Filters",subtitle:ie.shortcut.getDisplayText(),icon:ya,isOn:Le,onChange:ie.action}),Ye&&De.push({type:Fe.SEARCH_BAR,title:"Search Bar",subtitle:de.shortcut.getDisplayText(),icon:fm,isOn:Ze,onChange:de.action}),De.push({type:Fe.GOTO,title:"Go to",subtitle:he.shortcut.getDisplayText(),icon:gm,isOn:Ue,onChange:he.action}),Object.freeze(De)},{max:1})),le(this,"getCachedHiddenColumns",we((I,_)=>fe.getHiddenColumns(new Map([...I.initialColumnWidths,..._])),{max:1})),le(this,"getAggregationMap",we((I,_)=>{var H={};return _.forEach(X=>{var{operation:Q,selected:ne,invert:se}=X;H[Q]=on.getOperationColumnNames(I,Q,ne,se)}),H})),le(this,"getOperationMap",we((I,_)=>{var H={};return _.filter(X=>!on.isRollupOperation(X.operation)).forEach(X=>{var{operation:Q,selected:ne,invert:se}=X;on.getOperationColumnNames(I,Q,ne,se).forEach(ie=>{var de,he=[...(de=H[ie])!==null&&de!==void 0?de:[],Q];H[ie]=Object.freeze(he)})}),H})),le(this,"getOperationOrder",we(I=>I.map(_=>_.operation).filter(_=>!on.isRollupOperation(_)))),le(this,"getCachedFormatColumns",we((I,_,H)=>dp(I,_,H))),le(this,"getCachedPreviewFormatColumns",we((I,_,H,X,Q)=>{if(ue.debug("getCachedPreviewFormatColumns",H,X,Q),X!==void 0&&Q!==void 0){var ne=[...H];return ne[Q]=X,this.getCachedFormatColumns(I,_,ne)}return this.getCachedFormatColumns(I,_,H)})),le(this,"getModelRollupConfig",we((I,_,H)=>fe.getModelRollupConfig(I,_,H))),le(this,"getModelTotalsConfig",we((I,_,H)=>{var X,Q,ne,{aggregations:se,showOnTop:ie}=H;if(((X=_==null||(Q=_.columns)===null||Q===void 0?void 0:Q.length)!==null&&X!==void 0?X:0)>0||((ne=se?.length)!==null&&ne!==void 0?ne:0)===0)return null;var de=this.getOperationMap(I,se),he=this.getOperationOrder(se);return{operationMap:de,operationOrder:he,showOnTop:ie}})),le(this,"getCachedStateOverride",we((I,_,H,X,Q,ne,se,ie,de,he)=>({hoverSelectColumn:I,isFilterBarShown:_,isSelectingColumn:H,loadingScrimProgress:X,quickFilters:Q,advancedFilters:ne,sorts:se,reverseType:ie,rollupConfig:de,isMenuShown:he}),{max:1})),le(this,"getCachedFilter",we((I,_,H,X,Q)=>[...I??[],...X??[],...fe.getFiltersFromFilterMap(_),...fe.getFiltersFromFilterMap(H),...Q!==void 0?[Q]:[]],{max:1})),le(this,"getCachedTheme",we((I,_,H)=>yt(yt(yt({},Ah),I),{},{autoSelectRow:!_,rowFooterWidth:H>0?I.rowFooterWidth:0}),{max:1})),le(this,"getAlwaysFetchColumns",we((I,_,H,X,Q,ne)=>{for(var se=[],ie=0;ie<X;ie+=1)se.push(_[K.getModelIndex(ie,H)].name);for(var de=0;de<Q;de+=1)se.push(_[K.getModelIndex(_.length-1-de,H)].name);if(ne)for(var he=ne[0];he<=ne[1];he+=1)se.push(_[K.getModelIndex(he,H)].name);var Le=new Set([...I,...se]);return Object.freeze([...Le])})),le(this,"updateSearchFilter",ct((I,_,H,X)=>{var{model:Q}=this.props,ne=ua.createSearchFilter(Q.dh,I,_,H,X);this.setState({searchFilter:ne})},r0)),le(this,"handleConditionalFormatEditorUpdate",ct(I=>{this.setState({conditionalFormatPreview:I})},i0)),le(this,"handleDownloadProgressUpdate",wa((I,_)=>{var{tableDownloadStatus:H}=this.state;H===vn.DOWNLOAD_STATUS.DOWNLOADING&&this.setState({tableDownloadProgress:I,tableDownloadEstimatedTime:_})},t0)),le(this,"getOverflowButtonTooltip",we(I=>{if(I==null)return null;var _=yt(yt({position:"absolute"},I),{},{pointerEvents:"none"}),H={placement:"left",modifiers:{flip:{behavior:["left","right"]}}};return c.jsx("div",{style:_,children:c.jsx(Jt,{options:H,ref:this.handleTooltipRef,children:"View full contents"},Date.now())})})),le(this,"getExpandCellTooltip",we(I=>{if(I==null)return null;var{expandTooltipDisplayValue:_}=this.state,H=yt(yt({position:"absolute"},I),{},{pointerEvents:"none"}),X={placement:"bottom-start"};return c.jsx("div",{style:H,children:c.jsx(Jt,{options:X,ref:this.handleTooltipRef,children:c.jsxs("div",{style:{textAlign:"left"},children:["Click to ",_," row",c.jsx("br",{}),Kn.isMacPlatform()?"⌘":"Ctrl+","Click to expand row and all children"]})},Date.now())})})),le(this,"getLinkHoverTooltip",we(I=>{if(I==null)return null;var{linkHoverDisplayValue:_}=this.state,H=yt(yt({position:"absolute"},I),{},{pointerEvents:"none"}),X={placement:"bottom"};return c.jsx("div",{style:H,children:c.jsx(Jt,{options:X,ref:this.handleTooltipRef,children:c.jsxs("div",{className:"link-hover-tooltip",children:[_," - Click once to follow.",c.jsx("br",{}),"Click and hold to select this cell."]})})})})),le(this,"handleGotoValueChanged",I=>{this.setState({gotoValue:I}),this.debouncedSeekRow(I)}),le(this,"debouncedSeekRow",ct(I=>{this.seekRow(I)},n0)),this.handleAdvancedFilterChange=this.handleAdvancedFilterChange.bind(this),this.handleAdvancedFilterSortChange=this.handleAdvancedFilterSortChange.bind(this),this.handleAdvancedFilterDone=this.handleAdvancedFilterDone.bind(this),this.handleAdvancedMenuOpened=this.handleAdvancedMenuOpened.bind(this),this.handleGotoRowOpened=this.handleGotoRowOpened.bind(this),this.handleGotoRowClosed=this.handleGotoRowClosed.bind(this),this.handleAdvancedMenuClosed=this.handleAdvancedMenuClosed.bind(this),this.handleAggregationChange=this.handleAggregationChange.bind(this),this.handleAggregationsChange=this.handleAggregationsChange.bind(this),this.handleAggregationEdit=this.handleAggregationEdit.bind(this),this.handleAnimationLoop=this.handleAnimationLoop.bind(this),this.handleAnimationStart=this.handleAnimationStart.bind(this),this.handleAnimationEnd=this.handleAnimationEnd.bind(this),this.handleChartChange=this.handleChartChange.bind(this),this.handleChartCreate=this.handleChartCreate.bind(this),this.handleGridError=this.handleGridError.bind(this),this.handleFilterBarChange=this.handleFilterBarChange.bind(this),this.handleFilterBarDone=this.handleFilterBarDone.bind(this),this.handleFilterBarTab=this.handleFilterBarTab.bind(this),this.handleCancel=this.handleCancel.bind(this),this.handleMenu=this.handleMenu.bind(this),this.handleMenuClose=this.handleMenuClose.bind(this),this.handleMenuSelect=this.handleMenuSelect.bind(this),this.handleMenuBack=this.handleMenuBack.bind(this),this.handleRequestFailed=this.handleRequestFailed.bind(this),this.handleSelectionChanged=this.handleSelectionChanged.bind(this),this.handleMovedColumnsChanged=this.handleMovedColumnsChanged.bind(this),this.handleHeaderGroupsChanged=this.handleHeaderGroupsChanged.bind(this),this.handleUpdate=this.handleUpdate.bind(this),this.handleTooltipRef=this.handleTooltipRef.bind(this),this.handleViewChanged=this.handleViewChanged.bind(this),this.handleFormatSelection=this.handleFormatSelection.bind(this),this.handleConditionalFormatCreate=this.handleConditionalFormatCreate.bind(this),this.handleConditionalFormatEdit=this.handleConditionalFormatEdit.bind(this),this.handleConditionalFormatsChange=this.handleConditionalFormatsChange.bind(this),this.handleConditionalFormatEditorSave=this.handleConditionalFormatEditorSave.bind(this),this.handleConditionalFormatEditorCancel=this.handleConditionalFormatEditorCancel.bind(this),this.handleUpdateCustomColumns=this.handleUpdateCustomColumns.bind(this),this.handleCustomColumnsChanged=this.handleCustomColumnsChanged.bind(this),this.handleSelectDistinctChanged=this.handleSelectDistinctChanged.bind(this),this.handlePendingDataUpdated=this.handlePendingDataUpdated.bind(this),this.handlePendingCommitClicked=this.handlePendingCommitClicked.bind(this),this.handlePendingDiscardClicked=this.handlePendingDiscardClicked.bind(this),this.handleGotoRowSelectedRowNumberSubmit=this.handleGotoRowSelectedRowNumberSubmit.bind(this),this.focusRowInGrid=this.focusRowInGrid.bind(this),this.handleDownloadTable=this.handleDownloadTable.bind(this),this.handleDownloadTableStart=this.handleDownloadTableStart.bind(this),this.handleCancelDownloadTable=this.handleCancelDownloadTable.bind(this),this.handleDownloadCanceled=this.handleDownloadCanceled.bind(this),this.handleDownloadCompleted=this.handleDownloadCompleted.bind(this),this.handlePartitionAppend=this.handlePartitionAppend.bind(this),this.handlePartitionChange=this.handlePartitionChange.bind(this),this.handlePartitionFetchAll=this.handlePartitionFetchAll.bind(this),this.handlePartitionDone=this.handlePartitionDone.bind(this),this.handleColumnVisibilityChanged=this.handleColumnVisibilityChanged.bind(this),this.handleColumnVisibilityReset=this.handleColumnVisibilityReset.bind(this),this.handleCrossColumnSearch=this.handleCrossColumnSearch.bind(this),this.handleRollupChange=this.handleRollupChange.bind(this),this.handleOverflowClose=this.handleOverflowClose.bind(this),this.getColumnBoundingRect=this.getColumnBoundingRect.bind(this),this.handleGotoRowSelectedRowNumberChanged=this.handleGotoRowSelectedRowNumberChanged.bind(this),this.handleGotoValueSelectedColumnNameChanged=this.handleGotoValueSelectedColumnNameChanged.bind(this),this.handleGotoValueSelectedFilterChanged=this.handleGotoValueSelectedFilterChanged.bind(this),this.handleGotoValueChanged=this.handleGotoValueChanged.bind(this),this.handleGotoValueSubmitted=this.handleGotoValueSubmitted.bind(this),this.grid=null,this.gridWrapper=null,this.lastLoadedConfig=null,this.pending=new as,this.globalColumnFormats=Re,this.decimalFormatOptions={},this.integerFormatOptions={},this.truncateNumbersWithPound=!1,this.renderer=new fS,this.tableSaver=null,this.crossColumnRef=Me.createRef(),this.isAnimating=!1,this.filterInputRef=Me.createRef(),this.gotoRowRef=Me.createRef(),this.toggleFilterBarAction={action:()=>this.toggleFilterBar(),shortcut:dr.TABLE.TOGGLE_QUICK_FILTER},this.toggleSearchBarAction={action:()=>this.toggleSearchBar(),shortcut:dr.TABLE.TOGGLE_SEARCH},this.toggleGotoRowAction={action:()=>this.toggleGotoRow(),shortcut:dr.TABLE.GOTO_ROW},this.discardAction={action:()=>{var{model:I}=this.props;He(I)&&I.isEditable&&I.pendingDataMap.size>0&&this.discardPending().catch(ue.error)},shortcut:dr.INPUT_TABLE.DISCARD},this.commitAction={action:()=>{var{model:I}=this.props;He(I)&&I.isEditable&&I.pendingDataMap.size>0&&I.pendingDataErrors.size===0&&this.commitPending().catch(ue.error)},shortcut:dr.INPUT_TABLE.COMMIT},this.contextActions=[this.toggleFilterBarAction,this.toggleSearchBarAction,this.toggleGotoRowAction,this.discardAction,this.commitAction];var{aggregationSettings:l,conditionalFormats:s,customColumnFormatMap:o,isFilterBarShown:u,isSelectingPartition:d,model:h,movedColumns:v,movedRows:m,partition:f,partitionColumn:g,rollupConfig:p,userColumnWidths:C,userRowHeights:S,showSearchBar:b,searchValue:w,selectedSearchColumns:y,invertSearchColumns:T,advancedFilters:E,quickFilters:P,selectDistinctColumns:O,pendingDataMap:D,canCopy:N,frozenColumns:F,columnHeaderGroups:A}=e,j=[new Wp(this),new Xp(this)];N&&j.push(new Up(this));var{dh:k}=h,B=[new tC(this),new GC(this),new JC(this),new lC(this),new hC(this),new KC(this),new _C(this),new DC(this,k),new MC(this),new qC(this)],G=v.length>0?v:h.initialMovedColumns,W=m.length>0?m:h.initialMovedRows,z=new nS({userColumnWidths:new Map(C),userRowHeights:new Map(S),movedColumns:G,initialColumnWidths:new Map(h==null||(t=h.layoutHints)===null||t===void 0||(r=t.hiddenColumns)===null||r===void 0?void 0:r.map(I=>[h.getColumnIndexByName(I),0]))}),q=y??[],V=ua.createSearchFilter(k,w,q,h.columns,T);this.tableUtils=new x(k),this.state={isFilterBarShown:u,isSelectingPartition:d,focusedFilterBarColumn:null,metricCalculator:z,metrics:void 0,keyHandlers:j,mouseHandlers:B,partition:f,partitionColumn:g,partitionTable:null,partitionFilters:[],quickFilters:P?new Map(P):new Map,advancedFilters:new Map(E),shownAdvancedFilter:null,hoverAdvancedFilter:null,sorts:[],reverseType:x.REVERSE_TYPE.NONE,customColumns:[],selectDistinctColumns:O,selectedRanges:[],copyOperation:null,loadingText:null,loadingScrimProgress:null,loadingSpinnerShown:!1,movedColumns:G,movedRows:W,shownColumnTooltip:null,formatter:new Pr(k),isMenuShown:!1,customColumnFormatMap:new Map(o),conditionalFormats:s,conditionalFormatEditIndex:null,conditionalFormatPreview:void 0,hoverSelectColumn:null,isTableDownloading:!1,isReady:!1,tableDownloadStatus:"",tableDownloadProgress:0,tableDownloadEstimatedTime:0,showSearchBar:b,searchFilter:V,searchValue:w,selectedSearchColumns:q,invertSearchColumns:T,rollupConfig:p,rollupSelectedColumns:[],aggregationSettings:l,selectedAggregation:null,openOptions:[],pendingRowCount:0,pendingDataMap:D??new Map,pendingDataErrors:new Map,pendingSavePromise:null,pendingSaveError:null,toastMessage:null,frozenColumns:F,showOverflowModal:!1,overflowText:"",overflowButtonTooltipProps:null,expandCellTooltipProps:null,expandTooltipDisplayValue:"expand",linkHoverTooltipProps:null,linkHoverDisplayValue:"",isGotoShown:!1,gotoRow:"",gotoRowError:"",gotoValueError:"",gotoValueSelectedColumnName:(i=(a=h.columns[0])===null||a===void 0?void 0:a.name)!==null&&i!==void 0?i:"",gotoValueSelectedFilter:Ce.eqIgnoreCase,gotoValue:"",columnHeaderGroups:A??h.initialColumnHeaderGroups}}componentDidMount(){var{partitionColumn:e,model:t}=this.props,r=e??t.columns.find(i=>i.isPartitionColumn);t.isFilterRequired&&t.isValuesTableAvailable&&r!=null?this.loadPartitionsTable(r):this.initState(),this.startListening(t)}componentDidUpdate(e){var{inputFilters:t,isSelectingColumn:r,settings:i,model:a,customFilters:l,sorts:s}=this.props;a!==e.model&&(this.stopListening(e.model),this.startListening(a));var o=t!==e.inputFilters?t.filter(f=>!e.inputFilters.includes(f)):[];if(o.length>0){var u,{advancedSettings:d}=this.props,h=(u=d.get(Yn.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS))!==null&&u!==void 0?u:!1;h&&(this.clearGridInputField(),this.clearCrossColumSearch()),this.startLoading("Filtering...",!0),this.applyInputFilters(o,h)}r!==e.isSelectingColumn&&this.resetColumnSelection(),i!==e.settings&&this.updateFormatterSettings(i),l!==e.customFilters&&this.startLoading("Filtering...",!0),s!==e.sorts&&this.updateSorts(s);var{loadingScrimStartTime:v,loadingScrimFinishTime:m}=this;v!=null&&m!=null&&window.requestAnimationFrame(()=>{var f=Date.now(),g=f-v,p=m-v,C=Math.min(g/p,1);m<f&&(this.loadingScrimStartTime=void 0,this.loadingScrimFinishTime=void 0),this.setState(S=>S.loadingScrimProgress==null?(ue.debug2("Ignoring scrim update because loading cancelled."),null):{loadingScrimProgress:C})}),this.sendStateChange()}componentWillUnmount(){var{model:e}=this.props;this.stopListening(e),this.pending.cancel(),this.updateSearchFilter.cancel(),this.loadingTimer&&clearTimeout(this.loadingTimer),this.handleDownloadProgressUpdate.cancel(),this.animationFrame!==void 0&&cancelAnimationFrame(this.animationFrame)}getValueForCell(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{model:i}=this.props,{dh:a}=i,l=this.getModelColumn(e),s=this.getModelRow(t);if(r&&l!=null&&s!=null){var o=i.valueForCell(l,s);if(x.isDateType(i.columns[l].type)){var{formatter:u}=i;return a.i18n.DateTimeFormat.format(a0,o,a.i18n.TimeZone.getTimeZone(u.timeZone))}return o}return r?null:l!=null&&s!=null?i.textForCell(l,s):""}getModelColumn(e){var{metrics:t}=this.state;L(t);var{modelColumns:r}=t;return r==null?null:e!=null?r.get(e):null}getModelRow(e){var{metrics:t}=this.state;L(t);var{modelRows:r}=t;return r==null?null:e!=null?r.get(e):null}getTheme(){var e,{model:t,theme:r}=this.props;return this.getCachedTheme(r,(e=He(t)&&t.isEditable)!==null&&e!==void 0?e:!1,t.floatingTopRowCount+t.floatingBottomRowCount)}getVisibleColumn(e){var{movedColumns:t}=this.state;return K.getVisibleIndex(e,t)}makeQuickFilter(e,t,r){try{return this.tableUtils.makeQuickFilter(e,t,r)}catch(i){ue.error("Error creating quick filter",i)}return null}applyInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,{model:r}=this.props,{advancedFilters:i,quickFilters:a}=this.state,l=t?new Map:new Map(i),s=t?new Map:new Map(a),o=t&&i.size>0;e.forEach(u=>{var{name:d,type:h,value:v}=u,m=r.columns.findIndex(f=>{var{name:g,type:p}=f;return g===d&&p===h});m>=0?(o=l.delete(m)||o,o=this.applyQuickFilter(m,v,s)||o):ue.error("Unable to find column for inputFilter",d,h,v)}),o&&this.setState({quickFilters:s,advancedFilters:l})}applyQuickFilter(e,t,r){var{model:i}=this.props,{formatter:a}=i,l=i.columns[e];if(t!=null&&"".concat(t).trim().length>0){var s=r.get(e);if(s!=null){var{text:o}=s;if(o===t)return ue.debug2("Ignoring change to existing filter"),!1}return r.set(e,{text:t,filter:this.makeQuickFilter(l,t,a.timeZone)}),!0}return r.delete(e)}setAdvancedFilterMap(e){this.setState({advancedFilters:e})}setAdvancedFilter(e,t,r){ue.debug("Setting advanced filter",e,t),this.startLoading("Filtering...",!0),this.setState(i=>{var{advancedFilters:a}=i,l=new Map(a);return t==null?l.delete(e):l.set(e,{filter:t,options:r}),{advancedFilters:l}})}setQuickFilter(e,t,r){ue.debug("Setting quick filter",e,t,r),this.startLoading("Filtering...",!0),this.setState(i=>{var{quickFilters:a}=i,l=new Map(a);return l.set(e,{filter:t,text:r}),{quickFilters:l}})}setFilterMap(e){var t;ue.debug("setFilterMap",e);var{advancedSettings:r}=this.props,i=(t=r.get(Yn.LINK_CHANGE_CLEARS_ALL_FILTERS))!==null&&t!==void 0?t:!1;i&&this.clearAllFilters();var{model:a}=this.props;e.forEach((l,s)=>{var{columnType:o,filterList:u}=l,d=a.columns.find(f=>f.name===s&&f.type===o);if(d!=null){var h=a.getColumnIndexByName(d.name);L(h);var v=fe.combineFiltersFromList(o,u);if(v.length===0)this.removeQuickFilter(h);else{var{formatter:m}=a;this.setQuickFilter(h,this.makeQuickFilter(d,v,m.timeZone),"".concat(v))}}})}removeColumnFilter(e){this.startLoading("Filtering...",!0),this.setState(t=>{var{advancedFilters:r,quickFilters:i}=t,a=r?new Map(r):new Map,l=i?new Map(i):new Map;return l.delete(e),a.delete(e),{quickFilters:l,advancedFilters:a}})}removeQuickFilter(e){this.startLoading("Clearing Filter...",!0),this.setState(t=>{var{quickFilters:r}=t,i=new Map(r);return i.delete(e),{quickFilters:i}})}clearAllFilters(){ue.debug("Clearing all filters");var{advancedFilters:e,quickFilters:t,searchFilter:r}=this.state;t.size===0&&e.size===0&&r===null||(this.clearGridInputField(),this.startLoading("Clearing Filters...",!0),this.setState({quickFilters:new Map,advancedFilters:new Map,searchValue:"",searchFilter:void 0}))}clearCrossColumSearch(){ue.debug("Clearing cross-column search"),this.setState({searchValue:"",searchFilter:void 0})}clearGridInputField(){this.filterInputRef.current!=null&&this.filterInputRef.current.setValue("")}rebuildFilters(){ue.debug("Rebuilding filters");var{model:e}=this.props,{advancedFilters:t,quickFilters:r}=this.state,{columns:i,formatter:a}=e,l=new Map,s=new Map;t.forEach((o,u)=>{var{options:d}=o,h=i[u],v=this.tableUtils.makeAdvancedFilter(h,d,a.timeZone);l.set(u,{options:d,filter:v})}),r.forEach((o,u)=>{var{text:d}=o,h=i[u];s.set(u,{text:d,filter:this.makeQuickFilter(h,d,a.timeZone)})}),this.startLoading("Rebuilding filters...",!0),this.setState({quickFilters:s,advancedFilters:l})}setFilters(e){var{quickFilters:t,advancedFilters:r}=e;this.setState({quickFilters:t,advancedFilters:r})}updateFormatterSettings(e){var t,r,i,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,l=kr.getColumnFormats(e),s=kr.getDateTimeFormatterOptions(e),o=(t=e?.defaultDecimalFormatOptions)!==null&&t!==void 0?t:{},u=(r=e?.defaultIntegerFormatOptions)!==null&&r!==void 0?r:{},d=(i=e?.truncateNumbersWithPound)!==null&&i!==void 0?i:!1,h=!ht(this.globalColumnFormats,l),v=!ht(this.dateTimeFormatterOptions,s),m=!ht(this.decimalFormatOptions,e?.defaultDecimalFormatOptions),f=!ht(this.integerFormatOptions,u),g=this.truncateNumbersWithPound!==d;(h||v||m||f||g)&&(this.globalColumnFormats=l,this.dateTimeFormatterOptions=s,this.decimalFormatOptions=o,this.integerFormatOptions=u,this.truncateNumbersWithPound=d,this.updateFormatter({},a),v&&a&&this.rebuildFilters())}updateFormatter(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,{customColumnFormatMap:i}=this.state,{model:a}=this.props,l=yt({customColumnFormatMap:i},e),s=[...(t=this.globalColumnFormats)!==null&&t!==void 0?t:[],...l.customColumnFormatMap.values()],o=new Pr(a.dh,s,this.dateTimeFormatterOptions,this.decimalFormatOptions,this.integerFormatOptions,this.truncateNumbersWithPound);ue.debug("updateFormatter",this.globalColumnFormats,s),this.setState(yt(yt({},l),{},{formatter:o}),()=>{r&&this.grid&&this.grid.forceUpdate()})}initFormatter(){var{settings:e}=this.props;this.updateFormatterSettings(e)}initState(){var{applyInputFiltersOnInit:e,inputFilters:t,sorts:r,model:i,reverseType:a,customColumns:l,searchValue:s,selectedSearchColumns:o,invertSearchColumns:u}=this.props,d=o??[],h=ua.createSearchFilter(i.dh,s,d,i.columns,u);if(e){var v=t.filter(m=>m.value!=null);this.applyInputFilters(v)}this.setState({sorts:r,reverseType:a,customColumns:l,isReady:!0,searchFilter:h}),this.initFormatter()}loadPartitionsTable(e){var t=this;return da(function*(){var{model:r}=t.props;t.setState({isSelectingPartition:!0});try{var i=yield t.pending.add(r.valuesTable(e),d=>d.close()),a=i.columns[0],l=a.sort().desc();i.applySort([l]),i.setViewport(0,0,[a]);var s=yield t.pending.add(i.getViewportData());if(s.rows.length>0){var o=s.rows[0],u=o.get(a);t.updatePartition(u,e),t.setState({isSelectingPartition:!0})}else ue.info("Table does not have any data, just fetching all"),t.setState({isSelectingPartition:!1}),t.handlePartitionFetchAll();t.setState({partitionTable:i,partitionColumn:e},()=>{t.initState()})}catch(d){t.handleTableLoadError(d)}})()}updatePartition(e,t){if(!(x.isCharType(t.type)&&e==="")){var{model:r}=this.props,i=x.isCharType(t.type)?r.displayString(e,t.type,t.name):e,a=this.tableUtils.makeQuickFilterFromComponent(t,i);if(a!==null){var l=[a];this.setState({partition:e,partitionFilters:l})}}}copyCell(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{canCopy:i}=this.props;if(i){var a=String(this.getValueForCell(e,t,r));_a(a).catch(l=>ue.error("Unable to copy cell",l))}else ue.error("Attempted to copyCell for user without copy permission.")}copyRanges(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,i=arguments.length>3?arguments[3]:void 0,{model:a,canCopy:l}=this.props,{metricCalculator:s,movedColumns:o}=this.state,u=s.getUserColumnWidths();if(l){var d={ranges:U.boundedRanges(e,a.columnCount,a.rowCount),includeHeaders:t,formatValues:r,movedColumns:o,userColumnWidths:u,error:i};this.setState({copyOperation:d})}else ue.error("Attempted copyRanges for user without copy permission.")}startLoading(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;this.setState({loadingText:e});var r=this.getTheme();if(t&&this.grid&&(this.grid.clearSelectedRanges(),this.grid.setViewState({top:0},!0)),this.loadingScrimStartTime==null){var i,a,{minScrimTransitionTime:l,maxScrimTransitionTime:s}=r;L(l),L(s);var o=(i=(a=this.gridWrapper)===null||a===void 0?void 0:a.getBoundingClientRect().height)!==null&&i!==void 0?i:0,u=Math.max(l,Math.min(o/2,s));this.loadingScrimStartTime=Date.now(),this.loadingScrimFinishTime=this.loadingScrimStartTime+u,this.setState({loadingScrimProgress:0}),this.loadingTimer=setTimeout(()=>{this.setState({loadingSpinnerShown:!0})},Or.loadingSpinnerDelay)}}stopLoading(){this.loadingScrimStartTime=void 0,this.loadingScrimFinishTime=void 0,this.setState({loadingText:null,loadingScrimProgress:null,loadingSpinnerShown:!1}),this.loadingTimer!=null&&(clearTimeout(this.loadingTimer),this.loadingTimer=void 0)}rollback(){if(this.lastLoadedConfig){ue.debug("loading last loading config",this.lastLoadedConfig);var{advancedFilters:e,aggregationSettings:t,customColumns:r,quickFilters:i,reverseType:a,rollupConfig:l,searchFilter:s,selectDistinctColumns:o,sorts:u}=this.lastLoadedConfig;this.lastLoadedConfig=null,this.setState({advancedFilters:e,aggregationSettings:t,customColumns:r,quickFilters:i,reverseType:a,rollupConfig:l,searchFilter:s,selectDistinctColumns:o,sorts:u})}else ue.debug("remove all sorts, filters, and custom columns"),this.setState({advancedFilters:new Map,aggregationSettings:qh,customColumns:[],quickFilters:new Map,reverseType:x.REVERSE_TYPE.NONE,rollupConfig:void 0,selectDistinctColumns:[],sorts:[]})}canRollback(){return this.lastLoadedConfig!=null||!Qu(this.state)}startListening(e){e.addEventListener(ve.EVENT.UPDATED,this.handleUpdate),e.addEventListener(ve.EVENT.REQUEST_FAILED,this.handleRequestFailed),e.addEventListener(ve.EVENT.COLUMNS_CHANGED,this.handleCustomColumnsChanged),e.addEventListener(ve.EVENT.PENDING_DATA_UPDATED,this.handlePendingDataUpdated)}stopListening(e){e.removeEventListener(ve.EVENT.UPDATED,this.handleUpdate),e.removeEventListener(ve.EVENT.REQUEST_FAILED,this.handleRequestFailed),e.removeEventListener(ve.EVENT.COLUMNS_CHANGED,this.handleCustomColumnsChanged),e.removeEventListener(ve.EVENT.PENDING_DATA_UPDATED,this.handlePendingDataUpdated)}focus(){var e;(e=this.grid)===null||e===void 0||e.focus()}focusFilterBar(e){var{movedColumns:t}=this.state,{model:r}=this.props,{columnCount:i}=r,a=K.getModelIndex(e,t);if(e==null||e<0||i<=e||!r.isFilterable(a)){this.setState({focusedFilterBarColumn:null});return}var{metricCalculator:l,metrics:s}=this.state;L(s);var{left:o,rightVisible:u,lastLeft:d}=s;if(e<o){var h;(h=this.grid)===null||h===void 0||h.setViewState({left:e},!0)}else if(u<e){var v,m,f=(v=this.grid)===null||v===void 0?void 0:v.getMetricState();L(f);var g=l.getLastLeft(f,e,l.getVisibleWidth(f));(m=this.grid)===null||m===void 0||m.setViewState({left:Math.min(g,d),leftOffset:0},!0)}this.lastFocusedFilterBarColumn=e,this.setState({focusedFilterBarColumn:e,isFilterBarShown:!0})}hideColumnByVisibleIndex(e){var t,{metricCalculator:r,movedColumns:i}=this.state;r.setColumnWidth(K.getModelIndex(e,i),0),(t=this.grid)===null||t===void 0||t.forceUpdate()}freezeColumnByColumnName(e){var{frozenColumns:t,movedColumns:r}=this.state,{model:i}=this.props;ue.debug2("freezing column",e);var a=t==null?new Set(i.frozenColumns):new Set(t);a.add(e);var l=i.getColumnIndexByName(e);L(l);var s=K.getVisibleIndex(l,r),o=K.moveItem(s,a.size-1,r);this.setState({frozenColumns:[...a],movedColumns:o})}unFreezeColumnByColumnName(e){var{frozenColumns:t,movedColumns:r}=this.state,{model:i}=this.props;ue.debug2("unfreezing column",e);var a=t==null?new Set(i.frozenColumns):new Set(t);a.delete(e);var l=i.getColumnIndexByName(e);L(l);var s=K.getVisibleIndex(l,r),o=K.moveItem(s,a.size+i.frontColumns.length,r);this.setState({frozenColumns:[...a],movedColumns:o})}handleColumnVisibilityChanged(e,t){var r,{metricCalculator:i,metrics:a}=this.state;L(a),t?e.forEach(l=>{var s=i.initialColumnWidths.get(l),o=M(a.calculatedColumnWidths,l);s!==o?i.setColumnWidth(l,o):i.resetColumnWidth(l)}):e.forEach(l=>{i.setColumnWidth(l,0)}),(r=this.grid)===null||r===void 0||r.forceUpdate()}handleColumnVisibilityReset(){var e,t,{metricCalculator:r,metrics:i}=this.state,{model:a}=this.props;L(i);for(var l=0;l<i.columnCount;l+=1)r.resetColumnWidth(l);this.handleMovedColumnsChanged(a.initialMovedColumns),this.handleHeaderGroupsChanged(a.initialColumnHeaderGroups),this.setState({frozenColumns:(e=(t=a.layoutHints)===null||t===void 0?void 0:t.frozenColumns)!==null&&e!==void 0?e:[]})}handleCrossColumnSearch(e,t,r){var{model:i}=this.props;this.startLoading("Searching..."),this.updateSearchFilter(e,t,i.columns,r),this.setState({searchValue:e,selectedSearchColumns:t,invertSearchColumns:r})}handleAnimationLoop(){var e;(e=this.grid)===null||e===void 0||e.updateCanvas(),this.isAnimating&&(this.animationFrame=requestAnimationFrame(this.handleAnimationLoop))}handleAnimationStart(){ue.debug2("handleAnimationStart"),this.isAnimating=!0,this.animationFrame=requestAnimationFrame(this.handleAnimationLoop)}handleAnimationEnd(){ue.debug2("handleAnimationEnd"),this.isAnimating=!1}handlePartitionAppend(e){var{onPartitionAppend:t}=this.props,{partitionColumn:r}=this.state;r!=null&&t?.(r,e)}handlePartitionChange(e){var{partitionColumn:t}=this.state;t!=null&&this.updatePartition(e,t)}handlePartitionFetchAll(){this.setState({partitionFilters:[],isSelectingPartition:!1})}handlePartitionDone(){this.setState({isSelectingPartition:!1})}handleTableLoadError(e){if(!st.isCanceled(e)){ue.error(e);var{onError:t}=this.props;t(e)}}showAllColumns(){for(var e,{metricCalculator:t}=this.state,r=t.getUserColumnWidths(),i=[...r.entries()],a=0;a<i.length;a+=1){var[l,s]=i[a];s===0&&t.resetColumnWidth(l)}(e=this.grid)===null||e===void 0||e.forceUpdate()}toggleSort(e,t){ue.info("Toggling sort for column",e);var{model:r}=this.props,i=this.getModelColumn(e);if(L(i),r.isColumnSortable(e)){var{sorts:a}=this.state,l=x.toggleSortForColumn(a,r.columns,i,t);this.updateSorts(l)}else ue.debug("Column type was not sortable",r.columns[e])}updateSorts(e){var t;this.startLoading("Sorting..."),this.setState({sorts:e}),(t=this.grid)===null||t===void 0||t.forceUpdate()}sortColumn(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:x.sortDirection.none,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;L(e);var{model:l}=this.props,s=x.sortColumn(l.sort,l.columns,e,r,i,a);this.startLoading("Sorting..."),this.setState({sorts:s}),(t=this.grid)===null||t===void 0||t.forceUpdate()}reverse(e){var t;this.startLoading("Reversing..."),this.setState({reverseType:e}),(t=this.grid)===null||t===void 0||t.forceUpdate()}isReversible(){var{model:e}=this.props;return e.isReversible}toggleFilterBar(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.lastFocusedFilterBarColumn,{isFilterBarShown:t}=this.state;if(t=!t,this.setState({isFilterBarShown:t}),t)if(e!=null)this.focusFilterBar(e);else{for(var r=0,{model:i}=this.props,{columnCount:a}=i,l=0;l<a;l+=1){var s=this.getModelColumn(l);if(s!=null){var o=i.columns[s];if(o!=null&&x.isTextType(o.type)){r=l;break}}}this.focusFilterBar(r)}else{var u;(u=this.grid)===null||u===void 0||u.focus()}}isTableSearchAvailable(){var e,t,r,{model:i,canToggleSearch:a}=this.props,{dh:l}=i,s=i==null||(e=i.layoutHints)===null||e===void 0?void 0:e.searchDisplayMode;return s===((t=l.SearchDisplayMode)===null||t===void 0?void 0:t.SEARCH_DISPLAY_HIDE)?!1:s===((r=l.SearchDisplayMode)===null||r===void 0?void 0:r.SEARCH_DISPLAY_SHOW)?!0:a}toggleSearchBar(){var{showSearchBar:e}=this.state;if(this.isTableSearchAvailable()){var t=!e;this.setState({showSearchBar:t},()=>{var r;if(t&&(r=this.crossColumnRef)!==null&&r!==void 0&&r.current){var i;(i=this.crossColumnRef)===null||i===void 0||i.current.focus()}else{var a;(a=this.grid)===null||a===void 0||a.focus()}})}}toggleGotoRow(){var e,t,r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"",a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"",{isGotoShown:l}=this.state;if(r||i){var s;this.setState({isGotoShown:!0,gotoValue:i,gotoValueSelectedColumnName:a,gotoRowError:"",gotoValueError:""}),this.focusRowInGrid(r),(s=this.gotoRowRef.current)===null||s===void 0||s.focus();return}var o=(e=this.grid)===null||e===void 0?void 0:e.state.cursorRow,u=(t=this.grid)===null||t===void 0?void 0:t.state.cursorColumn;if(o==null||u==null){this.setState({isGotoShown:!l,gotoRow:"",gotoValue:"",gotoRowError:"",gotoValueError:""});return}var{model:d}=this.props,{name:h,type:v}=d.columns[u],m=d.valueForCell(u,o),f=fe.convertValueToText(m,v);this.setState({isGotoShown:!l,gotoRow:"".concat(o+1),gotoValue:f,gotoValueSelectedColumnName:h,gotoRowError:"",gotoValueError:""})}commitPending(){var e=this;return da(function*(){var t,r,{model:i}=e.props;if(!He(i)||!i.isEditable)throw new Error("Cannot save, table is not editable");var{pendingSavePromise:a}=e.state;if(a!=null)throw new Error("Save already in progress");var l=(t=document)===null||t===void 0||(r=t.activeElement)===null||r===void 0?void 0:r.classList.contains("grid-cell-input-field");if(l!=null&&l){var s;if(document.activeElement!=null&&document.activeElement.classList.contains("error"))throw new nv("Current input is invalid");(s=e.grid)===null||s===void 0||s.focus()}var o=e.pending.add(i.commitPending()).then(()=>{e.setState({pendingSaveError:null,pendingSavePromise:null})}).catch(u=>{st.isCanceled(u)||e.setState({pendingSaveError:u,pendingSavePromise:null})});return e.setState({pendingSavePromise:o}),o})()}discardPending(){var e=this;return da(function*(){var{pendingSavePromise:t}=e.state;if(t!=null)throw new Error("Cannot cancel a save in progress");e.setState({pendingSavePromise:null,pendingSaveError:null,pendingDataMap:new Map,pendingDataErrors:new Map})})()}selectColumn(e){var{onColumnSelected:t}=this.props;t(e)}selectData(e,t){for(var r=this,{model:i}=this.props,{columns:a,groupedColumns:l}=i,s={},o=function(){var v=a[u],{name:m,type:f}=v,g=i.valueForCell(u,t),p=i.textForCell(u,t),C=r.getVisibleColumn(u),S=xe(i)&&i.isRowExpandable(t),b=l.find(w=>w.name===m)!=null;s[m]={value:g,text:p,type:f,isGrouped:b,isExpandable:S,visibleIndex:C}},u=0;u<a.length;u+=1)o();var{onDataSelected:d}=this.props;d(t,s)}handleAdvancedFilterChange(e,t,r){var{model:i}=this.props,a=i.getColumnIndexByName(e.name);L(a),this.setAdvancedFilter(a,t,r)}handleAdvancedFilterSortChange(e,t){var r,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{model:a}=this.props,l=a.getColumnIndexByName(e.name);L(l);var s=a.columns[l].name,o=x.getSortForColumn(a.sort,s),u=null;(o==null||o.direction!==t)&&(t===x.sortDirection.descending?u=e.sort().desc():u=e.sort().asc());var d=x.setSortForColumn(a.sort,s,u,i);ue.info("Setting table sorts",d),this.startLoading("Sorting..."),this.setState({sorts:d}),(r=this.grid)===null||r===void 0||r.forceUpdate()}handleAdvancedFilterDone(){var e;(e=this.grid)===null||e===void 0||e.focus()}handleAdvancedMenuOpened(e){this.setState({shownAdvancedFilter:e})}handleGotoRowOpened(){this.setState({isGotoShown:!0})}handleGotoRowClosed(){this.setState({isGotoShown:!1})}handleAdvancedMenuClosed(e){var t,{focusedFilterBarColumn:r,isFilterBarShown:i}=this.state;if(i&&r===e&&((t=this.filterInputRef)===null||t===void 0?void 0:t.current)!==null){var a;(a=this.filterInputRef)===null||a===void 0||a.current.focus(),this.setState({shownAdvancedFilter:null})}else this.setState({focusedFilterBarColumn:null,shownAdvancedFilter:null})}handleCancel(){this.rollback()}handleChartChange(){}handleChartCreate(e){var{model:t,onCreateChart:r}=this.props;r(e,t)}handleGridError(e){ue.warn("Grid Error",e),this.setState({toastMessage:c.jsx("div",{className:"error-message",children:"".concat(e)})})}handleFilterBarChange(e){this.startLoading("Filtering...",!0),this.setState(t=>{var{focusedFilterBarColumn:r,quickFilters:i}=t,a=new Map(i);if(r!=null){var l=this.getModelColumn(r);L(l),this.applyQuickFilter(l,e,a)}return{quickFilters:a}})}handleFilterBarDone(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(e){var r;(r=this.grid)===null||r===void 0||r.focus()}t&&this.setState({focusedFilterBarColumn:null})}handleFilterBarTab(e){var{focusedFilterBarColumn:t}=this.state;L(t),e?this.focusFilterBar(t-1):this.focusFilterBar(t+1)}handleFormatSelection(e,t){var{model:r}=this.props,i=r.columns[e],{customColumnFormatMap:a}=this.state,l=new Map(a);if(t!=null){var s=x.getNormalizedType(i.type);L(s);var o=Pr.makeColumnFormattingRule(s,i.name,t);l.set(i.name,o)}else l.delete(i.name);this.updateFormatter({customColumnFormatMap:l})}handleMenu(e){e.stopPropagation(),this.setState({isMenuShown:!0})}handleMenuClose(){this.setState({isMenuShown:!1,openOptions:[]})}handleMenuBack(){this.setState(e=>{var{openOptions:t}=e,r=[...t];return r.pop(),{openOptions:r}})}handleMenuSelect(e){this.setState(t=>{var{openOptions:r}=t;return{openOptions:[...r,e]}})}handleRequestFailed(e){var t=e;if(ue.error("request failed:",t.detail),this.stopLoading(),this.canRollback())this.startLoading("Rolling back changes...",!0),this.rollback();else{ue.error("Table failed and unable to rollback");var{onError:r}=this.props;r(new Error("Error displaying table: ".concat(t.detail)))}}handleUpdate(){var e;ue.debug2("Received model update");var{advancedFilters:t,aggregationSettings:r,customColumns:i,quickFilters:a,reverseType:l,rollupConfig:s,searchFilter:o,selectDistinctColumns:u,sorts:d}=this.state,h={advancedFilters:t,aggregationSettings:r,customColumns:i,quickFilters:a,reverseType:l,rollupConfig:s,searchFilter:o,selectDistinctColumns:u,sorts:d};Qu(h)?this.lastLoadedConfig=null:this.lastLoadedConfig=h,(e=this.grid)===null||e===void 0||e.forceUpdate(),this.stopLoading()}handleViewChanged(e){var t,r,{model:i}=this.props,{selectionEndRow:a=0}=(t=(r=this.grid)===null||r===void 0?void 0:r.state)!==null&&t!==void 0?t:{},l=0;if(He(i)&&i.isEditable){L(e);var{bottomViewport:s}=e,o=i.rowCount-i.floatingBottomRowCount;a===o-1?l=i.pendingRowCount+1:a===o-2?l=i.pendingRowCount:l=Math.max(0,s-(i.rowCount-i.pendingRowCount)-i.floatingTopRowCount-i.floatingBottomRowCount-1)}this.setState({metrics:e,pendingRowCount:l})}handleSelectionChanged(e){var t;L(e);var{onSelectionChanged:r}=this.props,{copyOperation:i}=this.state;this.setState({selectedRanges:e}),i!=null&&this.setState({copyOperation:null}),((t=this.grid)===null||t===void 0?void 0:t.state.cursorRow)!=null&&this.setState({gotoRow:"".concat(this.grid.state.cursorRow+1)}),r(e)}handleMovedColumnsChanged(e,t){this.setState({movedColumns:e},t)}handleHeaderGroupsChanged(e){var{model:t}=this.props;this.setState({columnHeaderGroups:fe.parseColumnHeaderGroups(t,e).groups},()=>{var r;return(r=this.grid)===null||r===void 0?void 0:r.forceUpdate()})}handleTooltipRef(e){e?.startTimer(),this.tooltip=e}handleConditionalFormatsChange(e){ue.debug("Updated conditional formats",e),this.setState({conditionalFormats:e})}handleConditionalFormatCreate(){ue.debug("Create new conditional format");var{openOptions:e,conditionalFormats:t}=this.state;this.setState({openOptions:[...e,{type:Fe.CONDITIONAL_FORMATTING_EDIT,title:"Create Formatting Rule"}],conditionalFormatEditIndex:t.length,conditionalFormatPreview:void 0})}handleConditionalFormatEdit(e){ue.debug("Edit conditional format",e);var{openOptions:t,conditionalFormats:r}=this.state;this.setState({openOptions:[...t,{type:Fe.CONDITIONAL_FORMATTING_EDIT,title:"Edit Formatting Rule"}],conditionalFormatEditIndex:e,conditionalFormatPreview:yt({},r[e])})}handleConditionalFormatEditorSave(e){ue.debug("Save conditional format changes",e),this.setState(t=>{if(t.conditionalFormatEditIndex===null)return ue.debug("Invalid format index"),null;var r=[...t.conditionalFormats];return r[t.conditionalFormatEditIndex]=e,{conditionalFormats:r}},()=>{this.handleMenuBack()})}handleConditionalFormatEditorCancel(){this.handleMenuBack(),this.setState({conditionalFormatEditIndex:null})}handleUpdateCustomColumns(e){ue.info("handleUpdateCustomColumns:",e);var{model:t}=this.props,{movedColumns:r,sorts:i,quickFilters:a,advancedFilters:l,selectDistinctColumns:s}=this.state,{columns:o}=t,u=t.customColumns.map(p=>"".concat(p)),d=fe.getRemovedCustomColumnNames(u,e);if(d.length>0){var h=fe.removeSortsInColumns(i,d),v=fe.removeFiltersInColumns(o,a,d),m=fe.removeFiltersInColumns(o,l,d),f=fe.removeColumnFromMovedColumns(o,r,d),g=fe.removeColumnsFromSelectDistinctColumns(s,d);h.length!==i.length&&(ue.debug("removing sorts from removed custom columns..."),this.setState({sorts:h})),(v.size!==a.size||m.size!==l.size)&&(ue.debug("removing filters from removed custom columns..."),this.setState({quickFilters:v,advancedFilters:m})),ht(r,f)||(ue.debug("change moved columns for removed custom columns",f),this.setState({movedColumns:f})),ht(s,g)||(ue.debug("change selectDistinct columns for removed custom columns",f),this.setState({selectDistinctColumns:g}))}this.setState({customColumns:e}),e.length>0&&this.startLoading("Applying custom columns...")}handleCustomColumnsChanged(){ue.debug("custom columns changed");var{isReady:e}=this.state;if(e){var t;this.stopLoading(),(t=this.grid)===null||t===void 0||t.forceUpdate()}else this.initState()}handlePendingCommitClicked(){return this.commitPending()}handlePendingDiscardClicked(){return this.discardPending()}handlePendingDataUpdated(){var e;ue.debug("pending data updated");var{model:t}=this.props,{pendingDataMap:r,pendingDataErrors:i}=t;this.setState({pendingDataMap:r,pendingDataErrors:i,pendingSaveError:null}),(e=this.grid)===null||e===void 0||e.forceUpdate()}handleAggregationsChange(e){ue.debug("handleAggregationsChange",e),this.startLoading("Aggregating ".concat(e.aggregations.map(t=>t.operation).join(", "),"...")),this.setState({aggregationSettings:e})}handleAggregationChange(e){ue.debug("handleAggregationChange",e),this.startLoading("Aggregating ".concat(e.operation,"...")),this.setState(t=>{var{aggregationSettings:r}=t;return{selectedAggregation:e,aggregationSettings:yt(yt({},r),{},{aggregations:r.aggregations.map(i=>i.operation===e.operation?e:i)})}})}handleAggregationEdit(e){ue.debug("handleAggregationEdit",e);var{openOptions:t}=this.state;this.setState({openOptions:[...t,{type:Fe.AGGREGATION_EDIT,title:"Edit Columns to ".concat(e.operation)}],selectedAggregation:e})}handleRollupChange(e){var t,r;ue.info("Rollup change",e),this.resetGridViewState(),this.showAllColumns(),this.clearAllFilters(),this.startLoading("Grouping by columns ".concat((t=e==null||(r=e.columns)===null||r===void 0?void 0:r.join(", "))!==null&&t!==void 0?t:"","...")),this.setState({rollupConfig:e,movedColumns:[],frozenColumns:[],sorts:[],reverseType:x.REVERSE_TYPE.NONE,selectDistinctColumns:[]})}handleSelectDistinctChanged(e){ue.debug("SelectDistinct change",e),this.resetGridViewState(),this.showAllColumns(),this.clearAllFilters(),this.startLoading("Selecting distinct values in ".concat(e.length>0?e.join(", "):"","...")),this.setState({selectDistinctColumns:e,movedColumns:[],sorts:[],reverseType:x.REVERSE_TYPE.NONE})}handleDownloadTableStart(){var{canDownloadCsv:e}=this.props;e?this.setState({isTableDownloading:!0,tableDownloadProgress:0,tableDownloadEstimatedTime:null,tableDownloadStatus:vn.DOWNLOAD_STATUS.INITIATING}):ue.error("Attempted to handleDownloadTableStart for user without download CSV permission.")}handleDownloadTable(e,t,r,i,a,l,s){var{canDownloadCsv:o}=this.props;o?(ue.info("start table downloading",e,t,r,i,a,l,s),this.setState(()=>(this.tableSaver&&this.tableSaver.startDownload(e,t,r,i,a,l,s),{tableDownloadStatus:vn.DOWNLOAD_STATUS.DOWNLOADING}))):ue.error("Attempted to handleDownloadTable for user without download CSV permission.")}seekRow(e){var t=arguments,r=this;return da(function*(){var i,a=t.length>1&&t[1]!==void 0?t[1]:!1,{gotoValueSelectedColumnName:l,gotoValueSelectedFilter:s}=r.state,{model:o}=r.props,{dh:u}=o;if(o.isSeekRowAvailable&&e!==""){var d=fe.getColumnByName(o.columns,l);if(d!==void 0){var h=(i=r.grid)===null||i===void 0?void 0:i.state.cursorRow;h==null&&(h=0);var v=s===Ce.contains||s===Ce.containsIgnoreCase,m=s===Ce.eqIgnoreCase||s===Ce.containsIgnoreCase;try{var f,{formatter:g}=o,p=x.getNormalizedType(d.type),C;switch(p){case x.dataType.CHAR:case x.dataType.STRING:{C=yield o.seekRow(h,d,u.ValueType.STRING,e,m,v,a??!1);break}case x.dataType.DATETIME:{var[S]=Tn.parseDateRange(u,e,g.timeZone);C=yield o.seekRow(h,d,u.ValueType.DATETIME,S,void 0,void 0,a??!1);break}case x.dataType.DECIMAL:case x.dataType.INT:{if(!x.isBigDecimalType(d.type)&&!x.isBigIntegerType(d.type)){var b=parseInt(e,10);e==="-Infinity"?b=Number.NEGATIVE_INFINITY:e==="Infinity"&&(b=Number.POSITIVE_INFINITY),C=yield o.seekRow(h,d,u.ValueType.NUMBER,b,void 0,void 0,a??!1)}else C=yield o.seekRow(h,d,u.ValueType.STRING,e,void 0,void 0,a??!1);break}default:C=yield o.seekRow(h,d,u.ValueType.STRING,r.tableUtils.makeValue(d.type,e,g.timeZone),void 0,void 0,a??!1)}(f=r.grid)===null||f===void 0||f.setFocusRow(C),r.setState({gotoValueError:""})}catch{r.setState({gotoValueError:"invalid input"})}}}})()}handleCancelDownloadTable(){var e;(e=this.tableSaver)===null||e===void 0||e.cancelDownload(),this.setState({isTableDownloading:!1})}handleDownloadCompleted(){this.setState({isTableDownloading:!1,tableDownloadProgress:100,tableDownloadStatus:vn.DOWNLOAD_STATUS.FINISHED})}handleDownloadCanceled(){this.setState({isTableDownloading:!1,tableDownloadProgress:0,tableDownloadStatus:vn.DOWNLOAD_STATUS.CANCELED})}deleteRanges(e){var{model:t}=this.props;this.pending.add(t.delete(e)).catch(r=>{st.isCanceled(r)||ue.error("Unable to delete ranges",e,r)})}resetColumnSelection(){if(this.grid!=null){var{isSelectingColumn:e}=this.props;if(e){var{columnAllowedCursor:t}=this.props;this.grid.setState({cursor:t})}else this.grid.setState({cursor:null}),this.setState({hoverSelectColumn:null})}}resetGridViewState(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;this.grid&&(this.grid.clearSelectedRanges(),this.grid.setViewState({left:0,top:0,topOffset:0,leftOffset:0},e))}sendStateChange(){if(this.grid){var{state:e}=this,{state:t}=this.grid,{onStateChange:r}=this.props;r(e,t)}}handleOverflowClose(){this.setState({showOverflowModal:!1})}getColumnBoundingRect(){var e,{metrics:t,shownColumnTooltip:r}=this.state;L(t),L(r);var i=(e=this.gridWrapper)===null||e===void 0?void 0:e.getBoundingClientRect(),a=20;L(i);var{columnHeaderHeight:l,allColumnXs:s,allColumnWidths:o,width:u,columnHeaderMaxDepth:d}=t,h=s.get(r),v=o.get(r);L(h),L(v);var m=i.left+Ae(h+v/2,a,u-a);return{top:i.top+(d-1)*l,left:i.left+Ae(h+v/2,a,u-a),bottom:i.top+d*l,right:i.left+Ae(h+v/2,a,u-a)+1,width:1,height:l,x:m,y:i.top,toJSON:()=>{throw new Error("not implemented")}}}handleGotoRowSelectedRowNumberSubmit(){var{gotoRow:e}=this.state;this.focusRowInGrid(e)}focusRowInGrid(e){var{model:t}=this.props,{rowCount:r}=t;if(this.setState({gotoRow:e}),e===""){this.setState({gotoRowError:"",gotoValueError:""});return}var i=parseInt(e,10);if(i>r||i<-r)this.setState({gotoRowError:"Invalid row index"});else if(i===0){var a;this.setState({gotoRowError:"",gotoValueError:""}),(a=this.grid)===null||a===void 0||a.setFocusRow(0)}else if(i<0){var l;this.setState({gotoRowError:"",gotoValueError:""}),(l=this.grid)===null||l===void 0||l.setFocusRow(i+r)}else{var s;(s=this.grid)===null||s===void 0||s.setFocusRow(i-1),this.setState({gotoRowError:"",gotoValueError:""})}}handleGotoRowSelectedRowNumberChanged(e){var t=e.target.value;this.focusRowInGrid(t)}getColumnTooltip(e,t,r){var{columnHeaderHeight:i,columnHeaderMaxDepth:a,allColumnXs:l,allColumnWidths:s,width:o}=t,u=l.get(e),d=s.get(e);if(u==null||d==null)return null;var h=Math.max(0,u),v=d;u+d>o?v=o-u:u<0&&(v=d-Math.abs(u));var m={position:"absolute",top:(a-1)*i,left:h,width:v,height:i,pointerEvents:"none"},f={clientWidth:1,clientHeight:i,getBoundingClientRect:this.getColumnBoundingRect},g={placement:"bottom",modifiers:{flip:{behavior:["bottom","top"]}}},p=this.getModelColumn(e);if(p==null)return null;var C=r.columns[p];return C==null?null:c.jsx("div",{style:m,children:c.jsx(Jt,{timeout:400,interactive:!0,options:g,ref:this.handleTooltipRef,referenceObject:f,onExited:()=>{this.setState({shownColumnTooltip:null})},children:c.jsx(TS,{model:r,column:C,onStatistics:()=>{var S;(S=this.tooltip)===null||S===void 0||S.update()}})},C.name)})}handleGotoValueSelectedColumnNameChanged(e){var t,{model:r}=this.props,i=(t=this.grid)===null||t===void 0?void 0:t.state.cursorRow;if(i!=null){var a=r.getColumnIndexByName(e),l=fe.getColumnByName(r.columns,e);if(a==null||l==null)return;var s=r.valueForCell(a,i),o=fe.convertValueToText(s,l.type);this.setState({gotoValueSelectedColumnName:e,gotoValue:o,gotoValueError:""})}this.setState({gotoValueSelectedColumnName:e,gotoValueError:""})}handleGotoValueSelectedFilterChanged(e){this.setState({gotoValueSelectedFilter:e,gotoValueError:""})}handleGotoValueSubmitted(e){var{gotoValue:t}=this.state;this.seekRow(t,e)}render(){var e,t,r=this,i,a,l,{children:s,customFilters:o,getDownloadWorker:u,isSelectingColumn:d,isStuckToBottom:h,isStuckToRight:v,model:m,name:f,onlyFetchVisibleColumns:g,alwaysFetchColumns:p,advancedSettings:C,onAdvancedSettingsChange:S,canDownloadCsv:b,onCreateChart:w,onPartitionAppend:y}=this.props,{metricCalculator:T,metrics:E,isFilterBarShown:P,isSelectingPartition:O,isMenuShown:D,isReady:N,copyOperation:F,focusedFilterBarColumn:A,loadingText:j,loadingScrimProgress:k,loadingSpinnerShown:B,keyHandlers:G,mouseHandlers:W,shownColumnTooltip:z,hoverAdvancedFilter:q,shownAdvancedFilter:V,hoverSelectColumn:I,quickFilters:_,advancedFilters:H,partition:X,partitionFilters:Q,partitionTable:ne,partitionColumn:se,searchFilter:ie,selectDistinctColumns:de,movedColumns:he,movedRows:Le,formatter:Ze,conditionalFormats:Je,conditionalFormatPreview:Ye,conditionalFormatEditIndex:Ue,sorts:et,reverseType:De,customColumns:it,selectedRanges:mt,isTableDownloading:$t,tableDownloadStatus:Pt,tableDownloadProgress:Rr,tableDownloadEstimatedTime:tr,showSearchBar:_t,searchValue:ot,selectedSearchColumns:rr,invertSearchColumns:Wt,aggregationSettings:pt,selectedAggregation:Ht,rollupConfig:Rt,openOptions:Ct,pendingSavePromise:zt,pendingSaveError:Dt,pendingRowCount:Hr,pendingDataErrors:Dr,pendingDataMap:gr,toastMessage:Kt,frozenColumns:pr,columnHeaderGroups:Ur,showOverflowModal:xn,overflowText:ni,overflowButtonTooltipProps:Ln,expandCellTooltipProps:kn,linkHoverTooltipProps:jn,isGotoShown:_e,gotoRow:Vi,gotoRowError:ii,gotoValueError:Bi,gotoValueSelectedColumnName:hn,gotoValue:Gi,gotoValueSelectedFilter:Cr}=this.state;if(!N)return null;var Vr=this.getTheme(),$i=this.getCachedFilter(o,_,H,Q,ie),ai=T.getUserColumnWidths(),Ja=this.getCachedStateOverride(I,P,d,k,_,H,et,De,Rt,D),el=E?E.top:0,tl=E?E.bottomViewport:0,Wi=null,zi=null;g&&(Wi=E?E.left:0,zi=E?E.right:0);var rl=E!=null&&E.width>0&&E.height>0,Ki=((e=Rt==null||(t=Rt.columns)===null||t===void 0?void 0:t.length)!==null&&e!==void 0?e:0)>0,Yi=null,nl=E?Math.min(Math.max(Or.minDebounce,Math.round(E.rowCount/200)),Or.maxDebounce):Or.maxDebounce;if(P&&A!=null&&E!=null){var{gridX:il,gridY:al,allColumnXs:Fr,allColumnWidths:li,width:Sc}=E,zs=Fr.get(A),Ks=li.get(A);if(zs!=null&&Ks!=null){var ll,sl,ol,Ys=il+zs,bc=al-((ll=Vr.filterBarHeight)!==null&&ll!==void 0?ll:0),wc=Ks+1,yc=((sl=Vr.filterBarHeight)!==null&&sl!==void 0?sl:0)-1,Tc={top:bc,left:Ys,minWidth:Math.min(wc,Sc-Ys),height:yc},ul="",qs=!0,dl=this.getModelColumn(A);L(dl);var hl=_.get(dl),Xs=H.get(dl);hl!=null&&(ul=hl.text,qs=hl.filter!=null);var Ec=_.size!==0||H.size!==0;Yi=c.jsx(Lp,{ref:this.filterInputRef,style:Tc,className:re({error:!qs,active:ul!==""||Xs!=null,"iris-grid-has-filter":Ec}),isAdvancedFilterSet:Xs!=null,onAdvancedFiltersTriggered:()=>{this.setState({shownAdvancedFilter:A})},onChange:this.handleFilterBarChange,onDone:this.handleFilterBarDone,onTab:this.handleFilterBarTab,onContextMenu:(ol=this.grid)===null||ol===void 0?void 0:ol.handleContextMenu,debounceMs:nl,value:ul},A)}}var Qs=null;if(j!=null){var Oc=c.jsxs("div",{className:"iris-grid-loading-status",children:[c.jsx("div",{className:re("iris-grid-loading-status-bar",{show:B}),children:j}),c.jsxs("button",{type:"button",onClick:this.handleCancel,className:re("iris-grid-btn-cancel",{show:B}),children:[c.jsx(ae,{icon:Ts,transform:"down-1"}),"Cancel"]})]}),Pc=E?E.gridY:0;Qs=c.jsx("div",{className:"iris-grid-loading",style:{top:Pc},children:Oc})}var Zs=null;if(z!=null&&E){var cl;Zs=this.getColumnTooltip(z,E,m),(cl=this.tooltip)===null||cl===void 0||cl.update()}var Js=[];if(E&&P)for(var{gridX:Rc,gridY:Dc,visibleColumns:eo,allColumnXs:Fc,allColumnWidths:Nc}=E,{filterBarHeight:vl}=Vr,Ic=function(){var $e=eo[ml],Br=Fc.get($e),Gr=Nc.get($e),si=r.getModelColumn($e);if(si!=null){var gl=m.isFilterable(si);if(gl&&Br!=null&&Gr!=null&&Gr>0){var pl=Rc+Br+Gr-24,_n=Dc-(vl??0)+2,oi={position:"absolute",top:_n,left:pl},Cl=H.get(si),qi=Cl!=null,ui=$e===q||$e===A||qi,Sl=c.jsx("div",{className:re("advanced-filter-button-container",{hidden:!ui}),style:oi,children:ui&&c.jsx(Y,{kind:"ghost",className:re("btn-link-icon advanced-filter-button",{"filter-set":qi}),onClick:()=>{r.setState({shownAdvancedFilter:$e})},onContextMenu:bl=>{var wl;(wl=r.grid)===null||wl===void 0||wl.handleContextMenu(bl)},onMouseEnter:()=>{r.setState({hoverAdvancedFilter:$e})},onMouseLeave:()=>{r.setState({hoverAdvancedFilter:null})},children:c.jsxs("div",{className:"fa-layers",children:[c.jsx(ae,{icon:ps,className:"filter-solid"}),c.jsx(ae,{icon:ya,className:"filter-light"})]})})},$e);Js.push(Sl)}}},ml=0;ml<eo.length;ml+=1)Ic();var to=[];if(E)for(var{gridX:ro,visibleColumns:no,allColumnXs:Ac,allColumnWidths:Mc,columnHeaderHeight:io}=E,xc=function(){var $e=no[fl],Br=Ac.get($e),Gr=Mc.get($e);if(Br!=null&&Gr!=null&&Gr>0){var si=ro+Br,gl=ro+Br+Gr-20,pl=P?{position:"absolute",top:io,left:gl,width:20,height:Vr.filterBarHeight}:{position:"absolute",top:0,left:si,width:Gr,height:io},_n=r.getModelColumn($e);if(_n!=null){var oi=m.columns[_n];if(oi==null)return ue.warn("Column does not exist at index ".concat(_n," for column array of length ").concat(m.columns.length)),"continue";var Cl=H.get(_n),{options:qi}=Cl||{},ui=x.getSortForColumn(m.sort,oi.name),Sl=ui?ui.direction:null,bl=c.jsx("div",{className:"advanced-filter-menu-container",style:pl,children:c.jsx(eh,{className:"advanced-filter-menu-popper",onEntered:r.getAdvancedMenuOpenedHandler($e),onExited:()=>{r.handleAdvancedMenuClosed($e)},isShown:V===$e,interactive:!0,closeOnBlur:!0,options:{positionFixed:!0},children:r.getCachedAdvancedFilterMenuActions(m,oi,qi,Sl,Ze)})},$e);to.push(bl)}}},fl=0;fl<no.length;fl+=1)var Lc=xc();var ao=this.getCachedOptionItems(w!==void 0&&m.isChartBuilderAvailable,m.isCustomColumnsAvailable,m.isFormatColumnsAvailable,m.isRollupAvailable,m.isTotalsAvailable||Ki,m.isSelectDistinctAvailable,m.isExportAvailable,this.toggleFilterBarAction,this.toggleSearchBarAction,this.toggleGotoRowAction,P,_t,b,this.isTableSearchAvailable(),_e,C.size>0),lo=this.getCachedHiddenColumns(T,ai),kc=Ct.map(ft=>{switch(ft.type){case Fe.CHART_BUILDER:return c.jsx(Sb,{model:m,onChange:this.handleChartChange,onSubmit:this.handleChartCreate},Fe.CHART_BUILDER);case Fe.VISIBILITY_ORDERING_BUILDER:return c.jsx(zw,{model:m,movedColumns:he,hiddenColumns:lo,columnHeaderGroups:Ur,onColumnVisibilityChanged:this.handleColumnVisibilityChanged,onReset:this.handleColumnVisibilityReset,onMovedColumnsChanged:this.handleMovedColumnsChanged,onColumnHeaderGroupChanged:this.handleHeaderGroupsChanged},Fe.VISIBILITY_ORDERING_BUILDER);case Fe.CONDITIONAL_FORMATTING:return c.jsx(fy,{rules:Je,onChange:this.handleConditionalFormatsChange,onCreate:this.handleConditionalFormatCreate,onSelect:this.handleConditionalFormatEdit});case Fe.CONDITIONAL_FORMATTING_EDIT:return L(m.columns),L(this.handleConditionalFormatEditorUpdate),c.jsx(Yy,{dh:m.dh,columns:m.columns,rule:Ye,onUpdate:this.handleConditionalFormatEditorUpdate,onSave:this.handleConditionalFormatEditorSave,onCancel:this.handleConditionalFormatEditorCancel});case Fe.CUSTOM_COLUMN_BUILDER:return c.jsx(Mb,{model:m,customColumns:it,onSave:this.handleUpdateCustomColumns,onCancel:this.handleMenuBack},Fe.CUSTOM_COLUMN_BUILDER);case Fe.ROLLUP_ROWS:return c.jsx(jb,{model:m,onChange:this.handleRollupChange,config:Rt},Fe.ROLLUP_ROWS);case Fe.AGGREGATIONS:return c.jsx(HS,{settings:pt,isRollup:Ki,onChange:this.handleAggregationsChange,onEdit:this.handleAggregationEdit});case Fe.AGGREGATION_EDIT:return Ht&&c.jsx($S,{aggregation:Ht,columns:m.originalColumns,onChange:this.handleAggregationChange});case Fe.TABLE_EXPORTER:return c.jsx(vn,{model:m,name:f,userColumnWidths:ai,movedColumns:he,isDownloading:$t,tableDownloadStatus:Pt,tableDownloadProgress:Rr,tableDownloadEstimatedTime:tr??void 0,onDownload:this.handleDownloadTable,onDownloadStart:this.handleDownloadTableStart,onCancel:this.handleCancelDownloadTable,selectedRanges:mt},Fe.TABLE_EXPORTER);case Fe.SELECT_DISTINCT:return c.jsx(uy,{model:m,selectDistinctColumns:de,onChange:this.handleSelectDistinctChanged});case Fe.ADVANCED_SETTINGS:return c.jsx(ks,{items:C,onChange:S});default:throw Error("Unexpected option type ".concat(ft.type))}});return c.jsxs("div",{className:"iris-grid",role:"presentation",children:[c.jsxs("div",{className:"iris-grid-column",children:[s!=null&&c.jsx("div",{className:"iris-grid-bar",children:s}),c.jsx(vr,{in:O,timeout:ze.transitionSlowMs,classNames:"iris-grid-bar-horizontal",onEnter:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExit:this.handleAnimationStart,onExited:this.handleAnimationEnd,mountOnEnter:!0,unmountOnExit:!0,children:c.jsx("div",{className:"iris-grid-partition-selector-wrapper iris-grid-bar iris-grid-bar-primary",children:ne&&se&&X!=null&&c.jsx(iy,{dh:m.dh,table:ne,getFormattedString:(ft,$e,Br)=>m.displayString(ft,$e,Br),column:se,partition:X,onChange:this.handlePartitionChange,onFetchAll:this.handlePartitionFetchAll,onAppend:y!==void 0?this.handlePartitionAppend:void 0,onDone:this.handlePartitionDone})})}),c.jsx(vr,{in:_t,timeout:ze.transitionSlowMs,classNames:"iris-grid-bar-horizontal",onEnter:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExit:this.handleAnimationStart,onExited:this.handleAnimationEnd,mountOnEnter:!0,unmountOnExit:!0,children:c.jsx("div",{className:"iris-grid-bar",children:c.jsx(ua,{value:ot,selectedColumns:rr,invertSelection:Wt,onChange:this.handleCrossColumnSearch,columns:m.columns,ref:this.crossColumnRef})})}),c.jsxs("div",{className:"grid-wrapper",ref:ft=>{this.gridWrapper=ft},children:[c.jsx(Ag,{ref:ft=>{this.grid=ft},isStickyBottom:!He(m)||!m.isEditable,isStuckToBottom:h,isStuckToRight:v,metricCalculator:T,model:m,keyHandlers:G,mouseHandlers:W,movedColumns:he,movedRows:Le,onError:this.handleGridError,onViewChanged:this.handleViewChanged,onSelectionChanged:this.handleSelectionChanged,onMovedColumnsChanged:this.handleMovedColumnsChanged,renderer:this.renderer,stateOverride:Ja,theme:Vr}),c.jsx(qy,{isOpen:xn,text:ni,onClose:this.handleOverflowClose}),rl&&c.jsx(aS,{model:m,modelColumns:m.columns,top:el,bottom:tl,left:Wi,right:zi,filter:$i,formatter:Ze,sorts:et,reverseType:De,movedColumns:he,customColumns:it,hiddenColumns:lo,alwaysFetchColumns:this.getAlwaysFetchColumns(p,m.columns,he,m.floatingLeftColumnCount,m.floatingRightColumnCount,(i=this.grid)===null||i===void 0||(a=i.state.draggingColumn)===null||a===void 0?void 0:a.range),formatColumns:this.getCachedPreviewFormatColumns(m.dh,m.columns,Je,Ye,((l=Ct[Ct.length-1])===null||l===void 0?void 0:l.type)===Fe.CONDITIONAL_FORMATTING_EDIT?Ue??void 0:void 0),rollupConfig:this.getModelRollupConfig(m.originalColumns,Rt,pt),totalsConfig:this.getModelTotalsConfig(m.columns,Rt,pt),selectDistinctColumns:de,pendingRowCount:Hr,pendingDataMap:gr,frozenColumns:pr,columnHeaderGroups:Ur}),!D&&c.jsx("div",{className:"grid-settings-button",children:c.jsx(Y,{kind:"ghost","data-testid":"btn-iris-grid-settings-button-".concat(f),onClick:this.handleMenu,icon:c.jsx(ae,{icon:pm,transform:"up-1"}),tooltip:"Table Options"})}),Yi,Qs,Js,Zs,to,Ln&&this.getOverflowButtonTooltip(Ln),kn&&this.getExpandCellTooltip(kn),jn&&this.getLinkHoverTooltip(jn)]}),c.jsx(Zy,{ref:this.gotoRowRef,model:m,isShown:_e,gotoRow:Vi,gotoRowError:ii,gotoValueError:Bi,onGotoRowSubmit:this.handleGotoRowSelectedRowNumberSubmit,onGotoRowNumberChanged:this.handleGotoRowSelectedRowNumberChanged,onClose:this.handleGotoRowClosed,onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:()=>{this.handleAnimationStart(),this.focus()},onExited:this.handleAnimationEnd,gotoValueSelectedColumnName:hn,gotoValue:Gi,gotoValueFilter:Cr,onGotoValueSelectedColumnNameChanged:this.handleGotoValueSelectedColumnNameChanged,onGotoValueSelectedFilterChanged:this.handleGotoValueSelectedFilterChanged,onGotoValueChanged:this.handleGotoValueChanged,onGotoValueSubmit:this.handleGotoValueSubmitted}),c.jsx(fp,{error:Dt,isSaving:zt!=null,saveTooltip:"Commit (".concat(this.commitAction.shortcut.getDisplayText(),")"),discardTooltip:"Discard (".concat(this.discardAction.shortcut.getDisplayText(),")"),pendingDataErrors:Dr,pendingDataMap:gr,onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:this.handleAnimationStart,onExited:this.handleAnimationEnd,onSave:this.handlePendingCommitClicked,onDiscard:this.handlePendingDiscardClicked}),c.jsx(tS,{children:Kt}),c.jsx(Ap,{model:m,copyOperation:F??void 0,onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:this.handleAnimationStart,onExited:this.handleAnimationEnd}),c.jsx(Lt,{dh:m.dh,ref:ft=>{this.tableSaver=ft},getDownloadWorker:u,onDownloadCompleted:this.handleDownloadCompleted,onDownloadCanceled:this.handleDownloadCanceled,onDownloadProgressUpdate:this.handleDownloadProgressUpdate,isDownloading:Pt===vn.DOWNLOAD_STATUS.DOWNLOADING,formatter:Ze})]}),c.jsx(vr,{in:D,timeout:ze.transitionMidMs,classNames:"slide-left",onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:this.handleAnimationStart,onExited:this.handleAnimationEnd,mountOnEnter:!0,unmountOnExit:!0,children:c.jsx("div",{className:"table-sidebar",children:c.jsxs(Nv,{children:[c.jsx(ho,{title:"Table Options",onClose:this.handleMenuClose,children:c.jsx(th,{onSelect:ft=>this.handleMenuSelect(ao[ft]),items:ao})}),kc.map((ft,$e)=>c.jsx(ho,{title:Ct[$e].title,onBack:this.handleMenuBack,onClose:this.handleMenuClose,children:ft},Ct[$e].type))]})})}),c.jsx(ce,{actions:this.contextActions})]})}}le(Or,"minDebounce",150);le(Or,"maxDebounce",500);le(Or,"loadingSpinnerDelay",800);le(Or,"defaultProps",{children:null,advancedFilters:xr,advancedSettings:xr,alwaysFetchColumns:Re,conditionalFormats:Re,customColumnFormatMap:xr,isFilterBarShown:!1,applyInputFiltersOnInit:!1,movedColumns:Re,movedRows:Re,inputFilters:Re,customFilters:Re,onCreateChart:void 0,onColumnSelected:()=>{},onDataSelected:()=>{},onError:()=>{},onStateChange:()=>{},onAdvancedSettingsChange:()=>{},partition:null,partitionColumn:null,quickFilters:xr,selectDistinctColumns:Re,sorts:Re,reverseType:x.REVERSE_TYPE.NONE,customColumns:Re,aggregationSettings:qh,rollupConfig:void 0,userColumnWidths:xr,userRowHeights:xr,onSelectionChanged:()=>{},isSelectingColumn:!1,isSelectingPartition:!1,isStuckToBottom:!1,isStuckToRight:!1,columnSelectionValidator:null,columnAllowedCursor:null,columnNotAllowedCursor:null,name:"table",onlyFetchVisibleColumns:!0,showSearchBar:!1,searchValue:"",selectedSearchColumns:null,invertSearchColumns:!0,onContextMenu:()=>Re,pendingDataMap:xr,getDownloadWorker:rv.getServiceWorker,settings:{timeZone:"America/New_York",defaultDateTimeFormat:Tn.FULL_DATE_FORMAT,showTimeZone:!1,showTSeparator:!0,truncateNumbersWithPound:!1,formatter:Re,decimalFormatOptions:Z.shape({defaultFormatString:Z.string}),integerFormatOptions:Z.shape({defaultFormatString:Z.string})},canCopy:!0,canDownloadCsv:!0,frozenColumns:null,theme:Ah,canToggleSearch:!0});const Xh=Or;function Ll(n,e,t){return e=l0(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function l0(n){var e=s0(n,"string");return typeof e=="symbol"?e:String(e)}function s0(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class o0 extends Error{constructor(e,t){super("".concat(t," can't be empty (on pending row ").concat(e+1,")")),Ll(this,"isMissingKey",!0),Ll(this,"rowIndex",void 0),Ll(this,"columnName",void 0),this.rowIndex=e,this.columnName=t}}const u0=o0;function Zu(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 ha(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Zu(Object(t),!0).forEach(function(r){Oe(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Zu(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Ju(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function qr(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Ju(a,r,i,l,s,"next",o)}function s(o){Ju(a,r,i,l,s,"throw",o)}l(void 0)})}}function Oe(n,e,t){return e=d0(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function d0(n){var e=h0(n,"string");return typeof e=="symbol"?e:String(e)}function h0(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ve=ge.module("IrisGridTableModel"),c0=150,v0=0,m0=[];function bn(n){return n.table!==void 0}class qn extends ve{seekRow(e,t,r,i,a,l,s){throw new Error("Method not implemented.")}export(){throw new Error("Method not implemented.")}columnStatistics(e){throw new Error("Method not implemented.")}get customColumns(){return[]}set customColumns(e){throw new Error("Method not implemented.")}get formatColumns(){return[]}set formatColumns(e){throw new Error("Method not implemented.")}updateFrozenColumns(e){throw new Error("Method not implemented.")}get rollupConfig(){throw new Error("Method not implemented.")}set rollupConfig(e){throw new Error("Method not implemented.")}get selectDistinctColumns(){throw new Error("Method not implemented.")}set selectDistinctColumns(e){throw new Error("Method not implemented.")}get columns(){return this.table.columns}constructor(e,t){var r,i,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Pr(e),l=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e),Oe(this,"dh",void 0),Oe(this,"irisGridUtils",void 0),Oe(this,"tableUtils",void 0),Oe(this,"irisFormatter",void 0),Oe(this,"inputTable",void 0),Oe(this,"subscription",void 0),Oe(this,"table",void 0),Oe(this,"viewport",void 0),Oe(this,"viewportData",void 0),Oe(this,"formattedStringData",void 0),Oe(this,"pendingStringData",void 0),Oe(this,"isSaveInProgress",void 0),Oe(this,"totalsTable",void 0),Oe(this,"totalsTablePromise",void 0),Oe(this,"totals",void 0),Oe(this,"totalsDataMap",void 0),Oe(this,"pendingNewDataMap",void 0),Oe(this,"pendingNewRowCount",0),Oe(this,"_columnHeaderGroupMap",new Map),Oe(this,"columnHeaderParentMap",new Map),Oe(this,"_columnHeaderMaxDepth",null),Oe(this,"_columnHeaderGroups",[]),Oe(this,"_movedColumns",null),Oe(this,"getMemoizedInitialMovedColumns",be(s=>{var o;if(!s)return[];var u=[],{groupMap:d}=fe.parseColumnHeaderGroups(this,(o=s?.columnGroups)!==null&&o!==void 0?o:[]),h=(y,T)=>{var E=this.getColumnIndexByName(y);if(E==null)throw new Error("Unknown layout hint column: ".concat(y));var P=K.getVisibleIndex(E,u);u=K.moveItem(P,T,u)},v=(y,T)=>{var E=d.get(y);if(E==null)throw new Error("Unknown layout hint group: ".concat(y));var P=E.getVisibleRange(u);u=K.moveRange(P,T,u)},{frontColumns:m=[],backColumns:f=[],frozenColumns:g=[]}=s;if(m.length||f.length||g.length){var p=new Set,C=0;g.forEach(y=>{if(p.has(y))throw new Error("Column specified in multiple layout hints: ".concat(y));h(y,C),C+=1}),m.forEach(y=>{if(p.has(y))throw new Error("Column specified in multiple layout hints: ".concat(y));h(y,C),C+=1});var S=this.columnMap.size-1;f.forEach(y=>{if(p.has(y))throw new Error("Column specified in multiple layout hints: ".concat(y));h(y,S),S-=1})}var b=s?.columnGroups;if(b){var w=[...d.values()];w.sort((y,T)=>y.depth-T.depth),w.forEach(y=>{var T=y.children[0],E=this.getColumnIndexByName(T),P;if(E!=null)P=K.getVisibleIndex(E,u);else{var O=d.get(T);if(!O)throw new Error("Unknown column ".concat(T," in group ").concat(y.name));var D=O.getVisibleRange(u);[,P]=D}for(var N=1;N<y.children.length;N+=1){var F=y.children[N],A=d.get(F),j=this.getColumnIndexByName(F);if(A){var k=A.getVisibleRange(u)[0]<P,B=k?P-A.childIndexes.length+1:P+1;v(F,B),P=B+A.childIndexes.length-1}else if(j!=null){var G=K.getVisibleIndex(j,u)<P,W=G?P:P+1;h(F,W),P=W}}})}return this._movedColumns=u,u})),Oe(this,"getMemoizedInitialColumnHeaderGroups",be(s=>{var o;return fe.parseColumnHeaderGroups(this,(o=s?.columnGroups)!==null&&o!==void 0?o:[]).groups})),Oe(this,"getMemoizedColumnMap",be(s=>{var o=new Map;return s.forEach(u=>o.set(u.name,u)),o})),Oe(this,"getColumnIndicesByNameMap",be(s=>{var o=new Map;return s.forEach((u,d)=>{var{name:h}=u;return o.set(h,d)}),o})),Oe(this,"setViewport",wa((s,o,u)=>{if(o<s){Ve.error("Invalid viewport",s,o);return}var{viewport:d}=this;if(d!=null&&d.top===s&&d.bottom===o&&d.columns===u){Ve.debug2("Ignoring duplicate viewport",d);return}this.viewport={top:s,bottom:o,columns:u},Ve.debug2("setViewport",this.viewport),this.applyViewport()},c0)),Oe(this,"applyViewport",wa(()=>{if(this.viewport){Ve.debug2("applyViewport",this.viewport);var{top:s,bottom:o,columns:u}=this.viewport,[d,h]=this.getCachedViewportRowRange(s,o);this.applyBufferedViewport(d,h,u)}},v0,{leading:!1})),Oe(this,"getCachedFormattedString",mr((s,o,u,d,h)=>s.getFormattedString(o,u,d,h),{max:1e4})),Oe(this,"getCachedCustomColumnFormatFlag",mr(kr.isCustomColumnFormatDefined,{max:1e4})),Oe(this,"getCachedViewportRowRange",be((s,o)=>{var u=o-s,d=Math.max(0,s-u*qn.ROW_BUFFER_PAGES),h=o+u*qn.ROW_BUFFER_PAGES;return[d,h]})),Oe(this,"getCachedPendingErrors",be((s,o,u)=>{var d=new Map;return s.forEach((h,v)=>{for(var{data:m}=h,f=0;f<u;f+=1)if(!m.has(f)){var g;d.has(v)||d.set(v,[]),(g=d.get(v))===null||g===void 0||g.push(new u0(v,o[f].name))}}),d})),this.handleTableDisconnect=this.handleTableDisconnect.bind(this),this.handleTableReconnect=this.handleTableReconnect.bind(this),this.handleTableUpdate=this.handleTableUpdate.bind(this),this.handleTotalsUpdate=this.handleTotalsUpdate.bind(this),this.handleRequestFailed=this.handleRequestFailed.bind(this),this.handleCustomColumnsChanged=this.handleCustomColumnsChanged.bind(this),this.dh=e,this.irisFormatter=a,this.irisGridUtils=new fe(e),this.inputTable=l,this.subscription=null,this.table=t,this.tableUtils=new x(e),this.viewport=null,this.viewportData=null,this.formattedStringData=[],this.pendingStringData=[],this.isSaveInProgress=!1,this.totalsTable=null,this.totalsTablePromise=null,this.totals=null,this.totalsDataMap=null,this.pendingNewDataMap=new Map,this.pendingNewRowCount=0,this.columnHeaderGroups=fe.parseColumnHeaderGroups(this,(r=(i=this.layoutHints)===null||i===void 0?void 0:i.columnGroups)!==null&&r!==void 0?r:[]).groups}close(){this.table.close(),this.totalsTable!==null&&this.totalsTable.close(),this.totalsTablePromise!==null&&this.totalsTablePromise.cancel()}startListening(){super.startListening();var{dh:e}=this;this.table.addEventListener(e.Table.EVENT_DISCONNECT,this.handleTableDisconnect),this.table.addEventListener(e.Table.EVENT_RECONNECT,this.handleTableReconnect),this.table.addEventListener(e.Table.EVENT_UPDATED,this.handleTableUpdate),this.table.addEventListener(e.Client.EVENT_REQUEST_FAILED,this.handleRequestFailed),this.table.addEventListener(e.Table.EVENT_CUSTOMCOLUMNSCHANGED,this.handleCustomColumnsChanged),this.totalsTable!=null&&this.addTotalsListeners(this.totalsTable),this.applyViewport()}stopListening(){super.stopListening();var{dh:e}=this;this.table.removeEventListener(e.Table.EVENT_DISCONNECT,this.handleTableDisconnect),this.table.removeEventListener(e.Table.EVENT_RECONNECT,this.handleTableReconnect),this.table.removeEventListener(e.Table.EVENT_UPDATED,this.handleTableUpdate),this.table.removeEventListener(e.Client.EVENT_REQUEST_FAILED,this.handleRequestFailed),this.table.removeEventListener(e.Table.EVENT_CUSTOMCOLUMNSCHANGED,this.handleCustomColumnsChanged),this.totalsTable!=null&&this.removeTotalsListeners(this.totalsTable),this.closeSubscription()}addTotalsListeners(e){var{dh:t}=this;e.addEventListener(t.Table.EVENT_UPDATED,this.handleTotalsUpdate),e.setViewport(0,0)}removeTotalsListeners(e){var{dh:t}=this;e.removeEventListener(t.Table.EVENT_UPDATED,this.handleTotalsUpdate)}handleTableDisconnect(){this.dispatchEvent(new je(ve.EVENT.DISCONNECT))}handleTableReconnect(){this.dispatchEvent(new je(ve.EVENT.RECONNECT))}handleTableUpdate(e){this.copyViewportData(e.detail),this.dispatchEvent(new je(ve.EVENT.UPDATED))}handleTotalsUpdate(e){this.copyTotalsData(e.detail),this.dispatchEvent(new je(ve.EVENT.UPDATED))}handleRequestFailed(e){this.dispatchEvent(new je(ve.EVENT.REQUEST_FAILED,e))}handleCustomColumnsChanged(){this.dispatchEvent(new je(ve.EVENT.COLUMNS_CHANGED,{detail:this.columns}))}get rowCount(){var e,t,r;return this.table.size+this.pendingNewRowCount+((e=(t=this.totals)===null||t===void 0||(r=t.operationOrder)===null||r===void 0?void 0:r.length)!==null&&e!==void 0?e:0)}get pendingDataErrors(){var e,t;return this.getCachedPendingErrors(this.pendingNewDataMap,this.columns,(e=(t=this.inputTable)===null||t===void 0?void 0:t.keyColumns.length)!==null&&e!==void 0?e:0)}get pendingDataMap(){return this.pendingNewDataMap}set pendingDataMap(e){e!==this.pendingNewDataMap&&(e.forEach((t,r)=>{if(!fe.isValidIndex(r))throw new Error("Invalid rowIndex ".concat(r));var{data:i}=t;i.forEach((a,l)=>{if(!fe.isValidIndex(l))throw new Error("Invalid columnIndex ".concat(l))})}),this.pendingNewDataMap=e,this.pendingNewRowCount=Math.max(this.pendingNewRowCount,this.maxPendingDataRow),this.formattedStringData=[],this.dispatchEvent(new je(ve.EVENT.PENDING_DATA_UPDATED)))}get pendingRowCount(){return this.pendingNewRowCount}set pendingRowCount(e){e!==this.pendingNewRowCount&&(this.pendingNewRowCount=Math.max(0,e,this.maxPendingDataRow),this.dispatchEvent(new je(ve.EVENT.UPDATED)))}get maxPendingDataRow(){return this.pendingNewDataMap.size>0?Math.max(...this.pendingNewDataMap.keys())+1:0}get columnCount(){return this.columns.length}get floatingBottomRowCount(){var e,t,r;return this.totals!=null&&this.totals.showOnTop?0:(e=(t=this.totals)===null||t===void 0||(r=t.operationOrder)===null||r===void 0?void 0:r.length)!==null&&e!==void 0?e:0}get floatingTopRowCount(){var e,t,r;return this.totals!=null&&this.totals.showOnTop&&(e=(t=this.totals)===null||t===void 0||(r=t.operationOrder)===null||r===void 0?void 0:r.length)!==null&&e!==void 0?e:0}get isChartBuilderAvailable(){return!0}get isTotalsAvailable(){return this.table.getTotalsTable!=null}get isEditable(){return!this.isSaveInProgress&&this.inputTable!=null}cacheFormattedValue(e,t,r){this.formattedStringData[e]==null&&(this.formattedStringData[e]=[]),this.formattedStringData[e][t]=r}cachePendingValue(e,t,r){this.pendingStringData[e]==null&&(this.pendingStringData[e]=[]),this.pendingStringData[e][t]=r}clearPendingValue(e,t){var r=this.pendingStringData[e];r!=null&&delete r[t]}textValueForCell(e,t){var r,i;if(((r=this.pendingStringData[e])===null||r===void 0?void 0:r[t])!==void 0)return this.pendingStringData[e][t];if(((i=this.formattedStringData[e])===null||i===void 0?void 0:i[t])===void 0){var a,l=this.valueForCell(e,t);if(l===null)return null;if(l===void 0)return;var s=(a=this.totalsColumn(e,t))!==null&&a!==void 0?a:this.columns[e],o=this.getCachedCustomColumnFormatFlag(this.formatter,s.name,s.type),u;if(!o){var d=this.formatForCell(e,t);d?.formatString!=null&&(u=d)}var h=this.displayString(l,s.type,s.name,u);this.cacheFormattedValue(e,t,h)}return this.formattedStringData[e][t]}textForCell(e,t){var r,i=this.textValueForCell(e,t);if(i==null&&this.isKeyColumn(e)){var a=this.pendingRow(t);if(a!=null&&this.pendingDataMap.has(a))return"*"}if(x.isTextType((r=this.columns[e])===null||r===void 0?void 0:r.type)){if(i===null)return"null";if(i==="")return"empty"}return i??""}truncationCharForCell(e){var t=this.columns[e],{type:r}=t;if(x.isNumberType(r)&&this.formatter.truncateNumbersWithPound)return"#"}colorForCell(e,t,r){var i=this.dataForCell(e,t);if(i){var{format:a,value:l}=i;if(l==null||l==="")return L(r.nullStringColor),r.nullStringColor;if(a&&a.color)return a.color;if(this.isPendingRow(t))return L(r.pendingTextColor),r.pendingTextColor;if(l!=null){var s,o=(s=this.totalsColumn(e,t))!==null&&s!==void 0?s:this.columns[e];if(x.isDateType(o.type)||o.name==="Date")return L(r.dateColor),r.dateColor;if(x.isNumberType(o.type))return l>0?(L(r.positiveNumberColor),r.positiveNumberColor):l<0?(L(r.negativeNumberColor),r.negativeNumberColor):(L(r.zeroNumberColor),r.zeroNumberColor)}}else if(this.isPendingRow(t)&&this.isKeyColumn(e))return L(r.errorTextColor),r.errorTextColor;return r.textColor}backgroundColorForCell(e,t){var r,i;return(r=(i=this.formatForCell(e,t))===null||i===void 0?void 0:i.backgroundColor)!==null&&r!==void 0?r:null}textAlignForCell(e){var t=this.columns[e],{type:r}=t;return x.isNumberType(r)?"right":x.isDateType(r)||t.name==="Date"?"center":"left"}textForColumnHeader(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=this.columnAtDepth(e,t);return Pl(r)?r.isNew?"":r.name:r?.name}colorForColumnHeader(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=this.columnAtDepth(e,t);if(Pl(r)){var i;return(i=r.color)!==null&&i!==void 0?i:null}return null}getColumnHeaderGroup(e,t){var r=this.columnAtDepth(e,t);if(Pl(r))return r}getColumnHeaderParentGroup(e,t){var r,i;return this.columnHeaderParentMap.get((r=(i=this.columnAtDepth(e,t))===null||i===void 0?void 0:i.name)!==null&&r!==void 0?r:"")}columnAtDepth(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;if(r===0)return this.columns[e];var i=(t=this.columns[e])===null||t===void 0?void 0:t.name,a=this.columnHeaderParentMap.get(i);if(a){for(var l=a.depth;l<r;){if(a=this.columnHeaderParentMap.get(a.name),!a)return;l=a.depth}if(a.depth===r)return a}}textForRowFooter(e){var t=this.totalsRow(e);return t!=null&&this.totals?this.totals.operationOrder[t]:""}get initialMovedColumns(){var e;return this.getMemoizedInitialMovedColumns((e=this.layoutHints)!==null&&e!==void 0?e:void 0)}get initialMovedRows(){return m0}get initialColumnHeaderGroups(){var e;return this.getMemoizedInitialColumnHeaderGroups((e=this.layoutHints)!==null&&e!==void 0?e:void 0)}get columnMap(){return this.getMemoizedColumnMap(this.table.columns)}get columnHeaderMaxDepth(){var e;return(e=this._columnHeaderMaxDepth)!==null&&e!==void 0?e:1}set columnHeaderMaxDepth(e){this._columnHeaderMaxDepth=e}get columnHeaderGroupMap(){return this._columnHeaderGroupMap}get columnHeaderGroups(){return this._columnHeaderGroups}set columnHeaderGroups(e){if(e!==this._columnHeaderGroups){var{groups:t,maxDepth:r,parentMap:i,groupMap:a}=fe.parseColumnHeaderGroups(this,e??this.initialColumnHeaderGroups);this._columnHeaderGroups=t,this.columnHeaderMaxDepth=r,this.columnHeaderParentMap=i,this._columnHeaderGroupMap=a}}get groupedColumns(){return[]}row(e){var t,r,i,a,l,s,o,u,d,h,v=(t=(r=this.totals)===null||r===void 0||(i=r.operationOrder)===null||i===void 0?void 0:i.length)!==null&&t!==void 0?t:0,m=(a=(l=this.totals)===null||l===void 0?void 0:l.showOnTop)!==null&&a!==void 0?a:!1,f=this.totalsRow(e);if(f!=null){var g,p,C,S=(g=this.totals)===null||g===void 0?void 0:g.operationOrder[f];return L(S),(p=(C=this.totalsDataMap)===null||C===void 0?void 0:C.get(S))!==null&&p!==void 0?p:null}var b=this.pendingRow(e);if(b!=null){var w;return(w=this.pendingNewDataMap.get(b))!==null&&w!==void 0?w:null}var y=(s=(o=this.viewportData)===null||o===void 0?void 0:o.offset)!==null&&s!==void 0?s:0,T=(m?e-v:e)-y;return(u=(d=this.viewportData)===null||d===void 0||(h=d.rows)===null||h===void 0?void 0:h[T])!==null&&u!==void 0?u:null}totalsColumn(e,t){var r,i,a,l,s=this.totalsRow(t);if(s==null)return null;var o=(r=this.totals)===null||r===void 0?void 0:r.operationOrder[s],u=(i=(a=this.totals)===null||a===void 0?void 0:a.defaultOperation)!==null&&i!==void 0?i:Ie.SUM,d=this.columns[e];return(l=this.totalsTable)===null||l===void 0?void 0:l.columns.find(h=>{var v;return h.name==="".concat(d.name,"__").concat(o)||(o===u||((v=this.totals)===null||v===void 0?void 0:v.operationOrder.length)===1)&&h.name===d.name})}totalsRow(e){var t,r,i,a,l,s=(t=(r=this.totals)===null||r===void 0||(i=r.operationOrder)===null||i===void 0?void 0:i.length)!==null&&t!==void 0?t:0,o=(a=(l=this.totals)===null||l===void 0?void 0:l.showOnTop)!==null&&a!==void 0?a:!1,u=o?e:e-this.table.size;return u>=0&&u<s?u:null}pendingRow(e){var t=e-this.floatingTopRowCount-this.table.size;return t>=0&&t<this.pendingNewRowCount?t:null}isTotalsRow(e){return this.totalsRow(e)!=null}isPendingRow(e){return this.pendingRow(e)!=null}dataForCell(e,t){var r;return(r=this.row(t))===null||r===void 0?void 0:r.data.get(e)}formatForCell(e,t){var r;return(r=this.dataForCell(e,t))===null||r===void 0?void 0:r.format}valueForCell(e,t){var r=this.dataForCell(e,t);if(r){var i;return(i=r.value)!==null&&i!==void 0?i:null}}copyViewportData(e){if(e==null){Ve.warn("invalid data!");return}this.viewportData=this.extractViewportData(e),this.formattedStringData=[]}copyTotalsData(e){var t,r,i,a=this;if(e==null){Ve.warn("invalid data!");return}var{columns:l,rows:s}=e;if(s.length!==1){Ve.error("Unexpected number of rows received for totals table, ignoring update");return}for(var o=new Map,u=s[0],d=(t=(r=this.totals)===null||r===void 0?void 0:r.defaultOperation)!==null&&t!==void 0?t:Ie.SUM,h=(i=this.totals)===null||i===void 0?void 0:i.operationMap,v=function(){var g,p,C=l[m],[S,b=(g=h==null||(p=h[S])===null||p===void 0?void 0:p[0])!==null&&g!==void 0?g:d]=C.name.split("__");o.has(b)||o.set(b,{data:new Map});var{data:w}=o.get(b),y=a.columns.findIndex(T=>T.name===S);w.set(y,{value:u.get(C),format:u.getFormat(C)})},m=0;m<l.length;m+=1)v();Ve.debug2("copyTotalsData",o),this.totalsDataMap=o,this.formattedStringData=[]}getColumnIndexByName(e){return this.getColumnIndicesByNameMap(this.columns).get(e)}extractViewportData(e){for(var t={offset:e.offset,rows:[]},{columns:r}=e,i=0;i<e.rows.length;i+=1){var a=e.rows[i],l=this.extractViewportRow(a,r);t.rows.push(l)}return t}extractViewportRow(e,t){for(var r=new Map,i=0;i<t.length;i+=1){var a=t[i],l=this.getColumnIndexByName(a.name);L(l),r.set(l,{value:e.get(a),format:e.getFormat(a)})}return{data:r}}closeSubscription(){Ve.debug2("closeSubscription",this.subscription),this.subscription&&(this.subscription.close(),this.subscription=null),this.setViewport.cancel(),this.applyViewport.cancel()}get filter(){return this.table.filter}set filter(e){this.closeSubscription(),this.table.applyFilter(e),this.applyViewport()}get formatter(){return this.irisFormatter}set formatter(e){this.irisFormatter=e,this.formattedStringData=[],this.dispatchEvent(new je(ve.EVENT.FORMATTER_UPDATED))}displayString(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"",i=arguments.length>3?arguments[3]:void 0;return this.getCachedFormattedString(this.formatter,e,t,r,i)}get sort(){return this.table.sort}set sort(e){this.closeSubscription(),this.table.applySort(e),this.applyViewport()}set totalsConfig(e){if(Ve.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 je(ve.EVENT.UPDATED));return}this.totalsTablePromise=st.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{st.isCanceled(t)||(Ve.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new je(ve.EVENT.REQUEST_FAILED,{detail:t})))})}}setTotalsTable(e){Ve.debug("setTotalsTable",e),this.totalsTable!==null&&(this.listenerCount>0&&this.removeTotalsListeners(this.totalsTable),this.totalsTable.close()),this.totalsTable=e,this.totalsDataMap=null,this.listenerCount>0&&this.totalsTable!=null&&this.addTotalsListeners(this.totalsTable)}applyBufferedViewport(e,t,r){Ve.debug2("applyBufferedViewport",e,t,r),this.subscription==null?(Ve.debug2("applyBufferedViewport creating new subscription"),this.subscription=this.table.setViewport(e,t,r)):(Ve.debug2("applyBufferedViewport using existing subscription"),this.subscription.setViewport(e,t,r))}snapshot(e){var t=arguments,r=this;return qr(function*(){var i=t.length>1&&t[1]!==void 0?t[1]:!1,a=t.length>2&&t[2]!==void 0?t[2]:O=>O,l=t.length>3&&t[3]!==void 0?t[3]:!0;if(r.subscription==null)throw new Error("No subscription available");var s=l?U.consolidate(e):e;if(!fe.isValidSnapshotRanges(s))throw new Error("Invalid snapshot ranges ".concat(e));for(var o=new Set,u=[],d=new Set,h=0;h<s.length;h+=1){var v=s[h];L(v.endRow),L(v.startRow);for(var m=v.startRow;m<=v.endRow&&m<r.floatingTopRowCount;m+=1)o.add(m);v.endRow>=r.floatingTopRowCount&&v.startRow<=r.floatingTopRowCount+r.table.size&&u.push(new U(v.startColumn,Math.min(Math.max(0,v.startRow-r.floatingTopRowCount)),v.endColumn,Math.min(Math.max(0,v.endRow-r.floatingTopRowCount),r.table.size-r.floatingTopRowCount)));for(var f=Math.max(v.startRow,r.floatingTopRowCount+r.table.size);f<=v.endRow&&f<r.floatingTopRowCount+r.table.size+r.floatingBottomRowCount;f+=1)d.add(f)}var g=fe.columnsFromRanges(s,r.columns),p=[];i&&p.push(g.map(O=>O.name));for(var C=[...o].sort(),S=function*(){var D=C[b],N=g.map(F=>{var A=r.getColumnIndexByName(F.name);return L(A),a(r.valueForCell(A,D),F)});i&&N.push(r.textForRowFooter(D)),p.push(N)},b=0;b<C.length;b+=1)yield*S();if(u.length>0){var w=r.irisGridUtils.rangeSetFromRanges(u),y=yield r.subscription.snapshot(w,g);p.push(...y.rows.map(O=>g.map(D=>a(O.get(D),D))))}for(var T=[...d].sort(),E=function*(){var D=T[P],N=g.map(F=>{var A=r.getColumnIndexByName(F.name);return L(A),a(r.valueForCell(A,D),F)});i&&N.push(r.textForRowFooter(D)),p.push(N)},P=0;P<T.length;P+=1)yield*E();return p})()}textSnapshot(e){var t=arguments,r=this;return qr(function*(){var i=t.length>1&&t[1]!==void 0?t[1]:!1,a=t.length>2&&t[2]!==void 0?t[2]:s=>"".concat(s);Ve.debug2("textSnapshot",e,i);var l=yield r.snapshot(e,i,a,!1);return l.map(s=>s.join(" ")).join(`
14
- `)})()}valuesTable(e){var t=this;return qr(function*(){var r=null;try{return r=yield t.table.copy(),r.applyFilter([]),r.applySort([]),r.selectDistinct([e])}finally{r?.close()}})()}isColumnMovable(e,t){if(e<0||e>=this.columnCount)return!1;if(t>0)return!0;var r=this.columns[e].name;return this.frontColumns.includes(r)||this.backColumns.includes(r)||this.frozenColumns.includes(r)||!r?!1:!this.isKeyColumn(e)}isColumnSortable(e){var t;return(t=this.columns[e].isSortable)!==null&&t!==void 0?t:!0}isKeyColumn(e){var t,r;return e<((t=(r=this.inputTable)===null||r===void 0?void 0:r.keyColumns.length)!==null&&t!==void 0?t:0)}isRowMovable(){return!1}isEditableRange(e){if(this.inputTable==null||!U.isBounded(e))return!1;var t=this.isPendingRow(e.startRow)&&this.isPendingRow(e.endRow);return!(!(t||this.inputTable.keyColumns.length!==0&&e.startColumn>=this.inputTable.keyColumns.length&&e.endColumn>=this.inputTable.keyColumns.length)||e.startRow<this.floatingTopRowCount||e.startRow>=this.floatingTopRowCount+this.table.size+this.pendingRowCount||e.endRow>=this.floatingTopRowCount+this.table.size+this.pendingRowCount)}isDeletableRange(e){return this.inputTable!=null&&e.startRow!=null&&e.endRow!=null&&e.startRow>=this.floatingTopRowCount&&e.startRow<this.floatingTopRowCount+this.table.size+this.pendingRowCount&&e.endRow<this.floatingTopRowCount+this.table.size+this.pendingRowCount}isEditableRanges(e){return e.every(t=>this.isEditableRange(t))}isDeletableRanges(e){return e.every(t=>this.isDeletableRange(t))}getTableAreaRange(){return new U(null,this.floatingTopRowCount,null,this.floatingTopRowCount+this.table.size-1)}getPendingAreaRange(){return new U(null,this.floatingTopRowCount+this.table.size,null,this.floatingTopRowCount+this.table.size+this.pendingNewRowCount-1)}setValueForCell(e,t,r){var i=this;return qr(function*(){return i.setValueForRanges([new U(e,t,e,t)],r)})()}setValueForRanges(e,t){var r=this;return qr(function*(){if(!r.isEditableRanges(e))throw new Error("Uneditable ranges ".concat(e));try{var i=new Set,a=[];U.forEachCell(e,(g,p)=>{var C=r.columns[g];if(i.add(C),a[g]===void 0){var S=r.tableUtils.makeValue(C.type,t,r.formatter.timeZone);a[g]=S!=null?r.displayString(S,C.type,C.name):null}r.cachePendingValue(g,p,a[g])});var l=r.getPendingAreaRange(),s=e.map(g=>U.intersection(l,g)).filter(g=>g!=null).map(g=>(L(g),U.offset(g,0,-(r.floatingTopRowCount+r.table.size))));if(s.length>0){var o=new Map(r.pendingNewDataMap);U.forEachCell(s,(g,p)=>{o.has(p)||o.set(p,{data:new Map});var C=r.columns[g],S=o.get(p);L(S);var{data:b}=S,w=new Map(b),y=r.tableUtils.makeValue(C.type,t,r.formatter.timeZone);y!=null?w.set(g,{value:y}):w.delete(g),w.size>0?o.set(p,ha(ha({},S),{},{data:w})):o.delete(p)}),r.pendingDataMap=o}r.dispatchEvent(new je(ve.EVENT.UPDATED));var u=r.getTableAreaRange(),d=e.map(g=>U.intersection(u,g)).filter(g=>g!=null);if(d.length>0){var h,v=yield r.snapshot(d.map(g=>{var p,C;return new U(null,(p=g?.startRow)!==null&&p!==void 0?p:null,null,(C=g?.endRow)!==null&&C!==void 0?C:null)})),m=v.map(g=>{for(var p={},C=0;C<r.columns.length;C+=1)p[r.columns[C].name]=g[C];return i.forEach(S=>{p[S.name]=r.tableUtils.makeValue(S.type,t,r.formatter.timeZone)}),p}),f=yield(h=r.inputTable)===null||h===void 0?void 0:h.addRows(m);Ve.debug("setValueForRanges(",e,",",t,") set tableRanges",d,"result",f)}U.forEachCell(e,(g,p)=>{var C=a[g];L(C),r.cacheFormattedValue(g,p,C)})}catch(g){Ve.error("Unable to set ranges",e,t,g)}finally{U.forEachCell(e,(g,p)=>{r.clearPendingValue(g,p)})}})()}setValues(){var e=arguments,t=this;return qr(function*(){var r=e.length>0&&e[0]!==void 0?e[0]:[];if(Ve.debug("setValues(",r,")"),!r.every(m=>{var f,g;return t.isEditableRange(U.makeCell((f=m.column)!==null&&f!==void 0?f:m.x,(g=m.row)!==null&&g!==void 0?g:m.y))}))throw new Error("Uneditable ranges ".concat(r));try{var i=new Map(t.pendingNewDataMap);r.forEach(m=>{var f,g,{text:p}=m,C=(f=m.column)!==null&&f!==void 0?f:m.x,S=(g=m.row)!==null&&g!==void 0?g:m.y,b=t.columns[C],w=t.tableUtils.makeValue(b.type,p,t.formatter.timeZone),y=w!=null?t.displayString(w,b.type,b.name):null;t.cachePendingValue(C,S,y);var T=t.pendingRow(S);if(T!=null){i.has(T)||i.set(T,{data:new Map});var E=i.get(T);L(E);var{data:P}=E,O=new Map(P);w!=null?O.set(C,{value:w}):O.delete(C),O.size>0?i.set(T,ha(ha({},E),{},{data:O})):i.delete(T)}}),t.pendingDataMap=i,t.dispatchEvent(new je(ve.EVENT.UPDATED));var a=r.reduce((m,f)=>{var g,p,C=(g=f.row)!==null&&g!==void 0?g:f.y;return m.has(C)||m.set(C,[]),(p=m.get(C))===null||p===void 0||p.push(f),m},new Map),l=U.consolidate(r.map(m=>{var f,g;return U.makeCell((f=m.column)!==null&&f!==void 0?f:m.x,(g=m.row)!==null&&g!==void 0?g:m.y)})),s=t.getTableAreaRange(),o=l.map(m=>U.intersection(s,m)).filter(m=>m!=null);if(o.length>0){var u,d=yield t.snapshot(o.map(m=>(L(m),new U(null,m.startRow,null,m.endRow)))),h=d.map((m,f)=>{for(var g=null,p=f,C=0;C<o.length;C+=1){var S=o[C];L(S);var b=U.rowCount([S]);if(p<b){L(S.startRow),g=S.startRow+p;break}p-=b}for(var w={},y=0;y<t.columns.length;y+=1)w[t.columns[y].name]=m[y];L(g);var T=a.get(g);return T?.forEach(E=>{var P,O=t.columns[(P=E.column)!==null&&P!==void 0?P:E.x];w[O.name]=t.tableUtils.makeValue(O.type,E.text,t.formatter.timeZone)}),w});Ve.info("setValues setting tableRanges",o);var v=yield(u=t.inputTable)===null||u===void 0?void 0:u.addRows(h);Ve.info("setValues set tableRanges",o,"SUCCESS",v)}r.forEach(m=>{var f,g,{text:p}=m,C=(f=m.column)!==null&&f!==void 0?f:m.x,S=(g=m.row)!==null&&g!==void 0?g:m.y,b=t.columns[C],w=t.tableUtils.makeValue(b.type,p,t.formatter.timeZone),y=w!=null?t.displayString(w,b.type,b.name):null;t.cacheFormattedValue(C,S,y)})}finally{r.forEach(m=>{t.clearPendingValue(m.column,m.row)})}})()}commitPending(){var e=this;return qr(function*(){if(e.pendingNewDataMap.size<=0)throw new Error("No pending changes to commit");try{var t,r,i;e.isSaveInProgress=!0;var a=[];e.pendingNewDataMap.forEach(s=>{var o={};s.data.forEach((u,d)=>{var{value:h}=u,v=e.columns[d];o[v.name]=h}),a.push(o)});var l=yield(t=e.inputTable)===null||t===void 0?void 0:t.addRows(a);Ve.debug("commitPending()",e.pendingNewDataMap,"result",l),e.pendingNewDataMap=new Map,e.pendingNewRowCount=Math.max(0,((r=(i=e.viewport)===null||i===void 0?void 0:i.bottom)!==null&&r!==void 0?r:0)-e.table.size),e.formattedStringData=[],e.dispatchEvent(new je(ve.EVENT.PENDING_DATA_UPDATED))}finally{e.isSaveInProgress=!1}})()}editValueForCell(e,t){return this.textValueForCell(e,t)}delete(e){var t=this;return qr(function*(){if(!t.isDeletableRanges(e))throw new Error("Undeletable ranges ".concat(e));L(t.inputTable);var{keyColumns:r}=t.inputTable;if(r.length===0)throw new Error("No key columns to allow deletion");var i=t.getPendingAreaRange(),a=e.map(p=>U.intersection(i,p)).filter(p=>p!=null).map(p=>(L(p),U.offset(p,0,-(t.floatingTopRowCount+t.table.size))));if(a.length>0){for(var l=new Map(t.pendingNewDataMap),s=0;s<a.length;s+=1){var o=a[s];L(o.startRow),L(o.endRow);for(var u=o.startRow;u<=o.endRow;u+=1)l.delete(u)}t.pendingNewDataMap=l,t.formattedStringData=[],t.dispatchEvent(new je(ve.EVENT.PENDING_DATA_UPDATED)),t.dispatchEvent(new je(ve.EVENT.UPDATED))}var d=t.getTableAreaRange(),h=e.map(p=>U.intersection(d,p)).filter(p=>p!=null);if(!(h.length<=0)){var[v,m]=yield Promise.all([t.snapshot(h.map(p=>(L(p),new U(0,p.startRow,r.length-1,p.endRow)))),t.table.copy()]),f=v.map(p=>{for(var C=[],S=0;S<r.length;S+=1){var b=r[S],w=p[S],y=t.tableUtils.makeFilterRawValue(b.type,w),T=b.filter().eq(y);C.push(T)}return C.reduce((E,P)=>{var O;return(O=E?.and(P))!==null&&O!==void 0?O:P})}),g=f.reduce((p,C)=>{var S;return(S=p?.or(C))!==null&&S!==void 0?S:C});m.applyFilter([g]),m.close()}})()}isValidForCell(e,t,r){try{var i=this.columns[e];return this.tableUtils.makeValue(i.type,r,this.formatter.timeZone),!0}catch{return!1}}}Oe(qn,"ROW_BUFFER_PAGES",1);function ed(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function kl(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){ed(a,r,i,l,s,"next",o)}function s(o){ed(a,r,i,l,s,"throw",o)}l(void 0)})}}function fn(n,e,t){return e=f0(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function f0(n){var e=g0(n,"string");return typeof e=="symbol"?e:String(e)}function g0(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Xr=ge.module("IrisGridTableModel");class p0 extends qn{constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Pr(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e,t,r,i),fn(this,"userFrozenColumns",void 0),fn(this,"customColumnList",void 0),fn(this,"formatColumnList",void 0),fn(this,"getMemoizedFrontColumns",be(a=>a??[])),fn(this,"getMemoizedBackColumns",be(a=>a??[])),fn(this,"getMemoizedFrozenColumns",be((a,l)=>{var s;return(s=l??a)!==null&&s!==void 0?s:[]})),fn(this,"getCachedFilterableColumnSet",be(a=>new Set(a.map((l,s)=>s)))),this.customColumnList=[],this.formatColumnList=[]}get isExportAvailable(){return this.table.freeze!=null}get isColumnStatisticsAvailable(){return this.table.getColumnStatistics!=null}get isValuesTableAvailable(){return this.table.selectDistinct!=null&&this.table.copy!=null}get isRollupAvailable(){return this.table.rollup!=null}get isSelectDistinctAvailable(){return this.table.selectDistinct!=null}get isCustomColumnsAvailable(){return this.table.applyCustomColumns!=null}get isFormatColumnsAvailable(){return this.table.applyCustomColumns!=null}get frontColumns(){var e;return this.getMemoizedFrontColumns((e=this.layoutHints)===null||e===void 0?void 0:e.frontColumns)}get backColumns(){var e;return this.getMemoizedBackColumns((e=this.layoutHints)===null||e===void 0?void 0:e.backColumns)}get frozenColumns(){var e;return this.getMemoizedFrozenColumns((e=this.layoutHints)===null||e===void 0?void 0:e.frozenColumns,this.userFrozenColumns)}get layoutHints(){return this.table.layoutHints}get floatingLeftColumnCount(){return this.frozenColumns.length}get description(){return this.table.description}get customColumns(){return this.customColumnList}set customColumns(e){if(Xr.debug2("set customColumns",e,this.customColumnList,e===this.customColumnList),this.customColumnList.length===0&&e.length===0){Xr.debug("Ignore empty initial customColumns"),this.customColumnList=e;return}if(this.customColumnList===e){Xr.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(Xr.debug2("set formatColumns",e,this.formatColumnList,e===this.formatColumnList),this.formatColumnList.length===0&&e.length===0){Xr.debug("Ignore empty initial formatColumns"),this.formatColumnList=e;return}if(this.formatColumnList===e){Xr.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 je(ve.EVENT.TABLE_CHANGED,{detail:this.table}))}set totalsConfig(e){if(Xr.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 je(ve.EVENT.UPDATED));return}this.totalsTablePromise=st.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{st.isCanceled(t)||(Xr.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new je(ve.EVENT.REQUEST_FAILED,{detail:t})))})}}get isFilterRequired(){return this.table.isUncoalesced}isFilterable(e){return this.getCachedFilterableColumnSet(this.columns).has(e)}export(){var e=this;return kl(function*(){return e.table.freeze()})()}columnStatistics(e){return this.table.getColumnStatistics(e)}isColumnMovable(e){var t=this.columns[e].name;return this.frontColumns.includes(t)||this.backColumns.includes(t)||this.frozenColumns.includes(t)?!1:!this.isKeyColumn(e)}isColumnFrozen(e){return this.frozenColumns.includes(this.columns[e].name)}delete(e){var t=()=>super.pendingDataMap,r=a=>super.pendingDataMap=a,i=this;return kl(function*(){var a;if(!i.isDeletableRanges(e))throw new Error("Undeletable ranges ".concat(e));L(i.inputTable);var{keyColumns:l}=i.inputTable;if(l.length===0)throw new Error("No key columns to allow deletion");var s=i.getPendingAreaRange(),o=e.map(b=>U.intersection(s,b)).filter(b=>b!=null).map(b=>(L(b),U.offset(b,0,-(i.floatingTopRowCount+i.table.size))));if(o.length>0){for(var u=new Map(t()),d=0;d<o.length;d+=1){var h=o[d];L(h.startRow),L(h.endRow);for(var v=h.startRow;v<=h.endRow;v+=1)u.delete(v)}r(u),i.formattedStringData=[],i.dispatchEvent(new je(ve.EVENT.PENDING_DATA_UPDATED)),i.dispatchEvent(new je(ve.EVENT.UPDATED))}var m=i.getTableAreaRange(),f=e.map(b=>U.intersection(m,b)).filter(b=>b!=null);if(!(f.length<=0)){var[g,p]=yield Promise.all([i.snapshot(f.map(b=>(L(b),new U(0,b.startRow,l.length-1,b.endRow)))),i.table.copy()]),C=g.map(b=>{for(var w=[],y=0;y<l.length;y+=1){var T=l[y],E=b[y],P=i.tableUtils.makeFilterRawValue(T.type,E),O=T.filter().eq(P);w.push(O)}return w.reduce((D,N)=>{var F;return(F=D?.and(N))!==null&&F!==void 0?F:N})}),S=C.reduce((b,w)=>{var y;return(y=b?.or(w))!==null&&y!==void 0?y:w});p.applyFilter([S]),yield(a=i.inputTable)===null||a===void 0?void 0:a.deleteTable(p),p.close()}})()}seekRow(e,t,r,i,a,l,s){var o=this;return kl(function*(){return o.table.seekRow(e,t,r,i,a,l,s)})()}get isSeekRowAvailable(){return this.table.seekRow!=null}}const Qh=p0;function td(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function C0(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){td(a,r,i,l,s,"next",o)}function s(o){td(a,r,i,l,s,"throw",o)}l(void 0)})}}function rd(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 nd(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?rd(Object(t),!0).forEach(function(r){Zh(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):rd(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Zh(n,e,t){return e=S0(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function S0(n){var e=b0(n,"string");return typeof e=="symbol"?e:String(e)}function b0(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class w0 extends qn{constructor(){super(...arguments),Zh(this,"getCachedFilterableColumnSet",be((e,t)=>new Set((t?.length>0?t:e).map(r=>e.findIndex(i=>r.name===i.name)))))}applyBufferedViewport(e,t,r){this.table.setViewport(e,t,r)}textForCell(e,t){var r=this.columns[e],i=this.row(t);if(i!=null&&r!=null&&!i.hasChildren&&r.constituentType!=null){var a=this.valueForCell(e,t);return this.displayString(a,r.constituentType,r.name)}return super.textForCell(e,t)}extractViewportRow(e,t){var{isExpanded:r,hasChildren:i,depth:a}=e;return nd(nd({},super.extractViewportRow(e,t)),{},{isExpanded:r,hasChildren:i,depth:a})}snapshot(e,t,r){var i=this;return C0(function*(){var a;L(i.viewport),L(i.viewportData);var{columns:l}=i.viewport,s=[];t!=null&&t&&s.push(l.map(p=>p.name));for(var o=new U(0,(a=i.viewportData)===null||a===void 0?void 0:a.offset,l.length,i.viewportData.offset+i.viewportData.rows.length),u=0;u<e.length;u+=1){var d=U.intersection(o,e[u]);L(d),L(d.startRow),L(d.endRow);for(var h=d.startRow;h<=d.endRow;h+=1){var v=[],m=i.viewportData.rows[h-i.viewportData.offset];L(d.startColumn),L(d.endColumn);for(var f=d.startColumn;f<=d.endColumn;f+=1){var g;L(r),v.push(r((g=m.data.get(f))===null||g===void 0?void 0:g.value,i.columns[f]))}s.push(v)}}return s})()}get groupedColumns(){return this.table.groupedColumns}get hasExpandableRows(){return!0}get isExpandAllAvailable(){return this.table.expandAll!==void 0}get isChartBuilderAvailable(){return!1}get isSelectDistinctAvailable(){return!1}get isReversible(){return!1}isFilterable(e){return this.getCachedFilterableColumnSet(this.columns,this.groupedColumns).has(e)}isColumnMovable(e){return e>=this.groupedColumns.length}isRowExpandable(e){var t,r=this.row(e);return(t=r?.hasChildren)!==null&&t!==void 0?t:!1}isRowExpanded(e){var t,r=this.row(e);return(t=r?.isExpanded)!==null&&t!==void 0?t:!1}setRowExpanded(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;this.isExpandAllAvailable?this.table.setExpanded(e,t,r):this.table.setExpanded(e,t)}expandAll(){this.table.expandAll&&this.table.expandAll()}collapseAll(){this.table.collapseAll&&this.table.collapseAll()}depthForRow(e){var t,r=this.row(e);return((t=r?.depth)!==null&&t!==void 0?t:1)-1}updateFrozenColumns(e){if(e.length>0)throw new Error("Cannot freeze columns on a tree table")}}const y0=w0;function id(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function T0(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){id(a,r,i,l,s,"next",o)}function s(o){id(a,r,i,l,s,"throw",o)}l(void 0)})}}function Se(n,e,t){return e=E0(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function E0(n){var e=O0(n,"string");return typeof e=="symbol"?e:String(e)}function O0(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Qr=ge.module("IrisGridProxyModel");function jl(n,e,t,r){return x.isTreeTable(e)?new y0(n,e,t):new Qh(n,e,t,r)}class P0 extends ve{constructor(e,t){var r,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Pr(e),a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e),r=this,Se(this,"dh",void 0),Se(this,"originalModel",void 0),Se(this,"model",void 0),Se(this,"modelPromise",void 0),Se(this,"rollup",void 0),Se(this,"selectDistinct",void 0),Se(this,"textForCell",function(){return r.model.textForCell(...arguments)}),Se(this,"truncationCharForCell",function(){return r.model.truncationCharForCell(...arguments)}),Se(this,"textAlignForCell",function(){return r.model.textAlignForCell(...arguments)}),Se(this,"colorForCell",function(){return r.model.colorForCell(...arguments)}),Se(this,"backgroundColorForCell",function(){return r.model.backgroundColorForCell(...arguments)}),Se(this,"textForColumnHeader",function(){return r.model.textForColumnHeader(...arguments)}),Se(this,"colorForColumnHeader",function(){return r.model.colorForColumnHeader(...arguments)}),Se(this,"textForRowHeader",function(){return r.model.textForRowHeader(...arguments)}),Se(this,"textForRowFooter",function(){return r.model.textForRowFooter(...arguments)}),Se(this,"isRowMovable",function(){return r.model.isRowMovable(...arguments)}),Se(this,"isColumnMovable",function(){return r.model.isColumnMovable(...arguments)}),Se(this,"isRowExpandable",function(){return xe(r.model)?r.model.isRowExpandable(...arguments):!1}),Se(this,"isRowExpanded",function(){return xe(r.model)?r.model.isRowExpanded(...arguments):!1}),Se(this,"setRowExpanded",function(){if(xe(r.model))return r.model.setRowExpanded(...arguments);throw Error("Function setRowExpanded does not exist on IrisGridTableModel")}),Se(this,"expandAll",()=>{if(xe(this.model))return this.model.expandAll();throw Error("Function expandAll does not exist on IrisGridTableModel")}),Se(this,"collapseAll",()=>{if(xe(this.model))return this.model.collapseAll();throw Error("Function collapseAll does not exist on IrisGridTableModel")}),Se(this,"depthForRow",function(){return xe(r.model)?r.model.depthForRow(...arguments):0}),Se(this,"getColumnHeaderGroup",function(){return r.model.getColumnHeaderGroup(...arguments)}),Se(this,"getColumnHeaderParentGroup",function(){return r.model.getColumnHeaderParentGroup(...arguments)}),Se(this,"formatForCell",function(){return r.model.formatForCell(...arguments)}),Se(this,"valueForCell",function(){return r.model.valueForCell(...arguments)}),Se(this,"displayString",function(){return r.model.displayString(...arguments)}),Se(this,"isEditableRange",function(){return He(r.model)?r.model.isEditableRange(...arguments):!1}),Se(this,"isFilterable",function(){return r.model.isFilterable(...arguments)}),Se(this,"setViewport",(s,o,u)=>this.model.setViewport(s,o,u)),Se(this,"snapshot",function(){return r.model.snapshot(...arguments)}),Se(this,"textSnapshot",function(){return r.model.textSnapshot(...arguments)}),Se(this,"valuesTable",function(){return r.model.valuesTable(...arguments)}),Se(this,"editValueForCell",function(){return He(r.model)?r.model.editValueForCell(...arguments):""}),Se(this,"setValueForCell",function(){return He(r.model)?r.model.setValueForCell(...arguments):Promise.reject(new Error("Model is not editable"))}),Se(this,"setValueForRanges",function(){return He(r.model)?r.model.setValueForRanges(...arguments):Promise.reject(new Error("Model is not editable"))}),Se(this,"setValues",function(){return He(r.model)?r.model.setValues(...arguments):Promise.resolve()}),Se(this,"isValidForCell",function(){return He(r.model)?r.model.isValidForCell(...arguments):!1}),Se(this,"delete",function(){return r.model.delete(...arguments)}),Se(this,"commitPending",function(){return r.model.commitPending(...arguments)}),this.handleModelEvent=this.handleModelEvent.bind(this);var l=jl(e,t,i,a);this.dh=e,this.originalModel=l,this.model=l,this.modelPromise=null,this.rollup=null,this.selectDistinct=[]}close(){this.originalModel.close(),this.model!==this.originalModel&&this.model.close(),this.modelPromise!=null&&this.modelPromise.cancel()}handleModelEvent(e){Qr.debug2("handleModelEvent",e);var{detail:t,type:r}=e;this.dispatchEvent(new je(r,{detail:t}))}setModel(e){Qr.debug("setModel",e);var t=this.model;t!==this.originalModel&&t.close(),this.model=e,this.listenerCount>0&&this.addListeners(e),this.dispatchEvent(new je(ve.EVENT.COLUMNS_CHANGED,{detail:e.columns})),bn(e)&&this.dispatchEvent(new je(ve.EVENT.TABLE_CHANGED,{detail:e.table}))}setNextModel(e){Qr.debug2("setNextModel"),this.modelPromise&&this.modelPromise.cancel(),this.listenerCount>0&&this.removeListeners(this.model),this.modelPromise=st.makeCancelable(e,t=>t.close()),this.modelPromise.then(t=>{this.modelPromise=null,this.setModel(t)}).catch(t=>{if(st.isCanceled(t)){Qr.debug2("setNextModel cancelled");return}Qr.error("Unable to set next model",t),this.modelPromise=null,this.dispatchEvent(new je(ve.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(ve.EVENT),r=0;r<t.length;r+=1)e.addEventListener(t[r],this.handleModelEvent)}removeListeners(e){for(var t=Object.keys(ve.EVENT),r=0;r<t.length;r+=1)e.removeEventListener(t[r],this.handleModelEvent)}get rowCount(){return this.model.rowCount}get columnCount(){return this.model.columnCount}get floatingTopRowCount(){return this.model.floatingTopRowCount}get floatingBottomRowCount(){return this.model.floatingBottomRowCount}get floatingLeftColumnCount(){return this.model.floatingLeftColumnCount}get floatingRightColumnCount(){return this.model.floatingRightColumnCount}isColumnFrozen(e){return this.model.isColumnFrozen(e)}isColumnSortable(e){return this.model.isColumnSortable(e)}get hasExpandableRows(){return xe(this.model)?this.model.hasExpandableRows:!1}get isExpandAllAvailable(){if(xe(this.model)){var e;return(e=this.model.isExpandAllAvailable)!==null&&e!==void 0?e:!1}return!1}get isExportAvailable(){return this.model.isExportAvailable}get isColumnStatisticsAvailable(){return this.model.isColumnStatisticsAvailable}get isValuesTableAvailable(){return this.model.isValuesTableAvailable}get isCustomColumnsAvailable(){return this.model.isCustomColumnsAvailable&&!(this.isSelectDistinctAvailable&&this.selectDistinctColumns.length>0)}get isFormatColumnsAvailable(){return this.model.isFormatColumnsAvailable}get isChartBuilderAvailable(){return this.model.isChartBuilderAvailable}get isRollupAvailable(){return(this.originalModel.isRollupAvailable||this.rollup!=null)&&this.selectDistinct.length===0}get isSelectDistinctAvailable(){return(this.originalModel.isSelectDistinctAvailable||this.selectDistinct.length>0)&&this.rollup==null}get isTotalsAvailable(){return this.model.isTotalsAvailable}get isReversible(){return this.model.isReversible}get columns(){return this.model.columns}get initialMovedColumns(){return this.model.initialMovedColumns}get initialMovedRows(){return this.model.initialMovedRows}get layoutHints(){return this.model.layoutHints}get frontColumns(){return this.model.frontColumns}get backColumns(){return this.model.backColumns}get frozenColumns(){return this.model.frozenColumns}get columnHeaderGroups(){return this.model.columnHeaderGroups}set columnHeaderGroups(e){this.model.columnHeaderGroups=e}get initialColumnHeaderGroups(){return this.model.initialColumnHeaderGroups}get columnHeaderGroupMap(){return this.model.columnHeaderGroupMap}get columnHeaderMaxDepth(){return this.model.columnHeaderMaxDepth}updateFrozenColumns(e){return this.model.updateFrozenColumns(e)}get originalColumns(){return this.originalModel.columns}get groupedColumns(){return this.model.groupedColumns}get description(){return this.model.description}get filter(){return this.model.filter}set filter(e){this.model.filter=e}get formatter(){return this.model.formatter}set formatter(e){this.model.formatter=e}get sort(){return this.model.sort}set sort(e){this.model.sort=e}get customColumns(){return this.model.customColumns}set customColumns(e){this.model.customColumns=e}get formatColumns(){return this.model.formatColumns}set formatColumns(e){this.model.formatColumns=e}get rollupConfig(){return this.rollup}set rollupConfig(e){if(Qr.debug("set rollupConfig",e),!this.isRollupAvailable)throw new Error("Rollup Rows are not available");if(!ht(e,this.rollup)){this.rollup=e;var t=Promise.resolve(this.originalModel);bn(this.originalModel)&&e!=null&&(t=this.originalModel.table.rollup(e).then(r=>jl(this.dh,r,this.formatter))),this.setNextModel(t)}}get selectDistinctColumns(){return this.selectDistinct}set selectDistinctColumns(e){if(Qr.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){Qr.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);bn(this.originalModel)&&t.length>0&&(r=this.originalModel.table.selectDistinct(t).then(i=>jl(this.dh,i,this.formatter))),this.setNextModel(r)}get table(){if(bn(this.model))return this.model.table}get totalsConfig(){return this.model.totalsConfig}set totalsConfig(e){this.model.totalsConfig=e}get isFilterRequired(){return this.model.isFilterRequired}get isEditable(){return He(this.model)&&this.model.isEditable}export(){if(x.isTreeTable(this.model))throw new Error("TreeTable has no 'export' property");return this.model.export()}columnStatistics(e){if(x.isTreeTable(this.model))throw new Error("TreeTable has no 'columnStatistics' function");return this.model.columnStatistics(e)}get pendingDataMap(){return this.model.pendingDataMap}set pendingDataMap(e){this.model.pendingDataMap=e}get pendingRowCount(){return this.model.pendingRowCount}set pendingRowCount(e){this.model.pendingRowCount=e}get pendingDataErrors(){return this.model.pendingDataErrors}getColumnIndexByName(e){return this.model.getColumnIndexByName(e)}seekRow(e,t,r,i,a,l,s){var o=this;return T0(function*(){return o.model.seekRow(e,t,r,i,a,l,s)})()}get isSeekRowAvailable(){return this.model.isSeekRowAvailable}}const R0=P0;function ad(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function D0(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){ad(a,r,i,l,s,"next",o)}function s(o){ad(a,r,i,l,s,"throw",o)}l(void 0)})}}class F0{static makeModel(e,t){var r=arguments;return D0(function*(){var i=r.length>2&&r[2]!==void 0?r[2]:new Pr(e),a=null;return!x.isTreeTable(t)&&t.hasInputTable&&(a=yield t.inputTable()),new R0(e,t,i,a)})()}}const N0=F0;function js(n){var{dashboardProps:e,componentName:t,component:r,supportedTypes:i,hydrate:a,dehydrate:l}=n,{id:s,layout:o,registerComponent:u}=e,d=R.useCallback(h=>{var v,{dragEvent:m,fetch:f,panelId:g=nt.generate(),widget:p}=h,{id:C,type:S}=p,b=(v=p.title)!==null&&v!==void 0?v:p.name,w=Array.isArray(i)&&i.includes(S)||S===i;if(w){var y={id:C,name:b,type:S},T={localDashboardId:s,metadata:y,fetch:f};a!=null&&(T=a(T,s));var E={type:"react-component",component:t,props:T,title:b,id:g},{root:P}=o;me.openComponent({root:P,config:E,dragEvent:m})}},[t,a,s,o,i]);iv(u,r,a,l),br(o.eventHub,At.OPEN,d)}function _s(n,e,t){return e=I0(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function I0(n){var e=A0(n,"string");return typeof e=="symbol"?e:String(e)}function A0(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Ka{}_s(Ka,"OPEN","ChartEvent.OPEN");_s(Ka,"CLOSE","ChartEvent.CLOSE");_s(Ka,"COLUMN_SELECTED","ChartEvent.COLUMN_SELECTED");const es=Ka;function ri(n,e,t){return e=M0(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function M0(n){var e=x0(n,"string");return typeof e=="symbol"?e:String(e)}function x0(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Mn{}ri(Mn,"OPEN_GRID","IrisGridEvent.OPEN_GRID");ri(Mn,"CLOSE_GRID","IrisGridEvent.CLOSE_GRID");ri(Mn,"DATA_SELECTED","IrisGridEvent.DATA_SELECTED");ri(Mn,"COLUMN_SELECTED","IrisGridEvent.COLUMN_SELECTED");ri(Mn,"STATE_CHANGED","IrisGridEvent.STATE_CHANGED");ri(Mn,"CREATE_CHART","IrisGridevent.CREATE_CHART");const ur=Mn;function Jh(n,e,t){return e=L0(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function L0(n){var e=k0(n,"string");return typeof e=="symbol"?e:String(e)}function k0(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Hs{}Jh(Hs,"OPEN","PandasEvent.OPEN");Jh(Hs,"CLOSE","PandasEvent.CLOSE");const rO=Hs;function Ya(n){var{widgetType:e,widgetName:t,glContainer:r,description:i,children:a}=n,l=me.getTitleFromContainer(r);return c.jsxs("div",{className:"tab-tooltip-grid-container",children:[c.jsxs("span",{className:"tab-tooltip-title",children:[e," Name"]}),c.jsxs("div",{className:"tab-tooltip-name-wrapper",children:[c.jsx("span",{className:"tab-tooltip-name",children:t}),c.jsx(cs,{className:"tab-tooltip-copy",tooltip:"Copy name",copy:t})]}),t!==l&&c.jsxs(c.Fragment,{children:[c.jsx("span",{className:"tab-tooltip-title",children:"Display Name"}),c.jsx("span",{className:"tab-tooltip-name",children:l})]}),i&&c.jsx("div",{className:"tab-tooltip-description",children:i}),a]})}Ya.propTypes={glContainer:$d.Container.isRequired,widgetType:Z.string,widgetName:Z.string,description:Z.string,children:Z.node};Ya.defaultProps={widgetType:"",widgetName:"",description:null,children:null};function ec(n,e,t){return e=j0(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function j0(n){var e=_0(n,"string");return typeof e=="symbol"?e:String(e)}function _0(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class tc extends R.PureComponent{constructor(e){super(e),ec(this,"getCachedRenderTabTooltip",be((t,r,i,a,l)=>t?()=>c.jsx(Ya,{glContainer:r,widgetType:i,widgetName:a,description:l}):null)),this.handleSessionClosed=this.handleSessionClosed.bind(this),this.handleSessionOpened=this.handleSessionOpened.bind(this),this.handleCopyName=this.handleCopyName.bind(this),this.state={isClientDisconnected:!1,isPanelDisconnected:!1,isWidgetDisconnected:!1,isWaitingForReconnect:!1,isPanelInactive:!1}}handleCopyName(){var{widgetName:e}=this.props;_a(e)}getErrorMessage(){var{errorMessage:e}=this.props,{isClientDisconnected:t,isPanelDisconnected:r,isWidgetDisconnected:i,isWaitingForReconnect:a}=this.state;if(e)return"".concat(e);if(t&&r&&a)return`Disconnected from server.
11
+ `)),this.makeSnapshot(Math.min(Lt.SNAPSHOT_BUFFER_SIZE-this.snapshotsBuffer.size-this.snapshotPending,this.snapshotsTotal-this.snapshotCounter)))}updateDownloadProgress(e){if(e!=null&&this.snapshotsTotal!=null&&this.downloadStartTime!=null){var{onDownloadProgressUpdate:t}=this.props,r=Math.floor(e*100/this.snapshotsTotal),i=e>1?Math.floor((Date.now()-this.downloadStartTime)*(this.snapshotsTotal-e)/e/1e3):null;t(r,i)}}convertSnapshotIntoCsv(e){for(var t="",r=e.added.iterator(),{dh:i,formatter:a}=this.props,l=[];r.hasNext();)l.push(r.next().value);L(this.columns);for(var{useUnformattedValues:s}=this,o=0;o<l.length;o+=1)for(var u=l[o],d=0;d<this.columns.length;d+=1){var{type:h,name:v}=this.columns[d],m=null;if(s){var f,g=(f=e.getData(u,this.columns[d]))!==null&&f!==void 0?f:"";g!==""&&x.isDateType(h)&&(g=i.i18n.DateTimeFormat.format(Gb,g,i.i18n.TimeZone.getTimeZone(a.timeZone))),m=g.toString()}else{var p=this.getCachedCustomColumnFormatFlag(a,v,h),C=null;if(!p){var S=e.getFormat(u,this.columns[d]);C=S?.formatString!=null?S:null}C?m=a.getFormattedString(e.getData(u,this.columns[d]),h,v,C):m=a.getFormattedString(e.getData(u,this.columns[d]),h,v)}t+=Lt.csvEscapeString(m),t+=d===this.columns.length-1?`
12
+ `:","}return t}makeSnapshot(e){var t=this;if(!(e<=0)){var{dh:r}=this.props;L(this.gridRangeCounter);var i=0,a=this.gridRanges[this.gridRangeCounter];L(this.tableSubscription),L(this.columns);for(var l=function(){L(a),L(a.startRow),L(a.endRow),L(t.rangedSnapshotCounter),L(t.chunkRows);var o=a.startRow+t.rangedSnapshotCounter*t.chunkRows,u=Math.min(o+t.chunkRows-1,a.endRow),d=t.snapshotCounter;t.cancelableSnapshots.push(st.makeCancelable(t.tableSubscription.snapshot(r.RangeSet.ofRange(o,u),t.columns).then(h=>(Wb(h),t.handleSnapshotResolved(h,d,o,u),d)).catch(h=>{Ar.error(h)}),h=>{Ar.info("snapshot ".concat(h," has been canceled"))})),t.rangedSnapshotCounter+=1,t.snapshotCounter+=1,t.snapshotPending+=1,t.rangedSnapshotCounter>=t.rangedSnapshotsTotal[t.gridRangeCounter]&&(t.gridRangeCounter+=1,t.rangedSnapshotCounter=0,a=t.gridRanges[t.gridRangeCounter]),i+=1};i<e;)l()}}handlePortMessage(e){var{data:t}=e,{download:r,readableStreamPulling:i}=t;if(!this.useBlobFallback){if(r!=null){var{includeColumnHeaders:a}=this;this.makeIframe("".concat(r)),this.writeCsvTable(a)}i!=null&&(this.useBlobFallback||(this.streamTimeout!=null&&clearTimeout(this.streamTimeout),this.streamTimeout=setTimeout(this.handleDownloadTimeout,Lt.STREAM_TIMEOUT)))}}handleSnapshotResolved(e,t,r,i){this.snapshotHandlerTimeout=setTimeout(()=>{this.snapshotsBuffer.set(t,e),this.snapshotPending-=1,this.writeSnapshot(t,r,i),this.cancelableSnapshots[t]=null},Lt.SNAPSHOT_HANDLER_TIMEOUT)}makeIframe(e){var t=document.createElement("iframe");t.hidden=!0,t.src=e,t.name="iframe",document.body.appendChild(t),this.iframe=t}removeIframe(){var e;(e=this.iframe)===null||e===void 0||e.remove(),this.iframe=void 0}render(){return null}}Ne(Lt,"DOWNLOAD_CELL_CHUNK",6e3);Ne(Lt,"SNAPSHOT_BUFFER_SIZE",5);Ne(Lt,"STREAM_TIMEOUT",8e3);Ne(Lt,"SNAPSHOT_HANDLER_TIMEOUT",5);Ne(Lt,"defaultProps",{isDownloading:!1,onDownloadCompleted:()=>{},onDownloadCanceled:()=>{},onDownloadProgressUpdate:()=>{}});function zb(n){var e,{group:t,onDelete:r,onColorChange:i,onNameChange:a,validateName:l}=n,{isNew:s}=t,o=R.useRef(t),u=R.useRef(null),d=R.useRef(null),[h,v]=R.useState(!1),[m,f]=R.useState(s?"":t.name),[g,p]=R.useState(s),[C,S]=R.useState(!1),b=m!==t.name?l(m):"",w=s&&!C||b==="",y=R.useCallback(()=>{v(!1)},[]);R.useEffect(function(){g&&u.current&&(u.current.focus(),u.current.select())},[g]),R.useEffect(function(){return()=>{o.current.isNew&&r(o.current)}},[r]),R.useEffect(function(){if(h){var D,N;(D=d.current)===null||D===void 0||D.click(),(N=d.current)===null||N===void 0||N.focus(),window.addEventListener("click",y,!0)}return()=>window.removeEventListener("click",y,!0)},[h,y]);var T=()=>{w&&(a(t,m),p(!1))},E=()=>{if(s){r(t);return}f(t.name),p(!1)},P=O=>{S(!0),O.key==="Enter"&&(O.stopPropagation(),T()),O.key===" "&&O.stopPropagation(),O.key==="Escape"&&E()};return g?c.jsxs(c.Fragment,{children:[c.jsxs("div",{className:"editing-container",children:[c.jsx("input",{ref:u,className:re("form-control",{"is-invalid":!w}),value:m,placeholder:"Group Name",onChange:O=>f(O.target.value),onKeyDown:P,onBlur:()=>S(!0)}),c.jsx(Y,{kind:"ghost",icon:Ta,tooltip:"Confirm",onClick:T}),c.jsx(Y,{kind:"ghost",icon:Wv,tooltip:"Cancel",onClick:E})]}),!w&&c.jsx("p",{className:"mb-0 validate-label-error text-danger",children:b})]}):c.jsxs("div",{className:"group-name-wrapper",children:[c.jsx("span",{className:"column-name",children:m}),c.jsx(Y,{className:"p-1 mx-1",kind:"ghost",icon:Hi,tooltip:"Edit",onClick:()=>{p(!0)}}),c.jsxs("span",{className:"right-buttons",children:[c.jsx(Y,{kind:"ghost",icon:fr,tooltip:"Delete group",onClick:()=>r(t)}),c.jsx(Y,{kind:"ghost",className:"color-swatch mr-1",icon:t.color!==void 0?c.jsxs("span",{className:"fa-layers",children:[c.jsx(le,{className:"color-swatch",icon:Ea,color:ze.white,transform:"down-1"}),c.jsx(le,{className:"color-swatch",icon:Ea,color:t.color,transform:"shrink-2 down-1"})]}):zv,tooltip:"Set color",onClick:()=>v(O=>!O)}),h&&c.jsxs(c.Fragment,{children:[c.jsx("input",{"aria-label":"Color input",ref:d,type:"color",list:"presetColors",value:(e=t.color)!==null&&e!==void 0?e:ze["content-bg"],style:{visibility:"hidden",width:0,height:0,padding:0,border:0},onChange:O=>{t.color=O.target.value,i(t,O.target.value)}}),c.jsxs("datalist",{id:"presetColors",children:[c.jsx("option",{children:ze["content-bg"]}),c.jsx("option",{children:ze.primary}),c.jsx("option",{children:ze.foreground}),c.jsx("option",{children:ze.green}),c.jsx("option",{children:ze.yellow}),c.jsx("option",{children:ze.orange}),c.jsx("option",{children:ze.red}),c.jsx("option",{children:ze.purple}),c.jsx("option",{children:ze.blue}),c.jsx("option",{children:ze["gray-400"]})]})]})]})]})}function Au(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 Mu(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Au(Object(t),!0).forEach(function(r){Kb(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Au(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Kb(n,e,t){return e=Yb(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Yb(n){var e=qb(n,"string");return typeof e=="symbol"?e:String(e)}function qb(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Xb(){}var Qb=R.forwardRef(function(e,t){var{value:r,clone:i,childCount:a,item:l,onVisibilityChange:s,onClick:o,onGroupDelete:u,onGroupColorChange:d,onGroupNameChange:h,validateGroupName:v,handleProps:m}=e,{group:f,modelIndex:g,isVisible:p}=l.data,C=R.useRef(null),S=R.useCallback(w=>{if(w.buttons===1){var y;s([g].flat(),!p),(y=C.current)===null||y===void 0||y.focus()}},[s,g,p]),b=R.useCallback(w=>{o(r,w)},[o,r]);return c.jsxs("div",Mu(Mu({ref:t,className:re("tree-item",{isSelected:l.selected,"two-dragged":a===2,"multiple-dragged":a>2}),onClick:b},m),{},{children:[c.jsx(Y,{ref:C,kind:"ghost",className:"px-1",onClick:Xb,onMouseDown:S,onMouseEnter:S,icon:p?Ts:sh,tooltip:"Toggle visibility"}),c.jsx("span",{className:re("column-name",f&&"column-group"),children:f&&!i?c.jsx(zb,{group:f,onDelete:u,onColorChange:d,onNameChange:h,validateName:v}):r}),c.jsxs("div",{children:[i&&a>1&&c.jsx("span",{className:"item-count",children:a}),c.jsx(Jt,{children:"Drag to re-order"}),c.jsx(le,{icon:Ua})]})]}))});const Zb=Qb;function Jb(n){return n.parentId!==void 0}function xu(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 Lu(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?xu(Object(t),!0).forEach(function(r){ew(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):xu(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function ew(n,e,t){return e=tw(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function tw(n){var e=rw(n,"string");return typeof e=="symbol"?e:String(e)}function rw(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function nw(n,e){return Math.round(n/e)}function kh(n,e,t,r,i,a){var l=n.findIndex(u=>u.name===r);if(l===-1){var s=t.get(r);if(s==null)throw new Error("Column or header group not found: ".concat(r));var o=s.childIndexes.flat();return{id:r,selected:a.has(r),children:s.children.map(u=>kh(n,e,t,u,i,a)).sort((u,d)=>{var h=Array.isArray(u.data.visibleIndex)?u.data.visibleIndex[0]:u.data.visibleIndex,v=Array.isArray(d.data.visibleIndex)?d.data.visibleIndex[0]:d.data.visibleIndex;return h-v}),data:{modelIndex:o,visibleIndex:s.getVisibleRange(e),group:s,isVisible:o.some(u=>!i.has(u))}}}return{id:r,children:[],selected:a.has(r),data:{modelIndex:l,visibleIndex:K.getVisibleIndex(l,e),isVisible:!i.has(l)}}}function iw(n,e,t,r,i){for(var a=[],l=new Set(i),s=new Map(t.map(h=>[h.name,h])),o=new Set(r),u=0,d=function(){for(var v=K.getModelIndex(u,e),m=n[v].name,f=t.find(p=>{var{children:C}=p;return C.includes(m)});f!==void 0&&f.parent!==void 0;)f=s.get(f.parent);var g=kh(n,e,s,f?f.name:m,o,l);a.push(g),Array.isArray(g.data.visibleIndex)?u+=g.data.visibleIndex[1]-g.data.visibleIndex[0]+1:u+=1};u<n.length;)d();return a}function Ia(n,e,t,r,i){var a=n.findIndex(C=>{var{id:S}=C;return S===t}),l=n.findIndex(C=>{var{id:S}=C;return S===e}),s=n[l],o=_c(n,l,a),u=o[a-1],d=o[a+1],h=nw(r,i),v=s.depth+h,m=aw({previousItem:u,nextItem:d}),f=lw({nextItem:d}),g=v;return v>=m?g=m:v<f&&(g=f),{depth:g,maxDepth:m,minDepth:f,parentId:p()};function p(){var C;if(g===0||!u)return null;if(g===u.depth)return u.parentId;if(g>u.depth)return u.id;var S=(C=o.slice(0,a).reverse().find(b=>b.depth===g))===null||C===void 0?void 0:C.parentId;return S??null}}function aw(n){var e,t,{previousItem:r,nextItem:i}=n;return Math.max((e=r?.depth)!==null&&e!==void 0?e:0,(t=i?.depth)!==null&&t!==void 0?t:0)}function lw(n){var{nextItem:e}=n;return e?e.depth:0}function jh(n){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null,t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return n.reduce((r,i,a)=>[...r,Lu(Lu({},i),{},{parentId:e,depth:t,index:a}),...jh(i.children,i.id,t+1)],[])}function qt(n){return n.every(Jb)?[...n]:jh(n)}function _h(n,e){for(var t=0;t<n.length;t+=1){var r=n[t],{id:i,children:a}=r;if(i===e)return r;if(a.length){var l=_h(a,e);if(l)return l}}}function Hh(n){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return n.reduce((t,r)=>{var{children:i}=r;return i.length?Hh(i,t+1):t+1},e)}function sw(n,e){var t=_h(n,e);return t?Hh(t.children):0}function ku(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 ia(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ku(Object(t),!0).forEach(function(r){ow(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ku(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function ow(n,e,t){return e=uw(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function uw(n){var e=dw(n,"string");return typeof e=="symbol"?e:String(e)}function dw(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var hw=[Tr.Down,Tr.Right,Tr.Up,Tr.Left],cw=[Tr.Left,Tr.Right];function vw(n,e,t){return(r,i)=>{var{currentCoordinates:a,context:{active:l,over:s,collisionRect:o,droppableRects:u,droppableContainers:d}}=i;if(hw.includes(r.code)){if(!l||!o)return;r.preventDefault();var{current:{items:h,offset:v}}=n;if(cw.includes(r.code)&&s?.id!=null){var{depth:m,maxDepth:f,minDepth:g}=Ia(h,l.id,s.id,v,t);switch(r.code){case Tr.Left:if(m>g)return ia(ia({},a),{},{x:a.x-t});break;case Tr.Right:if(m<f)return ia(ia({},a),{},{x:a.x+t});break}return}var p=[];d.forEach(k=>{if(!(k!=null&&k.disabled||k.id===s?.id)){var B=u.get(k.id);if(B)switch(r.code){case Tr.Down:o.top<B.top&&p.push(k);break;case Tr.Up:o.top>B.top&&p.push(k);break}}});var C=Hc({active:l,collisionRect:o,pointerCoordinates:null,droppableRects:u,droppableContainers:p}),S=Uc(C,"id");if(S===s?.id&&C.length>1&&(S=C[1].id),S!=null&&s?.id!=null){var b=u.get(l.id),w=u.get(S),y=d.get(S);if(b&&w&&y){var T=h.findIndex(k=>{var{id:B}=k;return B===S}),E=h[T],P=h.findIndex(k=>{var{id:B}=k;return B===l.id}),O=h[P];if(E!=null&&O!=null){var{depth:D}=Ia(h,l.id,S,(E.depth-O.depth)*t,t),N=T>P,F=N?1:-1,A=e?(o.height-b.height)/2:0,j={x:w.left+D*t,y:w.top+F*A};return j}}}}}}function mw(n,e,t){return e=fw(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function fw(n){var e=gw(n,"string");return typeof e=="symbol"?e:String(e)}function gw(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Uh extends Vc{}mw(Uh,"activators",[{eventName:"onPointerDown",handler:n=>{var{nativeEvent:e}=n;return!(!e.isPrimary||e.button!==0||Cw(e.target))}}]);var pw=["button","input","textarea","select","option"];function Cw(n){return!!(n?.tagName!=null&&pw.includes(n.tagName.toLowerCase()))}function Vh(n){var{clone:e=!1,depth:t,disableInteraction:r=!1,ghost:i=!1,handleProps:a,value:l,dragRef:s=null,wrapperRef:o=null,renderItem:u,item:d,childCount:h}=n,v=R.useMemo(()=>Array(t).fill(0).map((f,g)=>c.jsx("span",{className:"depth-line"},"depth-line-".concat(g))),[t]),m=R.useMemo(()=>({ref:s,clone:e,value:l,item:d,childCount:h,handleProps:a}),[s,e,l,d,h,a]);return c.jsxs("li",{className:re("item-wrapper",{clone:e,ghost:i,disableInteraction:r}),ref:o,children:[!e&&v,u(m)]},l)}Vh.displayName="TreeItem";var Sw=["id","depth"];function ju(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 aa(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ju(Object(t),!0).forEach(function(r){bw(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ju(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function bw(n,e,t){return e=ww(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ww(n){var e=yw(n,"string");return typeof e=="symbol"?e:String(e)}function yw(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Tw(n,e){if(n==null)return{};var t=Ew(n,e),r,i;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(n);for(i=0;i<a.length;i++)r=a[i],!(e.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(n,r)&&(t[r]=n[r])}return t}function Ew(n,e){if(n==null)return{};var t={},r=Object.keys(n),i,a;for(a=0;a<r.length;a++)i=r[a],!(e.indexOf(i)>=0)&&(t[i]=n[i]);return t}var Ow=n=>{var{isSorting:e,wasDragging:t}=n;return!(e||t)};function _u(n){var{id:e,depth:t}=n,r=Tw(n,Sw),{attributes:i,isDragging:a,isSorting:l,listeners:s,setDraggableNodeRef:o,setDroppableNodeRef:u,transform:d,transition:h}=Bc({id:e,animateLayoutChanges:Ow}),v=Bl.Translate.toString(d),m=R.useMemo(()=>({transform:v,transition:h}),[v,h]),f=R.useMemo(()=>aa(aa(aa({},i),s),{},{style:m}),[i,s,m]);return c.jsx(Vh,aa({dragRef:o,wrapperRef:u,depth:t,ghost:a,disableInteraction:l,handleProps:f},r))}function Hu(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 Aa(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Hu(Object(t),!0).forEach(function(r){Pw(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Hu(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Pw(n,e,t){return e=Rw(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Rw(n){var e=Dw(n,"string");return typeof e=="symbol"?e:String(e)}function Dw(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Fw={keyframes(n){var{transform:e}=n;return[{opacity:1,transform:Bl.Transform.toString(e.initial)},{opacity:0,transform:Bl.Transform.toString(Aa(Aa({},e.final),{},{x:e.final.x+5,y:e.final.y+5}))}]},easing:"ease-out",sideEffects(n){var{active:e}=n;e.node.animate([{opacity:0},{opacity:1}],{duration:so.duration,easing:so.easing})}},la=null;function Nw(n){var e;return la==null&&n.activeNodeRect&&n.activatorEvent instanceof PointerEvent&&(la=Math.floor((n.activatorEvent.clientY-n.activeNodeRect.top)/n.activeNodeRect.height)*n.activeNodeRect.height),n.activeNodeRect||(la=null),Aa(Aa({},n.transform),{},{y:n.transform.y+((e=la)!==null&&e!==void 0?e:0)})}function Iw(n){var{items:e,renderItem:t,indentationWidth:r=30,indicator:i=!1,activeId:a,overId:l,offsetLeft:s}=n,o=Gc(),u=R.useRef(o);R.useEffect(function(){u.current=o},[o]),R.useEffect(function(){u.current.measureDroppableContainers(e.map(f=>{var{id:g}=f;return g}))},[e]);var d=a!=null&&l!=null?Ia(e,a,l,s,r):null,h=R.useRef({items:e,offset:s}),v=a!=null?e.find(m=>{var{id:f}=m;return f===a}):null;return R.useEffect(()=>{h.current={items:e,offset:s}},[e,s]),c.jsxs(c.Fragment,{children:[c.jsx("div",{className:re("tree-container",a!=null&&"marching-ants"),children:e.map(m=>{var{id:f,depth:g}=m;return c.jsx(_u,{id:f,value:f,depth:f===a&&d?d.depth:g,item:m,renderItem:t},f)})}),$c.createPortal(c.jsx(Wc,{dropAnimation:Fw,modifiers:[Nw],className:"visibility-ordering-list",children:a!=null&&v?c.jsx(_u,{id:a,depth:v.depth,clone:!0,childCount:sw(e,a)+1,value:a.toString(),renderItem:t,item:v}):null}),document.body)]})}function Uu(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 sa(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Uu(Object(t),!0).forEach(function(r){Aw(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Uu(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Aw(n,e,t){return e=Mw(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Mw(n){var e=xw(n,"string");return typeof e=="symbol"?e:String(e)}function xw(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Lw={droppable:{strategy:Qc.Always}},kw={activationConstraint:{distance:5}};function jw(n){var{items:e,indicator:t=!1,indentationWidth:r=30,onDragStart:i,onDragEnd:a,renderItem:l}=n,[s,o]=R.useState(null),[u,d]=R.useState(null),[h,v]=R.useState(0),m=R.useMemo(()=>{var O=qt(e);return s!=null?O.filter(D=>{var{id:N,selected:F}=D;return N===s||!F}):O},[s,e]),f=s!=null&&u!=null?Ia(m,s,u,h,r):null,g=R.useRef({items:m,offset:h}),p=R.useMemo(()=>({coordinateGetter:vw(g,t,r)}),[r,t]),C=zc(oo(Uh,kw),oo(Zc,p)),S=R.useMemo(()=>m.map(O=>{var{id:D}=O;return D}),[m]);R.useEffect(()=>{g.current={items:m,offset:h}},[m,h]);var b=R.useCallback(O=>{var{active:{id:D}}=O;o(D),d(D),i?.(D),document.body.style.setProperty("cursor","grabbing")},[i]),w=R.useCallback(O=>{var{delta:D}=O;v(D.x)},[]),y=R.useCallback(O=>{var D,{over:N}=O;d((D=N?.id)!==null&&D!==void 0?D:null)},[]),T=R.useCallback(()=>{d(null),o(null),v(0),document.body.style.setProperty("cursor","")},[]),E=R.useCallback(O=>{var{active:D,over:N}=O;if(T(),f&&N){var{depth:F,parentId:A}=f,j=JSON.parse(JSON.stringify(qt(e))),k=j.findIndex(W=>{var{id:z}=W;return z===N.id}),B=j.findIndex(W=>{var{id:z}=W;return z===D.id}),G=j[B];j[B]=sa(sa({},G),{},{depth:F,parentId:A}),a?.(G,sa(sa({},j[k]),{},{parentId:f.parentId}))}},[e,a,f,T]),P=R.useCallback(()=>{T()},[T]);return c.jsx(Kc,{sensors:C,collisionDetection:Yc,measuring:Lw,onDragStart:b,onDragMove:w,onDragOver:y,onDragEnd:E,onDragCancel:P,children:c.jsx(qc,{items:S,strategy:Xc,children:c.jsx(Iw,{items:m,renderItem:l,indicator:t,indentationWidth:r,activeId:s,overId:u,offsetLeft:h})})})}function Vu(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 Bu(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Vu(Object(t),!0).forEach(function(r){_w(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Vu(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function _w(n,e,t){return e=Hw(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Hw(n){var e=Uw(n,"string");return typeof e=="symbol"?e:String(e)}function Uw(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Vw(n,e,t,r,i,a,l,s){var o=i.map((w,y)=>Bu(Bu({},w),{},{index:y})),u=[],d=r,h=a[0].data.visibleIndex,v=o.findIndex(w=>{var{id:y}=w;return y===n.id}),m=o.findIndex(w=>{var{id:y}=w;return y===e.id}),f=Array.isArray(h)?h[1]+1:h+1;d=nn(a[0],e.parentId,d);for(var g=1;g<a.length;g+=1){var{data:{visibleIndex:p}}=a[g];u=K.moveItemOrRange(p,f,u,!0),f+=Array.isArray(p)?p[1]-p[0]+1:1,d=nn(a[g],e.parentId,d)}var C=[Array.isArray(h)?h[0]:h,f-1],S=Array.isArray(e.data.visibleIndex)?e.data.visibleIndex[0]:e.data.visibleIndex,b=K.getVisibleIndex(S,u);return v>m&&b>S&&(b-=1),e.children.length>0&&(Array.isArray(h)?h[0]:h)<b&&(b-=1),C[0]<b&&(b-=C[1]-C[0]),u=K.moveItemOrRange(C,Ae(b,l,s),u),{groups:d,movedColumns:t.concat(u)}}function nn(n,e,t){if(n.parentId===e)return[...t];var r=t.map(p=>new Zt(p)),i=new Map(r.map(p=>[p.name,p])),a=r.find(p=>p.name===n.parentId),l=r.find(p=>p.name===e),s=r.find(p=>p.name===n.id);if(a!=null&&(a.children=a.children.filter(p=>p!==n.id),a.children.length===0)){var o,u=new Set([a.name]),{parent:d=""}=a,h=i.get(d);for((o=h)===null||o===void 0||o.removeChildren([a.name]);h&&h.children.length===0;){var v,m;u.add(h.name);var f=(v=(m=h)===null||m===void 0?void 0:m.parent)!==null&&v!==void 0?v:"",g=i.get(f);g?.removeChildren([h.name]),h=g}r=r.filter(p=>{var{name:C}=p;return!u.has(C)})}return l?.addChildren([n.id]),s?.setParent(e??void 0),r}function Gu(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 oa(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Gu(Object(t),!0).forEach(function(r){Xt(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Gu(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Xt(n,e,t){return e=Bw(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Bw(n){var e=Gw(n,"string");return typeof e=="symbol"?e:String(e)}function Gw(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var $w=150;class qe extends R.Component{constructor(e){super(e),Xt(this,"list",void 0),Xt(this,"debouncedSearchColumns",ct(this.searchColumns,$w)),Xt(this,"handleGroupColorChange",wa((t,r)=>{var{columnHeaderGroups:i,onColumnHeaderGroupChanged:a}=this.props,l=[...i],s=new Zt(oa(oa({},t),{},{color:r}));l.splice(l.findIndex(o=>{var{name:u}=o;return u===t.name}),1,s),a(l)},250)),Xt(this,"renderItem",be(t=>{var{value:r,clone:i,item:a,ref:l,handleProps:s}=t,{onColumnVisibilityChanged:o}=this.props,{selectedColumns:u}=this.state,d=r;if(i){var h=this.getSelectedParentItems().map(v=>{var{id:m}=v;return m});d=h.join(", ")}return c.jsx(Zb,{ref:l,value:d,clone:i,item:a,childCount:u.size,onVisibilityChange:o,onClick:this.handleItemClick,onGroupDelete:this.handleGroupDelete,onGroupColorChange:this.handleGroupColorChange,onGroupNameChange:this.handleGroupNameChange,validateGroupName:this.validateGroupName,handleProps:s})})),Xt(this,"getMemoizedFirstMovableIndex",be((t,r,i)=>{for(var a=0;a<r.length;a+=1){var l=K.getModelIndex(a,i);if(t.isColumnMovable(l))return a}return null})),Xt(this,"getMemoizedLastMovableIndex",be((t,r,i)=>{for(var a=r.length-1;a>=0;a-=1){var l=K.getModelIndex(a,i);if(t.isColumnMovable(l))return a}return null})),Xt(this,"memoizedGetTreeItems",be((t,r,i,a,l)=>iw(t,r,i,a,[...l.values()]))),Xt(this,"makeVisibilityOrderingList",be((t,r)=>{var{movedColumns:i}=this.props,a=[],l=this.getFirstMovableIndex(),s=this.getLastMovableIndex(),o=r.findIndex(w=>{var{data:y}=w;return Array.isArray(y.visibleIndex)?y.visibleIndex[0]===l:y.visibleIndex===l}),u=r.findIndex(w=>{var{data:y}=w;return Array.isArray(y.visibleIndex)?y.visibleIndex[1]===s:y.visibleIndex===s}),d=r.slice(o,u+1);if(l==null||s===null){for(var h=0;h<t.length;h+=1){var v=K.getModelIndex(h,i),m=t[v];a.push(this.renderImmovableItem(m.name))}return a}for(var f=0;f<l;f+=1){var g=K.getModelIndex(f,i),p=t[g];a.push(this.renderImmovableItem(p.name))}l!==null&&l>0&&a.push(c.jsx("hr",{},"top-horizontal-divider")),a.push(c.jsx(jw,{items:d,renderItem:this.renderItem,onDragStart:this.handleDragStart,onDragEnd:this.handleDragEnd},"movable-items")),s!=null&&s<t.length-1&&a.push(c.jsx("hr",{},"bottom-horizontal-divider"));for(var C=s+1;C<t.length;C+=1){var S=K.getModelIndex(C,i),b=t[S];a.push(this.renderImmovableItem(b.name))}return a})),Xt(this,"renderImmovableItem",be(t=>c.jsx("div",{className:"visibility-ordering-list-item immovable",children:c.jsx("div",{className:"column-item",children:c.jsx("span",{className:"column-name",children:t})})},t))),this.handleSearchInputChange=this.handleSearchInputChange.bind(this),this.searchColumns=this.searchColumns.bind(this),this.handleItemClick=this.handleItemClick.bind(this),this.handleDragEnd=this.handleDragEnd.bind(this),this.handleGroupDelete=this.handleGroupDelete.bind(this),this.handleGroupNameChange=this.handleGroupNameChange.bind(this),this.handleGroupCreate=this.handleGroupCreate.bind(this),this.validateGroupName=this.validateGroupName.bind(this),this.addColumnToSelected=this.addColumnToSelected.bind(this),this.handleDragStart=this.handleDragStart.bind(this),this.state={selectedColumns:new Set,lastSelectedColumn:"",searchFilter:""},this.list=null}componentWillUnmount(){this.debouncedSearchColumns.cancel()}resetVisibilityOrdering(){var{model:e,onReset:t,onMovedColumnsChanged:r,onColumnHeaderGroupChanged:i}=this.props;this.setState({selectedColumns:new Set,lastSelectedColumn:"",searchFilter:""}),t(),i(e.initialColumnHeaderGroups),r(e.initialMovedColumns)}resetSelection(){this.setState({selectedColumns:new Set,lastSelectedColumn:""})}handleSearchInputChange(e){var t=e.target.value;if(this.setState({searchFilter:t}),!t){this.debouncedSearchColumns.cancel(),this.resetSelection();return}this.debouncedSearchColumns(t)}searchColumns(e){var t=qt(this.getTreeItems()),r=t.filter(o=>{var u,d,{id:h,data:v}=o;return!((u=(d=v.group)===null||d===void 0?void 0:d.isNew)!==null&&u!==void 0&&u)&&h.toLowerCase().includes(e.toLowerCase())}),i=r.map(o=>{var{id:u}=o;return u}),a=t.findIndex(o=>{var{id:u}=o;return u.toLowerCase().includes(e.toLowerCase())});if(this.addColumnToSelected(i,!1),i.length>0){var l,s=(l=this.list)===null||l===void 0?void 0:l.querySelectorAll(".item-wrapper")[a];s?.scrollIntoView({block:"center"})}}moveSelectedColumns(e){var{columnHeaderGroups:t}=this.props,{selectedColumns:r}=this.state,i=qt(this.getTreeItems()),a=this.getFirstMovableIndex(),l=this.getLastMovableIndex();L(a),L(l);var s=this.getSelectedParentItems(),o=e===qe.MOVE_OPTIONS.UP||e===qe.MOVE_OPTIONS.TOP;o||s.reverse();for(var u=[],d=t,h=function(){var{id:f,parentId:g,depth:p,data:{visibleIndex:C}}=s[v];switch(e){case qe.MOVE_OPTIONS.TOP:{u=K.moveItemOrRange(C,a,u,!0);var S=Array.isArray(C)?C[1]-C[0]+1:1;a+=S,d=nn(s[v],null,d);break}case qe.MOVE_OPTIONS.BOTTOM:{u=K.moveItemOrRange(C,l,u,!0);var b=Array.isArray(C)?C[1]-C[0]+1:1;l-=b,d=nn(s[v],null,d);break}case qe.MOVE_OPTIONS.UP:{var w=i.findIndex(G=>G.id===f),y=i.map((G,W)=>W<w&&!r.has(G.id)).lastIndexOf(!0),T=i[y];if(T!=null&&T.parentId!==g)if(Math.abs(T.depth-p)>1){var E=i.map((G,W)=>W<y&&G.depth===p).lastIndexOf(!0),P=i[E];d=nn(s[v],P.id,d)}else d=nn(s[v],T.parentId,d);else{var O=Ae(Array.isArray(C)?C[0]-1:C-1,a,l);u=K.moveItemOrRange(C,O,u,!1);var D=Array.isArray(C)?C[1]-C[0]+1:1;a+=D}break}case qe.MOVE_OPTIONS.DOWN:{var N=i.findIndex(G=>G.id===f),F=i.find((G,W)=>W>N&&!r.has(G.id));if(F?.parentId!==g){var A,j=i.find(G=>G.id===g);d=nn(s[v],(A=j?.parentId)!==null&&A!==void 0?A:null,d);break}else if(F?.children.length>0){d=nn(s[v],F.id,d);break}var k=Ae(Array.isArray(C)?C[0]+1:C+1,a,l);u=K.moveItemOrRange(C,k,u,!1);var B=Array.isArray(C)?C[1]-C[0]+1:1;l-=B;break}}},v=0;v<s.length;v+=1)h();return{newMoves:u,groups:d}}handleMoveColumns(e){var{onMovedColumnsChanged:t,movedColumns:r,onColumnHeaderGroupChanged:i}=this.props,{newMoves:a,groups:l}=this.moveSelectedColumns(e),s;e===qe.MOVE_OPTIONS.TOP&&(s=()=>{var o,u;(o=this.list)===null||o===void 0||(u=o.parentElement)===null||u===void 0||u.scroll({top:0})}),e===qe.MOVE_OPTIONS.BOTTOM&&(s=()=>{var o,u;(o=this.list)===null||o===void 0||(u=o.parentElement)===null||u===void 0||u.scroll({top:this.list.parentElement.scrollHeight})}),i(l),a.length>0&&t(r.concat(a),s)}getSortMoves(e,t,r){var i=[...e],a=t===qe.SORTING_OPTIONS.ASC;i.sort((v,m)=>{var f=v.id.toUpperCase(),g=m.id.toUpperCase();return sr.sort(f,g,a)});for(var l=[...r],s=Math.min(...i.flatMap(v=>{var{modelIndex:m}=v.data;return Array.isArray(m)?K.getVisibleIndexes(m,l):K.getVisibleIndex(m,l)})),o=0;o<i.length;o+=1){var u=i[o],{modelIndex:d}=u.data,h=Array.isArray(d)?K.getVisibleIndexes(d,l):K.getVisibleIndex(d,l);l=Array.isArray(h)?K.moveRange([Math.min(...h),Math.max(...h)],s,l,!0):K.moveItem(h,s,l),Array.isArray(h)&&(l=this.getSortMoves(u.children,t,l)),s+=Array.isArray(d)?d.length:1}return l}handleSortColumns(e){var{model:t,onMovedColumnsChanged:r}=this.props,i=this.getSortMoves(this.getTreeItems(),e,t.initialMovedColumns);r(i)}handleItemClick(e,t){if(t.stopPropagation(),!(t.target instanceof HTMLElement&&(t.target.tagName==="BUTTON"||t.target.tagName==="INPUT"))){t.currentTarget.focus();var{selectedColumns:r,lastSelectedColumn:i}=this.state,a=K.isModifierKeyDown(t),l=t.shiftKey,s=r.has(e),o=[e];if(s&&a){this.removeColumnFromSelected(e);return}var u=qt(this.getTreeItems());if(s&&!l&&i===e){var d=u.find(f=>{var{id:g}=f;return g===e});L(d);var h=qt(d.children).length;if(h+1===r.size){this.resetSelection();return}}if(l){var v=u.findIndex(f=>f.id===e),m=u.findIndex(f=>f.id===i);o.push(...u.slice(Math.min(m,v),Math.max(m,v)+1).map(f=>f.id))}this.addColumnToSelected(o,a||l),this.setState({lastSelectedColumn:e})}}addColumnToSelected(e,t){var{selectedColumns:r}=this.state,i=new Set(t?[...r.values()].concat(e):e),a=qt(this.getTreeItems());a.forEach(l=>{var{id:s,children:o}=l;i.has(s)&&o.forEach(u=>i.add(u.id))}),this.setState({selectedColumns:i})}removeColumnFromSelected(e){var{selectedColumns:t}=this.state,r=qt(this.getTreeItems()),i=r.find(s=>{var{id:o}=s;return o===e});L(i);var a=r.find(s=>{var{id:o}=s;return o===i.parentId});qt(i?.children).forEach(s=>t.delete(s.id));for(var l=function(){t.delete(a.id);var o=a.parentId;a=r.find(u=>{var{id:d}=u;return d===o})};a!=null;)l();t.delete(e),this.setState({selectedColumns:new Set(t)})}handleDragStart(e){var{selectedColumns:t}=this.state;t.has(e)||this.addColumnToSelected([e],!1)}handleDragEnd(e,t){var{movedColumns:r,onMovedColumnsChanged:i,columnHeaderGroups:a,onColumnHeaderGroupChanged:l}=this.props,s=this.getSelectedParentItems(),o=qt(this.getTreeItems()).map((m,f)=>oa(oa({},m),{},{index:f})),u=this.getFirstMovableIndex(),d=this.getLastMovableIndex();L(u),L(d);var{groups:h,movedColumns:v}=Vw(e,t,r,a,o,s,u,d);l(h),i(v)}handleGroupNameChange(e,t){var{columnHeaderGroups:r,onColumnHeaderGroupChanged:i}=this.props,a=[...r],l=e.name,s=a.findIndex(v=>{var{name:m}=v;return m===l}),o=a[s];L(o);var u=new Zt(o);u.name=t,a.splice(s,1,u);var d=a.findIndex(v=>{var{name:m}=v;return m===u.parent});if(d>=0){var h=new Zt(a[d]);h.removeChildren([l]),h.addChildren([t]),a.splice(d,1,h)}i(a)}handleGroupDelete(e){var{columnHeaderGroups:t,onColumnHeaderGroupChanged:r}=this.props,i=t.filter(s=>s.name!==e.name),a=i.findIndex(s=>s.name===e.parent);if(a>=0){var l=new Zt(i[a]);l.addChildren(e.children),l.removeChildren([e.name]),i.splice(a,1,l)}r(i)}handleGroupCreate(){var{movedColumns:e,onMovedColumnsChanged:t,onColumnHeaderGroupChanged:r}=this.props,{newMoves:i,groups:a}=this.moveSelectedColumns(qe.MOVE_OPTIONS.TOP),l=a.filter(h=>!h.isNew),s=this.getSelectedParentItems(),o=s.map(h=>h.data.modelIndex).flat().filter(h=>h>=0),u="".concat(Zt.NEW_GROUP_PREFIX,"-").concat(Date.now()),d=new Zt({name:u,children:s.map(h=>{var{id:v}=h;return v}),depth:0,childIndexes:[...new Set(o)]});t(e.concat(i),()=>{var h,v;(h=this.list)===null||h===void 0||(v=h.parentElement)===null||v===void 0||v.scroll({top:0})}),r(l.concat([d])),this.resetSelection()}validateGroupName(e){var{model:t,columnHeaderGroups:r}=this.props,{columns:i}=t;return as.isValidColumnName(e)?i.some(a=>{var{name:l}=a;return l===e})||r.some(a=>{var{name:l}=a;return l===e})?"Duplicate name":"":"Invalid name"}getFirstMovableIndex(){var{model:e,movedColumns:t}=this.props;return this.getMemoizedFirstMovableIndex(e,e.columns,t)}getLastMovableIndex(){var{model:e,movedColumns:t}=this.props;return this.getMemoizedLastMovableIndex(e,e.columns,t)}getTreeItems(){var{model:e,movedColumns:t,hiddenColumns:r,columnHeaderGroups:i}=this.props,{selectedColumns:a}=this.state;return this.memoizedGetTreeItems(e.columns,t,i,r,a)}getSelectedParentItems(){var{selectedColumns:e}=this.state,t=qt(this.getTreeItems());return t.filter(r=>{var{id:i,parentId:a}=r;return e.has(i)&&!e.has(a??"")})}render(){var{model:e,hiddenColumns:t,onColumnVisibilityChanged:r}=this.props,{selectedColumns:i,searchFilter:a}=this.state,l=i.size>0,s=this.getTreeItems(),o=new Map(qt(s).map(g=>[g.id,g.data.modelIndex])),u=new Set(t),d=[...new Set(l?[...i.values()].map(g=>o.get(g)).filter(g=>g!=null).flat():s.map(g=>g.data.modelIndex).flat())],h=d.some(g=>!u.has(g)),v=h?"Hide All":"Show All",m=h?"Hide Selected":"Show Selected",f=this.makeVisibilityOrderingList(e.columns,s);return c.jsxs("div",{role:"menu",className:"visibility-ordering-builder",tabIndex:0,children:[c.jsxs("div",{className:"top-menu",children:[c.jsx(Y,{kind:"ghost",className:"toggle-visibility-btn",onClick:()=>{r(d,!h)},icon:h?Ts:sh,tooltip:"Toggle column visibility",children:l?m:v}),c.jsx(ms,{className:"visibility-search",value:a,matchCount:a?i.size:void 0,onChange:this.handleSearchInputChange})]}),c.jsxs("div",{className:"top-menu",children:[c.jsx(Y,{kind:"ghost",icon:Kv,tooltip:"Reset to default",onClick:()=>{this.resetVisibilityOrdering()},children:"Reset"}),c.jsx("span",{className:"vertical-divider"}),c.jsx(Y,{kind:"ghost",icon:ws,tooltip:"Sort ascending",onClick:()=>{this.handleSortColumns(qe.SORTING_OPTIONS.ASC)}}),c.jsx(Y,{kind:"ghost",icon:ys,tooltip:"Sort descending",onClick:()=>{this.handleSortColumns(qe.SORTING_OPTIONS.DSC)}}),c.jsx("span",{className:"vertical-divider"}),c.jsxs(Y,{kind:"ghost",tooltip:"Create group from selection",disabled:!l,onClick:this.handleGroupCreate,children:[c.jsxs("span",{className:"fa-layers",style:{marginRight:"0.75rem"},children:[c.jsx(le,{mask:Yv,icon:Ai,transform:"right-7 down-5 shrink-6"}),c.jsx(le,{icon:qv,transform:"right-8 down-6 shrink-8"})]}),"Group"]}),c.jsx("span",{className:"vertical-divider"}),c.jsx(Y,{kind:"ghost",icon:Xv,tooltip:"Move selection up",onClick:()=>{this.handleMoveColumns(qe.MOVE_OPTIONS.UP)},disabled:!l}),c.jsx(Y,{kind:"ghost",icon:Qv,tooltip:"Move selection down",onClick:()=>{this.handleMoveColumns(qe.MOVE_OPTIONS.DOWN)},disabled:!l}),c.jsx(Y,{kind:"ghost",icon:Zv,tooltip:"Move selection to top",onClick:()=>{this.handleMoveColumns(qe.MOVE_OPTIONS.TOP)},disabled:!l}),c.jsx(Y,{kind:"ghost",icon:Jv,tooltip:"Move selection to bottom",onClick:()=>{this.handleMoveColumns(qe.MOVE_OPTIONS.BOTTOM)},disabled:!l})]}),c.jsx("div",{role:"menu",className:re("visibility-ordering-list"),children:c.jsx("div",{className:"column-list",ref:g=>{this.list=g},children:f})})]})}}Xt(qe,"SORTING_OPTIONS",{DSC:"DSC",ASC:"ASC"});Xt(qe,"MOVE_OPTIONS",{TOP:"TOP",BOTTOM:"BOTTOM",UP:"UP",DOWN:"DOWN"});const Ww=qe;function zw(n,e,t){return e=Kw(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Kw(n){var e=Yw(n,"string");return typeof e=="symbol"?e:String(e)}function Yw(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class qw extends R.PureComponent{static createSearchFilter(e,t,r,i,a){var l=a?i.filter(u=>!r.includes(u.name)).map(u=>u.name):r;if(t&&l.length>0){var s=e.FilterValue.ofString(t),o=l.length===i.length?e.FilterCondition.search(s):e.FilterCondition.search(s,i.filter(u=>l.includes(u.name)).map(u=>u.filter()));return o}}constructor(e){super(e),zw(this,"searchField",void 0),this.handleSearchValueChange=this.handleSearchValueChange.bind(this),this.toggleColumn=this.toggleColumn.bind(this),this.selectAll=this.selectAll.bind(this),this.clear=this.clear.bind(this),this.selectNumbers=this.selectNumbers.bind(this),this.searchField=Me.createRef(),this.state={isConfigureColumnsShown:!1}}focus(){var e;(e=this.searchField.current)===null||e===void 0||e.focus()}handleSearchValueChange(e){var{onChange:t,selectedColumns:r,invertSelection:i}=this.props;t(e.target.value,r,i)}sendColumnChange(e,t){var{onChange:r,value:i}=this.props;r(i,e,t)}setInvertSelection(e){var{onChange:t,value:r}=this.props;t(r,[],e)}toggleColumn(e){var{selectedColumns:t,invertSelection:r}=this.props;if(t.includes(e))this.sendColumnChange(t.filter(a=>a!==e),r);else{var i=t.slice();i.push(e),this.sendColumnChange(i,r)}}selectAll(){this.setInvertSelection(!0)}clear(){this.setInvertSelection(!1)}selectNumbers(){var{columns:e}=this.props;this.sendColumnChange(e.filter(t=>x.isNumberType(t.type)).map(t=>t.name),!1)}render(){var{value:e,selectedColumns:t,invertSelection:r,columns:i}=this.props,{isConfigureColumnsShown:a}=this.state,l=t.length===0&&r===!0||t.length===i.length&&r===!1,s=t.length===0&&r===!1||t.length===i.length&&r===!0,o;return l?o=c.jsxs(c.Fragment,{children:[c.jsx(le,{icon:Ea,mask:yl,transform:"shrink-2 down-5 right-7"}),c.jsx(le,{icon:em,className:"text-primary",transform:"shrink-4 down-5 right-7"})]}):s?o=c.jsxs(c.Fragment,{children:[c.jsx(le,{icon:Ai,mask:yl,transform:"shrink-1 down-5 right-7"}),c.jsx(le,{icon:mo,className:"text-danger",transform:"shrink-4 down-5 right-7"})]}):o=c.jsxs(c.Fragment,{children:[c.jsx(le,{icon:Ea,mask:yl,transform:"shrink-2 down-5 right-7"}),c.jsx(le,{icon:tm,className:"text-primary",transform:"shrink-4 down-5 right-7"})]}),c.jsxs("div",{className:"cross-column-container",children:[c.jsx(ms,{className:"cross-column-search",placeholder:"Search Data...","data-testid":"cross-column-search",value:e,onChange:this.handleSearchValueChange,ref:this.searchField}),c.jsxs("button",{type:"button",className:"btn btn-link btn-link-icon px-2",onClick:()=>{a?this.setState({isConfigureColumnsShown:!1}):this.setState({isConfigureColumnsShown:!0})},children:[c.jsx("div",{className:"fa-layers",children:o}),c.jsx(Jt,{children:"Configure Columns"}),c.jsx(eh,{isShown:a,className:"cross-column-popper",onExited:()=>{this.setState({isConfigureColumnsShown:!1})},closeOnBlur:!0,interactive:!0,children:c.jsxs("div",{className:"cross-column-popup",children:["Searched Columns",c.jsx("div",{className:"cross-column-scroll",children:i.map(u=>c.jsxs(Me.Fragment,{children:[c.jsx(un,{className:"cross-column-checkbox",checked:r?!t.includes(u.name):t.includes(u.name),onChange:()=>this.toggleColumn(u.name),children:u.name}),u.type.substring(u.type.lastIndexOf(".")+1)]},u.name))}),c.jsxs("div",{className:"cross-column-button-bar",children:[c.jsx("button",{type:"button",className:"btn btn-link",onClick:this.selectAll,children:"Select All"}),c.jsx("button",{type:"button",className:"btn btn-link",onClick:this.clear,children:"Clear"}),c.jsx("button",{type:"button",className:"btn btn-link",onClick:this.selectNumbers,children:"Numbers Only"})]}),s&&c.jsxs("p",{className:"text-danger",children:[c.jsx(le,{icon:mo})," Select at least one column to search."]})]})})]})]})}}const ua=qw;function sn(n,e,t){return e=Xw(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Xw(n){var e=Qw(n,"string");return typeof e=="symbol"?e:String(e)}function Qw(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Yr=fe.module("PartitionSelectorSearch"),Zw=150;class ti extends R.Component{static handleError(e){e instanceof Zd||Yr.error(e)}constructor(e){super(e),sn(this,"itemList",void 0),sn(this,"searchInput",void 0),sn(this,"timer",void 0),sn(this,"tableUtils",void 0),sn(this,"debounceUpdateFilter",ct(()=>{this.updateFilter()},Zw)),this.handleFilterChange=this.handleFilterChange.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleListKeydown=this.handleListKeydown.bind(this),this.handleSelect=this.handleSelect.bind(this),this.handleTableUpdate=this.handleTableUpdate.bind(this),this.handleTextChange=this.handleTextChange.bind(this),this.handleViewportChange=this.handleViewportChange.bind(this),this.itemList=null,this.searchInput=null,this.timer=null;var{dh:t}=e;this.tableUtils=new x(t),this.state={offset:0,itemCount:0,items:[],text:"",isLoading:!0}}componentDidMount(){this.startListening()}componentDidUpdate(e,t){var{isLoading:r,itemCount:i}=this.state,{onListResized:a}=this.props;(i!==t.itemCount||r!==t.isLoading)&&a()}componentWillUnmount(){this.debounceUpdateFilter.cancel(),this.stopListening()}handleKeyDown(e){if(this.itemList==null)return!1;var{items:t,itemCount:r}=this.state;switch(e.key){case"Enter":{var i=null;if(t.length>0)i=t[0].value;else{var{text:a}=this.state;i=a.trim()}if(i.length>0){var{onSelect:l}=this.props;l(i)}return e.stopPropagation(),e.preventDefault(),!0}case"ArrowDown":return r>0&&this.itemList.focusItem(1),e.stopPropagation(),e.preventDefault(),!0;default:return!1}}handleListKeydown(e){switch(e.key){case"Escape":break;default:this.focus();break}}handleFilterChange(){Yr.debug2("handleFilterChange");var{table:e}=this.props,t=e.size;this.setState({itemCount:t,isLoading:!0})}handleSelect(e){Yr.debug2("handleSelect",e);var{onSelect:t}=this.props,{offset:r,items:i}=this.state,a=e-r;if(a<0||i.length<=a){Yr.error("No data for item",e);return}var{value:l}=i[a];t(l)}handleTableUpdate(e){for(var t=e.detail,{offset:r}=t,i=[],{getFormattedString:a,table:l}=this.props,s=l.columns[0],o=0;o<t.rows.length;o+=1){var u=t.rows[o],d=u.get(s),h=a(d,s.type,s.name);i.push({displayValue:h,value:d})}var v=l.size;Yr.debug2("handleTableUpdate",v,r,i.length),this.setState({itemCount:v,items:i,offset:r,isLoading:!1})}handleTextChange(e){Yr.debug2("handleTextChange");var{table:t}=this.props,{value:r}=e.target;r!==""&&x.isIntegerType(t.columns[0].type)?this.setState({text:parseInt(r,10).toString()}):this.setState({text:r}),this.debounceUpdateFilter()}handleViewportChange(e,t){Yr.debug2("handleViewportChange",e,t);var r=Math.max(1,t-e),i=Math.max(0,e-r),a=t+r,{table:l}=this.props;l.setViewport(i,a)}focus(){this.searchInput&&this.searchInput.focus()}startListening(){var{dh:e,initialPageSize:t,table:r}=this.props;r.addEventListener(e.Table.EVENT_UPDATED,this.handleTableUpdate),r.addEventListener(e.Table.EVENT_FILTERCHANGED,this.handleFilterChange),r.setViewport(0,t)}stopListening(){var{dh:e,table:t}=this.props;t.removeEventListener(e.Table.EVENT_UPDATED,this.handleTableUpdate),t.removeEventListener(e.Table.EVENT_FILTERCHANGED,this.handleFilterChange)}updateFilter(){var{initialPageSize:e,table:t}=this.props,{text:r}=this.state,i=r.trim(),a=[];if(i.length>0){var l=t.columns[0],s=this.tableUtils.makeQuickFilterFromComponent(l,x.isStringType(l.type)?"~".concat(i):i);if(!s)throw new Error("Unable to create column filter for partition selector");a.push(s)}Yr.debug2("updateFilter",a),t.applyFilter(a),t.setViewport(0,e)}render(){var{table:e}=this.props,{isLoading:t,itemCount:r,items:i,offset:a,text:l}=this.state,s=Math.min(r,ti.MAX_VISIBLE_ITEMS)*Gl.DEFAULT_ROW_HEIGHT+11,o=x.isNumberType(e.columns[0].type)?"number":"text";return c.jsxs("div",{className:"iris-grid-partition-selector-search",children:[c.jsx("div",{className:"search-container",children:c.jsx("input",{type:o,ref:u=>{this.searchInput=u},value:l,placeholder:"Available Partitions",onChange:this.handleTextChange,onKeyDown:this.handleKeyDown,className:"form-control input-partition"})}),!t&&r>0&&c.jsx("div",{className:"iris-grid-partition-selector-search-list",onKeyDown:this.handleListKeydown,role:"presentation",style:{height:s},children:c.jsx(Gl,{ref:u=>{this.itemList=u},itemCount:r,items:i,offset:a,onSelect:this.handleSelect,onViewportChange:this.handleViewportChange})}),!t&&r===0&&c.jsx("div",{className:"iris-grid-partition-selector-search-empty",children:"No results"}),t&&c.jsxs("div",{className:"iris-grid-partition-selector-loading",children:[c.jsx(Dn,{className:"loading-spinner-vertical-align"})," Loading..."]})]})}}sn(ti,"MAX_VISIBLE_ITEMS",12);sn(ti,"defaultProps",{initialPageSize:100,onSelect:()=>{},onListResized:()=>{}});sn(ti,"propTypes",{getFormattedString:Z.func.isRequired,table:Z.shape({addEventListener:Z.func.isRequired,removeEventListener:Z.func.isRequired,columns:Z.arrayOf(Z.shape({name:Z.string.isRequired,type:Z.string.isRequired,filter:Z.func.isRequired})),size:Z.number.isRequired,applyFilter:Z.func.isRequired,setViewport:Z.func.isRequired}).isRequired,initialPageSize:Z.number,onSelect:Z.func,onListResized:Z.func});const Jw=ti;function Sa(n,e,t){return e=ey(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ey(n){var e=ty(n,"string");return typeof e=="symbol"?e:String(e)}function ty(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Un=fe.module("IrisGridPartitionSelector"),ry=250;class Bh extends R.Component{constructor(e){super(e),Sa(this,"searchMenu",void 0),Sa(this,"selectorSearch",void 0),Sa(this,"debounceUpdate",ct(()=>{this.sendUpdate()},ry)),this.handleAppendClick=this.handleAppendClick.bind(this),this.handleCloseClick=this.handleCloseClick.bind(this),this.handleIgnoreClick=this.handleIgnoreClick.bind(this),this.handlePartitionChange=this.handlePartitionChange.bind(this),this.handlePartitionSelect=this.handlePartitionSelect.bind(this),this.handlePartitionListResized=this.handlePartitionListResized.bind(this),this.handleSearchOpened=this.handleSearchOpened.bind(this),this.handleSearchClosed=this.handleSearchClosed.bind(this),this.searchMenu=null,this.selectorSearch=null;var{partition:t}=e;this.state={partition:t}}componentWillUnmount(){this.debounceUpdate.cancel()}handleAppendClick(){Un.debug2("handleAppendClick");var{onAppend:e}=this.props,{partition:t}=this.state;e?.(t)}handleCloseClick(){Un.debug2("handleCloseClick"),this.sendDone()}handleIgnoreClick(){Un.debug2("handleIgnoreClick"),this.sendFetchAll()}handlePartitionChange(e){Un.debug2("handlePartitionChange");var{column:t}=this.props,{value:r}=e.target;this.setState({partition:x.isCharType(t.type)&&r.length>0?r.charCodeAt(0).toString():r}),this.debounceUpdate()}handlePartitionSelect(e){this.searchMenu&&this.searchMenu.closeMenu(),this.setState({partition:e},()=>{this.sendUpdate()})}handlePartitionListResized(){this.searchMenu&&this.searchMenu.scheduleUpdate()}handleSearchClosed(){var{table:e}=this.props;e.applyFilter([])}handleSearchOpened(){this.selectorSearch&&this.selectorSearch.focus()}sendDone(){this.debounceUpdate.flush();var{onDone:e}=this.props;e()}sendUpdate(){Un.debug2("sendUpdate");var{onChange:e}=this.props,{partition:t}=this.state;e(t)}sendFetchAll(){Un.debug2("sendFetchAll"),this.debounceUpdate.cancel();var{onFetchAll:e}=this.props;e()}render(){var{column:e,dh:t,getFormattedString:r,onAppend:i,onDone:a,table:l}=this.props,{partition:s}=this.state,o=c.jsx(Jw,{dh:t,getFormattedString:r,table:l,onSelect:this.handlePartitionSelect,onListResized:this.handlePartitionListResized,ref:u=>{this.selectorSearch=u}},"search");return c.jsxs("div",{className:"iris-grid-partition-selector",children:[c.jsx("div",{className:"status-message",children:c.jsxs("span",{children:['Filtering "',e.name,'" partition to']})}),c.jsxs("div",{className:"input-group",children:[c.jsx("input",{type:"text",value:x.isCharType(e.type)&&s.toString().length>0?String.fromCharCode(parseInt(s,10)):me.convertValueToText(s,e.type),onChange:this.handlePartitionChange,className:"form-control input-partition"}),c.jsx("div",{className:"input-group-append",children:c.jsxs("button",{type:"button",className:"btn btn-outline-primary",children:[c.jsx(le,{icon:Ss}),c.jsx(Jt,{children:"Partitions"}),c.jsx(fs,{ref:u=>{this.searchMenu=u},actions:[{menuElement:o}],onMenuOpened:this.handleSearchOpened,onMenuClosed:this.handleSearchClosed})]})})]}),c.jsx("div",{className:"iris-grid-partition-selector-spacer"}),c.jsx("button",{type:"button",className:"btn btn-outline-primary btn-ignore",onClick:this.handleIgnoreClick,children:"Ignore & Fetch All"}),i!==void 0&&c.jsx("button",{type:"button",className:"btn btn-outline-primary btn-append",onClick:this.handleAppendClick,children:"Append Command"}),c.jsx("button",{type:"button",className:"btn btn-link btn-link-icon btn-close",onClick:a,children:c.jsx(le,{icon:Es})})]})}}Sa(Bh,"defaultProps",{onChange:()=>{},onFetchAll:()=>{},onDone:()=>{},partition:""});const ny=Bh;function iy(n,e,t){return e=ay(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ay(n){var e=ly(n,"string");return typeof e=="symbol"?e:String(e)}function ly(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var sy=fe.module("SelectDistinctBuilder");class Gh extends R.Component{constructor(e){super(e),this.handleAddColumnClick=this.handleAddColumnClick.bind(this),this.handleDeleteColumn=this.handleDeleteColumn.bind(this),this.handleDropdownChanged=this.handleDropdownChanged.bind(this);var{model:t,selectDistinctColumns:r}=this.props;this.state={inputs:r.length>0?[...r]:[""],columns:t.originalColumns}}componentDidUpdate(e,t){var{inputs:r}=this.state,{onChange:i}=this.props;if(t.inputs!==r){var a=r.filter(l=>l!=="");ht(t.inputs.filter(l=>l!==""),a)||i(a)}}handleAddColumnClick(){this.setState(e=>{var{inputs:t}=e;return{inputs:[...t,""]}})}handleDeleteColumn(e){this.setState(t=>{var{inputs:r}=t;return{inputs:r.length===1&&e===0?[""]:r.filter((i,a)=>e!==a)}})}handleDropdownChanged(e,t){sy.debug("handleDropdownChanged",e,t);var{value:r}=t.target;this.setState(i=>{var{inputs:a}=i,l=[...a];return l[e]=r,{inputs:l}})}renderInputs(){var{columns:e,inputs:t}=this.state;return t.map((r,i)=>{var a=e.filter(l=>{var{name:s}=l;return s===r||!t.includes(s)}).map(l=>{var{name:s}=l;return c.jsx("option",{value:s,children:s},s)});return c.jsxs("div",{className:"form-inline px-3 pb-3",children:[c.jsxs("select",{className:"form-control custom-select col",value:r,onChange:l=>this.handleDropdownChanged(i,l),children:[c.jsx("option",{value:"",children:"Select a column"}),a]}),(t.length>1||r!=="")&&c.jsx(Y,{kind:"ghost",className:"ml-1 px-2",onClick:()=>{this.handleDeleteColumn(i)},icon:c.jsx(le,{icon:fr,transform:"grow-3"}),tooltip:"Delete column"})]},i)})}render(){var{columns:e,inputs:t}=this.state,r=t.length>=e.length;return c.jsxs("div",{role:"presentation",className:"select-distinct-builder-container h-100",children:[c.jsx("div",{className:"select-distinct-title",children:"Display Unique Values From"}),this.renderInputs(),c.jsx("hr",{}),c.jsx("div",{className:"pt-1 px-3",children:c.jsx(Y,{kind:"ghost",className:"btn-add-column",onClick:this.handleAddColumnClick,disabled:r,icon:Fn,children:"Add Additional Column"})}),c.jsx("div",{className:"select-distinct-builder-footer",children:c.jsx("div",{className:"select-distinct-builder-hint",children:"Display only unique values from the selected table columns. Note that this will reset any filters and display only the selected columns."})})]})}}iy(Gh,"defaultProps",{selectDistinctColumns:[],onChange:()=>{}});const oy=Gh;function ks(n){var{items:e,onChange:t=()=>{}}=n;return c.jsx(th,{items:Array.from(e.entries()).map(r=>{var[i,a]=r;return{title:ks.getAdvancedSettingsTitleForKey(i),isOn:a,onChange:l=>t(i,l)}})})}ks.getAdvancedSettingsTitleForKey=n=>{switch(n){case Yn.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS:return"Clear current table filters before applying new filters from a control";case Yn.LINK_CHANGE_CLEARS_ALL_FILTERS:return"Clear current table filters before applying new filters from an incoming link filter"}};function $u(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 Vn(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?$u(Object(t),!0).forEach(function(r){uy(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):$u(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function uy(n,e,t){return e=dy(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function dy(n){var e=hy(n,"string");return typeof e=="symbol"?e:String(e)}function hy(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Wu=fe.module("ConditionalFormattingMenu"),Al=()=>{};function cy(n){var{column:{type:e}}=n;if(x.isNumberType(e))return n.condition===ue.IS_NULL||n.condition===ue.IS_NOT_NULL?"":"".concat(n.value);if(x.isCharType(e))return n.condition===pe.IS_NULL||n.condition===pe.IS_NOT_NULL?"":"".concat(n.value);if(x.isStringType(e))return n.condition===we.IS_NULL||n.condition===we.IS_NOT_NULL?"":'"'.concat(n.value,'"');if(x.isDateType(e))return n.condition===pe.IS_NULL||n.condition===pe.IS_NOT_NULL?"":"".concat(n.value);if(x.isBooleanType(e))return"";throw new Error("Invalid column type ".concat(e," in getRuleValue"))}function vy(n){return x.isNumberType(n.column.type)&&n.condition===ue.IS_BETWEEN?"".concat(n.start," < ").concat(n.column.name," < ").concat(n.end):"".concat(n.column.name," ").concat(op(n.column.type,n.condition),`
13
+ `).concat(cy(n))}function my(n){var{rules:e=[],onChange:t=Al,onCreate:r=Al,onSelect:i=Al}=n,a=R.useCallback((u,d,h)=>{u.stopPropagation(),Wu.debug("Rule clicked",d,h),i(h)},[i]),l=R.useCallback((u,d,h)=>{u.stopPropagation(),Wu.debug("Delete button clicked",d,h);var v=[...e];v.splice(h,1),t(v)},[t,e]),s=R.useCallback(u=>{u.stopPropagation()},[]),o=R.useCallback(u=>{if(cr.stopDragging(),u.destination!=null){var d=u.source.index,h=u.destination.index,v=[...e],m=e[d];v.splice(d,1),v.splice(h,0,m),t(v)}},[t,e]);return c.jsxs("div",{className:"conditional-formatting-rules",children:[c.jsx(La,{onDragStart:cr.startDragging,onDragEnd:o,children:c.jsx(is,{droppableId:"droppable-custom-columns",children:(u,d)=>c.jsxs("div",Vn(Vn({ref:u.innerRef},u.droppableProps),{},{className:re("droppable-container",{dragging:d.draggingFromThisWith}),children:[e.length===0&&c.jsx("div",{className:"text-muted pl-2",children:"No formats defined"}),e.map((h,v)=>c.jsx(Bd,{draggableId:"".concat(v,"-").concat(h.type),index:v,disableInteractiveElementBlocking:!0,children:(m,f)=>c.jsx("div",Vn(Vn({role:"menuitem",tabIndex:0,onClick:g=>a(g,h,v),className:re("draggable-container",{dragging:f.isDragging}),ref:m.innerRef},m.draggableProps),{},{children:c.jsx("div",{className:"conditional-formatting-list-item",children:c.jsxs("div",{className:"formatting-item",children:[c.jsx("div",{className:"rule-icon",children:c.jsx("span",{className:"rule-icon-bg",style:{backgroundColor:Ra(h.config.style),color:Da(h.config.style)},children:h.type===jt.ROWS?"row":"col"})}),c.jsx("div",{className:"rule-title",children:vy(h.config)}),c.jsx(Y,{kind:"ghost",className:"ml-1 px-2",onClick:g=>l(g,h,v),icon:fr,tooltip:"Delete rule"}),c.jsxs("button",Vn(Vn({type:"button",className:"btn btn-link btn-link-icon px-2 btn-drag-handle",onClick:s},m.dragHandleProps),{},{children:[c.jsx(Jt,{children:"Drag to re-order"}),c.jsx(le,{icon:Ua})]}))]})})}))},"".concat(v,"-").concat(h.type))),u.placeholder]}))})}),c.jsx("hr",{}),c.jsx(Y,{kind:"ghost",onClick:r,icon:Fn,children:"Add New Rule"})]})}var mn=fe.module("ConditionEditor"),fy=()=>{},gy=[ue.IS_EQUAL,ue.IS_NOT_EQUAL,ue.IS_BETWEEN,ue.GREATER_THAN,ue.GREATER_THAN_OR_EQUAL,ue.LESS_THAN,ue.LESS_THAN_OR_EQUAL,ue.IS_NULL,ue.IS_NOT_NULL].map(n=>c.jsx("option",{value:n,children:Kg(n)},n)),py=[we.IS_EXACTLY,we.IS_NOT_EXACTLY,we.CONTAINS,we.DOES_NOT_CONTAIN,we.STARTS_WITH,we.ENDS_WITH,we.IS_NULL,we.IS_NOT_NULL].map(n=>c.jsx("option",{value:n,children:Yg(n)},n)),Cy=[pe.IS_EXACTLY,pe.IS_NOT_EXACTLY,pe.IS_BEFORE,pe.IS_BEFORE_OR_EQUAL,pe.IS_AFTER,pe.IS_AFTER_OR_EQUAL,pe.IS_NULL,pe.IS_NOT_NULL].map(n=>c.jsx("option",{value:n,children:qg(n)},n)),Sy=[rt.IS_TRUE,rt.IS_FALSE,rt.IS_NULL,rt.IS_NOT_NULL].map(n=>c.jsx("option",{value:n,children:Xg(n)},n)),by=[Ke.IS_EQUAL,Ke.IS_NOT_EQUAL,Ke.IS_NULL,Ke.IS_NOT_NULL].map(n=>c.jsx("option",{value:n,children:Qg(n)},n));function wy(n,e,t,r){return n===ue.IS_NULL||n===ue.IS_NOT_NULL||n===ue.IS_BETWEEN&&t!=null&&t!==""&&!Number.isNaN(Number.parseFloat(t))&&r!=null&&r!==""&&!Number.isNaN(Number.parseFloat(r))||n!==ue.IS_BETWEEN&&e!==void 0&&e!==""&&!Number.isNaN(Number.parseFloat(e))}function yy(n,e,t,r,i,a,l){switch(n){case ue.IS_EQUAL:case ue.IS_NOT_EQUAL:case ue.GREATER_THAN:case ue.GREATER_THAN_OR_EQUAL:case ue.LESS_THAN:case ue.LESS_THAN_OR_EQUAL:return c.jsx("input",{type:"number",className:"form-control",placeholder:"Enter value",value:i??"",onChange:e});case ue.IS_BETWEEN:return c.jsxs("div",{className:"d-flex flex-row",children:[c.jsx("input",{type:"number",className:"form-control d-flex mr-2",placeholder:"Start value",value:a??"",onChange:t}),c.jsx("input",{type:"number",className:"form-control d-flex",placeholder:"End value",value:l??"",onChange:r})]});case ue.IS_NULL:case ue.IS_NOT_NULL:return null}}function Ty(n,e,t){switch(n){case we.IS_NULL:case we.IS_NOT_NULL:return null;default:return c.jsx("input",{type:"text",className:"form-control",placeholder:"Enter value",value:t??"",onChange:e})}}function Ey(n,e,t){switch(n){case pe.IS_NULL:case pe.IS_NOT_NULL:return null;default:return c.jsx("input",{type:"text",className:"form-control",placeholder:"Enter value",value:t??"",onChange:e})}}function Oy(){return null}function Py(n,e,t){switch(n){case Ke.IS_NULL:case Ke.IS_NOT_NULL:return null;default:return c.jsx("input",{type:"text",className:"form-control",maxLength:1,placeholder:"Enter value",value:t??"",onChange:e})}}function $h(n){var{column:e,config:t,dh:r,onChange:i=fy}=n,a=e.type,[l,s]=R.useState(a),[o,u]=R.useState(t.condition),[d,h]=R.useState(t.value),[v,m]=R.useState(t.start),[f,g]=R.useState(t.end);a!==l&&(u(Th(a)),h(Eh(a)),m(void 0),g(void 0),s(a));var p=R.useMemo(()=>{if(a===void 0)return[];if(x.isNumberType(a))return gy;if(x.isCharType(a))return by;if(x.isStringType(a))return py;if(x.isDateType(a))return Cy;if(x.isBooleanType(a))return Sy},[a]),C=R.useCallback(T=>{var{value:E}=T.target;mn.debug("handleConditionChange",E),u(E)},[]),S=R.useCallback(T=>{var{value:E}=T.target;mn.debug("handleValueChange",E),h(E)},[]),b=R.useCallback(T=>{var{value:E}=T.target;mn.debug("handleStartValueChange",E),m(E)},[]),w=R.useCallback(T=>{var{value:E}=T.target;mn.debug("handleEndValueChange",E),g(E)},[]);R.useEffect(function(){var E=!0;o===void 0?(mn.debug("Unable to create formatting rule. Condition is not selected."),E=!1):x.isNumberType(e.type)&&!wy(o,d,v,f)?(mn.debug("Unable to create formatting rule. Invalid value",d),E=!1):x.isDateType(e.type)&&!dp(r,o,d)&&(mn.debug("Unable to create formatting rule. Invalid date condition",d),E=!1),i({condition:o,value:d,start:v,end:f},E)},[i,e.type,r,o,d,v,f]);var y=R.useMemo(()=>{if(a===void 0)return null;if(x.isNumberType(a))return yy(o,S,b,w,d,v,f);if(x.isCharType(a))return Py(o,S,d);if(x.isStringType(a))return Ty(o,S,d);if(x.isDateType(a))return Ey(o,S,d);if(x.isBooleanType(a))return Oy()},[a,o,d,v,f,S,b,w]);return c.jsxs("div",{className:"condition-editor mb-2",children:[c.jsx("select",{value:o,"data-testid":"condition-select",className:"custom-select mb-2",onChange:C,children:p}),y]})}var Ry=fe.module("StyleEditor"),Dy="#fcfcfa",Fy="#f0f0ee",Ny="#1a171a",Iy=200,Ay=()=>{};function Wh(n){var e,t,{config:r,onChange:i=Ay}=n,[a,l]=R.useState(r.type),[s,o]=R.useState((e=(t=r.customConfig)===null||t===void 0?void 0:t.background)!==null&&e!==void 0?e:Dy),[u,d]=R.useState(!1),[h,v]=R.useState(Iy),m=R.useRef(null),f=R.useCallback(y=>{var{value:T}=y.target;Ry.debug("handleBackgroundChange",T),o(T)},[]),g=R.useCallback(()=>{u&&d(!1)},[u]),p=R.useCallback(()=>{u||S(),d(!u)},[u]),C=R.useMemo(()=>[ye.NO_FORMATTING,ye.POSITIVE,ye.NEGATIVE,ye.WARN,ye.NEUTRAL,ye.ACCENT_1,ye.ACCENT_2,ye.CUSTOM],[]);function S(){m.current&&v(m.current.getBoundingClientRect().width)}R.useEffect(function(){i({type:a,customConfig:{color:lh.isDark(s)?Fy:Ny,background:s}})},[i,a,s]);var b=R.useCallback(()=>{for(var y=[],T=function(){var O=C[E],D="option-".concat(E,"-").concat(O);y.push(c.jsxs(Y,{kind:"inline",className:"style-option-btn",onClick:()=>{l(O),d(!1)},style:{color:Da({type:O}),background:Ra({type:O})},children:[O===a&&c.jsx(le,{icon:Ta,className:"mr-2"}),O!==a&&c.jsx("span",{className:"mr-4"}),Go(O)]},D))},E=0;E<C.length;E+=1)T();return y},[C,a]),w=R.useCallback(()=>c.jsx("div",{className:"style-menu-container",role:"presentation",style:{width:h},children:c.jsx("div",{className:"style-options",children:b()})}),[h,b]);return c.jsxs("div",{className:"style-editor",children:[c.jsxs("div",{className:"mb-2",ref:m,children:[c.jsx("label",{className:"mb-0",children:"Style"}),c.jsxs(Y,{kind:"inline",className:"cs-dropdown",style:{color:Da({type:a}),background:Ra({type:a})},onClick:p,children:[Go(a),c.jsx("span",{children:c.jsx(le,{icon:rm,className:"cs-caret"})}),c.jsx(fs,{isShown:u,actions:{menuElement:w()},popperOptions:{placement:"bottom-start"},popperClassName:"style-dropdown-menu",onMenuClosed:g,menuStyle:{maxWidth:"100rem"}})]})]}),a===ye.CUSTOM&&c.jsxs("div",{className:"mb-2",children:[c.jsx("label",{className:"mb-0",children:"Background"}),c.jsx("input",{type:"color",value:s,className:"custom-select color-select",onChange:f})]})]})}function zu(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 zh(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?zu(Object(t),!0).forEach(function(r){My(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):zu(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function My(n,e,t){return e=xy(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function xy(n){var e=Ly(n,"string");return typeof e=="symbol"?e:String(e)}function Ly(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var pi=fe.module("ColumnFormatEditor"),ky=()=>{};function jy(n){var{type:e,name:t}=n[0],r={type:e,name:t},i=zh({column:r,style:Ph()},Ga(e));return i}function _y(n){var e,{columns:t,config:r=jy(t),dh:i,onChange:a=ky}=n,[l,s]=R.useState((e=t.find(S=>S.name===r.column.name&&S.type===r.column.type))!==null&&e!==void 0?e:t[0]),[o,u]=R.useState(Oh(r)),[d,h]=R.useState(!1),[v,m]=R.useState(r.style),f=R.useCallback(S=>{var b=t.find(w=>{var{name:y}=w;return y===S});b!==void 0?(s(b),l.type!==b.type&&(u(Ga(b.type)),h(!1))):pi.error("Column ".concat(S," not found."))},[t,l]),g=R.useCallback((S,b)=>{pi.debug("handleConditionChange",S,b),u(S),h(b)},[]),p=R.useCallback(S=>{pi.debug("handleStyleChange",S),m(S)},[]);R.useEffect(function(){var b=d;l===void 0&&(pi.debug("Column is not selected, invalidating update."),b=!1),(v===void 0||v.type===ye.NO_FORMATTING)&&(pi.debug("Style is not selected, invalidating update."),b=!1);var{type:w,name:y}=l,T={type:w,name:y};a(zh({column:T,style:v},o),b)},[a,l,v,o,d]);var C=t.map(S=>{var{name:b}=S;return{title:b,value:b}});return c.jsxs("div",{className:"conditional-rule-editor form",children:[c.jsxs("div",{className:"mb-2",children:[c.jsx("label",{className:"mb-0",children:"Format Cell If"}),c.jsx(rh,{defaultValue:l?.name,options:C,inputPlaceholder:"Select a column",spellCheck:!1,onChange:f,searchPlaceholder:"Filter columns"})]}),l!==void 0&&c.jsxs(c.Fragment,{children:[c.jsx($h,{dh:i,column:l,config:o,onChange:g}),c.jsx(Wh,{config:v,onChange:p})]})]})}function Ku(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 Kh(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ku(Object(t),!0).forEach(function(r){Hy(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ku(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Hy(n,e,t){return e=Uy(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Uy(n){var e=Vy(n,"string");return typeof e=="symbol"?e:String(e)}function Vy(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ci=fe.module("RowFormatEditor"),By=()=>{};function Gy(n){var{type:e,name:t}=n[0],r={type:e,name:t},i=Kh({column:r,style:Ph()},Ga(e));return i}function $y(n){var e,{columns:t,config:r=Gy(t),dh:i,onChange:a=By}=n,[l,s]=R.useState((e=t.find(S=>S.name===r.column.name&&S.type===r.column.type))!==null&&e!==void 0?e:t[0]),[o,u]=R.useState(Oh(r)),[d,h]=R.useState(!1),[v,m]=R.useState(r.style),f=R.useCallback(S=>{var b=t.find(w=>{var{name:y}=w;return y===S});b!==void 0?(s(b),l.type!==b.type&&(u(Ga(b.type)),h(!1))):Ci.error("Column ".concat(S," not found."))},[t,l]),g=R.useCallback((S,b)=>{Ci.debug("handleConditionChange",S,b),u(S),h(b)},[]),p=R.useCallback(S=>{Ci.debug("handleStyleChange",S),m(S)},[]);R.useEffect(function(){if(l===void 0){Ci.debug("Column is not selected, skip update.");return}if(v===void 0){Ci.debug("Style is not selected, skip update.");return}var{type:b,name:w}=l,y={type:b,name:w};a(Kh({column:y,style:v},o),d)},[a,l,v,o,d]);var C=t.map(S=>{var{name:b}=S;return{title:b,value:b}});return c.jsxs("div",{className:"conditional-rule-editor form",children:[c.jsxs("div",{className:"mb-2",children:[c.jsx("label",{className:"mb-0",children:"Format Row If"}),c.jsx(rh,{defaultValue:l?.name,options:C,inputPlaceholder:"Select a column",spellCheck:!1,onChange:f,searchPlaceholder:"Filter columns"})]}),l!==void 0&&c.jsxs(c.Fragment,{children:[c.jsx($h,{column:l,config:o,dh:i,onChange:g}),c.jsx(Wh,{config:v,onChange:p})]})]})}var Ml=fe.module("ConditionalFormatEditor"),xl=()=>{};function Wy(n){switch(n){case jt.CONDITIONAL:return c.jsx(vb,{});case jt.ROWS:return c.jsx(pb,{})}}function zy(n){switch(n){case jt.CONDITIONAL:return"Conditional";case jt.ROWS:return"Rows"}}var Yu=[jt.CONDITIONAL,jt.ROWS];function Ky(n){var e,{columns:t,dh:r,onSave:i=xl,onUpdate:a=xl,onCancel:l=xl,rule:s}=n,o=t.filter(hp),[u,d]=R.useState((e=s?.type)!==null&&e!==void 0?e:Yu[0]),[h,v]=R.useState(s),[m,f]=R.useState(!1),g=R.useCallback(()=>{l()},[l]),p=R.useCallback(()=>{if(h===void 0){Ml.error("Rule is not defined.");return}i(h)},[i,h]),C=R.useCallback(b=>{Ml.debug("handleFormatterChange",b),d(b)},[]),S=R.useCallback((b,w)=>{Ml.debug("handleRuleChange",b,w,u);var y={type:u,config:b};v(y),f(w),a(w?y:void 0)},[a,u]);return c.jsxs("div",{className:"conditional-format-editor form",children:[c.jsxs("div",{className:"mb-2",children:[c.jsx("label",{className:"mb-0",htmlFor:"formatter-select",children:"Select Formatter"}),c.jsx("div",{className:"formatter-list",children:Yu.map((b,w)=>c.jsx("div",{className:"formatter-type",children:c.jsxs("button",{type:"button",className:re("btn","btn-icon","btn-formatter-type",{active:b===u}),"data-index":w,onClick:()=>C(b),children:[Wy(b),zy(b)]})},b))})]}),u===jt.CONDITIONAL&&c.jsx(_y,{columns:o,dh:r,config:h?.config,onChange:S}),u===jt.ROWS&&c.jsx($y,{columns:o,config:h?.config,dh:r,onChange:S}),c.jsx("hr",{}),c.jsxs("div",{className:"d-flex justify-content-end my-3",children:[c.jsx(Y,{kind:"secondary",onClick:g,className:"mr-2",children:"Cancel"}),c.jsx(Y,{kind:"primary",onClick:p,disabled:h===void 0||!m,children:"Done"})]})]})}function Yy(n){var e,t,{text:r,isOpen:i,onClose:a}=n,[l,s]=R.useState(!1),[o,u]=R.useState(0),[d,h]=R.useState(!1),[v,m]=R.useState(!1),[f,g]=R.useState(!1),p=R.useRef();R.useEffect(function(){if(i){try{JSON.parse(r),g(!0)}catch{g(!1)}m(!1)}},[i,r]),R.useEffect(function(){p.current&&p.current.layout()},[o]),R.useEffect(function(){p.current&&p.current.updateOptions({lineNumbers:d?"on":"off"})},[d]);function C(){h(!d)}function S(){var T,E=(T=p.current)===null||T===void 0?void 0:T.getModel();!f||!E||(v?(E.setValue(r),m(!1)):(E.setValue(JSON.stringify(JSON.parse(r),void 0,2)),m(!0)),b())}function b(){var T,E,P=p.current;P&&h(((T=(E=P.getModel())===null||E===void 0?void 0:E.getLineCount())!==null&&T!==void 0?T:0)>1)}function w(){l&&(p.current=void 0,a())}function y(T){p.current=T,u(T.getContentHeight()),T.onDidContentSizeChange(E=>{var{contentHeight:P}=E;return u(P)}),b()}return!i&&!l?null:c.jsxs(oh,{isOpen:i,centered:!0,keyboard:!0,toggle:w,onOpened:()=>s(!0),onClosed:()=>{s(!1),u(0)},className:"theme-bg-dark cell-overflow-modal",size:"xl",children:[c.jsxs(uh,{toggle:a,children:[c.jsx("h5",{className:"overflow-modal-title",children:"Cell Contents"}),c.jsx(vs,{kind:"inline",tooltip:"Copy cell contents",copy:(e=(t=p.current)===null||t===void 0?void 0:t.getValue())!==null&&e!==void 0?e:r}),c.jsx(Y,{kind:"inline",active:d,icon:nm,tooltip:"Toggle line numbers",onClick:C}),f&&c.jsx(Y,{kind:"inline",icon:im,active:v,tooltip:"Format as JSON",onClick:S})]}),c.jsx(dh,{style:{height:o},children:c.jsx(Gd,{onEditorInitialized:y,settings:{value:r,readOnly:!0,wordWrap:"on",language:f?"typescript":"plaintext",folding:f,padding:{bottom:16},lineNumbers:d?"on":"off",overviewRulerLanes:0,renderLineHighlight:"none",find:{seedSearchStringFromSelection:"never"}}})})]})}function qy(n){return n.model!==void 0}var Xy="###,##0",Yh=R.forwardRef((n,e)=>{var{gotoRow:t,gotoRowError:r,gotoValueError:i,onGotoRowSubmit:a,isShown:l,onEntering:s,onEntered:o,onExiting:u,onExited:d,model:h,onGotoRowNumberChanged:v,onClose:m,gotoValueSelectedColumnName:f,gotoValue:g,gotoValueFilter:p,onGotoValueSelectedColumnNameChanged:C,onGotoValueSelectedFilterChanged:S,onGotoValueChanged:b,onGotoValueSubmit:w}=n,y=R.useRef(null),T=R.useRef(null),[E,P]=R.useState(!1),O=[];qy(h)&&h.table!==void 0&&({columns:O}=h.table);var{dh:D,rowCount:N}=h,F=R.useMemo(()=>"goto-row-input-".concat(nt()),[]),A=I=>{I.key==="Enter"?(I.stopPropagation(),I.preventDefault(),w()):(I.key==="Backspace"||I.key==="Delete")&&(g==="".concat(Number.POSITIVE_INFINITY)||g==="".concat(Number.NEGATIVE_INFINITY))&&z("")},j=I=>{I.key==="Enter"&&(I.stopPropagation(),I.preventDefault(),w(I.shiftKey))},k=h.getColumnIndexByName(f),B=O[k??0],G=B?.type,W=x.getNormalizedType(G),z=I=>{b(I??"")};R.useImperativeHandle(e,()=>({focus(){var I;P(!0),(I=y.current)===null||I===void 0||I.select()}}));var q=()=>{if(E&&document.activeElement!==y.current){var I;(I=y.current)===null||I===void 0||I.select()}else if(!E&&document.activeElement!==T.current){var _;(_=T.current)===null||_===void 0||_.select()}};R.useEffect(q,[E]);var V=()=>{switch(W){case x.dataType.DECIMAL:case x.dataType.INT:return c.jsx("div",{className:"goto-row-input",children:c.jsx("input",{ref:T,className:re("form-control",{"is-invalid":i!==""}),onKeyDown:A,placeholder:"value",onChange:I=>{var _=I.target.value.toLowerCase();/^-?[0-9]*\.?[0-9]*$/.test(I.target.value)?z(I.target.value):_==="-i"||_==="-infinity"?z("".concat(Number.NEGATIVE_INFINITY)):(_==="i"||_==="infinity")&&z("".concat(Number.POSITIVE_INFINITY))},value:g,"aria-label":"Value Input"})});case x.dataType.DATETIME:return c.jsx("div",{className:"goto-value-date-time-input",children:c.jsx(Dv,{ref:T,className:re("form-control","goto-value-date-time-input",{"is-invalid":i!==""}),defaultValue:g,onChange:z,onSubmit:j,"aria-label":"Value Input"})});case x.dataType.STRING:return c.jsxs(c.Fragment,{children:[c.jsx("div",{className:"goto-row-input",children:c.jsxs("select",{className:"custom-select",onChange:I=>{S(I.target.value)},value:p,"aria-label":"filter-type-select",children:[c.jsx("option",{value:Ce.eqIgnoreCase,children:"Equals (case-insensitive)"},Ce.eqIgnoreCase),c.jsx("option",{value:Ce.containsIgnoreCase,children:"Contains (case-insensitive)"},Ce.containsIgnoreCase),c.jsx("option",{value:Ce.eq,children:"Equals"},Ce.eq),c.jsx("option",{value:Ce.contains,children:"Contains"},Ce.contains)]})}),c.jsx("div",{className:"goto-row-input",children:c.jsx("input",{ref:T,className:re("form-control",{"is-invalid":i!==""}),onKeyDown:j,placeholder:"value",onChange:I=>z(I.target.value),value:g,"aria-label":"Value Input"})})]});case x.dataType.BOOLEAN:return c.jsx("div",{className:"goto-row-input",children:c.jsxs("select",{className:"custom-select",onChange:I=>{z(I.target.value)},value:g,"aria-label":"Value Input",children:[c.jsx("option",{"aria-label":"null value",value:""},"null"),c.jsx("option",{value:"true",children:"true"},"true"),c.jsx("option",{value:"false",children:"false"},"false")]})});default:return c.jsx("div",{className:"goto-row-input",children:c.jsx("input",{ref:T,className:"form-control",onKeyDown:j,placeholder:"value",onChange:I=>z(I.target.value),value:g,"aria-label":"Value Input"})})}};return c.jsx($a,{isShown:l,className:re("goto-row"),onEntering:s,onEntered:()=>{o(),q()},onExiting:u,onExited:d,children:c.jsxs(c.Fragment,{children:[c.jsxs("div",{className:"goto-row-row",children:[c.jsxs("div",{className:re("goto-row-wrapper",{"is-inactive":!E}),onClick:()=>P(!0),onFocus:()=>P(!0),role:"group",children:[c.jsx("label",{className:"goto-row-text",htmlFor:F,children:"Go to row"}),c.jsx("div",{className:"goto-row-input",children:c.jsx("input",{ref:y,"data-testid":"goto-row-input",type:"number",onKeyDown:I=>{I.key==="Enter"&&(I.stopPropagation(),I.preventDefault(),a())},className:re("form-control",{"is-invalid":r!==""}),placeholder:"Row number",onChange:I=>{v(I)},value:t,id:F})}),c.jsxs("div",{className:"goto-row-text",children:["of"," ",D.i18n.NumberFormat.format(Xy,N)]}),r&&c.jsx("div",{className:"text-danger",children:r})]}),c.jsx("div",{className:"goto-row-close",children:c.jsx(Y,{kind:"ghost",onClick:m,children:c.jsx(le,{icon:Es,style:{marginRight:"0"}})})})]}),h.isSeekRowAvailable&&c.jsx("div",{className:"goto-row-row",children:c.jsxs("div",{className:re("goto-row-wrapper",{"is-inactive":E}),onClick:()=>P(!1),onFocus:()=>P(!1),role:"group",children:[c.jsx("div",{className:"goto-row-text",children:"Go to value"}),c.jsx("div",{className:"goto-row-input",children:c.jsx("select",{className:"custom-select",onChange:I=>{var _=I.target.value;C(_)},value:f,"aria-label":"column-name-select",children:O.map(I=>c.jsx("option",{value:I.name,children:I.name},I.name))})}),V(),c.jsxs("div",{children:[c.jsx(Y,{kind:"ghost",disabled:g==="",onClick:()=>{w(!0)},children:c.jsx(le,{icon:am})}),c.jsx(Y,{kind:"ghost",disabled:g==="",onClick:()=>{w(!1)},children:c.jsx(le,{icon:lm})})]}),i&&c.jsx("div",{className:"text-danger",children:i})]})})]})})});Yh.displayName="GotoRow";const Qy=Yh;function qu(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}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){qu(a,r,i,l,s,"next",o)}function s(o){qu(a,r,i,l,s,"throw",o)}l(void 0)})}}function Xu(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 yt(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Xu(Object(t),!0).forEach(function(r){se(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Xu(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function se(n,e,t){return e=Zy(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Zy(n){var e=Jy(n,"string");return typeof e=="symbol"?e:String(e)}function Jy(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var de=fe.module("IrisGrid"),e0=500,t0=250,r0=250,n0=250,qh=Object.freeze({aggregations:Re,showOnTop:!1}),i0="yyyy-MM-dd'T'HH:mm:ss.SSSSSSSSS z";function Qu(n){var{advancedFilters:e,aggregationSettings:t,customColumns:r,quickFilters:i,reverseType:a,rollupConfig:l,searchFilter:s,selectDistinctColumns:o,sorts:u}=n;return e.size===0&&t.aggregations.length===0&&r.length===0&&i.size===0&&a===x.REVERSE_TYPE.NONE&&l==null&&s==null&&o.length===0&&u.length===0}class Or extends R.Component{constructor(e){var t,r,i,a;super(e),se(this,"grid",void 0),se(this,"gridWrapper",void 0),se(this,"lastFocusedFilterBarColumn",void 0),se(this,"lastLoadedConfig",void 0),se(this,"tooltip",void 0),se(this,"pending",void 0),se(this,"globalColumnFormats",void 0),se(this,"dateTimeFormatterOptions",void 0),se(this,"decimalFormatOptions",void 0),se(this,"integerFormatOptions",void 0),se(this,"truncateNumbersWithPound",void 0),se(this,"loadingScrimStartTime",void 0),se(this,"loadingScrimFinishTime",void 0),se(this,"animationFrame",void 0),se(this,"loadingTimer",void 0),se(this,"renderer",void 0),se(this,"tableSaver",void 0),se(this,"crossColumnRef",void 0),se(this,"isAnimating",void 0),se(this,"filterInputRef",void 0),se(this,"gotoRowRef",void 0),se(this,"toggleFilterBarAction",void 0),se(this,"toggleSearchBarAction",void 0),se(this,"toggleGotoRowAction",void 0),se(this,"discardAction",void 0),se(this,"commitAction",void 0),se(this,"contextActions",void 0),se(this,"tableUtils",void 0),se(this,"getAdvancedMenuOpenedHandler",be(I=>this.handleAdvancedMenuOpened.bind(this,I),{max:100})),se(this,"getCachedAdvancedFilterMenuActions",be((I,_,H,X,Q)=>c.jsx(xS,{model:I,column:_,onFilterChange:this.handleAdvancedFilterChange,onSortChange:this.handleAdvancedFilterSortChange,onDone:this.handleAdvancedFilterDone,options:H,sortDirection:X,formatter:Q,tableUtils:this.tableUtils}),{max:50})),se(this,"getCachedOptionItems",be((I,_,H,X,Q,ne,oe,ie,ae,Oe,Le,Ze,Je,Ye,Ue,et)=>{var De=[];return I&&De.push({type:Fe.CHART_BUILDER,title:"Chart Builder",icon:sm}),De.push({type:Fe.VISIBILITY_ORDERING_BUILDER,title:"Organize Columns",icon:Ts}),H&&De.push({type:Fe.CONDITIONAL_FORMATTING,title:"Conditional Formatting",icon:Hi}),_&&De.push({type:Fe.CUSTOM_COLUMN_BUILDER,title:"Custom Columns",icon:om}),X&&De.push({type:Fe.ROLLUP_ROWS,title:"Rollup Rows",icon:um}),Q&&De.push({type:Fe.AGGREGATIONS,title:"Aggregate Columns",icon:dm}),ne&&De.push({type:Fe.SELECT_DISTINCT,title:"Select Distinct Values",icon:hm}),oe&&Je&&De.push({type:Fe.TABLE_EXPORTER,title:"Download CSV",icon:cm}),et&&De.push({type:Fe.ADVANCED_SETTINGS,title:"Advanced Settings",icon:vm}),De.push({type:Fe.QUICK_FILTERS,title:"Quick Filters",subtitle:ie.shortcut.getDisplayText(),icon:ya,isOn:Le,onChange:ie.action}),Ye&&De.push({type:Fe.SEARCH_BAR,title:"Search Bar",subtitle:ae.shortcut.getDisplayText(),icon:mm,isOn:Ze,onChange:ae.action}),De.push({type:Fe.GOTO,title:"Go to",subtitle:Oe.shortcut.getDisplayText(),icon:fm,isOn:Ue,onChange:Oe.action}),Object.freeze(De)},{max:1})),se(this,"getCachedHiddenColumns",be((I,_)=>me.getHiddenColumns(new Map([...I.initialColumnWidths,..._])),{max:1})),se(this,"getAggregationMap",be((I,_)=>{var H={};return _.forEach(X=>{var{operation:Q,selected:ne,invert:oe}=X;H[Q]=on.getOperationColumnNames(I,Q,ne,oe)}),H})),se(this,"getOperationMap",be((I,_)=>{var H={};return _.filter(X=>!on.isRollupOperation(X.operation)).forEach(X=>{var{operation:Q,selected:ne,invert:oe}=X;on.getOperationColumnNames(I,Q,ne,oe).forEach(ie=>{var ae,Oe=[...(ae=H[ie])!==null&&ae!==void 0?ae:[],Q];H[ie]=Object.freeze(Oe)})}),H})),se(this,"getOperationOrder",be(I=>I.map(_=>_.operation).filter(_=>!on.isRollupOperation(_)))),se(this,"getCachedFormatColumns",be((I,_,H)=>up(I,_,H))),se(this,"getCachedPreviewFormatColumns",be((I,_,H,X,Q)=>{if(de.debug("getCachedPreviewFormatColumns",H,X,Q),X!==void 0&&Q!==void 0){var ne=[...H];return ne[Q]=X,this.getCachedFormatColumns(I,_,ne)}return this.getCachedFormatColumns(I,_,H)})),se(this,"getModelRollupConfig",be((I,_,H)=>me.getModelRollupConfig(I,_,H))),se(this,"getModelTotalsConfig",be((I,_,H)=>{var X,Q,ne,{aggregations:oe,showOnTop:ie}=H;if(((X=_==null||(Q=_.columns)===null||Q===void 0?void 0:Q.length)!==null&&X!==void 0?X:0)>0||((ne=oe?.length)!==null&&ne!==void 0?ne:0)===0)return null;var ae=this.getOperationMap(I,oe),Oe=this.getOperationOrder(oe);return{operationMap:ae,operationOrder:Oe,showOnTop:ie}})),se(this,"getCachedStateOverride",be((I,_,H,X,Q,ne,oe,ie,ae,Oe)=>({hoverSelectColumn:I,isFilterBarShown:_,isSelectingColumn:H,loadingScrimProgress:X,quickFilters:Q,advancedFilters:ne,sorts:oe,reverseType:ie,rollupConfig:ae,isMenuShown:Oe}),{max:1})),se(this,"getCachedFilter",be((I,_,H,X,Q)=>[...I??[],...X??[],...me.getFiltersFromFilterMap(_),...me.getFiltersFromFilterMap(H),...Q!==void 0?[Q]:[]],{max:1})),se(this,"getCachedTheme",be((I,_,H)=>yt(yt(yt({},Ah),I),{},{autoSelectRow:!_,rowFooterWidth:H>0?I.rowFooterWidth:0}),{max:1})),se(this,"getAlwaysFetchColumns",be((I,_,H,X,Q,ne)=>{for(var oe=[],ie=0;ie<X;ie+=1)oe.push(_[K.getModelIndex(ie,H)].name);for(var ae=0;ae<Q;ae+=1)oe.push(_[K.getModelIndex(_.length-1-ae,H)].name);if(ne)for(var Oe=ne[0];Oe<=ne[1];Oe+=1)oe.push(_[K.getModelIndex(Oe,H)].name);var Le=new Set([...I,...oe]);return Object.freeze([...Le])})),se(this,"updateSearchFilter",ct((I,_,H,X)=>{var{model:Q}=this.props,ne=ua.createSearchFilter(Q.dh,I,_,H,X);this.setState({searchFilter:ne})},t0)),se(this,"handleConditionalFormatEditorUpdate",ct(I=>{this.setState({conditionalFormatPreview:I})},n0)),se(this,"handleDownloadProgressUpdate",wa((I,_)=>{var{tableDownloadStatus:H}=this.state;H===vn.DOWNLOAD_STATUS.DOWNLOADING&&this.setState({tableDownloadProgress:I,tableDownloadEstimatedTime:_})},e0)),se(this,"getOverflowButtonTooltip",be(I=>{if(I==null)return null;var _=yt(yt({position:"absolute"},I),{},{pointerEvents:"none"}),H={placement:"left",modifiers:{flip:{behavior:["left","right"]}}};return c.jsx("div",{style:_,children:c.jsx(Jt,{options:H,ref:this.handleTooltipRef,children:"View full contents"},Date.now())})})),se(this,"getExpandCellTooltip",be(I=>{if(I==null)return null;var{expandTooltipDisplayValue:_}=this.state,H=yt(yt({position:"absolute"},I),{},{pointerEvents:"none"}),X={placement:"bottom-start"};return c.jsx("div",{style:H,children:c.jsx(Jt,{options:X,ref:this.handleTooltipRef,children:c.jsxs("div",{style:{textAlign:"left"},children:["Click to ",_," row",c.jsx("br",{}),Kn.isMacPlatform()?"⌘":"Ctrl+","Click to expand row and all children"]})},Date.now())})})),se(this,"getLinkHoverTooltip",be(I=>{if(I==null)return null;var{linkHoverDisplayValue:_}=this.state,H=yt(yt({position:"absolute"},I),{},{pointerEvents:"none"}),X={placement:"bottom"};return c.jsx("div",{style:H,children:c.jsx(Jt,{options:X,ref:this.handleTooltipRef,children:c.jsxs("div",{className:"link-hover-tooltip",children:[_," - Click once to follow.",c.jsx("br",{}),"Click and hold to select this cell."]})})})})),se(this,"handleGotoValueChanged",I=>{this.setState({gotoValue:I}),this.debouncedSeekRow(I)}),se(this,"debouncedSeekRow",ct(I=>{this.seekRow(I)},r0)),this.handleAdvancedFilterChange=this.handleAdvancedFilterChange.bind(this),this.handleAdvancedFilterSortChange=this.handleAdvancedFilterSortChange.bind(this),this.handleAdvancedFilterDone=this.handleAdvancedFilterDone.bind(this),this.handleAdvancedMenuOpened=this.handleAdvancedMenuOpened.bind(this),this.handleGotoRowOpened=this.handleGotoRowOpened.bind(this),this.handleGotoRowClosed=this.handleGotoRowClosed.bind(this),this.handleAdvancedMenuClosed=this.handleAdvancedMenuClosed.bind(this),this.handleAggregationChange=this.handleAggregationChange.bind(this),this.handleAggregationsChange=this.handleAggregationsChange.bind(this),this.handleAggregationEdit=this.handleAggregationEdit.bind(this),this.handleAnimationLoop=this.handleAnimationLoop.bind(this),this.handleAnimationStart=this.handleAnimationStart.bind(this),this.handleAnimationEnd=this.handleAnimationEnd.bind(this),this.handleChartChange=this.handleChartChange.bind(this),this.handleChartCreate=this.handleChartCreate.bind(this),this.handleGridError=this.handleGridError.bind(this),this.handleFilterBarChange=this.handleFilterBarChange.bind(this),this.handleFilterBarDone=this.handleFilterBarDone.bind(this),this.handleFilterBarTab=this.handleFilterBarTab.bind(this),this.handleCancel=this.handleCancel.bind(this),this.handleMenu=this.handleMenu.bind(this),this.handleMenuClose=this.handleMenuClose.bind(this),this.handleMenuSelect=this.handleMenuSelect.bind(this),this.handleMenuBack=this.handleMenuBack.bind(this),this.handleRequestFailed=this.handleRequestFailed.bind(this),this.handleSelectionChanged=this.handleSelectionChanged.bind(this),this.handleMovedColumnsChanged=this.handleMovedColumnsChanged.bind(this),this.handleHeaderGroupsChanged=this.handleHeaderGroupsChanged.bind(this),this.handleUpdate=this.handleUpdate.bind(this),this.handleTooltipRef=this.handleTooltipRef.bind(this),this.handleViewChanged=this.handleViewChanged.bind(this),this.handleFormatSelection=this.handleFormatSelection.bind(this),this.handleConditionalFormatCreate=this.handleConditionalFormatCreate.bind(this),this.handleConditionalFormatEdit=this.handleConditionalFormatEdit.bind(this),this.handleConditionalFormatsChange=this.handleConditionalFormatsChange.bind(this),this.handleConditionalFormatEditorSave=this.handleConditionalFormatEditorSave.bind(this),this.handleConditionalFormatEditorCancel=this.handleConditionalFormatEditorCancel.bind(this),this.handleUpdateCustomColumns=this.handleUpdateCustomColumns.bind(this),this.handleCustomColumnsChanged=this.handleCustomColumnsChanged.bind(this),this.handleSelectDistinctChanged=this.handleSelectDistinctChanged.bind(this),this.handlePendingDataUpdated=this.handlePendingDataUpdated.bind(this),this.handlePendingCommitClicked=this.handlePendingCommitClicked.bind(this),this.handlePendingDiscardClicked=this.handlePendingDiscardClicked.bind(this),this.handleGotoRowSelectedRowNumberSubmit=this.handleGotoRowSelectedRowNumberSubmit.bind(this),this.focusRowInGrid=this.focusRowInGrid.bind(this),this.handleDownloadTable=this.handleDownloadTable.bind(this),this.handleDownloadTableStart=this.handleDownloadTableStart.bind(this),this.handleCancelDownloadTable=this.handleCancelDownloadTable.bind(this),this.handleDownloadCanceled=this.handleDownloadCanceled.bind(this),this.handleDownloadCompleted=this.handleDownloadCompleted.bind(this),this.handlePartitionAppend=this.handlePartitionAppend.bind(this),this.handlePartitionChange=this.handlePartitionChange.bind(this),this.handlePartitionFetchAll=this.handlePartitionFetchAll.bind(this),this.handlePartitionDone=this.handlePartitionDone.bind(this),this.handleColumnVisibilityChanged=this.handleColumnVisibilityChanged.bind(this),this.handleColumnVisibilityReset=this.handleColumnVisibilityReset.bind(this),this.handleCrossColumnSearch=this.handleCrossColumnSearch.bind(this),this.handleRollupChange=this.handleRollupChange.bind(this),this.handleOverflowClose=this.handleOverflowClose.bind(this),this.getColumnBoundingRect=this.getColumnBoundingRect.bind(this),this.handleGotoRowSelectedRowNumberChanged=this.handleGotoRowSelectedRowNumberChanged.bind(this),this.handleGotoValueSelectedColumnNameChanged=this.handleGotoValueSelectedColumnNameChanged.bind(this),this.handleGotoValueSelectedFilterChanged=this.handleGotoValueSelectedFilterChanged.bind(this),this.handleGotoValueChanged=this.handleGotoValueChanged.bind(this),this.handleGotoValueSubmitted=this.handleGotoValueSubmitted.bind(this),this.grid=null,this.gridWrapper=null,this.lastLoadedConfig=null,this.pending=new ls,this.globalColumnFormats=Re,this.decimalFormatOptions={},this.integerFormatOptions={},this.truncateNumbersWithPound=!1,this.renderer=new mS,this.tableSaver=null,this.crossColumnRef=Me.createRef(),this.isAnimating=!1,this.filterInputRef=Me.createRef(),this.gotoRowRef=Me.createRef(),this.toggleFilterBarAction={action:()=>this.toggleFilterBar(),shortcut:dr.TABLE.TOGGLE_QUICK_FILTER},this.toggleSearchBarAction={action:()=>this.toggleSearchBar(),shortcut:dr.TABLE.TOGGLE_SEARCH},this.toggleGotoRowAction={action:()=>this.toggleGotoRow(),shortcut:dr.TABLE.GOTO_ROW},this.discardAction={action:()=>{var{model:I}=this.props;He(I)&&I.isEditable&&I.pendingDataMap.size>0&&this.discardPending().catch(de.error)},shortcut:dr.INPUT_TABLE.DISCARD},this.commitAction={action:()=>{var{model:I}=this.props;He(I)&&I.isEditable&&I.pendingDataMap.size>0&&I.pendingDataErrors.size===0&&this.commitPending().catch(de.error)},shortcut:dr.INPUT_TABLE.COMMIT},this.contextActions=[this.toggleFilterBarAction,this.toggleSearchBarAction,this.toggleGotoRowAction,this.discardAction,this.commitAction];var{aggregationSettings:l,conditionalFormats:s,customColumnFormatMap:o,isFilterBarShown:u,isSelectingPartition:d,model:h,movedColumns:v,movedRows:m,partition:f,partitionColumn:g,rollupConfig:p,userColumnWidths:C,userRowHeights:S,showSearchBar:b,searchValue:w,selectedSearchColumns:y,invertSearchColumns:T,advancedFilters:E,quickFilters:P,selectDistinctColumns:O,pendingDataMap:D,canCopy:N,frozenColumns:F,columnHeaderGroups:A}=e,j=[new $p(this),new qp(this)];N&&j.push(new Hp(this));var{dh:k}=h,B=[new eC(this),new BC(this),new ZC(this),new aC(this),new dC(this),new zC(this),new jC(this),new RC(this,k),new AC(this),new YC(this)],G=v.length>0?v:h.initialMovedColumns,W=m.length>0?m:h.initialMovedRows,z=new rS({userColumnWidths:new Map(C),userRowHeights:new Map(S),movedColumns:G,initialColumnWidths:new Map(h==null||(t=h.layoutHints)===null||t===void 0||(r=t.hiddenColumns)===null||r===void 0?void 0:r.map(I=>[h.getColumnIndexByName(I),0]))}),q=y??[],V=ua.createSearchFilter(k,w,q,h.columns,T);this.tableUtils=new x(k),this.state={isFilterBarShown:u,isSelectingPartition:d,focusedFilterBarColumn:null,metricCalculator:z,metrics:void 0,keyHandlers:j,mouseHandlers:B,partition:f,partitionColumn:g,partitionTable:null,partitionFilters:[],quickFilters:P?new Map(P):new Map,advancedFilters:new Map(E),shownAdvancedFilter:null,hoverAdvancedFilter:null,sorts:[],reverseType:x.REVERSE_TYPE.NONE,customColumns:[],selectDistinctColumns:O,selectedRanges:[],copyOperation:null,loadingText:null,loadingScrimProgress:null,loadingSpinnerShown:!1,movedColumns:G,movedRows:W,shownColumnTooltip:null,formatter:new Pr(k),isMenuShown:!1,customColumnFormatMap:new Map(o),conditionalFormats:s,conditionalFormatEditIndex:null,conditionalFormatPreview:void 0,hoverSelectColumn:null,isTableDownloading:!1,isReady:!1,tableDownloadStatus:"",tableDownloadProgress:0,tableDownloadEstimatedTime:0,showSearchBar:b,searchFilter:V,searchValue:w,selectedSearchColumns:q,invertSearchColumns:T,rollupConfig:p,rollupSelectedColumns:[],aggregationSettings:l,selectedAggregation:null,openOptions:[],pendingRowCount:0,pendingDataMap:D??new Map,pendingDataErrors:new Map,pendingSavePromise:null,pendingSaveError:null,toastMessage:null,frozenColumns:F,showOverflowModal:!1,overflowText:"",overflowButtonTooltipProps:null,expandCellTooltipProps:null,expandTooltipDisplayValue:"expand",linkHoverTooltipProps:null,linkHoverDisplayValue:"",isGotoShown:!1,gotoRow:"",gotoRowError:"",gotoValueError:"",gotoValueSelectedColumnName:(i=(a=h.columns[0])===null||a===void 0?void 0:a.name)!==null&&i!==void 0?i:"",gotoValueSelectedFilter:Ce.eqIgnoreCase,gotoValue:"",columnHeaderGroups:A??h.initialColumnHeaderGroups}}componentDidMount(){var{partitionColumn:e,model:t}=this.props,r=e??t.columns.find(i=>i.isPartitionColumn);t.isFilterRequired&&t.isValuesTableAvailable&&r!=null?this.loadPartitionsTable(r):this.initState(),this.startListening(t)}componentDidUpdate(e){var{inputFilters:t,isSelectingColumn:r,settings:i,model:a,customFilters:l,sorts:s}=this.props;a!==e.model&&(this.stopListening(e.model),this.startListening(a));var o=t!==e.inputFilters?t.filter(f=>!e.inputFilters.includes(f)):[];if(o.length>0){var u,{advancedSettings:d}=this.props,h=(u=d.get(Yn.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS))!==null&&u!==void 0?u:!1;h&&(this.clearGridInputField(),this.clearCrossColumSearch()),this.startLoading("Filtering...",!0),this.applyInputFilters(o,h)}r!==e.isSelectingColumn&&this.resetColumnSelection(),i!==e.settings&&this.updateFormatterSettings(i),l!==e.customFilters&&this.startLoading("Filtering...",!0),s!==e.sorts&&this.updateSorts(s);var{loadingScrimStartTime:v,loadingScrimFinishTime:m}=this;v!=null&&m!=null&&window.requestAnimationFrame(()=>{var f=Date.now(),g=f-v,p=m-v,C=Math.min(g/p,1);m<f&&(this.loadingScrimStartTime=void 0,this.loadingScrimFinishTime=void 0),this.setState(S=>S.loadingScrimProgress==null?(de.debug2("Ignoring scrim update because loading cancelled."),null):{loadingScrimProgress:C})}),this.sendStateChange()}componentWillUnmount(){var{model:e}=this.props;this.stopListening(e),this.pending.cancel(),this.updateSearchFilter.cancel(),this.loadingTimer&&clearTimeout(this.loadingTimer),this.handleDownloadProgressUpdate.cancel(),this.animationFrame!==void 0&&cancelAnimationFrame(this.animationFrame)}getValueForCell(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{model:i}=this.props,{dh:a}=i,l=this.getModelColumn(e),s=this.getModelRow(t);if(r&&l!=null&&s!=null){var o=i.valueForCell(l,s);if(x.isDateType(i.columns[l].type)){var{formatter:u}=i;return a.i18n.DateTimeFormat.format(i0,o,a.i18n.TimeZone.getTimeZone(u.timeZone))}return o}return r?null:l!=null&&s!=null?i.textForCell(l,s):""}getModelColumn(e){var{metrics:t}=this.state;L(t);var{modelColumns:r}=t;return r==null?null:e!=null?r.get(e):null}getModelRow(e){var{metrics:t}=this.state;L(t);var{modelRows:r}=t;return r==null?null:e!=null?r.get(e):null}getTheme(){var e,{model:t,theme:r}=this.props;return this.getCachedTheme(r,(e=He(t)&&t.isEditable)!==null&&e!==void 0?e:!1,t.floatingTopRowCount+t.floatingBottomRowCount)}getVisibleColumn(e){var{movedColumns:t}=this.state;return K.getVisibleIndex(e,t)}makeQuickFilter(e,t,r){try{return this.tableUtils.makeQuickFilter(e,t,r)}catch(i){de.error("Error creating quick filter",i)}return null}applyInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,{model:r}=this.props,{advancedFilters:i,quickFilters:a}=this.state,l=t?new Map:new Map(i),s=t?new Map:new Map(a),o=t&&i.size>0;e.forEach(u=>{var{name:d,type:h,value:v}=u,m=r.columns.findIndex(f=>{var{name:g,type:p}=f;return g===d&&p===h});m>=0?(o=l.delete(m)||o,o=this.applyQuickFilter(m,v,s)||o):de.error("Unable to find column for inputFilter",d,h,v)}),o&&this.setState({quickFilters:s,advancedFilters:l})}applyQuickFilter(e,t,r){var{model:i}=this.props,{formatter:a}=i,l=i.columns[e];if(t!=null&&"".concat(t).trim().length>0){var s=r.get(e);if(s!=null){var{text:o}=s;if(o===t)return de.debug2("Ignoring change to existing filter"),!1}return r.set(e,{text:t,filter:this.makeQuickFilter(l,t,a.timeZone)}),!0}return r.delete(e)}setAdvancedFilterMap(e){this.setState({advancedFilters:e})}setAdvancedFilter(e,t,r){de.debug("Setting advanced filter",e,t),this.startLoading("Filtering...",!0),this.setState(i=>{var{advancedFilters:a}=i,l=new Map(a);return t==null?l.delete(e):l.set(e,{filter:t,options:r}),{advancedFilters:l}})}setQuickFilter(e,t,r){de.debug("Setting quick filter",e,t,r),this.startLoading("Filtering...",!0),this.setState(i=>{var{quickFilters:a}=i,l=new Map(a);return l.set(e,{filter:t,text:r}),{quickFilters:l}})}setFilterMap(e){var t;de.debug("setFilterMap",e);var{advancedSettings:r}=this.props,i=(t=r.get(Yn.LINK_CHANGE_CLEARS_ALL_FILTERS))!==null&&t!==void 0?t:!1;i&&this.clearAllFilters();var{model:a}=this.props;e.forEach((l,s)=>{var{columnType:o,filterList:u}=l,d=a.columns.find(f=>f.name===s&&f.type===o);if(d!=null){var h=a.getColumnIndexByName(d.name);L(h);var v=me.combineFiltersFromList(o,u);if(v.length===0)this.removeQuickFilter(h);else{var{formatter:m}=a;this.setQuickFilter(h,this.makeQuickFilter(d,v,m.timeZone),"".concat(v))}}})}removeColumnFilter(e){this.startLoading("Filtering...",!0),this.setState(t=>{var{advancedFilters:r,quickFilters:i}=t,a=r?new Map(r):new Map,l=i?new Map(i):new Map;return l.delete(e),a.delete(e),{quickFilters:l,advancedFilters:a}})}removeQuickFilter(e){this.startLoading("Clearing Filter...",!0),this.setState(t=>{var{quickFilters:r}=t,i=new Map(r);return i.delete(e),{quickFilters:i}})}clearAllFilters(){de.debug("Clearing all filters");var{advancedFilters:e,quickFilters:t,searchFilter:r}=this.state;t.size===0&&e.size===0&&r===null||(this.clearGridInputField(),this.startLoading("Clearing Filters...",!0),this.setState({quickFilters:new Map,advancedFilters:new Map,searchValue:"",searchFilter:void 0}))}clearCrossColumSearch(){de.debug("Clearing cross-column search"),this.setState({searchValue:"",searchFilter:void 0})}clearGridInputField(){this.filterInputRef.current!=null&&this.filterInputRef.current.setValue("")}rebuildFilters(){de.debug("Rebuilding filters");var{model:e}=this.props,{advancedFilters:t,quickFilters:r}=this.state,{columns:i,formatter:a}=e,l=new Map,s=new Map;t.forEach((o,u)=>{var{options:d}=o,h=i[u],v=this.tableUtils.makeAdvancedFilter(h,d,a.timeZone);l.set(u,{options:d,filter:v})}),r.forEach((o,u)=>{var{text:d}=o,h=i[u];s.set(u,{text:d,filter:this.makeQuickFilter(h,d,a.timeZone)})}),this.startLoading("Rebuilding filters...",!0),this.setState({quickFilters:s,advancedFilters:l})}setFilters(e){var{quickFilters:t,advancedFilters:r}=e;this.setState({quickFilters:t,advancedFilters:r})}updateFormatterSettings(e){var t,r,i,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,l=kr.getColumnFormats(e),s=kr.getDateTimeFormatterOptions(e),o=(t=e?.defaultDecimalFormatOptions)!==null&&t!==void 0?t:{},u=(r=e?.defaultIntegerFormatOptions)!==null&&r!==void 0?r:{},d=(i=e?.truncateNumbersWithPound)!==null&&i!==void 0?i:!1,h=!ht(this.globalColumnFormats,l),v=!ht(this.dateTimeFormatterOptions,s),m=!ht(this.decimalFormatOptions,e?.defaultDecimalFormatOptions),f=!ht(this.integerFormatOptions,u),g=this.truncateNumbersWithPound!==d;(h||v||m||f||g)&&(this.globalColumnFormats=l,this.dateTimeFormatterOptions=s,this.decimalFormatOptions=o,this.integerFormatOptions=u,this.truncateNumbersWithPound=d,this.updateFormatter({},a),v&&a&&this.rebuildFilters())}updateFormatter(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,{customColumnFormatMap:i}=this.state,{model:a}=this.props,l=yt({customColumnFormatMap:i},e),s=[...(t=this.globalColumnFormats)!==null&&t!==void 0?t:[],...l.customColumnFormatMap.values()],o=new Pr(a.dh,s,this.dateTimeFormatterOptions,this.decimalFormatOptions,this.integerFormatOptions,this.truncateNumbersWithPound);de.debug("updateFormatter",this.globalColumnFormats,s),this.setState(yt(yt({},l),{},{formatter:o}),()=>{r&&this.grid&&this.grid.forceUpdate()})}initFormatter(){var{settings:e}=this.props;this.updateFormatterSettings(e)}initState(){var{applyInputFiltersOnInit:e,inputFilters:t,sorts:r,model:i,reverseType:a,customColumns:l,searchValue:s,selectedSearchColumns:o,invertSearchColumns:u}=this.props,d=o??[],h=ua.createSearchFilter(i.dh,s,d,i.columns,u);if(e){var v=t.filter(m=>m.value!=null);this.applyInputFilters(v)}this.setState({sorts:r,reverseType:a,customColumns:l,isReady:!0,searchFilter:h}),this.initFormatter()}loadPartitionsTable(e){var t=this;return da(function*(){var{model:r}=t.props;t.setState({isSelectingPartition:!0});try{var i=yield t.pending.add(r.valuesTable(e),d=>d.close()),a=i.columns[0],l=a.sort().desc();i.applySort([l]),i.setViewport(0,0,[a]);var s=yield t.pending.add(i.getViewportData());if(s.rows.length>0){var o=s.rows[0],u=o.get(a);t.updatePartition(u,e),t.setState({isSelectingPartition:!0})}else de.info("Table does not have any data, just fetching all"),t.setState({isSelectingPartition:!1}),t.handlePartitionFetchAll();t.setState({partitionTable:i,partitionColumn:e},()=>{t.initState()})}catch(d){t.handleTableLoadError(d)}})()}updatePartition(e,t){if(!(x.isCharType(t.type)&&e==="")){var{model:r}=this.props,i=x.isCharType(t.type)?r.displayString(e,t.type,t.name):e,a=this.tableUtils.makeQuickFilterFromComponent(t,i);if(a!==null){var l=[a];this.setState({partition:e,partitionFilters:l})}}}copyCell(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{canCopy:i}=this.props;if(i){var a=String(this.getValueForCell(e,t,r));_a(a).catch(l=>de.error("Unable to copy cell",l))}else de.error("Attempted to copyCell for user without copy permission.")}copyRanges(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,i=arguments.length>3?arguments[3]:void 0,{model:a,canCopy:l}=this.props,{metricCalculator:s,movedColumns:o}=this.state,u=s.getUserColumnWidths();if(l){var d={ranges:U.boundedRanges(e,a.columnCount,a.rowCount),includeHeaders:t,formatValues:r,movedColumns:o,userColumnWidths:u,error:i};this.setState({copyOperation:d})}else de.error("Attempted copyRanges for user without copy permission.")}startLoading(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;this.setState({loadingText:e});var r=this.getTheme();if(t&&this.grid&&(this.grid.clearSelectedRanges(),this.grid.setViewState({top:0},!0)),this.loadingScrimStartTime==null){var i,a,{minScrimTransitionTime:l,maxScrimTransitionTime:s}=r;L(l),L(s);var o=(i=(a=this.gridWrapper)===null||a===void 0?void 0:a.getBoundingClientRect().height)!==null&&i!==void 0?i:0,u=Math.max(l,Math.min(o/2,s));this.loadingScrimStartTime=Date.now(),this.loadingScrimFinishTime=this.loadingScrimStartTime+u,this.setState({loadingScrimProgress:0}),this.loadingTimer=setTimeout(()=>{this.setState({loadingSpinnerShown:!0})},Or.loadingSpinnerDelay)}}stopLoading(){this.loadingScrimStartTime=void 0,this.loadingScrimFinishTime=void 0,this.setState({loadingText:null,loadingScrimProgress:null,loadingSpinnerShown:!1}),this.loadingTimer!=null&&(clearTimeout(this.loadingTimer),this.loadingTimer=void 0)}rollback(){if(this.lastLoadedConfig){de.debug("loading last loading config",this.lastLoadedConfig);var{advancedFilters:e,aggregationSettings:t,customColumns:r,quickFilters:i,reverseType:a,rollupConfig:l,searchFilter:s,selectDistinctColumns:o,sorts:u}=this.lastLoadedConfig;this.lastLoadedConfig=null,this.setState({advancedFilters:e,aggregationSettings:t,customColumns:r,quickFilters:i,reverseType:a,rollupConfig:l,searchFilter:s,selectDistinctColumns:o,sorts:u})}else de.debug("remove all sorts, filters, and custom columns"),this.setState({advancedFilters:new Map,aggregationSettings:qh,customColumns:[],quickFilters:new Map,reverseType:x.REVERSE_TYPE.NONE,rollupConfig:void 0,selectDistinctColumns:[],sorts:[]})}canRollback(){return this.lastLoadedConfig!=null||!Qu(this.state)}startListening(e){e.addEventListener(ce.EVENT.UPDATED,this.handleUpdate),e.addEventListener(ce.EVENT.REQUEST_FAILED,this.handleRequestFailed),e.addEventListener(ce.EVENT.COLUMNS_CHANGED,this.handleCustomColumnsChanged),e.addEventListener(ce.EVENT.PENDING_DATA_UPDATED,this.handlePendingDataUpdated)}stopListening(e){e.removeEventListener(ce.EVENT.UPDATED,this.handleUpdate),e.removeEventListener(ce.EVENT.REQUEST_FAILED,this.handleRequestFailed),e.removeEventListener(ce.EVENT.COLUMNS_CHANGED,this.handleCustomColumnsChanged),e.removeEventListener(ce.EVENT.PENDING_DATA_UPDATED,this.handlePendingDataUpdated)}focus(){var e;(e=this.grid)===null||e===void 0||e.focus()}focusFilterBar(e){var{movedColumns:t}=this.state,{model:r}=this.props,{columnCount:i}=r,a=K.getModelIndex(e,t);if(e==null||e<0||i<=e||!r.isFilterable(a)){this.setState({focusedFilterBarColumn:null});return}var{metricCalculator:l,metrics:s}=this.state;L(s);var{left:o,rightVisible:u,lastLeft:d}=s;if(e<o){var h;(h=this.grid)===null||h===void 0||h.setViewState({left:e},!0)}else if(u<e){var v,m,f=(v=this.grid)===null||v===void 0?void 0:v.getMetricState();L(f);var g=l.getLastLeft(f,e,l.getVisibleWidth(f));(m=this.grid)===null||m===void 0||m.setViewState({left:Math.min(g,d),leftOffset:0},!0)}this.lastFocusedFilterBarColumn=e,this.setState({focusedFilterBarColumn:e,isFilterBarShown:!0})}hideColumnByVisibleIndex(e){var t,{metricCalculator:r,movedColumns:i}=this.state;r.setColumnWidth(K.getModelIndex(e,i),0),(t=this.grid)===null||t===void 0||t.forceUpdate()}freezeColumnByColumnName(e){var{frozenColumns:t,movedColumns:r}=this.state,{model:i}=this.props;de.debug2("freezing column",e);var a=t==null?new Set(i.frozenColumns):new Set(t);a.add(e);var l=i.getColumnIndexByName(e);L(l);var s=K.getVisibleIndex(l,r),o=K.moveItem(s,a.size-1,r);this.setState({frozenColumns:[...a],movedColumns:o})}unFreezeColumnByColumnName(e){var{frozenColumns:t,movedColumns:r}=this.state,{model:i}=this.props;de.debug2("unfreezing column",e);var a=t==null?new Set(i.frozenColumns):new Set(t);a.delete(e);var l=i.getColumnIndexByName(e);L(l);var s=K.getVisibleIndex(l,r),o=K.moveItem(s,a.size+i.frontColumns.length,r);this.setState({frozenColumns:[...a],movedColumns:o})}handleColumnVisibilityChanged(e,t){var r,{metricCalculator:i,metrics:a}=this.state;L(a),t?e.forEach(l=>{var s=i.initialColumnWidths.get(l),o=M(a.calculatedColumnWidths,l);s!==o?i.setColumnWidth(l,o):i.resetColumnWidth(l)}):e.forEach(l=>{i.setColumnWidth(l,0)}),(r=this.grid)===null||r===void 0||r.forceUpdate()}handleColumnVisibilityReset(){var e,t,{metricCalculator:r,metrics:i}=this.state,{model:a}=this.props;L(i);for(var l=0;l<i.columnCount;l+=1)r.resetColumnWidth(l);this.handleMovedColumnsChanged(a.initialMovedColumns),this.handleHeaderGroupsChanged(a.initialColumnHeaderGroups),this.setState({frozenColumns:(e=(t=a.layoutHints)===null||t===void 0?void 0:t.frozenColumns)!==null&&e!==void 0?e:[]})}handleCrossColumnSearch(e,t,r){var{model:i}=this.props;this.startLoading("Searching..."),this.updateSearchFilter(e,t,i.columns,r),this.setState({searchValue:e,selectedSearchColumns:t,invertSearchColumns:r})}handleAnimationLoop(){var e;(e=this.grid)===null||e===void 0||e.updateCanvas(),this.isAnimating&&(this.animationFrame=requestAnimationFrame(this.handleAnimationLoop))}handleAnimationStart(){de.debug2("handleAnimationStart"),this.isAnimating=!0,this.animationFrame=requestAnimationFrame(this.handleAnimationLoop)}handleAnimationEnd(){de.debug2("handleAnimationEnd"),this.isAnimating=!1}handlePartitionAppend(e){var{onPartitionAppend:t}=this.props,{partitionColumn:r}=this.state;r!=null&&t?.(r,e)}handlePartitionChange(e){var{partitionColumn:t}=this.state;t!=null&&this.updatePartition(e,t)}handlePartitionFetchAll(){this.setState({partitionFilters:[],isSelectingPartition:!1})}handlePartitionDone(){this.setState({isSelectingPartition:!1})}handleTableLoadError(e){if(!st.isCanceled(e)){de.error(e);var{onError:t}=this.props;t(e)}}showAllColumns(){for(var e,{metricCalculator:t}=this.state,r=t.getUserColumnWidths(),i=[...r.entries()],a=0;a<i.length;a+=1){var[l,s]=i[a];s===0&&t.resetColumnWidth(l)}(e=this.grid)===null||e===void 0||e.forceUpdate()}toggleSort(e,t){de.info("Toggling sort for column",e);var{model:r}=this.props,i=this.getModelColumn(e);if(L(i),r.isColumnSortable(e)){var{sorts:a}=this.state,l=x.toggleSortForColumn(a,r.columns,i,t);this.updateSorts(l)}else de.debug("Column type was not sortable",r.columns[e])}updateSorts(e){var t;this.startLoading("Sorting..."),this.setState({sorts:e}),(t=this.grid)===null||t===void 0||t.forceUpdate()}sortColumn(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:x.sortDirection.none,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;L(e);var{model:l}=this.props,s=x.sortColumn(l.sort,l.columns,e,r,i,a);this.startLoading("Sorting..."),this.setState({sorts:s}),(t=this.grid)===null||t===void 0||t.forceUpdate()}reverse(e){var t;this.startLoading("Reversing..."),this.setState({reverseType:e}),(t=this.grid)===null||t===void 0||t.forceUpdate()}isReversible(){var{model:e}=this.props;return e.isReversible}toggleFilterBar(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.lastFocusedFilterBarColumn,{isFilterBarShown:t}=this.state;if(t=!t,this.setState({isFilterBarShown:t}),t)if(e!=null)this.focusFilterBar(e);else{for(var r=0,{model:i}=this.props,{columnCount:a}=i,l=0;l<a;l+=1){var s=this.getModelColumn(l);if(s!=null){var o=i.columns[s];if(o!=null&&x.isTextType(o.type)){r=l;break}}}this.focusFilterBar(r)}else{var u;(u=this.grid)===null||u===void 0||u.focus()}}isTableSearchAvailable(){var e,t,r,{model:i,canToggleSearch:a}=this.props,{dh:l}=i,s=i==null||(e=i.layoutHints)===null||e===void 0?void 0:e.searchDisplayMode;return s===((t=l.SearchDisplayMode)===null||t===void 0?void 0:t.SEARCH_DISPLAY_HIDE)?!1:s===((r=l.SearchDisplayMode)===null||r===void 0?void 0:r.SEARCH_DISPLAY_SHOW)?!0:a}toggleSearchBar(){var{showSearchBar:e}=this.state;if(this.isTableSearchAvailable()){var t=!e;this.setState({showSearchBar:t},()=>{var r;if(t&&(r=this.crossColumnRef)!==null&&r!==void 0&&r.current){var i;(i=this.crossColumnRef)===null||i===void 0||i.current.focus()}else{var a;(a=this.grid)===null||a===void 0||a.focus()}})}}toggleGotoRow(){var e,t,r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"",a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"",{isGotoShown:l}=this.state;if(r||i){var s;this.setState({isGotoShown:!0,gotoValue:i,gotoValueSelectedColumnName:a,gotoRowError:"",gotoValueError:""}),this.focusRowInGrid(r),(s=this.gotoRowRef.current)===null||s===void 0||s.focus();return}var o=(e=this.grid)===null||e===void 0?void 0:e.state.cursorRow,u=(t=this.grid)===null||t===void 0?void 0:t.state.cursorColumn;if(o==null||u==null){this.setState({isGotoShown:!l,gotoRow:"",gotoValue:"",gotoRowError:"",gotoValueError:""});return}var{model:d}=this.props,{name:h,type:v}=d.columns[u],m=d.valueForCell(u,o),f=me.convertValueToText(m,v);this.setState({isGotoShown:!l,gotoRow:"".concat(o+1),gotoValue:f,gotoValueSelectedColumnName:h,gotoRowError:"",gotoValueError:""})}commitPending(){var e=this;return da(function*(){var t,r,{model:i}=e.props;if(!He(i)||!i.isEditable)throw new Error("Cannot save, table is not editable");var{pendingSavePromise:a}=e.state;if(a!=null)throw new Error("Save already in progress");var l=(t=document)===null||t===void 0||(r=t.activeElement)===null||r===void 0?void 0:r.classList.contains("grid-cell-input-field");if(l!=null&&l){var s;if(document.activeElement!=null&&document.activeElement.classList.contains("error"))throw new rv("Current input is invalid");(s=e.grid)===null||s===void 0||s.focus()}var o=e.pending.add(i.commitPending()).then(()=>{e.setState({pendingSaveError:null,pendingSavePromise:null})}).catch(u=>{st.isCanceled(u)||e.setState({pendingSaveError:u,pendingSavePromise:null})});return e.setState({pendingSavePromise:o}),o})()}discardPending(){var e=this;return da(function*(){var{pendingSavePromise:t}=e.state;if(t!=null)throw new Error("Cannot cancel a save in progress");e.setState({pendingSavePromise:null,pendingSaveError:null,pendingDataMap:new Map,pendingDataErrors:new Map})})()}selectColumn(e){var{onColumnSelected:t}=this.props;t(e)}selectData(e,t){for(var r=this,{model:i}=this.props,{columns:a,groupedColumns:l}=i,s={},o=function(){var v=a[u],{name:m,type:f}=v,g=i.valueForCell(u,t),p=i.textForCell(u,t),C=r.getVisibleColumn(u),S=xe(i)&&i.isRowExpandable(t),b=l.find(w=>w.name===m)!=null;s[m]={value:g,text:p,type:f,isGrouped:b,isExpandable:S,visibleIndex:C}},u=0;u<a.length;u+=1)o();var{onDataSelected:d}=this.props;d(t,s)}handleAdvancedFilterChange(e,t,r){var{model:i}=this.props,a=i.getColumnIndexByName(e.name);L(a),this.setAdvancedFilter(a,t,r)}handleAdvancedFilterSortChange(e,t){var r,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{model:a}=this.props,l=a.getColumnIndexByName(e.name);L(l);var s=a.columns[l].name,o=x.getSortForColumn(a.sort,s),u=null;(o==null||o.direction!==t)&&(t===x.sortDirection.descending?u=e.sort().desc():u=e.sort().asc());var d=x.setSortForColumn(a.sort,s,u,i);de.info("Setting table sorts",d),this.startLoading("Sorting..."),this.setState({sorts:d}),(r=this.grid)===null||r===void 0||r.forceUpdate()}handleAdvancedFilterDone(){var e;(e=this.grid)===null||e===void 0||e.focus()}handleAdvancedMenuOpened(e){this.setState({shownAdvancedFilter:e})}handleGotoRowOpened(){this.setState({isGotoShown:!0})}handleGotoRowClosed(){this.setState({isGotoShown:!1})}handleAdvancedMenuClosed(e){var t,{focusedFilterBarColumn:r,isFilterBarShown:i}=this.state;if(i&&r===e&&((t=this.filterInputRef)===null||t===void 0?void 0:t.current)!==null){var a;(a=this.filterInputRef)===null||a===void 0||a.current.focus(),this.setState({shownAdvancedFilter:null})}else this.setState({focusedFilterBarColumn:null,shownAdvancedFilter:null})}handleCancel(){this.rollback()}handleChartChange(){}handleChartCreate(e){var{model:t,onCreateChart:r}=this.props;r(e,t)}handleGridError(e){de.warn("Grid Error",e),this.setState({toastMessage:c.jsx("div",{className:"error-message",children:"".concat(e)})})}handleFilterBarChange(e){this.startLoading("Filtering...",!0),this.setState(t=>{var{focusedFilterBarColumn:r,quickFilters:i}=t,a=new Map(i);if(r!=null){var l=this.getModelColumn(r);L(l),this.applyQuickFilter(l,e,a)}return{quickFilters:a}})}handleFilterBarDone(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(e){var r;(r=this.grid)===null||r===void 0||r.focus()}t&&this.setState({focusedFilterBarColumn:null})}handleFilterBarTab(e){var{focusedFilterBarColumn:t}=this.state;L(t),e?this.focusFilterBar(t-1):this.focusFilterBar(t+1)}handleFormatSelection(e,t){var{model:r}=this.props,i=r.columns[e],{customColumnFormatMap:a}=this.state,l=new Map(a);if(t!=null){var s=x.getNormalizedType(i.type);L(s);var o=Pr.makeColumnFormattingRule(s,i.name,t);l.set(i.name,o)}else l.delete(i.name);this.updateFormatter({customColumnFormatMap:l})}handleMenu(e){e.stopPropagation(),this.setState({isMenuShown:!0})}handleMenuClose(){this.setState({isMenuShown:!1,openOptions:[]})}handleMenuBack(){this.setState(e=>{var{openOptions:t}=e,r=[...t];return r.pop(),{openOptions:r}})}handleMenuSelect(e){this.setState(t=>{var{openOptions:r}=t;return{openOptions:[...r,e]}})}handleRequestFailed(e){var t=e;if(de.error("request failed:",t.detail),this.stopLoading(),this.canRollback())this.startLoading("Rolling back changes...",!0),this.rollback();else{de.error("Table failed and unable to rollback");var{onError:r}=this.props;r(new Error("Error displaying table: ".concat(t.detail)))}}handleUpdate(){var e;de.debug2("Received model update");var{advancedFilters:t,aggregationSettings:r,customColumns:i,quickFilters:a,reverseType:l,rollupConfig:s,searchFilter:o,selectDistinctColumns:u,sorts:d}=this.state,h={advancedFilters:t,aggregationSettings:r,customColumns:i,quickFilters:a,reverseType:l,rollupConfig:s,searchFilter:o,selectDistinctColumns:u,sorts:d};Qu(h)?this.lastLoadedConfig=null:this.lastLoadedConfig=h,(e=this.grid)===null||e===void 0||e.forceUpdate(),this.stopLoading()}handleViewChanged(e){var t,r,{model:i}=this.props,{selectionEndRow:a=0}=(t=(r=this.grid)===null||r===void 0?void 0:r.state)!==null&&t!==void 0?t:{},l=0;if(He(i)&&i.isEditable){L(e);var{bottomViewport:s}=e,o=i.rowCount-i.floatingBottomRowCount;a===o-1?l=i.pendingRowCount+1:a===o-2?l=i.pendingRowCount:l=Math.max(0,s-(i.rowCount-i.pendingRowCount)-i.floatingTopRowCount-i.floatingBottomRowCount-1)}this.setState({metrics:e,pendingRowCount:l})}handleSelectionChanged(e){var t;L(e);var{onSelectionChanged:r}=this.props,{copyOperation:i}=this.state;this.setState({selectedRanges:e}),i!=null&&this.setState({copyOperation:null}),((t=this.grid)===null||t===void 0?void 0:t.state.cursorRow)!=null&&this.setState({gotoRow:"".concat(this.grid.state.cursorRow+1)}),r(e)}handleMovedColumnsChanged(e,t){this.setState({movedColumns:e},t)}handleHeaderGroupsChanged(e){var{model:t}=this.props;this.setState({columnHeaderGroups:me.parseColumnHeaderGroups(t,e).groups},()=>{var r;return(r=this.grid)===null||r===void 0?void 0:r.forceUpdate()})}handleTooltipRef(e){e?.startTimer(),this.tooltip=e}handleConditionalFormatsChange(e){de.debug("Updated conditional formats",e),this.setState({conditionalFormats:e})}handleConditionalFormatCreate(){de.debug("Create new conditional format");var{openOptions:e,conditionalFormats:t}=this.state;this.setState({openOptions:[...e,{type:Fe.CONDITIONAL_FORMATTING_EDIT,title:"Create Formatting Rule"}],conditionalFormatEditIndex:t.length,conditionalFormatPreview:void 0})}handleConditionalFormatEdit(e){de.debug("Edit conditional format",e);var{openOptions:t,conditionalFormats:r}=this.state;this.setState({openOptions:[...t,{type:Fe.CONDITIONAL_FORMATTING_EDIT,title:"Edit Formatting Rule"}],conditionalFormatEditIndex:e,conditionalFormatPreview:yt({},r[e])})}handleConditionalFormatEditorSave(e){de.debug("Save conditional format changes",e),this.setState(t=>{if(t.conditionalFormatEditIndex===null)return de.debug("Invalid format index"),null;var r=[...t.conditionalFormats];return r[t.conditionalFormatEditIndex]=e,{conditionalFormats:r}},()=>{this.handleMenuBack()})}handleConditionalFormatEditorCancel(){this.handleMenuBack(),this.setState({conditionalFormatEditIndex:null})}handleUpdateCustomColumns(e){de.info("handleUpdateCustomColumns:",e);var{model:t}=this.props,{movedColumns:r,sorts:i,quickFilters:a,advancedFilters:l,selectDistinctColumns:s}=this.state,{columns:o}=t,u=t.customColumns.map(p=>"".concat(p)),d=me.getRemovedCustomColumnNames(u,e);if(d.length>0){var h=me.removeSortsInColumns(i,d),v=me.removeFiltersInColumns(o,a,d),m=me.removeFiltersInColumns(o,l,d),f=me.removeColumnFromMovedColumns(o,r,d),g=me.removeColumnsFromSelectDistinctColumns(s,d);h.length!==i.length&&(de.debug("removing sorts from removed custom columns..."),this.setState({sorts:h})),(v.size!==a.size||m.size!==l.size)&&(de.debug("removing filters from removed custom columns..."),this.setState({quickFilters:v,advancedFilters:m})),ht(r,f)||(de.debug("change moved columns for removed custom columns",f),this.setState({movedColumns:f})),ht(s,g)||(de.debug("change selectDistinct columns for removed custom columns",f),this.setState({selectDistinctColumns:g}))}this.setState({customColumns:e}),e.length>0&&this.startLoading("Applying custom columns...")}handleCustomColumnsChanged(){de.debug("custom columns changed");var{isReady:e}=this.state;if(e){var t;this.stopLoading(),(t=this.grid)===null||t===void 0||t.forceUpdate()}else this.initState()}handlePendingCommitClicked(){return this.commitPending()}handlePendingDiscardClicked(){return this.discardPending()}handlePendingDataUpdated(){var e;de.debug("pending data updated");var{model:t}=this.props,{pendingDataMap:r,pendingDataErrors:i}=t;this.setState({pendingDataMap:r,pendingDataErrors:i,pendingSaveError:null}),(e=this.grid)===null||e===void 0||e.forceUpdate()}handleAggregationsChange(e){de.debug("handleAggregationsChange",e),this.startLoading("Aggregating ".concat(e.aggregations.map(t=>t.operation).join(", "),"...")),this.setState({aggregationSettings:e})}handleAggregationChange(e){de.debug("handleAggregationChange",e),this.startLoading("Aggregating ".concat(e.operation,"...")),this.setState(t=>{var{aggregationSettings:r}=t;return{selectedAggregation:e,aggregationSettings:yt(yt({},r),{},{aggregations:r.aggregations.map(i=>i.operation===e.operation?e:i)})}})}handleAggregationEdit(e){de.debug("handleAggregationEdit",e);var{openOptions:t}=this.state;this.setState({openOptions:[...t,{type:Fe.AGGREGATION_EDIT,title:"Edit Columns to ".concat(e.operation)}],selectedAggregation:e})}handleRollupChange(e){var t,r;de.info("Rollup change",e),this.resetGridViewState(),this.showAllColumns(),this.clearAllFilters(),this.startLoading("Grouping by columns ".concat((t=e==null||(r=e.columns)===null||r===void 0?void 0:r.join(", "))!==null&&t!==void 0?t:"","...")),this.setState({rollupConfig:e,movedColumns:[],frozenColumns:[],sorts:[],reverseType:x.REVERSE_TYPE.NONE,selectDistinctColumns:[]})}handleSelectDistinctChanged(e){de.debug("SelectDistinct change",e),this.resetGridViewState(),this.showAllColumns(),this.clearAllFilters(),this.startLoading("Selecting distinct values in ".concat(e.length>0?e.join(", "):"","...")),this.setState({selectDistinctColumns:e,movedColumns:[],sorts:[],reverseType:x.REVERSE_TYPE.NONE})}handleDownloadTableStart(){var{canDownloadCsv:e}=this.props;e?this.setState({isTableDownloading:!0,tableDownloadProgress:0,tableDownloadEstimatedTime:null,tableDownloadStatus:vn.DOWNLOAD_STATUS.INITIATING}):de.error("Attempted to handleDownloadTableStart for user without download CSV permission.")}handleDownloadTable(e,t,r,i,a,l,s){var{canDownloadCsv:o}=this.props;o?(de.info("start table downloading",e,t,r,i,a,l,s),this.setState(()=>(this.tableSaver&&this.tableSaver.startDownload(e,t,r,i,a,l,s),{tableDownloadStatus:vn.DOWNLOAD_STATUS.DOWNLOADING}))):de.error("Attempted to handleDownloadTable for user without download CSV permission.")}seekRow(e){var t=arguments,r=this;return da(function*(){var i,a=t.length>1&&t[1]!==void 0?t[1]:!1,{gotoValueSelectedColumnName:l,gotoValueSelectedFilter:s}=r.state,{model:o}=r.props,{dh:u}=o;if(o.isSeekRowAvailable&&e!==""){var d=me.getColumnByName(o.columns,l);if(d!==void 0){var h=(i=r.grid)===null||i===void 0?void 0:i.state.cursorRow;h==null&&(h=0);var v=s===Ce.contains||s===Ce.containsIgnoreCase,m=s===Ce.eqIgnoreCase||s===Ce.containsIgnoreCase;try{var f,{formatter:g}=o,p=x.getNormalizedType(d.type),C;switch(p){case x.dataType.CHAR:case x.dataType.STRING:{C=yield o.seekRow(h,d,u.ValueType.STRING,e,m,v,a??!1);break}case x.dataType.DATETIME:{var[S]=Tn.parseDateRange(u,e,g.timeZone);C=yield o.seekRow(h,d,u.ValueType.DATETIME,S,void 0,void 0,a??!1);break}case x.dataType.DECIMAL:case x.dataType.INT:{if(!x.isBigDecimalType(d.type)&&!x.isBigIntegerType(d.type)){var b=parseInt(e,10);e==="-Infinity"?b=Number.NEGATIVE_INFINITY:e==="Infinity"&&(b=Number.POSITIVE_INFINITY),C=yield o.seekRow(h,d,u.ValueType.NUMBER,b,void 0,void 0,a??!1)}else C=yield o.seekRow(h,d,u.ValueType.STRING,e,void 0,void 0,a??!1);break}default:C=yield o.seekRow(h,d,u.ValueType.STRING,r.tableUtils.makeValue(d.type,e,g.timeZone),void 0,void 0,a??!1)}(f=r.grid)===null||f===void 0||f.setFocusRow(C),r.setState({gotoValueError:""})}catch{r.setState({gotoValueError:"invalid input"})}}}})()}handleCancelDownloadTable(){var e;(e=this.tableSaver)===null||e===void 0||e.cancelDownload(),this.setState({isTableDownloading:!1})}handleDownloadCompleted(){this.setState({isTableDownloading:!1,tableDownloadProgress:100,tableDownloadStatus:vn.DOWNLOAD_STATUS.FINISHED})}handleDownloadCanceled(){this.setState({isTableDownloading:!1,tableDownloadProgress:0,tableDownloadStatus:vn.DOWNLOAD_STATUS.CANCELED})}deleteRanges(e){var{model:t}=this.props;this.pending.add(t.delete(e)).catch(r=>{st.isCanceled(r)||de.error("Unable to delete ranges",e,r)})}resetColumnSelection(){if(this.grid!=null){var{isSelectingColumn:e}=this.props;if(e){var{columnAllowedCursor:t}=this.props;this.grid.setState({cursor:t})}else this.grid.setState({cursor:null}),this.setState({hoverSelectColumn:null})}}resetGridViewState(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;this.grid&&(this.grid.clearSelectedRanges(),this.grid.setViewState({left:0,top:0,topOffset:0,leftOffset:0},e))}sendStateChange(){if(this.grid){var{state:e}=this,{state:t}=this.grid,{onStateChange:r}=this.props;r(e,t)}}handleOverflowClose(){this.setState({showOverflowModal:!1})}getColumnBoundingRect(){var e,{metrics:t,shownColumnTooltip:r}=this.state;L(t),L(r);var i=(e=this.gridWrapper)===null||e===void 0?void 0:e.getBoundingClientRect(),a=20;L(i);var{columnHeaderHeight:l,allColumnXs:s,allColumnWidths:o,width:u,columnHeaderMaxDepth:d}=t,h=s.get(r),v=o.get(r);L(h),L(v);var m=i.left+Ae(h+v/2,a,u-a);return{top:i.top+(d-1)*l,left:i.left+Ae(h+v/2,a,u-a),bottom:i.top+d*l,right:i.left+Ae(h+v/2,a,u-a)+1,width:1,height:l,x:m,y:i.top,toJSON:()=>{throw new Error("not implemented")}}}handleGotoRowSelectedRowNumberSubmit(){var{gotoRow:e}=this.state;this.focusRowInGrid(e)}focusRowInGrid(e){var{model:t}=this.props,{rowCount:r}=t;if(this.setState({gotoRow:e}),e===""){this.setState({gotoRowError:"",gotoValueError:""});return}var i=parseInt(e,10);if(i>r||i<-r)this.setState({gotoRowError:"Invalid row index"});else if(i===0){var a;this.setState({gotoRowError:"",gotoValueError:""}),(a=this.grid)===null||a===void 0||a.setFocusRow(0)}else if(i<0){var l;this.setState({gotoRowError:"",gotoValueError:""}),(l=this.grid)===null||l===void 0||l.setFocusRow(i+r)}else{var s;(s=this.grid)===null||s===void 0||s.setFocusRow(i-1),this.setState({gotoRowError:"",gotoValueError:""})}}handleGotoRowSelectedRowNumberChanged(e){var t=e.target.value;this.focusRowInGrid(t)}getColumnTooltip(e,t,r){var{columnHeaderHeight:i,columnHeaderMaxDepth:a,allColumnXs:l,allColumnWidths:s,width:o}=t,u=l.get(e),d=s.get(e);if(u==null||d==null)return null;var h=Math.max(0,u),v=d;u+d>o?v=o-u:u<0&&(v=d-Math.abs(u));var m={position:"absolute",top:(a-1)*i,left:h,width:v,height:i,pointerEvents:"none"},f={clientWidth:1,clientHeight:i,getBoundingClientRect:this.getColumnBoundingRect},g={placement:"bottom",modifiers:{flip:{behavior:["bottom","top"]}}},p=this.getModelColumn(e);if(p==null)return null;var C=r.columns[p];return C==null?null:c.jsx("div",{style:m,children:c.jsx(Jt,{timeout:400,interactive:!0,options:g,ref:this.handleTooltipRef,referenceObject:f,onExited:()=>{this.setState({shownColumnTooltip:null})},children:c.jsx(yS,{model:r,column:C,onStatistics:()=>{var S;(S=this.tooltip)===null||S===void 0||S.update()}})},C.name)})}handleGotoValueSelectedColumnNameChanged(e){var t,{model:r}=this.props,i=(t=this.grid)===null||t===void 0?void 0:t.state.cursorRow;if(i!=null){var a=r.getColumnIndexByName(e),l=me.getColumnByName(r.columns,e);if(a==null||l==null)return;var s=r.valueForCell(a,i),o=me.convertValueToText(s,l.type);this.setState({gotoValueSelectedColumnName:e,gotoValue:o,gotoValueError:""})}this.setState({gotoValueSelectedColumnName:e,gotoValueError:""})}handleGotoValueSelectedFilterChanged(e){this.setState({gotoValueSelectedFilter:e,gotoValueError:""})}handleGotoValueSubmitted(e){var{gotoValue:t}=this.state;this.seekRow(t,e)}render(){var e,t,r=this,i,a,l,{children:s,customFilters:o,getDownloadWorker:u,isSelectingColumn:d,isStuckToBottom:h,isStuckToRight:v,model:m,name:f,onlyFetchVisibleColumns:g,alwaysFetchColumns:p,advancedSettings:C,onAdvancedSettingsChange:S,canDownloadCsv:b,onCreateChart:w,onPartitionAppend:y}=this.props,{metricCalculator:T,metrics:E,isFilterBarShown:P,isSelectingPartition:O,isMenuShown:D,isReady:N,copyOperation:F,focusedFilterBarColumn:A,loadingText:j,loadingScrimProgress:k,loadingSpinnerShown:B,keyHandlers:G,mouseHandlers:W,shownColumnTooltip:z,hoverAdvancedFilter:q,shownAdvancedFilter:V,hoverSelectColumn:I,quickFilters:_,advancedFilters:H,partition:X,partitionFilters:Q,partitionTable:ne,partitionColumn:oe,searchFilter:ie,selectDistinctColumns:ae,movedColumns:Oe,movedRows:Le,formatter:Ze,conditionalFormats:Je,conditionalFormatPreview:Ye,conditionalFormatEditIndex:Ue,sorts:et,reverseType:De,customColumns:it,selectedRanges:mt,isTableDownloading:$t,tableDownloadStatus:Pt,tableDownloadProgress:Rr,tableDownloadEstimatedTime:tr,showSearchBar:_t,searchValue:ot,selectedSearchColumns:rr,invertSearchColumns:Wt,aggregationSettings:pt,selectedAggregation:Ht,rollupConfig:Rt,openOptions:Ct,pendingSavePromise:zt,pendingSaveError:Dt,pendingRowCount:Hr,pendingDataErrors:Dr,pendingDataMap:gr,toastMessage:Kt,frozenColumns:pr,columnHeaderGroups:Ur,showOverflowModal:xn,overflowText:ni,overflowButtonTooltipProps:Ln,expandCellTooltipProps:kn,linkHoverTooltipProps:jn,isGotoShown:_e,gotoRow:Vi,gotoRowError:ii,gotoValueError:Bi,gotoValueSelectedColumnName:hn,gotoValue:Gi,gotoValueSelectedFilter:Cr}=this.state;if(!N)return null;var Vr=this.getTheme(),$i=this.getCachedFilter(o,_,H,Q,ie),ai=T.getUserColumnWidths(),Ja=this.getCachedStateOverride(I,P,d,k,_,H,et,De,Rt,D),el=E?E.top:0,tl=E?E.bottomViewport:0,Wi=null,zi=null;g&&(Wi=E?E.left:0,zi=E?E.right:0);var rl=E!=null&&E.width>0&&E.height>0,Ki=((e=Rt==null||(t=Rt.columns)===null||t===void 0?void 0:t.length)!==null&&e!==void 0?e:0)>0,Yi=null,nl=E?Math.min(Math.max(Or.minDebounce,Math.round(E.rowCount/200)),Or.maxDebounce):Or.maxDebounce;if(P&&A!=null&&E!=null){var{gridX:il,gridY:al,allColumnXs:Fr,allColumnWidths:li,width:Cc}=E,zs=Fr.get(A),Ks=li.get(A);if(zs!=null&&Ks!=null){var ll,sl,ol,Ys=il+zs,Sc=al-((ll=Vr.filterBarHeight)!==null&&ll!==void 0?ll:0),bc=Ks+1,wc=((sl=Vr.filterBarHeight)!==null&&sl!==void 0?sl:0)-1,yc={top:Sc,left:Ys,minWidth:Math.min(bc,Cc-Ys),height:wc},ul="",qs=!0,dl=this.getModelColumn(A);L(dl);var hl=_.get(dl),Xs=H.get(dl);hl!=null&&(ul=hl.text,qs=hl.filter!=null);var Tc=_.size!==0||H.size!==0;Yi=c.jsx(xp,{ref:this.filterInputRef,style:yc,className:re({error:!qs,active:ul!==""||Xs!=null,"iris-grid-has-filter":Tc}),isAdvancedFilterSet:Xs!=null,onAdvancedFiltersTriggered:()=>{this.setState({shownAdvancedFilter:A})},onChange:this.handleFilterBarChange,onDone:this.handleFilterBarDone,onTab:this.handleFilterBarTab,onContextMenu:(ol=this.grid)===null||ol===void 0?void 0:ol.handleContextMenu,debounceMs:nl,value:ul},A)}}var Qs=null;if(j!=null){var Ec=c.jsxs("div",{className:"iris-grid-loading-status",children:[c.jsx("div",{className:re("iris-grid-loading-status-bar",{show:B}),children:j}),c.jsxs("button",{type:"button",onClick:this.handleCancel,className:re("iris-grid-btn-cancel",{show:B}),children:[c.jsx(le,{icon:Es,transform:"down-1"}),"Cancel"]})]}),Oc=E?E.gridY:0;Qs=c.jsx("div",{className:"iris-grid-loading",style:{top:Oc},children:Ec})}var Zs=null;if(z!=null&&E){var cl;Zs=this.getColumnTooltip(z,E,m),(cl=this.tooltip)===null||cl===void 0||cl.update()}var Js=[];if(E&&P)for(var{gridX:Pc,gridY:Rc,visibleColumns:eo,allColumnXs:Dc,allColumnWidths:Fc}=E,{filterBarHeight:vl}=Vr,Nc=function(){var $e=eo[ml],Br=Dc.get($e),Gr=Fc.get($e),si=r.getModelColumn($e);if(si!=null){var gl=m.isFilterable(si);if(gl&&Br!=null&&Gr!=null&&Gr>0){var pl=Pc+Br+Gr-24,_n=Rc-(vl??0)+2,oi={position:"absolute",top:_n,left:pl},Cl=H.get(si),qi=Cl!=null,ui=$e===q||$e===A||qi,Sl=c.jsx("div",{className:re("advanced-filter-button-container",{hidden:!ui}),style:oi,children:ui&&c.jsx(Y,{kind:"ghost",className:re("btn-link-icon advanced-filter-button",{"filter-set":qi}),onClick:()=>{r.setState({shownAdvancedFilter:$e})},onContextMenu:bl=>{var wl;(wl=r.grid)===null||wl===void 0||wl.handleContextMenu(bl)},onMouseEnter:()=>{r.setState({hoverAdvancedFilter:$e})},onMouseLeave:()=>{r.setState({hoverAdvancedFilter:null})},children:c.jsxs("div",{className:"fa-layers",children:[c.jsx(le,{icon:Cs,className:"filter-solid"}),c.jsx(le,{icon:ya,className:"filter-light"})]})})},$e);Js.push(Sl)}}},ml=0;ml<eo.length;ml+=1)Nc();var to=[];if(E)for(var{gridX:ro,visibleColumns:no,allColumnXs:Ic,allColumnWidths:Ac,columnHeaderHeight:io}=E,Mc=function(){var $e=no[fl],Br=Ic.get($e),Gr=Ac.get($e);if(Br!=null&&Gr!=null&&Gr>0){var si=ro+Br,gl=ro+Br+Gr-20,pl=P?{position:"absolute",top:io,left:gl,width:20,height:Vr.filterBarHeight}:{position:"absolute",top:0,left:si,width:Gr,height:io},_n=r.getModelColumn($e);if(_n!=null){var oi=m.columns[_n];if(oi==null)return de.warn("Column does not exist at index ".concat(_n," for column array of length ").concat(m.columns.length)),"continue";var Cl=H.get(_n),{options:qi}=Cl||{},ui=x.getSortForColumn(m.sort,oi.name),Sl=ui?ui.direction:null,bl=c.jsx("div",{className:"advanced-filter-menu-container",style:pl,children:c.jsx(eh,{className:"advanced-filter-menu-popper",onEntered:r.getAdvancedMenuOpenedHandler($e),onExited:()=>{r.handleAdvancedMenuClosed($e)},isShown:V===$e,interactive:!0,closeOnBlur:!0,options:{positionFixed:!0},children:r.getCachedAdvancedFilterMenuActions(m,oi,qi,Sl,Ze)})},$e);to.push(bl)}}},fl=0;fl<no.length;fl+=1)var xc=Mc();var ao=this.getCachedOptionItems(w!==void 0&&m.isChartBuilderAvailable,m.isCustomColumnsAvailable,m.isFormatColumnsAvailable,m.isRollupAvailable,m.isTotalsAvailable||Ki,m.isSelectDistinctAvailable,m.isExportAvailable,this.toggleFilterBarAction,this.toggleSearchBarAction,this.toggleGotoRowAction,P,_t,b,this.isTableSearchAvailable(),_e,C.size>0),lo=this.getCachedHiddenColumns(T,ai),Lc=Ct.map(ft=>{switch(ft.type){case Fe.CHART_BUILDER:return c.jsx(Cb,{model:m,onChange:this.handleChartChange,onSubmit:this.handleChartCreate},Fe.CHART_BUILDER);case Fe.VISIBILITY_ORDERING_BUILDER:return c.jsx(Ww,{model:m,movedColumns:Oe,hiddenColumns:lo,columnHeaderGroups:Ur,onColumnVisibilityChanged:this.handleColumnVisibilityChanged,onReset:this.handleColumnVisibilityReset,onMovedColumnsChanged:this.handleMovedColumnsChanged,onColumnHeaderGroupChanged:this.handleHeaderGroupsChanged},Fe.VISIBILITY_ORDERING_BUILDER);case Fe.CONDITIONAL_FORMATTING:return c.jsx(my,{rules:Je,onChange:this.handleConditionalFormatsChange,onCreate:this.handleConditionalFormatCreate,onSelect:this.handleConditionalFormatEdit});case Fe.CONDITIONAL_FORMATTING_EDIT:return L(m.columns),L(this.handleConditionalFormatEditorUpdate),c.jsx(Ky,{dh:m.dh,columns:m.columns,rule:Ye,onUpdate:this.handleConditionalFormatEditorUpdate,onSave:this.handleConditionalFormatEditorSave,onCancel:this.handleConditionalFormatEditorCancel});case Fe.CUSTOM_COLUMN_BUILDER:return c.jsx(Ab,{model:m,customColumns:it,onSave:this.handleUpdateCustomColumns,onCancel:this.handleMenuBack},Fe.CUSTOM_COLUMN_BUILDER);case Fe.ROLLUP_ROWS:return c.jsx(kb,{model:m,onChange:this.handleRollupChange,config:Rt},Fe.ROLLUP_ROWS);case Fe.AGGREGATIONS:return c.jsx(_S,{settings:pt,isRollup:Ki,onChange:this.handleAggregationsChange,onEdit:this.handleAggregationEdit});case Fe.AGGREGATION_EDIT:return Ht&&c.jsx(GS,{aggregation:Ht,columns:m.originalColumns,onChange:this.handleAggregationChange});case Fe.TABLE_EXPORTER:return c.jsx(vn,{model:m,name:f,userColumnWidths:ai,movedColumns:Oe,isDownloading:$t,tableDownloadStatus:Pt,tableDownloadProgress:Rr,tableDownloadEstimatedTime:tr??void 0,onDownload:this.handleDownloadTable,onDownloadStart:this.handleDownloadTableStart,onCancel:this.handleCancelDownloadTable,selectedRanges:mt},Fe.TABLE_EXPORTER);case Fe.SELECT_DISTINCT:return c.jsx(oy,{model:m,selectDistinctColumns:ae,onChange:this.handleSelectDistinctChanged});case Fe.ADVANCED_SETTINGS:return c.jsx(ks,{items:C,onChange:S});default:throw Error("Unexpected option type ".concat(ft.type))}});return c.jsxs("div",{className:"iris-grid",role:"presentation",children:[c.jsxs("div",{className:"iris-grid-column",children:[s!=null&&c.jsx("div",{className:"iris-grid-bar",children:s}),c.jsx(vr,{in:O,timeout:ze.transitionSlowMs,classNames:"iris-grid-bar-horizontal",onEnter:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExit:this.handleAnimationStart,onExited:this.handleAnimationEnd,mountOnEnter:!0,unmountOnExit:!0,children:c.jsx("div",{className:"iris-grid-partition-selector-wrapper iris-grid-bar iris-grid-bar-primary",children:ne&&oe&&X!=null&&c.jsx(ny,{dh:m.dh,table:ne,getFormattedString:(ft,$e,Br)=>m.displayString(ft,$e,Br),column:oe,partition:X,onChange:this.handlePartitionChange,onFetchAll:this.handlePartitionFetchAll,onAppend:y!==void 0?this.handlePartitionAppend:void 0,onDone:this.handlePartitionDone})})}),c.jsx(vr,{in:_t,timeout:ze.transitionSlowMs,classNames:"iris-grid-bar-horizontal",onEnter:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExit:this.handleAnimationStart,onExited:this.handleAnimationEnd,mountOnEnter:!0,unmountOnExit:!0,children:c.jsx("div",{className:"iris-grid-bar",children:c.jsx(ua,{value:ot,selectedColumns:rr,invertSelection:Wt,onChange:this.handleCrossColumnSearch,columns:m.columns,ref:this.crossColumnRef})})}),c.jsxs("div",{className:"grid-wrapper",ref:ft=>{this.gridWrapper=ft},children:[c.jsx(Ig,{ref:ft=>{this.grid=ft},isStickyBottom:!He(m)||!m.isEditable,isStuckToBottom:h,isStuckToRight:v,metricCalculator:T,model:m,keyHandlers:G,mouseHandlers:W,movedColumns:Oe,movedRows:Le,onError:this.handleGridError,onViewChanged:this.handleViewChanged,onSelectionChanged:this.handleSelectionChanged,onMovedColumnsChanged:this.handleMovedColumnsChanged,renderer:this.renderer,stateOverride:Ja,theme:Vr}),c.jsx(Yy,{isOpen:xn,text:ni,onClose:this.handleOverflowClose}),rl&&c.jsx(iS,{model:m,modelColumns:m.columns,top:el,bottom:tl,left:Wi,right:zi,filter:$i,formatter:Ze,sorts:et,reverseType:De,movedColumns:Oe,customColumns:it,hiddenColumns:lo,alwaysFetchColumns:this.getAlwaysFetchColumns(p,m.columns,Oe,m.floatingLeftColumnCount,m.floatingRightColumnCount,(i=this.grid)===null||i===void 0||(a=i.state.draggingColumn)===null||a===void 0?void 0:a.range),formatColumns:this.getCachedPreviewFormatColumns(m.dh,m.columns,Je,Ye,((l=Ct[Ct.length-1])===null||l===void 0?void 0:l.type)===Fe.CONDITIONAL_FORMATTING_EDIT?Ue??void 0:void 0),rollupConfig:this.getModelRollupConfig(m.originalColumns,Rt,pt),totalsConfig:this.getModelTotalsConfig(m.columns,Rt,pt),selectDistinctColumns:ae,pendingRowCount:Hr,pendingDataMap:gr,frozenColumns:pr,columnHeaderGroups:Ur}),!D&&c.jsx("div",{className:"grid-settings-button",children:c.jsx(Y,{kind:"ghost","data-testid":"btn-iris-grid-settings-button-".concat(f),onClick:this.handleMenu,icon:c.jsx(le,{icon:gm,transform:"up-1"}),tooltip:"Table Options"})}),Yi,Qs,Js,Zs,to,Ln&&this.getOverflowButtonTooltip(Ln),kn&&this.getExpandCellTooltip(kn),jn&&this.getLinkHoverTooltip(jn)]}),c.jsx(Qy,{ref:this.gotoRowRef,model:m,isShown:_e,gotoRow:Vi,gotoRowError:ii,gotoValueError:Bi,onGotoRowSubmit:this.handleGotoRowSelectedRowNumberSubmit,onGotoRowNumberChanged:this.handleGotoRowSelectedRowNumberChanged,onClose:this.handleGotoRowClosed,onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:()=>{this.handleAnimationStart(),this.focus()},onExited:this.handleAnimationEnd,gotoValueSelectedColumnName:hn,gotoValue:Gi,gotoValueFilter:Cr,onGotoValueSelectedColumnNameChanged:this.handleGotoValueSelectedColumnNameChanged,onGotoValueSelectedFilterChanged:this.handleGotoValueSelectedFilterChanged,onGotoValueChanged:this.handleGotoValueChanged,onGotoValueSubmit:this.handleGotoValueSubmitted}),c.jsx(mp,{error:Dt,isSaving:zt!=null,saveTooltip:"Commit (".concat(this.commitAction.shortcut.getDisplayText(),")"),discardTooltip:"Discard (".concat(this.discardAction.shortcut.getDisplayText(),")"),pendingDataErrors:Dr,pendingDataMap:gr,onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:this.handleAnimationStart,onExited:this.handleAnimationEnd,onSave:this.handlePendingCommitClicked,onDiscard:this.handlePendingDiscardClicked}),c.jsx(eS,{children:Kt}),c.jsx(Ip,{model:m,copyOperation:F??void 0,onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:this.handleAnimationStart,onExited:this.handleAnimationEnd}),c.jsx(Lt,{dh:m.dh,ref:ft=>{this.tableSaver=ft},getDownloadWorker:u,onDownloadCompleted:this.handleDownloadCompleted,onDownloadCanceled:this.handleDownloadCanceled,onDownloadProgressUpdate:this.handleDownloadProgressUpdate,isDownloading:Pt===vn.DOWNLOAD_STATUS.DOWNLOADING,formatter:Ze})]}),c.jsx(vr,{in:D,timeout:ze.transitionMidMs,classNames:"slide-left",onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:this.handleAnimationStart,onExited:this.handleAnimationEnd,mountOnEnter:!0,unmountOnExit:!0,children:c.jsx("div",{className:"table-sidebar",children:c.jsxs(Fv,{children:[c.jsx(ho,{title:"Table Options",onClose:this.handleMenuClose,children:c.jsx(th,{onSelect:ft=>this.handleMenuSelect(ao[ft]),items:ao})}),Lc.map((ft,$e)=>c.jsx(ho,{title:Ct[$e].title,onBack:this.handleMenuBack,onClose:this.handleMenuClose,children:ft},Ct[$e].type))]})})}),c.jsx(he,{actions:this.contextActions})]})}}se(Or,"minDebounce",150);se(Or,"maxDebounce",500);se(Or,"loadingSpinnerDelay",800);se(Or,"defaultProps",{children:null,advancedFilters:xr,advancedSettings:xr,alwaysFetchColumns:Re,conditionalFormats:Re,customColumnFormatMap:xr,isFilterBarShown:!1,applyInputFiltersOnInit:!1,movedColumns:Re,movedRows:Re,inputFilters:Re,customFilters:Re,onCreateChart:void 0,onColumnSelected:()=>{},onDataSelected:()=>{},onError:()=>{},onStateChange:()=>{},onAdvancedSettingsChange:()=>{},partition:null,partitionColumn:null,quickFilters:xr,selectDistinctColumns:Re,sorts:Re,reverseType:x.REVERSE_TYPE.NONE,customColumns:Re,aggregationSettings:qh,rollupConfig:void 0,userColumnWidths:xr,userRowHeights:xr,onSelectionChanged:()=>{},isSelectingColumn:!1,isSelectingPartition:!1,isStuckToBottom:!1,isStuckToRight:!1,columnSelectionValidator:null,columnAllowedCursor:null,columnNotAllowedCursor:null,name:"table",onlyFetchVisibleColumns:!0,showSearchBar:!1,searchValue:"",selectedSearchColumns:null,invertSearchColumns:!0,onContextMenu:()=>Re,pendingDataMap:xr,getDownloadWorker:tv.getServiceWorker,settings:{timeZone:"America/New_York",defaultDateTimeFormat:Tn.FULL_DATE_FORMAT,showTimeZone:!1,showTSeparator:!0,truncateNumbersWithPound:!1,formatter:Re,decimalFormatOptions:Z.shape({defaultFormatString:Z.string}),integerFormatOptions:Z.shape({defaultFormatString:Z.string})},canCopy:!0,canDownloadCsv:!0,frozenColumns:null,theme:Ah,canToggleSearch:!0});const Xh=Or;function Ll(n,e,t){return e=a0(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function a0(n){var e=l0(n,"string");return typeof e=="symbol"?e:String(e)}function l0(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class s0 extends Error{constructor(e,t){super("".concat(t," can't be empty (on pending row ").concat(e+1,")")),Ll(this,"isMissingKey",!0),Ll(this,"rowIndex",void 0),Ll(this,"columnName",void 0),this.rowIndex=e,this.columnName=t}}const o0=s0;function Zu(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 ha(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Zu(Object(t),!0).forEach(function(r){Ee(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Zu(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Ju(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function qr(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Ju(a,r,i,l,s,"next",o)}function s(o){Ju(a,r,i,l,s,"throw",o)}l(void 0)})}}function Ee(n,e,t){return e=u0(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function u0(n){var e=d0(n,"string");return typeof e=="symbol"?e:String(e)}function d0(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ve=fe.module("IrisGridTableModel"),h0=150,c0=0,v0=[];function bn(n){return n.table!==void 0}class qn extends ce{seekRow(e,t,r,i,a,l,s){throw new Error("Method not implemented.")}export(){throw new Error("Method not implemented.")}columnStatistics(e){throw new Error("Method not implemented.")}get customColumns(){return[]}set customColumns(e){throw new Error("Method not implemented.")}get formatColumns(){return[]}set formatColumns(e){throw new Error("Method not implemented.")}updateFrozenColumns(e){throw new Error("Method not implemented.")}get rollupConfig(){throw new Error("Method not implemented.")}set rollupConfig(e){throw new Error("Method not implemented.")}get selectDistinctColumns(){throw new Error("Method not implemented.")}set selectDistinctColumns(e){throw new Error("Method not implemented.")}get columns(){return this.table.columns}constructor(e,t){var r,i,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Pr(e),l=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e),Ee(this,"dh",void 0),Ee(this,"irisGridUtils",void 0),Ee(this,"tableUtils",void 0),Ee(this,"irisFormatter",void 0),Ee(this,"inputTable",void 0),Ee(this,"subscription",void 0),Ee(this,"table",void 0),Ee(this,"viewport",void 0),Ee(this,"viewportData",void 0),Ee(this,"formattedStringData",void 0),Ee(this,"pendingStringData",void 0),Ee(this,"isSaveInProgress",void 0),Ee(this,"totalsTable",void 0),Ee(this,"totalsTablePromise",void 0),Ee(this,"totals",void 0),Ee(this,"totalsDataMap",void 0),Ee(this,"pendingNewDataMap",void 0),Ee(this,"pendingNewRowCount",0),Ee(this,"_columnHeaderGroupMap",new Map),Ee(this,"columnHeaderParentMap",new Map),Ee(this,"_columnHeaderMaxDepth",null),Ee(this,"_columnHeaderGroups",[]),Ee(this,"_movedColumns",null),Ee(this,"getMemoizedInitialMovedColumns",Se(s=>{var o;if(!s)return[];var u=[],{groupMap:d}=me.parseColumnHeaderGroups(this,(o=s?.columnGroups)!==null&&o!==void 0?o:[]),h=(y,T)=>{var E=this.getColumnIndexByName(y);if(E==null)throw new Error("Unknown layout hint column: ".concat(y));var P=K.getVisibleIndex(E,u);u=K.moveItem(P,T,u)},v=(y,T)=>{var E=d.get(y);if(E==null)throw new Error("Unknown layout hint group: ".concat(y));var P=E.getVisibleRange(u);u=K.moveRange(P,T,u)},{frontColumns:m=[],backColumns:f=[],frozenColumns:g=[]}=s;if(m.length||f.length||g.length){var p=new Set,C=0;g.forEach(y=>{if(p.has(y))throw new Error("Column specified in multiple layout hints: ".concat(y));h(y,C),C+=1}),m.forEach(y=>{if(p.has(y))throw new Error("Column specified in multiple layout hints: ".concat(y));h(y,C),C+=1});var S=this.columnMap.size-1;f.forEach(y=>{if(p.has(y))throw new Error("Column specified in multiple layout hints: ".concat(y));h(y,S),S-=1})}var b=s?.columnGroups;if(b){var w=[...d.values()];w.sort((y,T)=>y.depth-T.depth),w.forEach(y=>{var T=y.children[0],E=this.getColumnIndexByName(T),P;if(E!=null)P=K.getVisibleIndex(E,u);else{var O=d.get(T);if(!O)throw new Error("Unknown column ".concat(T," in group ").concat(y.name));var D=O.getVisibleRange(u);[,P]=D}for(var N=1;N<y.children.length;N+=1){var F=y.children[N],A=d.get(F),j=this.getColumnIndexByName(F);if(A){var k=A.getVisibleRange(u)[0]<P,B=k?P-A.childIndexes.length+1:P+1;v(F,B),P=B+A.childIndexes.length-1}else if(j!=null){var G=K.getVisibleIndex(j,u)<P,W=G?P:P+1;h(F,W),P=W}}})}return this._movedColumns=u,u})),Ee(this,"getMemoizedInitialColumnHeaderGroups",Se(s=>{var o;return me.parseColumnHeaderGroups(this,(o=s?.columnGroups)!==null&&o!==void 0?o:[]).groups})),Ee(this,"getMemoizedColumnMap",Se(s=>{var o=new Map;return s.forEach(u=>o.set(u.name,u)),o})),Ee(this,"getColumnIndicesByNameMap",Se(s=>{var o=new Map;return s.forEach((u,d)=>{var{name:h}=u;return o.set(h,d)}),o})),Ee(this,"setViewport",wa((s,o,u)=>{if(o<s){Ve.error("Invalid viewport",s,o);return}var{viewport:d}=this;if(d!=null&&d.top===s&&d.bottom===o&&d.columns===u){Ve.debug2("Ignoring duplicate viewport",d);return}this.viewport={top:s,bottom:o,columns:u},Ve.debug2("setViewport",this.viewport),this.applyViewport()},h0)),Ee(this,"applyViewport",wa(()=>{if(this.viewport){Ve.debug2("applyViewport",this.viewport);var{top:s,bottom:o,columns:u}=this.viewport,[d,h]=this.getCachedViewportRowRange(s,o);this.applyBufferedViewport(d,h,u)}},c0,{leading:!1})),Ee(this,"getCachedFormattedString",mr((s,o,u,d,h)=>s.getFormattedString(o,u,d,h),{max:1e4})),Ee(this,"getCachedCustomColumnFormatFlag",mr(kr.isCustomColumnFormatDefined,{max:1e4})),Ee(this,"getCachedViewportRowRange",Se((s,o)=>{var u=o-s,d=Math.max(0,s-u*qn.ROW_BUFFER_PAGES),h=o+u*qn.ROW_BUFFER_PAGES;return[d,h]})),Ee(this,"getCachedPendingErrors",Se((s,o,u)=>{var d=new Map;return s.forEach((h,v)=>{for(var{data:m}=h,f=0;f<u;f+=1)if(!m.has(f)){var g;d.has(v)||d.set(v,[]),(g=d.get(v))===null||g===void 0||g.push(new o0(v,o[f].name))}}),d})),this.handleTableDisconnect=this.handleTableDisconnect.bind(this),this.handleTableReconnect=this.handleTableReconnect.bind(this),this.handleTableUpdate=this.handleTableUpdate.bind(this),this.handleTotalsUpdate=this.handleTotalsUpdate.bind(this),this.handleRequestFailed=this.handleRequestFailed.bind(this),this.handleCustomColumnsChanged=this.handleCustomColumnsChanged.bind(this),this.dh=e,this.irisFormatter=a,this.irisGridUtils=new me(e),this.inputTable=l,this.subscription=null,this.table=t,this.tableUtils=new x(e),this.viewport=null,this.viewportData=null,this.formattedStringData=[],this.pendingStringData=[],this.isSaveInProgress=!1,this.totalsTable=null,this.totalsTablePromise=null,this.totals=null,this.totalsDataMap=null,this.pendingNewDataMap=new Map,this.pendingNewRowCount=0,this.columnHeaderGroups=me.parseColumnHeaderGroups(this,(r=(i=this.layoutHints)===null||i===void 0?void 0:i.columnGroups)!==null&&r!==void 0?r:[]).groups}close(){this.table.close(),this.totalsTable!==null&&this.totalsTable.close(),this.totalsTablePromise!==null&&this.totalsTablePromise.cancel()}startListening(){super.startListening();var{dh:e}=this;this.table.addEventListener(e.Table.EVENT_DISCONNECT,this.handleTableDisconnect),this.table.addEventListener(e.Table.EVENT_RECONNECT,this.handleTableReconnect),this.table.addEventListener(e.Table.EVENT_UPDATED,this.handleTableUpdate),this.table.addEventListener(e.Client.EVENT_REQUEST_FAILED,this.handleRequestFailed),this.table.addEventListener(e.Table.EVENT_CUSTOMCOLUMNSCHANGED,this.handleCustomColumnsChanged),this.totalsTable!=null&&this.addTotalsListeners(this.totalsTable),this.applyViewport()}stopListening(){super.stopListening();var{dh:e}=this;this.table.removeEventListener(e.Table.EVENT_DISCONNECT,this.handleTableDisconnect),this.table.removeEventListener(e.Table.EVENT_RECONNECT,this.handleTableReconnect),this.table.removeEventListener(e.Table.EVENT_UPDATED,this.handleTableUpdate),this.table.removeEventListener(e.Client.EVENT_REQUEST_FAILED,this.handleRequestFailed),this.table.removeEventListener(e.Table.EVENT_CUSTOMCOLUMNSCHANGED,this.handleCustomColumnsChanged),this.totalsTable!=null&&this.removeTotalsListeners(this.totalsTable),this.closeSubscription()}addTotalsListeners(e){var{dh:t}=this;e.addEventListener(t.Table.EVENT_UPDATED,this.handleTotalsUpdate),e.setViewport(0,0)}removeTotalsListeners(e){var{dh:t}=this;e.removeEventListener(t.Table.EVENT_UPDATED,this.handleTotalsUpdate)}handleTableDisconnect(){this.dispatchEvent(new je(ce.EVENT.DISCONNECT))}handleTableReconnect(){this.dispatchEvent(new je(ce.EVENT.RECONNECT))}handleTableUpdate(e){this.copyViewportData(e.detail),this.dispatchEvent(new je(ce.EVENT.UPDATED))}handleTotalsUpdate(e){this.copyTotalsData(e.detail),this.dispatchEvent(new je(ce.EVENT.UPDATED))}handleRequestFailed(e){this.dispatchEvent(new je(ce.EVENT.REQUEST_FAILED,e))}handleCustomColumnsChanged(){this.dispatchEvent(new je(ce.EVENT.COLUMNS_CHANGED,{detail:this.columns}))}get rowCount(){var e,t,r;return this.table.size+this.pendingNewRowCount+((e=(t=this.totals)===null||t===void 0||(r=t.operationOrder)===null||r===void 0?void 0:r.length)!==null&&e!==void 0?e:0)}get pendingDataErrors(){var e,t;return this.getCachedPendingErrors(this.pendingNewDataMap,this.columns,(e=(t=this.inputTable)===null||t===void 0?void 0:t.keyColumns.length)!==null&&e!==void 0?e:0)}get pendingDataMap(){return this.pendingNewDataMap}set pendingDataMap(e){e!==this.pendingNewDataMap&&(e.forEach((t,r)=>{if(!me.isValidIndex(r))throw new Error("Invalid rowIndex ".concat(r));var{data:i}=t;i.forEach((a,l)=>{if(!me.isValidIndex(l))throw new Error("Invalid columnIndex ".concat(l))})}),this.pendingNewDataMap=e,this.pendingNewRowCount=Math.max(this.pendingNewRowCount,this.maxPendingDataRow),this.formattedStringData=[],this.dispatchEvent(new je(ce.EVENT.PENDING_DATA_UPDATED)))}get pendingRowCount(){return this.pendingNewRowCount}set pendingRowCount(e){e!==this.pendingNewRowCount&&(this.pendingNewRowCount=Math.max(0,e,this.maxPendingDataRow),this.dispatchEvent(new je(ce.EVENT.UPDATED)))}get maxPendingDataRow(){return this.pendingNewDataMap.size>0?Math.max(...this.pendingNewDataMap.keys())+1:0}get columnCount(){return this.columns.length}get floatingBottomRowCount(){var e,t,r;return this.totals!=null&&this.totals.showOnTop?0:(e=(t=this.totals)===null||t===void 0||(r=t.operationOrder)===null||r===void 0?void 0:r.length)!==null&&e!==void 0?e:0}get floatingTopRowCount(){var e,t,r;return this.totals!=null&&this.totals.showOnTop&&(e=(t=this.totals)===null||t===void 0||(r=t.operationOrder)===null||r===void 0?void 0:r.length)!==null&&e!==void 0?e:0}get isChartBuilderAvailable(){return!0}get isTotalsAvailable(){return this.table.getTotalsTable!=null}get isEditable(){return!this.isSaveInProgress&&this.inputTable!=null}cacheFormattedValue(e,t,r){this.formattedStringData[e]==null&&(this.formattedStringData[e]=[]),this.formattedStringData[e][t]=r}cachePendingValue(e,t,r){this.pendingStringData[e]==null&&(this.pendingStringData[e]=[]),this.pendingStringData[e][t]=r}clearPendingValue(e,t){var r=this.pendingStringData[e];r!=null&&delete r[t]}textValueForCell(e,t){var r,i;if(((r=this.pendingStringData[e])===null||r===void 0?void 0:r[t])!==void 0)return this.pendingStringData[e][t];if(((i=this.formattedStringData[e])===null||i===void 0?void 0:i[t])===void 0){var a,l=this.valueForCell(e,t);if(l===null)return null;if(l===void 0)return;var s=(a=this.totalsColumn(e,t))!==null&&a!==void 0?a:this.columns[e],o=this.getCachedCustomColumnFormatFlag(this.formatter,s.name,s.type),u;if(!o){var d=this.formatForCell(e,t);d?.formatString!=null&&(u=d)}var h=this.displayString(l,s.type,s.name,u);this.cacheFormattedValue(e,t,h)}return this.formattedStringData[e][t]}textForCell(e,t){var r,i=this.textValueForCell(e,t);if(i==null&&this.isKeyColumn(e)){var a=this.pendingRow(t);if(a!=null&&this.pendingDataMap.has(a))return"*"}if(x.isTextType((r=this.columns[e])===null||r===void 0?void 0:r.type)){if(i===null)return"null";if(i==="")return"empty"}return i??""}truncationCharForCell(e){var t=this.columns[e],{type:r}=t;if(x.isNumberType(r)&&this.formatter.truncateNumbersWithPound)return"#"}colorForCell(e,t,r){var i=this.dataForCell(e,t);if(i){var{format:a,value:l}=i;if(l==null||l==="")return L(r.nullStringColor),r.nullStringColor;if(a&&a.color)return a.color;if(this.isPendingRow(t))return L(r.pendingTextColor),r.pendingTextColor;if(l!=null){var s,o=(s=this.totalsColumn(e,t))!==null&&s!==void 0?s:this.columns[e];if(x.isDateType(o.type)||o.name==="Date")return L(r.dateColor),r.dateColor;if(x.isNumberType(o.type))return l>0?(L(r.positiveNumberColor),r.positiveNumberColor):l<0?(L(r.negativeNumberColor),r.negativeNumberColor):(L(r.zeroNumberColor),r.zeroNumberColor)}}else if(this.isPendingRow(t)&&this.isKeyColumn(e))return L(r.errorTextColor),r.errorTextColor;return r.textColor}backgroundColorForCell(e,t){var r,i;return(r=(i=this.formatForCell(e,t))===null||i===void 0?void 0:i.backgroundColor)!==null&&r!==void 0?r:null}textAlignForCell(e){var t=this.columns[e],{type:r}=t;return x.isNumberType(r)?"right":x.isDateType(r)||t.name==="Date"?"center":"left"}dataBarOptionsForCell(e,t,r){var i,a,l,s,o=this.formatForCell(e,t);L(o);var{axis:u,direction:d,max:h,min:v,valuePlacement:m,value:f,marker:g}=o.formatDataBar,{positiveColor:p,negativeColor:C,markerColor:S,opacity:b}=o.formatDataBar;p=(i=p)!==null&&i!==void 0?i:r.positiveBarColor,C=(a=C)!==null&&a!==void 0?a:r.negativeBarColor;var w=(l=o.color)!==null&&l!==void 0?l:f>=0?p:C;w.includes(",")&&(w=w.split(",")),S=(s=S)!==null&&s!==void 0?s:r.markerBarColor,b=m.toLowerCase()==="overlap"?.5:b;var y={axis:u.toLowerCase(),direction:d.toUpperCase(),columnMax:h,columnMin:v,opacity:b,color:w,valuePlacement:m.toLowerCase(),value:f,markers:[{value:g,color:S}]};return y}renderTypeForCell(e,t){var r=this.formatForCell(e,t);return r?.formatDataBar!=null?"dataBar":"text"}textForColumnHeader(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=this.columnAtDepth(e,t);return Pl(r)?r.isNew?"":r.name:r?.name}colorForColumnHeader(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=this.columnAtDepth(e,t);if(Pl(r)){var i;return(i=r.color)!==null&&i!==void 0?i:null}return null}getColumnHeaderGroup(e,t){var r=this.columnAtDepth(e,t);if(Pl(r))return r}getColumnHeaderParentGroup(e,t){var r,i;return this.columnHeaderParentMap.get((r=(i=this.columnAtDepth(e,t))===null||i===void 0?void 0:i.name)!==null&&r!==void 0?r:"")}columnAtDepth(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;if(r===0)return this.columns[e];var i=(t=this.columns[e])===null||t===void 0?void 0:t.name,a=this.columnHeaderParentMap.get(i);if(a){for(var l=a.depth;l<r;){if(a=this.columnHeaderParentMap.get(a.name),!a)return;l=a.depth}if(a.depth===r)return a}}textForRowFooter(e){var t=this.totalsRow(e);return t!=null&&this.totals?this.totals.operationOrder[t]:""}get initialMovedColumns(){var e;return this.getMemoizedInitialMovedColumns((e=this.layoutHints)!==null&&e!==void 0?e:void 0)}get initialMovedRows(){return v0}get initialColumnHeaderGroups(){var e;return this.getMemoizedInitialColumnHeaderGroups((e=this.layoutHints)!==null&&e!==void 0?e:void 0)}get columnMap(){return this.getMemoizedColumnMap(this.table.columns)}get columnHeaderMaxDepth(){var e;return(e=this._columnHeaderMaxDepth)!==null&&e!==void 0?e:1}set columnHeaderMaxDepth(e){this._columnHeaderMaxDepth=e}get columnHeaderGroupMap(){return this._columnHeaderGroupMap}get columnHeaderGroups(){return this._columnHeaderGroups}set columnHeaderGroups(e){if(e!==this._columnHeaderGroups){var{groups:t,maxDepth:r,parentMap:i,groupMap:a}=me.parseColumnHeaderGroups(this,e??this.initialColumnHeaderGroups);this._columnHeaderGroups=t,this.columnHeaderMaxDepth=r,this.columnHeaderParentMap=i,this._columnHeaderGroupMap=a}}get groupedColumns(){return[]}row(e){var t,r,i,a,l,s,o,u,d,h,v=(t=(r=this.totals)===null||r===void 0||(i=r.operationOrder)===null||i===void 0?void 0:i.length)!==null&&t!==void 0?t:0,m=(a=(l=this.totals)===null||l===void 0?void 0:l.showOnTop)!==null&&a!==void 0?a:!1,f=this.totalsRow(e);if(f!=null){var g,p,C,S=(g=this.totals)===null||g===void 0?void 0:g.operationOrder[f];return L(S),(p=(C=this.totalsDataMap)===null||C===void 0?void 0:C.get(S))!==null&&p!==void 0?p:null}var b=this.pendingRow(e);if(b!=null){var w;return(w=this.pendingNewDataMap.get(b))!==null&&w!==void 0?w:null}var y=(s=(o=this.viewportData)===null||o===void 0?void 0:o.offset)!==null&&s!==void 0?s:0,T=(m?e-v:e)-y;return(u=(d=this.viewportData)===null||d===void 0||(h=d.rows)===null||h===void 0?void 0:h[T])!==null&&u!==void 0?u:null}totalsColumn(e,t){var r,i,a,l,s=this.totalsRow(t);if(s==null)return null;var o=(r=this.totals)===null||r===void 0?void 0:r.operationOrder[s],u=(i=(a=this.totals)===null||a===void 0?void 0:a.defaultOperation)!==null&&i!==void 0?i:Ie.SUM,d=this.columns[e];return(l=this.totalsTable)===null||l===void 0?void 0:l.columns.find(h=>{var v;return h.name==="".concat(d.name,"__").concat(o)||(o===u||((v=this.totals)===null||v===void 0?void 0:v.operationOrder.length)===1)&&h.name===d.name})}totalsRow(e){var t,r,i,a,l,s=(t=(r=this.totals)===null||r===void 0||(i=r.operationOrder)===null||i===void 0?void 0:i.length)!==null&&t!==void 0?t:0,o=(a=(l=this.totals)===null||l===void 0?void 0:l.showOnTop)!==null&&a!==void 0?a:!1,u=o?e:e-this.table.size;return u>=0&&u<s?u:null}pendingRow(e){var t=e-this.floatingTopRowCount-this.table.size;return t>=0&&t<this.pendingNewRowCount?t:null}isTotalsRow(e){return this.totalsRow(e)!=null}isPendingRow(e){return this.pendingRow(e)!=null}dataForCell(e,t){var r;return(r=this.row(t))===null||r===void 0?void 0:r.data.get(e)}formatForCell(e,t){var r;return(r=this.dataForCell(e,t))===null||r===void 0?void 0:r.format}valueForCell(e,t){var r=this.dataForCell(e,t);if(r){var i;return(i=r.value)!==null&&i!==void 0?i:null}}copyViewportData(e){if(e==null){Ve.warn("invalid data!");return}this.viewportData=this.extractViewportData(e),this.formattedStringData=[]}copyTotalsData(e){var t,r,i,a=this;if(e==null){Ve.warn("invalid data!");return}var{columns:l,rows:s}=e;if(s.length!==1){Ve.error("Unexpected number of rows received for totals table, ignoring update");return}for(var o=new Map,u=s[0],d=(t=(r=this.totals)===null||r===void 0?void 0:r.defaultOperation)!==null&&t!==void 0?t:Ie.SUM,h=(i=this.totals)===null||i===void 0?void 0:i.operationMap,v=function(){var g,p,C=l[m],[S,b=(g=h==null||(p=h[S])===null||p===void 0?void 0:p[0])!==null&&g!==void 0?g:d]=C.name.split("__");o.has(b)||o.set(b,{data:new Map});var{data:w}=o.get(b),y=a.columns.findIndex(T=>T.name===S);w.set(y,{value:u.get(C),format:u.getFormat(C)})},m=0;m<l.length;m+=1)v();Ve.debug2("copyTotalsData",o),this.totalsDataMap=o,this.formattedStringData=[]}getColumnIndexByName(e){return this.getColumnIndicesByNameMap(this.columns).get(e)}extractViewportData(e){for(var t={offset:e.offset,rows:[]},{columns:r}=e,i=0;i<e.rows.length;i+=1){var a=e.rows[i],l=this.extractViewportRow(a,r);t.rows.push(l)}return t}extractViewportRow(e,t){for(var r=new Map,i=0;i<t.length;i+=1){var a=t[i],l=this.getColumnIndexByName(a.name);L(l),r.set(l,{value:e.get(a),format:e.getFormat(a)})}return{data:r}}closeSubscription(){Ve.debug2("closeSubscription",this.subscription),this.subscription&&(this.subscription.close(),this.subscription=null),this.setViewport.cancel(),this.applyViewport.cancel()}get filter(){return this.table.filter}set filter(e){this.closeSubscription(),this.table.applyFilter(e),this.applyViewport()}get formatter(){return this.irisFormatter}set formatter(e){this.irisFormatter=e,this.formattedStringData=[],this.dispatchEvent(new je(ce.EVENT.FORMATTER_UPDATED))}displayString(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"",i=arguments.length>3?arguments[3]:void 0;return this.getCachedFormattedString(this.formatter,e,t,r,i)}get sort(){return this.table.sort}set sort(e){this.closeSubscription(),this.table.applySort(e),this.applyViewport()}set totalsConfig(e){if(Ve.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 je(ce.EVENT.UPDATED));return}this.totalsTablePromise=st.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{st.isCanceled(t)||(Ve.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new je(ce.EVENT.REQUEST_FAILED,{detail:t})))})}}setTotalsTable(e){Ve.debug("setTotalsTable",e),this.totalsTable!==null&&(this.listenerCount>0&&this.removeTotalsListeners(this.totalsTable),this.totalsTable.close()),this.totalsTable=e,this.totalsDataMap=null,this.listenerCount>0&&this.totalsTable!=null&&this.addTotalsListeners(this.totalsTable)}applyBufferedViewport(e,t,r){Ve.debug2("applyBufferedViewport",e,t,r),this.subscription==null?(Ve.debug2("applyBufferedViewport creating new subscription"),this.subscription=this.table.setViewport(e,t,r)):(Ve.debug2("applyBufferedViewport using existing subscription"),this.subscription.setViewport(e,t,r))}snapshot(e){var t=arguments,r=this;return qr(function*(){var i=t.length>1&&t[1]!==void 0?t[1]:!1,a=t.length>2&&t[2]!==void 0?t[2]:O=>O,l=t.length>3&&t[3]!==void 0?t[3]:!0;if(r.subscription==null)throw new Error("No subscription available");var s=l?U.consolidate(e):e;if(!me.isValidSnapshotRanges(s))throw new Error("Invalid snapshot ranges ".concat(e));for(var o=new Set,u=[],d=new Set,h=0;h<s.length;h+=1){var v=s[h];L(v.endRow),L(v.startRow);for(var m=v.startRow;m<=v.endRow&&m<r.floatingTopRowCount;m+=1)o.add(m);v.endRow>=r.floatingTopRowCount&&v.startRow<=r.floatingTopRowCount+r.table.size&&u.push(new U(v.startColumn,Math.min(Math.max(0,v.startRow-r.floatingTopRowCount)),v.endColumn,Math.min(Math.max(0,v.endRow-r.floatingTopRowCount),r.table.size-r.floatingTopRowCount)));for(var f=Math.max(v.startRow,r.floatingTopRowCount+r.table.size);f<=v.endRow&&f<r.floatingTopRowCount+r.table.size+r.floatingBottomRowCount;f+=1)d.add(f)}var g=me.columnsFromRanges(s,r.columns),p=[];i&&p.push(g.map(O=>O.name));for(var C=[...o].sort(),S=function*(){var D=C[b],N=g.map(F=>{var A=r.getColumnIndexByName(F.name);return L(A),a(r.valueForCell(A,D),F)});i&&N.push(r.textForRowFooter(D)),p.push(N)},b=0;b<C.length;b+=1)yield*S();if(u.length>0){var w=r.irisGridUtils.rangeSetFromRanges(u),y=yield r.subscription.snapshot(w,g);p.push(...y.rows.map(O=>g.map(D=>a(O.get(D),D))))}for(var T=[...d].sort(),E=function*(){var D=T[P],N=g.map(F=>{var A=r.getColumnIndexByName(F.name);return L(A),a(r.valueForCell(A,D),F)});i&&N.push(r.textForRowFooter(D)),p.push(N)},P=0;P<T.length;P+=1)yield*E();return p})()}textSnapshot(e){var t=arguments,r=this;return qr(function*(){var i=t.length>1&&t[1]!==void 0?t[1]:!1,a=t.length>2&&t[2]!==void 0?t[2]:s=>"".concat(s);Ve.debug2("textSnapshot",e,i);var l=yield r.snapshot(e,i,a,!1);return l.map(s=>s.join(" ")).join(`
14
+ `)})()}valuesTable(e){var t=this;return qr(function*(){var r=null;try{return r=yield t.table.copy(),r.applyFilter([]),r.applySort([]),r.selectDistinct([e])}finally{r?.close()}})()}isColumnMovable(e,t){if(e<0||e>=this.columnCount)return!1;if(t>0)return!0;var r=this.columns[e].name;return this.frontColumns.includes(r)||this.backColumns.includes(r)||this.frozenColumns.includes(r)||!r?!1:!this.isKeyColumn(e)}isColumnSortable(e){var t;return(t=this.columns[e].isSortable)!==null&&t!==void 0?t:!0}isKeyColumn(e){var t,r;return e<((t=(r=this.inputTable)===null||r===void 0?void 0:r.keyColumns.length)!==null&&t!==void 0?t:0)}isRowMovable(){return!1}isEditableRange(e){if(this.inputTable==null||!U.isBounded(e))return!1;var t=this.isPendingRow(e.startRow)&&this.isPendingRow(e.endRow);return!(!(t||this.inputTable.keyColumns.length!==0&&e.startColumn>=this.inputTable.keyColumns.length&&e.endColumn>=this.inputTable.keyColumns.length)||e.startRow<this.floatingTopRowCount||e.startRow>=this.floatingTopRowCount+this.table.size+this.pendingRowCount||e.endRow>=this.floatingTopRowCount+this.table.size+this.pendingRowCount)}isDeletableRange(e){return this.inputTable!=null&&e.startRow!=null&&e.endRow!=null&&e.startRow>=this.floatingTopRowCount&&e.startRow<this.floatingTopRowCount+this.table.size+this.pendingRowCount&&e.endRow<this.floatingTopRowCount+this.table.size+this.pendingRowCount}isEditableRanges(e){return e.every(t=>this.isEditableRange(t))}isDeletableRanges(e){return e.every(t=>this.isDeletableRange(t))}getTableAreaRange(){return new U(null,this.floatingTopRowCount,null,this.floatingTopRowCount+this.table.size-1)}getPendingAreaRange(){return new U(null,this.floatingTopRowCount+this.table.size,null,this.floatingTopRowCount+this.table.size+this.pendingNewRowCount-1)}setValueForCell(e,t,r){var i=this;return qr(function*(){return i.setValueForRanges([new U(e,t,e,t)],r)})()}setValueForRanges(e,t){var r=this;return qr(function*(){if(!r.isEditableRanges(e))throw new Error("Uneditable ranges ".concat(e));try{var i=new Set,a=[];U.forEachCell(e,(g,p)=>{var C=r.columns[g];if(i.add(C),a[g]===void 0){var S=r.tableUtils.makeValue(C.type,t,r.formatter.timeZone);a[g]=S!=null?r.displayString(S,C.type,C.name):null}r.cachePendingValue(g,p,a[g])});var l=r.getPendingAreaRange(),s=e.map(g=>U.intersection(l,g)).filter(g=>g!=null).map(g=>(L(g),U.offset(g,0,-(r.floatingTopRowCount+r.table.size))));if(s.length>0){var o=new Map(r.pendingNewDataMap);U.forEachCell(s,(g,p)=>{o.has(p)||o.set(p,{data:new Map});var C=r.columns[g],S=o.get(p);L(S);var{data:b}=S,w=new Map(b),y=r.tableUtils.makeValue(C.type,t,r.formatter.timeZone);y!=null?w.set(g,{value:y}):w.delete(g),w.size>0?o.set(p,ha(ha({},S),{},{data:w})):o.delete(p)}),r.pendingDataMap=o}r.dispatchEvent(new je(ce.EVENT.UPDATED));var u=r.getTableAreaRange(),d=e.map(g=>U.intersection(u,g)).filter(g=>g!=null);if(d.length>0){var h,v=yield r.snapshot(d.map(g=>{var p,C;return new U(null,(p=g?.startRow)!==null&&p!==void 0?p:null,null,(C=g?.endRow)!==null&&C!==void 0?C:null)})),m=v.map(g=>{for(var p={},C=0;C<r.columns.length;C+=1)p[r.columns[C].name]=g[C];return i.forEach(S=>{p[S.name]=r.tableUtils.makeValue(S.type,t,r.formatter.timeZone)}),p}),f=yield(h=r.inputTable)===null||h===void 0?void 0:h.addRows(m);Ve.debug("setValueForRanges(",e,",",t,") set tableRanges",d,"result",f)}U.forEachCell(e,(g,p)=>{var C=a[g];L(C),r.cacheFormattedValue(g,p,C)})}catch(g){Ve.error("Unable to set ranges",e,t,g)}finally{U.forEachCell(e,(g,p)=>{r.clearPendingValue(g,p)})}})()}setValues(){var e=arguments,t=this;return qr(function*(){var r=e.length>0&&e[0]!==void 0?e[0]:[];if(Ve.debug("setValues(",r,")"),!r.every(m=>{var f,g;return t.isEditableRange(U.makeCell((f=m.column)!==null&&f!==void 0?f:m.x,(g=m.row)!==null&&g!==void 0?g:m.y))}))throw new Error("Uneditable ranges ".concat(r));try{var i=new Map(t.pendingNewDataMap);r.forEach(m=>{var f,g,{text:p}=m,C=(f=m.column)!==null&&f!==void 0?f:m.x,S=(g=m.row)!==null&&g!==void 0?g:m.y,b=t.columns[C],w=t.tableUtils.makeValue(b.type,p,t.formatter.timeZone),y=w!=null?t.displayString(w,b.type,b.name):null;t.cachePendingValue(C,S,y);var T=t.pendingRow(S);if(T!=null){i.has(T)||i.set(T,{data:new Map});var E=i.get(T);L(E);var{data:P}=E,O=new Map(P);w!=null?O.set(C,{value:w}):O.delete(C),O.size>0?i.set(T,ha(ha({},E),{},{data:O})):i.delete(T)}}),t.pendingDataMap=i,t.dispatchEvent(new je(ce.EVENT.UPDATED));var a=r.reduce((m,f)=>{var g,p,C=(g=f.row)!==null&&g!==void 0?g:f.y;return m.has(C)||m.set(C,[]),(p=m.get(C))===null||p===void 0||p.push(f),m},new Map),l=U.consolidate(r.map(m=>{var f,g;return U.makeCell((f=m.column)!==null&&f!==void 0?f:m.x,(g=m.row)!==null&&g!==void 0?g:m.y)})),s=t.getTableAreaRange(),o=l.map(m=>U.intersection(s,m)).filter(m=>m!=null);if(o.length>0){var u,d=yield t.snapshot(o.map(m=>(L(m),new U(null,m.startRow,null,m.endRow)))),h=d.map((m,f)=>{for(var g=null,p=f,C=0;C<o.length;C+=1){var S=o[C];L(S);var b=U.rowCount([S]);if(p<b){L(S.startRow),g=S.startRow+p;break}p-=b}for(var w={},y=0;y<t.columns.length;y+=1)w[t.columns[y].name]=m[y];L(g);var T=a.get(g);return T?.forEach(E=>{var P,O=t.columns[(P=E.column)!==null&&P!==void 0?P:E.x];w[O.name]=t.tableUtils.makeValue(O.type,E.text,t.formatter.timeZone)}),w});Ve.info("setValues setting tableRanges",o);var v=yield(u=t.inputTable)===null||u===void 0?void 0:u.addRows(h);Ve.info("setValues set tableRanges",o,"SUCCESS",v)}r.forEach(m=>{var f,g,{text:p}=m,C=(f=m.column)!==null&&f!==void 0?f:m.x,S=(g=m.row)!==null&&g!==void 0?g:m.y,b=t.columns[C],w=t.tableUtils.makeValue(b.type,p,t.formatter.timeZone),y=w!=null?t.displayString(w,b.type,b.name):null;t.cacheFormattedValue(C,S,y)})}finally{r.forEach(m=>{t.clearPendingValue(m.column,m.row)})}})()}commitPending(){var e=this;return qr(function*(){if(e.pendingNewDataMap.size<=0)throw new Error("No pending changes to commit");try{var t,r,i;e.isSaveInProgress=!0;var a=[];e.pendingNewDataMap.forEach(s=>{var o={};s.data.forEach((u,d)=>{var{value:h}=u,v=e.columns[d];o[v.name]=h}),a.push(o)});var l=yield(t=e.inputTable)===null||t===void 0?void 0:t.addRows(a);Ve.debug("commitPending()",e.pendingNewDataMap,"result",l),e.pendingNewDataMap=new Map,e.pendingNewRowCount=Math.max(0,((r=(i=e.viewport)===null||i===void 0?void 0:i.bottom)!==null&&r!==void 0?r:0)-e.table.size),e.formattedStringData=[],e.dispatchEvent(new je(ce.EVENT.PENDING_DATA_UPDATED))}finally{e.isSaveInProgress=!1}})()}editValueForCell(e,t){return this.textValueForCell(e,t)}delete(e){var t=this;return qr(function*(){if(!t.isDeletableRanges(e))throw new Error("Undeletable ranges ".concat(e));L(t.inputTable);var{keyColumns:r}=t.inputTable;if(r.length===0)throw new Error("No key columns to allow deletion");var i=t.getPendingAreaRange(),a=e.map(p=>U.intersection(i,p)).filter(p=>p!=null).map(p=>(L(p),U.offset(p,0,-(t.floatingTopRowCount+t.table.size))));if(a.length>0){for(var l=new Map(t.pendingNewDataMap),s=0;s<a.length;s+=1){var o=a[s];L(o.startRow),L(o.endRow);for(var u=o.startRow;u<=o.endRow;u+=1)l.delete(u)}t.pendingNewDataMap=l,t.formattedStringData=[],t.dispatchEvent(new je(ce.EVENT.PENDING_DATA_UPDATED)),t.dispatchEvent(new je(ce.EVENT.UPDATED))}var d=t.getTableAreaRange(),h=e.map(p=>U.intersection(d,p)).filter(p=>p!=null);if(!(h.length<=0)){var[v,m]=yield Promise.all([t.snapshot(h.map(p=>(L(p),new U(0,p.startRow,r.length-1,p.endRow)))),t.table.copy()]),f=v.map(p=>{for(var C=[],S=0;S<r.length;S+=1){var b=r[S],w=p[S],y=t.tableUtils.makeFilterRawValue(b.type,w),T=b.filter().eq(y);C.push(T)}return C.reduce((E,P)=>{var O;return(O=E?.and(P))!==null&&O!==void 0?O:P})}),g=f.reduce((p,C)=>{var S;return(S=p?.or(C))!==null&&S!==void 0?S:C});m.applyFilter([g]),m.close()}})()}isValidForCell(e,t,r){try{var i=this.columns[e];return this.tableUtils.makeValue(i.type,r,this.formatter.timeZone),!0}catch{return!1}}}Ee(qn,"ROW_BUFFER_PAGES",1);function ed(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function kl(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){ed(a,r,i,l,s,"next",o)}function s(o){ed(a,r,i,l,s,"throw",o)}l(void 0)})}}function fn(n,e,t){return e=m0(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function m0(n){var e=f0(n,"string");return typeof e=="symbol"?e:String(e)}function f0(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Xr=fe.module("IrisGridTableModel");class g0 extends qn{constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Pr(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e,t,r,i),fn(this,"userFrozenColumns",void 0),fn(this,"customColumnList",void 0),fn(this,"formatColumnList",void 0),fn(this,"getMemoizedFrontColumns",Se(a=>a??[])),fn(this,"getMemoizedBackColumns",Se(a=>a??[])),fn(this,"getMemoizedFrozenColumns",Se((a,l)=>{var s;return(s=l??a)!==null&&s!==void 0?s:[]})),fn(this,"getCachedFilterableColumnSet",Se(a=>new Set(a.map((l,s)=>s)))),this.customColumnList=[],this.formatColumnList=[]}get isExportAvailable(){return this.table.freeze!=null}get isColumnStatisticsAvailable(){return this.table.getColumnStatistics!=null}get isValuesTableAvailable(){return this.table.selectDistinct!=null&&this.table.copy!=null}get isRollupAvailable(){return this.table.rollup!=null}get isSelectDistinctAvailable(){return this.table.selectDistinct!=null}get isCustomColumnsAvailable(){return this.table.applyCustomColumns!=null}get isFormatColumnsAvailable(){return this.table.applyCustomColumns!=null}get frontColumns(){var e;return this.getMemoizedFrontColumns((e=this.layoutHints)===null||e===void 0?void 0:e.frontColumns)}get backColumns(){var e;return this.getMemoizedBackColumns((e=this.layoutHints)===null||e===void 0?void 0:e.backColumns)}get frozenColumns(){var e;return this.getMemoizedFrozenColumns((e=this.layoutHints)===null||e===void 0?void 0:e.frozenColumns,this.userFrozenColumns)}get layoutHints(){return this.table.layoutHints}get floatingLeftColumnCount(){return this.frozenColumns.length}get description(){return this.table.description}get customColumns(){return this.customColumnList}set customColumns(e){if(Xr.debug2("set customColumns",e,this.customColumnList,e===this.customColumnList),this.customColumnList.length===0&&e.length===0){Xr.debug("Ignore empty initial customColumns"),this.customColumnList=e;return}if(this.customColumnList===e){Xr.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(Xr.debug2("set formatColumns",e,this.formatColumnList,e===this.formatColumnList),this.formatColumnList.length===0&&e.length===0){Xr.debug("Ignore empty initial formatColumns"),this.formatColumnList=e;return}if(this.formatColumnList===e){Xr.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 je(ce.EVENT.TABLE_CHANGED,{detail:this.table}))}set totalsConfig(e){if(Xr.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 je(ce.EVENT.UPDATED));return}this.totalsTablePromise=st.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{st.isCanceled(t)||(Xr.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new je(ce.EVENT.REQUEST_FAILED,{detail:t})))})}}get isFilterRequired(){return this.table.isUncoalesced}isFilterable(e){return this.getCachedFilterableColumnSet(this.columns).has(e)}export(){var e=this;return kl(function*(){return e.table.freeze()})()}columnStatistics(e){return this.table.getColumnStatistics(e)}isColumnMovable(e){var t=this.columns[e].name;return this.frontColumns.includes(t)||this.backColumns.includes(t)||this.frozenColumns.includes(t)?!1:!this.isKeyColumn(e)}isColumnFrozen(e){return this.frozenColumns.includes(this.columns[e].name)}delete(e){var t=()=>super.pendingDataMap,r=a=>super.pendingDataMap=a,i=this;return kl(function*(){var a;if(!i.isDeletableRanges(e))throw new Error("Undeletable ranges ".concat(e));L(i.inputTable);var{keyColumns:l}=i.inputTable;if(l.length===0)throw new Error("No key columns to allow deletion");var s=i.getPendingAreaRange(),o=e.map(b=>U.intersection(s,b)).filter(b=>b!=null).map(b=>(L(b),U.offset(b,0,-(i.floatingTopRowCount+i.table.size))));if(o.length>0){for(var u=new Map(t()),d=0;d<o.length;d+=1){var h=o[d];L(h.startRow),L(h.endRow);for(var v=h.startRow;v<=h.endRow;v+=1)u.delete(v)}r(u),i.formattedStringData=[],i.dispatchEvent(new je(ce.EVENT.PENDING_DATA_UPDATED)),i.dispatchEvent(new je(ce.EVENT.UPDATED))}var m=i.getTableAreaRange(),f=e.map(b=>U.intersection(m,b)).filter(b=>b!=null);if(!(f.length<=0)){var[g,p]=yield Promise.all([i.snapshot(f.map(b=>(L(b),new U(0,b.startRow,l.length-1,b.endRow)))),i.table.copy()]),C=g.map(b=>{for(var w=[],y=0;y<l.length;y+=1){var T=l[y],E=b[y],P=i.tableUtils.makeFilterRawValue(T.type,E),O=T.filter().eq(P);w.push(O)}return w.reduce((D,N)=>{var F;return(F=D?.and(N))!==null&&F!==void 0?F:N})}),S=C.reduce((b,w)=>{var y;return(y=b?.or(w))!==null&&y!==void 0?y:w});p.applyFilter([S]),yield(a=i.inputTable)===null||a===void 0?void 0:a.deleteTable(p),p.close()}})()}seekRow(e,t,r,i,a,l,s){var o=this;return kl(function*(){return o.table.seekRow(e,t,r,i,a,l,s)})()}get isSeekRowAvailable(){return this.table.seekRow!=null}}const Qh=g0;function td(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function p0(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){td(a,r,i,l,s,"next",o)}function s(o){td(a,r,i,l,s,"throw",o)}l(void 0)})}}function rd(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 nd(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?rd(Object(t),!0).forEach(function(r){es(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):rd(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function es(n,e,t){return e=C0(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function C0(n){var e=S0(n,"string");return typeof e=="symbol"?e:String(e)}function S0(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class b0 extends qn{constructor(){super(...arguments),es(this,"getCachedFilterableColumnSet",Se((e,t)=>new Set((t?.length>0?t:e).map(r=>e.findIndex(i=>r.name===i.name))))),es(this,"getCachedGroupedColumnSet",Se(e=>new Set(e.map(t=>this.columns.findIndex(r=>t.name===r.name)))))}applyBufferedViewport(e,t,r){this.table.setViewport(e,t,r)}textForCell(e,t){var r=this.columns[e],i=this.row(t);if(i!=null&&r!=null){if(!i.hasChildren&&r.constituentType!=null){var a=this.valueForCell(e,t);return this.displayString(a,r.constituentType,r.name)}if(i.hasChildren&&i.depth<=e+1&&this.valueForCell(e,t)===null&&this.getCachedGroupedColumnSet(this.groupedColumns).has(e))return""}return super.textForCell(e,t)}extractViewportRow(e,t){var{isExpanded:r,hasChildren:i,depth:a}=e;return nd(nd({},super.extractViewportRow(e,t)),{},{isExpanded:r,hasChildren:i,depth:a})}snapshot(e,t,r){var i=this;return p0(function*(){var a;L(i.viewport),L(i.viewportData);var{columns:l}=i.viewport,s=[];t!=null&&t&&s.push(l.map(p=>p.name));for(var o=new U(0,(a=i.viewportData)===null||a===void 0?void 0:a.offset,l.length,i.viewportData.offset+i.viewportData.rows.length),u=0;u<e.length;u+=1){var d=U.intersection(o,e[u]);L(d),L(d.startRow),L(d.endRow);for(var h=d.startRow;h<=d.endRow;h+=1){var v=[],m=i.viewportData.rows[h-i.viewportData.offset];L(d.startColumn),L(d.endColumn);for(var f=d.startColumn;f<=d.endColumn;f+=1){var g;L(r),v.push(r((g=m.data.get(f))===null||g===void 0?void 0:g.value,i.columns[f]))}s.push(v)}}return s})()}get groupedColumns(){return this.table.groupedColumns}get hasExpandableRows(){return!0}get isExpandAllAvailable(){return this.table.expandAll!==void 0}get isChartBuilderAvailable(){return!1}get isSelectDistinctAvailable(){return!1}get isReversible(){return!1}isFilterable(e){return this.getCachedFilterableColumnSet(this.columns,this.groupedColumns).has(e)}isColumnMovable(e){return e>=this.groupedColumns.length}isRowExpandable(e){var t,r=this.row(e);return(t=r?.hasChildren)!==null&&t!==void 0?t:!1}isRowExpanded(e){var t,r=this.row(e);return(t=r?.isExpanded)!==null&&t!==void 0?t:!1}setRowExpanded(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;this.isExpandAllAvailable?this.table.setExpanded(e,t,r):this.table.setExpanded(e,t)}expandAll(){this.table.expandAll&&this.table.expandAll()}collapseAll(){this.table.collapseAll&&this.table.collapseAll()}depthForRow(e){var t,r=this.row(e);return((t=r?.depth)!==null&&t!==void 0?t:1)-1}updateFrozenColumns(e){if(e.length>0)throw new Error("Cannot freeze columns on a tree table")}}const w0=b0;function id(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function y0(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){id(a,r,i,l,s,"next",o)}function s(o){id(a,r,i,l,s,"throw",o)}l(void 0)})}}function ge(n,e,t){return e=T0(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function T0(n){var e=E0(n,"string");return typeof e=="symbol"?e:String(e)}function E0(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Qr=fe.module("IrisGridProxyModel");function jl(n,e,t,r){return x.isTreeTable(e)?new w0(n,e,t):new Qh(n,e,t,r)}class O0 extends ce{constructor(e,t){var r,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Pr(e),a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e),r=this,ge(this,"dh",void 0),ge(this,"originalModel",void 0),ge(this,"model",void 0),ge(this,"modelPromise",void 0),ge(this,"rollup",void 0),ge(this,"selectDistinct",void 0),ge(this,"textForCell",function(){return r.model.textForCell(...arguments)}),ge(this,"truncationCharForCell",function(){return r.model.truncationCharForCell(...arguments)}),ge(this,"textAlignForCell",function(){return r.model.textAlignForCell(...arguments)}),ge(this,"colorForCell",function(){return r.model.colorForCell(...arguments)}),ge(this,"backgroundColorForCell",function(){return r.model.backgroundColorForCell(...arguments)}),ge(this,"textForColumnHeader",function(){return r.model.textForColumnHeader(...arguments)}),ge(this,"colorForColumnHeader",function(){return r.model.colorForColumnHeader(...arguments)}),ge(this,"textForRowHeader",function(){return r.model.textForRowHeader(...arguments)}),ge(this,"textForRowFooter",function(){return r.model.textForRowFooter(...arguments)}),ge(this,"isRowMovable",function(){return r.model.isRowMovable(...arguments)}),ge(this,"isColumnMovable",function(){return r.model.isColumnMovable(...arguments)}),ge(this,"isRowExpandable",function(){return xe(r.model)?r.model.isRowExpandable(...arguments):!1}),ge(this,"isRowExpanded",function(){return xe(r.model)?r.model.isRowExpanded(...arguments):!1}),ge(this,"setRowExpanded",function(){if(xe(r.model))return r.model.setRowExpanded(...arguments);throw Error("Function setRowExpanded does not exist on IrisGridTableModel")}),ge(this,"expandAll",()=>{if(xe(this.model))return this.model.expandAll();throw Error("Function expandAll does not exist on IrisGridTableModel")}),ge(this,"collapseAll",()=>{if(xe(this.model))return this.model.collapseAll();throw Error("Function collapseAll does not exist on IrisGridTableModel")}),ge(this,"depthForRow",function(){return xe(r.model)?r.model.depthForRow(...arguments):0}),ge(this,"getColumnHeaderGroup",function(){return r.model.getColumnHeaderGroup(...arguments)}),ge(this,"getColumnHeaderParentGroup",function(){return r.model.getColumnHeaderParentGroup(...arguments)}),ge(this,"formatForCell",function(){return r.model.formatForCell(...arguments)}),ge(this,"valueForCell",function(){return r.model.valueForCell(...arguments)}),ge(this,"renderTypeForCell",function(){return r.model.renderTypeForCell(...arguments)}),ge(this,"dataBarOptionsForCell",function(){return r.model.dataBarOptionsForCell(...arguments)}),ge(this,"displayString",function(){return r.model.displayString(...arguments)}),ge(this,"isEditableRange",function(){return He(r.model)?r.model.isEditableRange(...arguments):!1}),ge(this,"isFilterable",function(){return r.model.isFilterable(...arguments)}),ge(this,"setViewport",(s,o,u)=>this.model.setViewport(s,o,u)),ge(this,"snapshot",function(){return r.model.snapshot(...arguments)}),ge(this,"textSnapshot",function(){return r.model.textSnapshot(...arguments)}),ge(this,"valuesTable",function(){return r.model.valuesTable(...arguments)}),ge(this,"editValueForCell",function(){return He(r.model)?r.model.editValueForCell(...arguments):""}),ge(this,"setValueForCell",function(){return He(r.model)?r.model.setValueForCell(...arguments):Promise.reject(new Error("Model is not editable"))}),ge(this,"setValueForRanges",function(){return He(r.model)?r.model.setValueForRanges(...arguments):Promise.reject(new Error("Model is not editable"))}),ge(this,"setValues",function(){return He(r.model)?r.model.setValues(...arguments):Promise.resolve()}),ge(this,"isValidForCell",function(){return He(r.model)?r.model.isValidForCell(...arguments):!1}),ge(this,"delete",function(){return r.model.delete(...arguments)}),ge(this,"commitPending",function(){return r.model.commitPending(...arguments)}),this.handleModelEvent=this.handleModelEvent.bind(this);var l=jl(e,t,i,a);this.dh=e,this.originalModel=l,this.model=l,this.modelPromise=null,this.rollup=null,this.selectDistinct=[]}close(){this.originalModel.close(),this.model!==this.originalModel&&this.model.close(),this.modelPromise!=null&&this.modelPromise.cancel()}handleModelEvent(e){Qr.debug2("handleModelEvent",e);var{detail:t,type:r}=e;this.dispatchEvent(new je(r,{detail:t}))}setModel(e){Qr.debug("setModel",e);var t=this.model;t!==this.originalModel&&t.close(),this.model=e,this.listenerCount>0&&this.addListeners(e),this.dispatchEvent(new je(ce.EVENT.COLUMNS_CHANGED,{detail:e.columns})),bn(e)&&this.dispatchEvent(new je(ce.EVENT.TABLE_CHANGED,{detail:e.table}))}setNextModel(e){Qr.debug2("setNextModel"),this.modelPromise&&this.modelPromise.cancel(),this.listenerCount>0&&this.removeListeners(this.model),this.modelPromise=st.makeCancelable(e,t=>t.close()),this.modelPromise.then(t=>{this.modelPromise=null,this.setModel(t)}).catch(t=>{if(st.isCanceled(t)){Qr.debug2("setNextModel cancelled");return}Qr.error("Unable to set next model",t),this.modelPromise=null,this.dispatchEvent(new je(ce.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(ce.EVENT),r=0;r<t.length;r+=1)e.addEventListener(t[r],this.handleModelEvent)}removeListeners(e){for(var t=Object.keys(ce.EVENT),r=0;r<t.length;r+=1)e.removeEventListener(t[r],this.handleModelEvent)}get rowCount(){return this.model.rowCount}get columnCount(){return this.model.columnCount}get floatingTopRowCount(){return this.model.floatingTopRowCount}get floatingBottomRowCount(){return this.model.floatingBottomRowCount}get floatingLeftColumnCount(){return this.model.floatingLeftColumnCount}get floatingRightColumnCount(){return this.model.floatingRightColumnCount}isColumnFrozen(e){return this.model.isColumnFrozen(e)}isColumnSortable(e){return this.model.isColumnSortable(e)}get hasExpandableRows(){return xe(this.model)?this.model.hasExpandableRows:!1}get isExpandAllAvailable(){if(xe(this.model)){var e;return(e=this.model.isExpandAllAvailable)!==null&&e!==void 0?e:!1}return!1}get isExportAvailable(){return this.model.isExportAvailable}get isColumnStatisticsAvailable(){return this.model.isColumnStatisticsAvailable}get isValuesTableAvailable(){return this.model.isValuesTableAvailable}get isCustomColumnsAvailable(){return this.model.isCustomColumnsAvailable&&!(this.isSelectDistinctAvailable&&this.selectDistinctColumns.length>0)}get isFormatColumnsAvailable(){return this.model.isFormatColumnsAvailable}get isChartBuilderAvailable(){return this.model.isChartBuilderAvailable}get isRollupAvailable(){return(this.originalModel.isRollupAvailable||this.rollup!=null)&&this.selectDistinct.length===0}get isSelectDistinctAvailable(){return(this.originalModel.isSelectDistinctAvailable||this.selectDistinct.length>0)&&this.rollup==null}get isTotalsAvailable(){return this.model.isTotalsAvailable}get isReversible(){return this.model.isReversible}get columns(){return this.model.columns}get initialMovedColumns(){return this.model.initialMovedColumns}get initialMovedRows(){return this.model.initialMovedRows}get layoutHints(){return this.model.layoutHints}get frontColumns(){return this.model.frontColumns}get backColumns(){return this.model.backColumns}get frozenColumns(){return this.model.frozenColumns}get columnHeaderGroups(){return this.model.columnHeaderGroups}set columnHeaderGroups(e){this.model.columnHeaderGroups=e}get initialColumnHeaderGroups(){return this.model.initialColumnHeaderGroups}get columnHeaderGroupMap(){return this.model.columnHeaderGroupMap}get columnHeaderMaxDepth(){return this.model.columnHeaderMaxDepth}updateFrozenColumns(e){return this.model.updateFrozenColumns(e)}get originalColumns(){return this.originalModel.columns}get groupedColumns(){return this.model.groupedColumns}get description(){return this.model.description}get filter(){return this.model.filter}set filter(e){this.model.filter=e}get formatter(){return this.model.formatter}set formatter(e){this.model.formatter=e}get sort(){return this.model.sort}set sort(e){this.model.sort=e}get customColumns(){return this.model.customColumns}set customColumns(e){this.model.customColumns=e}get formatColumns(){return this.model.formatColumns}set formatColumns(e){this.model.formatColumns=e}get rollupConfig(){return this.rollup}set rollupConfig(e){if(Qr.debug("set rollupConfig",e),!this.isRollupAvailable)throw new Error("Rollup Rows are not available");if(!ht(e,this.rollup)){this.rollup=e;var t=Promise.resolve(this.originalModel);bn(this.originalModel)&&e!=null&&(t=this.originalModel.table.rollup(e).then(r=>jl(this.dh,r,this.formatter))),this.setNextModel(t)}}get selectDistinctColumns(){return this.selectDistinct}set selectDistinctColumns(e){if(Qr.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){Qr.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);bn(this.originalModel)&&t.length>0&&(r=this.originalModel.table.selectDistinct(t).then(i=>jl(this.dh,i,this.formatter))),this.setNextModel(r)}get table(){if(bn(this.model))return this.model.table}get totalsConfig(){return this.model.totalsConfig}set totalsConfig(e){this.model.totalsConfig=e}get isFilterRequired(){return this.model.isFilterRequired}get isEditable(){return He(this.model)&&this.model.isEditable}export(){if(x.isTreeTable(this.model))throw new Error("TreeTable has no 'export' property");return this.model.export()}columnStatistics(e){if(x.isTreeTable(this.model))throw new Error("TreeTable has no 'columnStatistics' function");return this.model.columnStatistics(e)}get pendingDataMap(){return this.model.pendingDataMap}set pendingDataMap(e){this.model.pendingDataMap=e}get pendingRowCount(){return this.model.pendingRowCount}set pendingRowCount(e){this.model.pendingRowCount=e}get pendingDataErrors(){return this.model.pendingDataErrors}getColumnIndexByName(e){return this.model.getColumnIndexByName(e)}seekRow(e,t,r,i,a,l,s){var o=this;return y0(function*(){return o.model.seekRow(e,t,r,i,a,l,s)})()}get isSeekRowAvailable(){return this.model.isSeekRowAvailable}}const P0=O0;function ad(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function R0(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){ad(a,r,i,l,s,"next",o)}function s(o){ad(a,r,i,l,s,"throw",o)}l(void 0)})}}class D0{static makeModel(e,t){var r=arguments;return R0(function*(){var i=r.length>2&&r[2]!==void 0?r[2]:new Pr(e),a=null;return!x.isTreeTable(t)&&t.hasInputTable&&(a=yield t.inputTable()),new P0(e,t,i,a)})()}}const F0=D0;function js(n){var{dashboardProps:e,componentName:t,component:r,supportedTypes:i,hydrate:a,dehydrate:l}=n,{id:s,layout:o,registerComponent:u}=e,d=R.useCallback(h=>{var v,{dragEvent:m,fetch:f,panelId:g=nt.generate(),widget:p}=h,{id:C,type:S}=p,b=(v=p.title)!==null&&v!==void 0?v:p.name,w=Array.isArray(i)&&i.includes(S)||S===i;if(w){var y={id:C,name:b,type:S},T={localDashboardId:s,metadata:y,fetch:f};a!=null&&(T=a(T,s));var E={type:"react-component",component:t,props:T,title:b,id:g},{root:P}=o;ve.openComponent({root:P,config:E,dragEvent:m})}},[t,a,s,o,i]);nv(u,r,a,l),br(o.eventHub,At.OPEN,d)}function _s(n,e,t){return e=N0(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function N0(n){var e=I0(n,"string");return typeof e=="symbol"?e:String(e)}function I0(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Ka{}_s(Ka,"OPEN","ChartEvent.OPEN");_s(Ka,"CLOSE","ChartEvent.CLOSE");_s(Ka,"COLUMN_SELECTED","ChartEvent.COLUMN_SELECTED");const ts=Ka;function ri(n,e,t){return e=A0(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function A0(n){var e=M0(n,"string");return typeof e=="symbol"?e:String(e)}function M0(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Mn{}ri(Mn,"OPEN_GRID","IrisGridEvent.OPEN_GRID");ri(Mn,"CLOSE_GRID","IrisGridEvent.CLOSE_GRID");ri(Mn,"DATA_SELECTED","IrisGridEvent.DATA_SELECTED");ri(Mn,"COLUMN_SELECTED","IrisGridEvent.COLUMN_SELECTED");ri(Mn,"STATE_CHANGED","IrisGridEvent.STATE_CHANGED");ri(Mn,"CREATE_CHART","IrisGridevent.CREATE_CHART");const ur=Mn;function Zh(n,e,t){return e=x0(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function x0(n){var e=L0(n,"string");return typeof e=="symbol"?e:String(e)}function L0(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Hs{}Zh(Hs,"OPEN","PandasEvent.OPEN");Zh(Hs,"CLOSE","PandasEvent.CLOSE");const tO=Hs;function Ya(n){var{widgetType:e,widgetName:t,glContainer:r,description:i,children:a}=n,l=ve.getTitleFromContainer(r);return c.jsxs("div",{className:"tab-tooltip-grid-container",children:[c.jsxs("span",{className:"tab-tooltip-title",children:[e," Name"]}),c.jsxs("div",{className:"tab-tooltip-name-wrapper",children:[c.jsx("span",{className:"tab-tooltip-name",children:t}),c.jsx(vs,{className:"tab-tooltip-copy",tooltip:"Copy name",copy:t})]}),t!==l&&c.jsxs(c.Fragment,{children:[c.jsx("span",{className:"tab-tooltip-title",children:"Display Name"}),c.jsx("span",{className:"tab-tooltip-name",children:l})]}),i&&c.jsx("div",{className:"tab-tooltip-description",children:i}),a]})}Ya.propTypes={glContainer:$d.Container.isRequired,widgetType:Z.string,widgetName:Z.string,description:Z.string,children:Z.node};Ya.defaultProps={widgetType:"",widgetName:"",description:null,children:null};function Jh(n,e,t){return e=k0(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function k0(n){var e=j0(n,"string");return typeof e=="symbol"?e:String(e)}function j0(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class ec extends R.PureComponent{constructor(e){super(e),Jh(this,"getCachedRenderTabTooltip",Se((t,r,i,a,l)=>t?()=>c.jsx(Ya,{glContainer:r,widgetType:i,widgetName:a,description:l}):null)),this.handleSessionClosed=this.handleSessionClosed.bind(this),this.handleSessionOpened=this.handleSessionOpened.bind(this),this.handleCopyName=this.handleCopyName.bind(this),this.state={isClientDisconnected:!1,isPanelDisconnected:!1,isWidgetDisconnected:!1,isWaitingForReconnect:!1,isPanelInactive:!1}}handleCopyName(){var{widgetName:e}=this.props;_a(e)}getErrorMessage(){var{errorMessage:e}=this.props,{isClientDisconnected:t,isPanelDisconnected:r,isWidgetDisconnected:i,isWaitingForReconnect:a}=this.state;if(e)return"".concat(e);if(t&&r&&a)return`Disconnected from server.
15
15
  Check your internet connection.`;if(t&&r)return"Disconnected from server.";if(r){var{widgetName:l,widgetType:s}=this.props;return'Variable "'.concat(l,`" not set.
16
- `).concat(s," does not exist yet.")}if(i){var{widgetName:o}=this.props;return"".concat(o," is unavailable.")}}handleSessionClosed(){var{onSessionClose:e}=this.props;this.setState({isPanelDisconnected:!0,isWaitingForReconnect:!1}),e(...arguments)}handleSessionOpened(){var{onSessionOpen:e}=this.props;e(...arguments)}render(){var{children:e,className:t,componentPanel:r,isLoaded:i,isLoading:a,glContainer:l,glEventHub:s,isDisconnected:o,isClonable:u,isRenamable:d,showTabTooltip:h,renderTabTooltip:v,widgetType:m,widgetName:f,description:g,onClearAllFilters:p,onHide:C,onFocus:S,onBlur:b,onResize:w,onShow:y,onTabBlur:T,onTabFocus:E,onTabClicked:P}=this.props,{isPanelDisconnected:O,isWidgetDisconnected:D,isPanelInactive:N}=this.state,F=this.getErrorMessage(),A=v??this.getCachedRenderTabTooltip(h,l,m,f,g),j=[{title:"Copy ".concat(m," Name"),group:ce.groups.medium,order:20,action:this.handleCopyName}];return c.jsxs(ka,{className:re(t,{disconnected:O||D||o,inactive:N}),componentPanel:r,glContainer:l,glEventHub:s,onClearAllFilters:p,onHide:C,onFocus:S,onBlur:b,onResize:w,onShow:y,onSessionClose:this.handleSessionClosed,onSessionOpen:this.handleSessionOpened,onTabBlur:T,onTabFocus:E,onTabClicked:P,renderTabTooltip:A,errorMessage:F,isLoaded:i,isLoading:a,isClonable:u,isRenamable:d,additionalActions:j,children:[e,N&&c.jsx("div",{className:"fill-parent-absolute"})]})}}ec(tc,"defaultProps",{className:"",errorMessage:null,isClonable:!0,isDisconnected:!1,isLoading:!1,isLoaded:!0,isRenamable:!0,showTabTooltip:!0,widgetName:"Widget",widgetType:"Widget",renderTabTooltip:null,description:"",onFocus:()=>{},onBlur:()=>{},onHide:()=>{},onClearAllFilters:()=>{},onResize:()=>{},onSessionClose:()=>{},onSessionOpen:()=>{},onShow:()=>{},onTabBlur:()=>{},onTabFocus:()=>{},onTabClicked:()=>{}});const Us=tc;function rc(n){var{columnMap:e,inputFilterMap:t,linkedColumnMap:r,onAdd:i,onOpenLinker:a,waitingFilterMap:l,waitingInputMap:s}=n,o=R.useMemo(()=>{var f=Array.from(s.keys()),g=f.find(S=>t.get(S)!=null),p=f.find(S=>r.get(S)!=null),C=sr.join(f.map(S=>'"'.concat(S,'"')));return g!=null&&g&&p!=null&&p?"Use a filter control or linked table to set a value for ".concat(C):g!=null&&g?"Set a filter control value for ".concat(C):"Double click a row in a linked table to set a value for ".concat(C)},[t,r,s]),u=R.useMemo(()=>Array.from(e.values()),[e]),d=R.useCallback(f=>{f.stopPropagation(),f.preventDefault(),i(Array.from(l.values()))},[i,l]),h=R.useCallback(f=>{f.stopPropagation(),f.preventDefault(),a()},[a]),v=l.size>0,m=!v&&s.size>0;return c.jsx("div",{className:"chart-panel-overlay chart-filter-overlay",children:c.jsxs("div",{className:re("chart-panel-overlay-content chart-filter-overlay-content",{"chart-filter-waiting-filter":v},{"chart-filter-waiting-input":m}),children:[v&&c.jsxs(c.Fragment,{children:[c.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:"}),c.jsx("div",{className:"waiting-filter-list",children:u.map(f=>{var g=l.has(f.name),p=g?Wn:gs;return c.jsxs("div",{className:re("waiting-filter-item",{"is-invalid":g}),children:[c.jsx(ae,{icon:p}),f.name]},f.name)})}),c.jsxs("div",{children:[c.jsx(co,{onClick:d,className:"btn-primary",children:"Add Input Filters"}),c.jsx(co,{onClick:h,className:"btn-primary",children:"Open Linker Tool"})]})]}),m&&c.jsxs(c.Fragment,{children:[c.jsx("div",{className:"info-message",children:"Waiting for User Input"}),c.jsx("div",{className:"",children:o})]})]})})}rc.propTypes={columnMap:Z.instanceOf(Map).isRequired,inputFilterMap:Z.instanceOf(Map).isRequired,linkedColumnMap:Z.instanceOf(Map).isRequired,onAdd:Z.func.isRequired,onOpenLinker:Z.func.isRequired,waitingFilterMap:Z.instanceOf(Map).isRequired,waitingInputMap:Z.instanceOf(Map).isRequired};function Li(n){var{columns:e,onColumnSelected:t,onMouseEnter:r,onMouseLeave:i}=n;return c.jsx("div",{className:"chart-panel-overlay chart-column-selector-overlay",children:c.jsxs("div",{className:re("chart-panel-overlay-content"),children:[c.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:"}),c.jsx("div",{className:"waiting-column-select-list",children:e.map(a=>c.jsx(nh,{className:re("btn-chart-column-selector",Li.makeButtonClassName(a.name)),onClick:()=>t(a.name),onMouseEnter:()=>{r&&r(a)},onMouseLeave:i,disabled:!a.isValid,isLinked:a.isActive,children:a.name},a.name))})]})})}Li.makeButtonClassName=n=>"btn-chart-column-selector-".concat(n);Li.defaultProps={onMouseEnter:()=>{},onMouseLeave:()=>{}};function ba(n){return n.settings!==void 0}function H0(n){if(n==null)return!1;var{settings:e,tableSettings:t}=n;return typeof e=="object"&&typeof t=="object"}function U0(n){return n!=null&&H0(n.panelState)}function ld(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 sd(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ld(Object(t),!0).forEach(function(r){Qt(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ld(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Qt(n,e,t){return e=V0(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function V0(n){var e=B0(n,"string");return typeof e=="symbol"?e:String(e)}function B0(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var It=ge.module("ChartPanel"),G0=150;function $0(n){return n.inputFilters!=null}function W0(n){return n.panelState!=null}class qa extends R.Component{constructor(e){var t;super(e),Qt(this,"panelContainer",void 0),Qt(this,"chart",void 0),Qt(this,"pending",void 0),Qt(this,"getWaitingInputMap",be((s,o,u)=>{if(!s)return new Map;var d=new Map(o);return u.forEach((h,v)=>{d.delete(v)}),d})),Qt(this,"getWaitingFilterMap",be((s,o,u,d,h)=>{if(!s)return new Map;var v=new Map(o);return u.forEach((m,f)=>{v.delete(f)}),h.forEach((m,f)=>{v.delete(f)}),d.forEach((m,f)=>{v.delete(f)}),v})),Qt(this,"getInputFilterColumnMap",be((s,o)=>{for(var u=new Map,d=0;d<o.length;d+=1){var h=o[d],{name:v,type:m}=h,f=s.get(v);f!=null&&f.type===m&&u.set(v,h)}return u})),Qt(this,"getLinkedColumnMap",be((s,o)=>{for(var u=new Map,d=me.getIdFromPanel(this),h=0;h<o.length;h+=1){var v=o[h],m=null;if(v.start!=null&&v.start.panelId===d&&s.has(v.start.columnName)?m=v.start.columnName:v.end&&v.end.panelId===d&&s.has(v.end.columnName)&&(m=v.end.columnName),m!=null&&s.has(m)){var f=s.get(m);L(f),u.set(m,f)}}return u})),Qt(this,"getSelectorColumns",be((s,o,u)=>Array.from(s.values()).map(d=>({name:d.name,type:d.type,isValid:u?u(this,d):!1,isActive:o.has(d.name)})))),this.handleColumnSelected=this.handleColumnSelected.bind(this),this.handleColumnMouseEnter=this.handleColumnMouseEnter.bind(this),this.handleColumnMouseLeave=this.handleColumnMouseLeave.bind(this),this.handleDisconnect=this.handleDisconnect.bind(this),this.handleReconnect=this.handleReconnect.bind(this),this.handleFilterAdd=this.handleFilterAdd.bind(this),this.handleHide=this.handleHide.bind(this),this.handleError=this.handleError.bind(this),this.handleLoadError=this.handleLoadError.bind(this),this.handleLoadSuccess=this.handleLoadSuccess.bind(this),this.handleResize=this.handleResize.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=ct(this.updateModelFromSource.bind(this),G0),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.panelContainer=(t=e.containerRef)!==null&&t!==void 0?t:Me.createRef(),this.chart=Me.createRef(),this.pending=new as;var{metadata:r,panelState:i}=e,{filterValueMap:a=[],settings:l={}}=i??{};this.state={settings:l,error:void 0,isActive:!1,isDisconnected:!1,isLoading:!1,isLoaded:!1,isLinked:r!=null&&ba(r)&&r.settings.isLinked,filterMap:new Map(a),filterValueMap:new Map(a),model:void 0,columnMap:new Map,panelState:i}}componentDidMount(){this.isHidden()||(this.setState({isActive:!0}),this.initModel())}componentDidUpdate(e,t){var{inputFilters:r,source:i}=this.props,{columnMap:a,model:l,filterMap:s,filterValueMap:o,isLinked:u,settings:d}=this.state;l&&(a!==t.columnMap&&this.pruneFilterMaps(),r!==e.inputFilters&&this.updateChangedInputFilters(r,e.inputFilters),s!==t.filterMap?this.updateFilters():o!==t.filterValueMap&&this.updatePanelState(),d!==t.settings&&Oo(l)&&(l.updateSettings(d),this.updatePanelState()),u!==t.isLinked?i&&(u?(this.startListeningToSource(i),this.updateModelFromSource()):this.stopListeningToSource(i)):u&&i!==e.source&&(e.source&&this.stopListeningToSource(e.source),i&&(this.startListeningToSource(i),this.updateModelFromSource())))}componentWillUnmount(){this.pending.cancel();var{model:e}=this.state,{source:t}=this.props;e!=null&&t&&this.stopListeningToSource(t)}initModel(){this.setState({isLoading:!0,isLoaded:!1,error:void 0});var{makeModel:e}=this.props;this.pending.add(e(),t=>{t.close()}).then(this.handleLoadSuccess,this.handleLoadError)}startListeningToSource(e){It.debug("startListeningToSource",e);var{model:t}=this.state;L(t);var{dh:r}=t;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){It.debug("stopListeningToSource",e);var{model:t}=this.state;L(t);var{dh:r}=t;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{isActive:e,isLoaded:t,isLoading:r}=this.state;e&&!t&&!r&&this.initModel()}isHidden(){var{glContainer:e}=this.props,{isHidden:t}=e;return t}handleColumnSelected(e){var{glEventHub:t}=this.props,{columnMap:r}=this.state;t.emit(es.COLUMN_SELECTED,this,r.get(e))}handleColumnMouseEnter(e){var{type:t,name:r}=e,{columnSelectionValidator:i}=this.props;It.debug("handleColumnMouseEnter",i,t,r),i&&i(this,{type:t,name:r})}handleColumnMouseLeave(){var{columnSelectionValidator:e}=this.props;It.debug("handleColumnMouseLeave",e),e&&e(this,void 0)}handleDisconnect(){this.setState({error:new Error("Figure disconnected"),isDisconnected:!0})}handleFilterAdd(e){for(var t=0;t<e.length;t+=1)this.openInputFilter(e[t])}handleOpenLinker(){var{localDashboardId:e,setActiveTool:t,setDashboardIsolatedLinkerPanelId:r}=this.props;r(e,void 0),t(wr.LINKER)}handleReconnect(){this.setState({isDisconnected:!1,error:void 0}),this.sendColumnChange(),this.updateColumnFilters()}handleLoadSuccess(e){It.debug("handleLoadSuccess");var{model:t}=this.state;this.setState({model:e,isLoaded:!0},()=>{var{inputFilters:r,source:i}=this.props,{filterMap:a,isLinked:l}=this.state;e!==t&&(this.sendColumnChange(),this.updateColumnFilters(),this.updateInputFilters(r,a.size>0||e.isFilterRequired()),i&&l&&(this.startListeningToSource(i),this.updateModelFromSource()))})}handleLoadError(e){st.isCanceled(e)||(It.error("handleLoadError",e),this.setState({error:e,isLoading:!1}))}handleSourceColumnChange(){this.updateModelFromSource()}handleSourceFilterChange(){this.updateModelFromSource()}handleSourceSortChange(){this.updateModelFromSource()}updateModelFromSource(){var{metadata:e,source:t}=this.props,{isLinked:r,model:i}=this.state;if(!r||!i||!t){It.debug2("updateModelFromSource ignoring",r,i,t);return}var{dh:a}=i;if(this.pending.cancel(),ba(e)){var{settings:l}=e;this.pending.add(a.plot.Figure.create(new dt(a).makeFigureSettings(l,t))).then(s=>{Oo(i)&&i.setFigure(s)}).catch(this.handleLoadError)}this.updatePanelState()}updatePanelState(){var{sourcePanel:e}=this.props,{panelState:t,filterValueMap:r,settings:i}=this.state,{tableSettings:a}=t??{};if(e&&$0(e.props)&&W0(e.state)){var{inputFilters:l}=e.props,{panelState:s}=e.state;s!=null&&(a=fe.extractTableSettings(s,l))}this.setState({panelState:{settings:i,tableSettings:a,filterValueMap:Array.from(r)}})}handleError(){this.setState({isLoading:!1})}handleResize(){this.updateChart()}handleSettingsChanged(e){this.setState(t=>{var{settings:r}=t,i=sd(sd({},r),e);return It.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(){this.setState({isLoading:!1})}handleClearAllFilters(){this.setState({filterValueMap:new Map,filterMap:new Map}),this.updatePanelState()}openInputFilter(e){var{glEventHub:t}=this.props,{name:r,type:i}=e;t.emit(lt.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(),this.updateChart())})}sendColumnChange(){var{model:e}=this.state;if(e){var{glEventHub:t}=this.props;t.emit(lt.COLUMNS_CHANGED,this,Array.from(e.getFilterColumnMap().values()))}}getCoordinateForColumn(e){var t,r=Li.makeButtonClassName(e);if(!this.panelContainer.current)return null;var i=this.panelContainer.current.querySelector(".".concat(r)),a=(t=i?.getBoundingClientRect())!==null&&t!==void 0?t:null;if(a==null||a.width<=0||a.height<=0)return null;var l=a.left+a.width/2,s=a.bottom;return[l,s]}setFilterMap(e){It.debug("setFilterMap",e),this.setState(t=>{var r,{columnMap:i,filterMap:a}=t,l=null,s=new Map(t.filterValueMap);return e.forEach((o,u)=>{var{columnType:d,filterList:h}=o,v=i.get(u);if(!(v==null||v.type!==d)){if(h.length<1){It.debug("Ignoring empty filterList for column",u);return}var{value:m}=h[0];s.set(u,m),a.get(u)!==m&&(l===null&&(l=new Map(a)),l.set(u,m))}}),{filterValueMap:s,filterMap:(r=l)!==null&&r!==void 0?r:a}})}unsetFilterValue(e){this.setState(t=>{var{inputFilters:r}=this.props,{columnMap:i}=t,{filterMap:a,filterValueMap:l}=t;if(!l.has(e))return null;l=new Map(t.filterValueMap),l.delete(e);var s=this.getInputFilterColumnMap(i,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{columnMap:i}=r,a=new Map(r.filterValueMap),l=new Map(r.filterMap),s=t?{filterMap:l,filterValueMap:a}:{},o=0;o<e.length;o+=1){var{name:u,type:d,value:h}=e[o],v=i.get(u);v!=null&&v.type===d&&(h!=null&&l.get(u)!==h&&(h===""?l.delete(u):l.set(u,h),s.filterMap=l),a.has(u)&&(a.delete(u),s.filterValueMap=a))}return It.debug("updateInputFilters",s),s})}deleteInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;this.setState(r=>{for(var{columnMap:i,filterValueMap:a}=r,l=new Map(r.filterMap),s=t,o=0;o<e.length;o+=1){var{name:u,type:d}=e[o],h=i.get(u);if(h!=null&&h.type===d&&l.has(u)){var v=l.get(u);if(a.has(u)){var m=a.get(u);m!==v&&m!=null&&(s=!0,l.set(u,m))}else s=!0,l.delete(u)}}return It.debug("deleteInputFilters",s),s?{filterMap:l}:null})}updateColumnFilters(){this.setState(e=>{var{model:t}=e;return t?{columnMap:t.getFilterColumnMap()}:null})}updateFilters(){var{columnMap:e,filterMap:t,model:r}=this.state;L(r);var i=this.getWaitingInputMap(r.isFilterRequired(),e,t);if(r.setFilter(t),t.size>0&&i.size===0){var a=r.getDefaultTitle(),l=sr.join(Array.from(t.entries()).map(s=>{var[o,u]=s;return"".concat(o,": ").concat(u)}));a?r.setTitle("".concat(a,'<br><span style="font-size: smaller">').concat(l,"</span>")):r.setTitle(l),It.debug2("updateFilters filters set",t),this.setState({isLoading:!0})}else It.debug2("updateFilters waiting on inputs",i),r.setTitle(r.getDefaultTitle()),this.setState({isLoading:!1});this.updatePanelState()}pruneFilterMaps(){this.setState(e=>{var{columnMap:t}=e,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})}updateChart(){this.chart.current&&this.chart.current.updateDimensions()}render(){var{columnSelectionValidator:e,glContainer:t,glEventHub:r,inputFilters:i,isLinkerActive:a,links:l,metadata:s,settings:o,Plotly:u}=this.props,{columnMap:d,filterMap:h,error:v,model:m,isActive:f,isDisconnected:g,isLoaded:p,isLoading:C}=this.state,S;ba(s)?S=s.table:S=s.figure;var b=this.getInputFilterColumnMap(d,i),w=this.getLinkedColumnMap(d,l),y=m!=null?this.getWaitingInputMap(m.isFilterRequired(),d,h):new Map,T=m!=null?this.getWaitingFilterMap(m.isFilterRequired(),d,h,w,b):new Map,E=v!=null?"Unable to open chart. ".concat(v):void 0,P=y.size>0,O=d.size>0&&a;return c.jsx(Us,{className:re("iris-chart-panel",{"input-required":P}),componentPanel:this,glContainer:t,glEventHub:r,onHide:this.handleHide,onClearAllFilters:this.handleClearAllFilters,onResize:this.handleResize,onShow:this.handleShow,onTabBlur:this.handleTabBlur,onTabFocus:this.handleTabFocus,errorMessage:E,isDisconnected:g,isLoading:C,isLoaded:p,widgetName:S,widgetType:"Chart",children:c.jsxs("div",{ref:this.panelContainer,className:"chart-panel-container h-100 w-100",children:[c.jsx("div",{className:"chart-container h-100 w-100",children:p&&m&&c.jsx(jm,{isActive:f,model:m,settings:o,ref:this.chart,onDisconnect:this.handleDisconnect,onReconnect:this.handleReconnect,onUpdate:this.handleUpdate,onError:this.handleError,onSettingsChanged:this.handleSettingsChanged,Plotly:u})}),c.jsx(vr,{in:P&&!O&&!C,timeout:ze.transitionMs,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0,children:c.jsx(rc,{inputFilterMap:b,linkedColumnMap:w,onAdd:this.handleFilterAdd,onOpenLinker:this.handleOpenLinker,columnMap:d,waitingFilterMap:T,waitingInputMap:y})}),c.jsx(vr,{in:O,timeout:ze.transitionMs,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0,children:c.jsx(Li,{columns:this.getSelectorColumns(d,w,e),onColumnSelected:this.handleColumnSelected,onMouseEnter:this.handleColumnMouseEnter,onMouseLeave:this.handleColumnMouseLeave})})]})})}}Qt(qa,"defaultProps",{columnSelectionValidator:null,isLinkerActive:!1,source:null,sourcePanel:null,panelState:null,settings:{},containerRef:null});Qt(qa,"displayName","ChartPanel");Qt(qa,"COMPONENT","ChartPanel");var z0=(n,e)=>{var{localDashboardId:t,metadata:r}=e,i;r!=null&&(i=r.sourcePanelId);var a=ls(n,t),l=Kd(n,t),s=ss(n),o=os(n,t),u=s===wr.LINKER&&o===void 0;return{columnSelectionValidator:us(n,t),isLinkerActive:u,inputFilters:ds(n,t),links:ja(n,t),source:i!=null?a.get(i):void 0,sourcePanel:i!=null?l.get(i):void 0,settings:hs(n)}},K0=On(z0,{setActiveTool:Wd,setDashboardIsolatedLinkerPanelId:zd},null,{forwardRef:!0})(qa);const ki=K0;function or(n,e,t){return e=Y0(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Y0(n){var e=q0(n,"string");return typeof e=="symbol"?e:String(e)}function q0(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ca=ge.module("DropdownFilter"),X0=150;class _r extends R.Component{constructor(e){super(e),or(this,"dropdownRef",void 0),or(this,"getCompatibleColumns",be((a,l)=>a!=null?l.filter(s=>{var{type:o}=s;return o!==void 0&&x.isCompatibleType(o,a.columnType)}):[])),or(this,"getColumnOptions",be((a,l)=>{var s=-1,o=[];return o.push(c.jsx("option",{value:"-1",children:"Select a column"},"placeholder")),a.forEach((u,d)=>{o.push(c.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]})),or(this,"getSelectedOptionIndex",be((a,l)=>a.indexOf(l))),or(this,"getValueOptions",be(a=>[c.jsx("option",{value:"-1",children:_r.PLACEHOLDER},"-1"),...a.map((l,s)=>c.jsx("option",{value:s,children:l??"(null)"},"".concat(s,"/").concat(l)))])),or(this,"getItemLabel",we((a,l)=>{var{name:s,type:o}=a[l];if(l>0&&a[l-1].name===s||l<a.length-1&&a[l+1].name===s){var u=o.substring(o.lastIndexOf(".")+1);return"".concat(s," (").concat(u,")")}return s})),or(this,"sendUpdate",ct(()=>{var{onChange:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a({column:l,isValueShown:o,value:s??void 0})},X0)),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=Me.createRef();var{column:t,isValueShown:r,value:i}=e;this.state={column:t,id:nt(),selectedColumn:t,disableCancel:!r,isValueShown:r,value:i}}componentDidUpdate(e,t){var{source:r,values:i,isLoaded:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a&&(r!==e.source&&this.sourceUpdated(),i!==e.values&&s!==""&&!i.includes(s)&&this.resetValue(),o!==t.isValueShown&&o&&this.focusInput(),(l!==t.column||s!==t.value||o!==t.isValueShown)&&this.sendUpdate())}componentWillUnmount(){this.sendUpdate.flush()}handleColumnChange(e){var{value:t}=e.target;if(ca.debug2("handleColumnChange",t),t!=null&&parseInt(t,10)<0){this.setState({selectedColumn:null});return}var{columns:r,source:i}=this.props,a=this.getCompatibleColumns(i,r);this.setState({selectedColumn:a[parseInt(t,10)]})}handleDropdownKeyPress(e){e.key==="Enter"&&(e.preventDefault(),e.stopPropagation(),ca.debug2("handleDropdownKeyPress"),this.sendUpdate(),this.sendUpdate.flush())}handleValueChange(e){var{value:t}=e.target,r=parseInt(t,10),i="",{values:a}=this.props;r>=0&&r<a.length?i=a[r]:ca.debug2("Selected default item"),ca.debug2("handleValueChange",i),this.setState({value:i})}handleSettingsCancel(){this.setState(e=>{var{column:t}=e;return{selectedColumn:t,isValueShown:!0}})}handleSettingsSave(){this.setState(e=>{var{column:t,selectedColumn:r,value:i}=e;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{column:e}=this.state;this.setState({selectedColumn:e,isValueShown:!1})}focusInput(){var e;(e=this.dropdownRef.current)===null||e===void 0||e.focus()}resetValue(){this.setState({value:""})}clearFilter(){this.resetValue()}setFilterState(e){var{name:t,type:r,value:i,isValueShown:a}=e,l=t!=null&&r!=null?{name:t,type:r}:null;this.setState(s=>{var{value:o,isValueShown:u}=s;return{column:l,value:i??o,isValueShown:a??u}})}render(){var e,{columns:t,disableLinking:r,isLinkerActive:i,isLoaded:a,source:l,onColumnSelected:s,onSourceMouseEnter:o,onSourceMouseLeave:u,values:d,settingsError:h}=this.props,{column:v,disableCancel:m,id:f,isValueShown:g,selectedColumn:p,value:C}=this.state,S=l===null,b=this.getCompatibleColumns(l,t),w=l!=null,y=(e=l?.columnName)!==null&&e!==void 0?e:_r.SOURCE_BUTTON_PLACEHOLDER,T=v!=null?"".concat(v.name," Filter"):null,[E,P]=this.getColumnOptions(b,p),O=this.getValueOptions(d),D=this.getSelectedOptionIndex(d,C),N=!w||p==null,F=g&&!i,A="source-column-btn-".concat(f),j="filter-column-select-".concat(f);return c.jsxs(fs,{className:"dropdown-filter fill-parent-absolute",isFlipped:F,children:[c.jsx("div",{className:"dropdown-filter-settings-card",children:c.jsxs("div",{className:"dropdown-filter-card-content",children:[c.jsxs("div",{className:"dropdown-filter-settings-grid",children:[c.jsx("label",{htmlFor:A,children:"Source Column"}),c.jsx(nh,{id:A,isLinked:w,onClick:s,onMouseEnter:o,onMouseLeave:u,className:_r.SOURCE_BUTTON_CLASS_NAME,disabled:r,children:y}),c.jsx("div",{className:"text-muted small",children:"Select a source column for the list by linking to a table."}),c.jsx("label",{htmlFor:j,children:"Filter Column"}),c.jsx("select",{id:j,value:P,className:"custom-select",onChange:this.handleColumnChange,disabled:S,children:E}),c.jsx("div",{className:"text-muted small",children:"Dropdown filter control will apply its filter to all columns matching this name in this dashboard."})]}),h&&c.jsx("div",{className:"error-message text-center",children:h}),w&&c.jsxs("div",{className:"dropdown-filter-settings-buttons",children:[c.jsx(Y,{kind:"secondary",type:"button",onClick:this.handleSettingsCancel,disabled:m||g||i,tooltip:i?"Cancel disabled while linker open":void 0,children:"Cancel"}),c.jsx(Y,{kind:"primary",type:"button",className:"ml-2",onClick:this.handleSettingsSave,disabled:N||g||i,tooltip:i?"Save disabled while linker open":void 0,children:"Save"})]})]})}),c.jsx("div",{className:"dropdown-filter-value-card",onClick:this.handleBackgroundClick,"data-testid":"dropdown-filter-value-background",children:a&&c.jsxs(c.Fragment,{children:[c.jsx("div",{className:"dropdown-filter-column",children:c.jsx("div",{className:"dropdown-filter-column-title",children:T})}),c.jsxs("div",{className:"dropdown-filter-card-content",children:[c.jsx("div",{className:"dropdown-filter-value-input d-flex flex-column justify-content-center",children:c.jsx("select",{className:"custom-select",value:D,ref:this.dropdownRef,onChange:this.handleValueChange,onKeyPress:this.handleDropdownKeyPress,title:"Select Value",children:O})}),h&&c.jsx("div",{className:"error-message mt-3 text-center",children:h})]}),c.jsx("div",{className:"dropdown-filter-menu",children:c.jsx(Y,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:c.jsx(ae,{icon:Es,transform:"grow-4"}),tooltip:"Dropdown Filter Settings"})})]})})]})}}or(_r,"defaultProps",{column:null,disableLinking:!1,isLinkerActive:!1,isLoaded:!1,isValueShown:!1,settingsError:null,source:null,value:"",values:[],onColumnSelected:()=>{},onSourceMouseEnter:()=>{},onSourceMouseLeave:()=>{}});or(_r,"PLACEHOLDER","Select a value...");or(_r,"SOURCE_BUTTON_CLASS_NAME","btn-dropdown-filter-selector");or(_r,"SOURCE_BUTTON_PLACEHOLDER","Select a column");const od=_r;function Et(n,e,t){return e=Q0(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Q0(n){var e=Z0(n,"string");return typeof e=="symbol"?e:String(e)}function Z0(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Be=ge.module("DropdownFilterPanel"),J0=250,eT=(n,e)=>{var{localDashboardId:t}=e,r=me.getIdFromPanel({props:e}),i=ls(n,t),a=ja(n,t),l=ss(n),s=os(n,t),o=l===wr.LINKER&&(s===void 0||s===r),u=l===wr.LINKER&&s!==void 0&&s!==r;return{columns:Yd(n,t),columnSelectionValidator:us(n,t),dh:qd(n),isLinkerActive:o,disableLinking:u,settings:hs(n),panelTableMap:i,dashboardLinks:a}},tT=On(eT,null,null,{forwardRef:!0});class hr extends R.Component{constructor(e){super(e),Et(this,"dateTimeFormatter",void 0),Et(this,"dropdownFilterRef",void 0),Et(this,"panelContainer",void 0),Et(this,"pending",void 0),Et(this,"cleanup",void 0),Et(this,"columnFormats",void 0),Et(this,"getCachedValues",we((h,v,m)=>{var{type:f,name:g}=v;return f!==void 0&&x.isDateType(f)?h.map(p=>this.dateTimeFormatter.format(p)):h.map(p=>p!=null&&f!=null?m.getFormattedString(p,f,g):null)})),Et(this,"getCachedPanelLinks",we((h,v)=>{var m=me.getIdFromPanel(v);return Be.debug("getCachedPanelLinks",h,m),h.filter(f=>{var g;return((g=f.end)===null||g===void 0?void 0:g.panelId)===m})})),Et(this,"getCachedSource",we(h=>{Be.debug("getCachedSource",h);var v;if(h.length>0){var[m]=h;v=m.start,h.length>1&&Be.error("Filter has more that one link",h)}return v})),Et(this,"getCachedSourceTable",we((h,v)=>{var m;if(Be.debug("getCachedSourceTable",h,v),v==null)return null;var{panelId:f}=v;return(m=h.get(f))!==null&&m!==void 0?m:null})),Et(this,"getCachedSourceColumn",we((h,v)=>{var m;return Be.debug("getCachedSourceColumn",h,v),h==null||v==null?null:(m=h.columns.find(f=>{var{name:g,type:p}=f;return g===v.columnName&&p===v.columnType}))!==null&&m!==void 0?m:null})),this.handleChange=ct(this.handleChange.bind(this),J0),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=Me.createRef(),this.panelContainer=Me.createRef(),this.pending=new as;var{dh:t,panelState:r,settings:i}=e;this.columnFormats=kr.getColumnFormats(i),this.dateTimeFormatter=new wn(t,{showTimeZone:!1,showTSeparator:!0,defaultDateTimeFormatString:"yyyy-MM-dd HH:mm:ss.SSSSSSSSS"});var{value:a="",isValueShown:l=!1,name:s,type:o,timestamp:u}=r??{},d=s!=null&&o!=null?{name:s,type:o}:void 0;this.state={column:d,formatter:new Pr(t,this.columnFormats),valuesTable:void 0,valuesColumn:void 0,sourceSize:0,value:a,timestamp:u,values:[],isValueShown:l,wasFlipped:!1,skipUpdate:!1,panelState:r,isDisconnected:!1,isLoading:!1,isLoaded:!1,error:null}}componentDidMount(){this.updateValuesTable();var{dashboardLinks:e,panelTableMap:t}=this.props,{column:r,value:i,timestamp:a}=this.state,l=this.getSourceTable(t,e);if(l!==null&&this.startListeningToSource(l),r!=null){var{name:s,type:o}=r;this.sendUpdate(s,o,i,a)}}componentDidUpdate(e,t){var{dashboardLinks:r,panelTableMap:i,settings:a}=this.props,{valuesTable:l}=this.state,s=this.getSource(r),o=this.getSourceTable(i,r),u=this.getSource(e.dashboardLinks),d=this.getSourceTable(e.panelTableMap,e.dashboardLinks);a!==e.settings&&a!==void 0&&this.updateFormatterSettings(a),l!==t.valuesTable&&t.valuesTable!=null&&(Be.debug("Table in state modified, closing the old table."),t.valuesTable.close()),(o!==d||s!==u)&&this.updateValuesTable(),o!==d&&(d!==null&&this.stopListeningToSource(d),o!==null&&this.startListeningToSource(o))}componentWillUnmount(){var{dashboardLinks:e,panelTableMap:t}=this.props,{valuesTable:r}=this.state,i=this.getSourceTable(t,e);this.pending.cancel(),i!==null&&this.stopListeningToSource(i),this.cleanup&&this.cleanup(),r?.close()}getCoordinateForColumn(){var e;if(this.panelContainer.current==null)return null;var t=this.panelContainer.current.querySelector(".".concat(od.SOURCE_BUTTON_CLASS_NAME)),r=(e=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{sourceSize:e}=this.state;if(e>hr.MAX_TABLE_SIZE)return"Table too large, must have fewer than ".concat(hr.MAX_TABLE_SIZE," options.")}getPanelErrorMessage(){var{error:e}=this.state;return e!=null?"".concat(e):void 0}getSource(e){var t=this.getCachedPanelLinks(e,this);return this.getCachedSource(t)}getSourceTable(e,t){var 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{dh:t}=this.props;Be.debug("startListeningToSource"),e.addEventListener(t.Table.EVENT_FILTERCHANGED,this.handleSourceFilterChange),e.addEventListener(t.Table.EVENT_SORTCHANGED,this.handleSourceSortChange),e.addEventListener(t.Table.EVENT_SIZECHANGED,this.handleSourceSizeChange),e.addEventListener(t.Table.EVENT_DISCONNECT,this.handleDisconnect),e.addEventListener(t.Table.EVENT_RECONNECT,this.handleReconnect)}stopListeningToSource(e){var{dh:t}=this.props;Be.debug("stopListeningToSource"),e.removeEventListener(t.Table.EVENT_FILTERCHANGED,this.handleSourceFilterChange),e.removeEventListener(t.Table.EVENT_SORTCHANGED,this.handleSourceSortChange),e.removeEventListener(t.Table.EVENT_SIZECHANGED,this.handleSourceSizeChange),e.removeEventListener(t.Table.EVENT_DISCONNECT,this.handleDisconnect),e.removeEventListener(t.Table.EVENT_RECONNECT,this.handleReconnect)}handleChange(e){var{column:t,isValueShown:r=!1,value:i}=e,{name:a=void 0,type:l=void 0}=t??{},s=!0,o=Date.now();this.setState(u=>{var d,h,{panelState:v,timestamp:m,wasFlipped:f,skipUpdate:g}=u,p=v!=null&&r!==v.isValueShown&&a===v.name&&l===v.type&&i===v.value;return s=(d=!g&&r&&(!p||!f))!==null&&d!==void 0?d:!1,s||(o=m),{panelState:{isValueShown:r,name:a,type:l,value:i,timestamp:(h=o)!==null&&h!==void 0?h:void 0},timestamp:o,wasFlipped:p,skipUpdate:!1}},()=>{s&&this.sendUpdate(a??null,l,i,o)})}handleDisconnect(){this.setState({error:new Error("Table disconnected"),isDisconnected:!0,isLoading:!1})}handleReconnect(){this.setState({isDisconnected:!1,error:null})}handleSourceFilterChange(){this.applySourceFilters()}handleSourceSortChange(){this.applySourceSorts()}handleSourceSizeChange(e){var{detail:t}=e;this.setState({sourceSize:t})}handleColumnSelected(){Be.debug("handleColumnSelected");var{glEventHub:e}=this.props;e.emit(lt.COLUMN_SELECTED,this,hr.SOURCE_COLUMN)}handleClearAllFilters(){var e,t;(e=this.dropdownFilterRef)===null||e===void 0||(t=e.current)===null||t===void 0||t.clearFilter()}setPanelState(e){var t,r,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,{dashboardLinks:a}=this.props;if(this.getSource(a)==null){Be.debug("Ignore state update for unlinked filter",e);return}this.setState({skipUpdate:!i}),(t=this.dropdownFilterRef)===null||t===void 0||(r=t.current)===null||r===void 0||r.setFilterState(e)}sendUpdate(e,t,r,i){var a,{dashboardLinks:l,glEventHub:s}=this.props,o=(a=this.getSource(l))===null||a===void 0?void 0:a.panelId,u=o===null?[]:[o];Be.debug("sendUpdate",{name:e,type:t,value:r,timestamp:i,excludePanelIds:u}),s.emit(lt.FILTERS_CHANGED,this,{name:e,type:t,value:r??"=null",timestamp:i,excludePanelIds:u})}updateValuesTable(){var{dashboardLinks:e,panelTableMap:t}=this.props,r=this.getSource(e),i=this.getSourceTable(t,e);if(Be.debug("updateValuesTable",r,i),this.setState({values:[],valuesTable:void 0,error:null}),r==null){Be.debug("Filter unlinked."),this.setState({isLoading:!1,isLoaded:!0,isValueShown:!1,sourceSize:0});return}this.setState({isLoading:!0}),i!=null&&(this.setState({isLoaded:!1,sourceSize:i.size}),this.pending.add(i.copy(),a=>a.close()).then(a=>{this.updateViewportListener(a),this.setState({valuesTable:a})}).catch(a=>{st.isCanceled(a)||(Be.error(a),this.setState({isLoading:!1,error:a}))}))}applySourceSorts(){var{dashboardLinks:e,panelTableMap:t}=this.props,{valuesTable:r}=this.state,i=this.getSourceTable(t,e);if(Be.debug("applySourceSorts",i?.sort),r==null||i==null){Be.debug("Table not initialized");return}var a=[...i.sort];r.applySort(a),this.setViewport(r)}applySourceFilters(){var{dashboardLinks:e,panelTableMap:t}=this.props,{valuesTable:r}=this.state,i=this.getSourceTable(t,e);if(Be.debug("applySourceFilters",i?.filter),r==null||i==null){Be.debug("Table not initialized");return}var a=[...i.filter];r.applyFilter(a),this.setViewport(r)}updateViewportListener(e){var{dh:t}=this.props;if(Be.debug("updateViewportListener",e?.size),this.cleanup&&this.cleanup(),e==null){this.cleanup=void 0;return}this.cleanup=e.addEventListener(t.Table.EVENT_UPDATED,this.handleValuesTableUpdate),this.setViewport(e)}setViewport(e){var{dashboardLinks:t}=this.props,r=this.getValuesColumn(e,t);if(!r){Be.error("values column is null");return}e.setViewport(0,hr.MAX_TABLE_SIZE-1,[r])}updateFormatterSettings(e){var{dh:t}=this.props,r=kr.getColumnFormats(e);ht(this.columnFormats,r)||(this.columnFormats=r,this.setState({formatter:new Pr(t,r)}))}handleValuesTableUpdate(e){var{detail:t}=e,{rows:r}=t,{dashboardLinks:i}=this.props,{valuesTable:a}=this.state;if(!a){Be.error("valuesTable is null");return}var l=this.getValuesColumn(a,i);if(!l){Be.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{columnSelectionValidator:e}=this.props;e&&e(this,hr.SOURCE_COLUMN)}handleSourceMouseLeave(){var{columnSelectionValidator:e}=this.props;e&&e(this,void 0)}render(){var{columns:e,dashboardLinks:t,disableLinking:r,glContainer:i,glEventHub:a,isLinkerActive:l}=this.props,{column:s,formatter:o,isDisconnected:u,isValueShown:d,value:h,values:v,valuesColumn:m,isLoading:f,isLoaded:g}=this.state,p=this.getSource(t),C=this.getSettingsErrorMessage(),S=this.getPanelErrorMessage(),b=g&&m!=null?this.getCachedValues(v,m,o):[];return c.jsx(Us,{errorMessage:S,isLoading:f,isLoaded:g,isDisconnected:u,className:"iris-dropdown-filter-panel",componentPanel:this,glContainer:i,glEventHub:a,onClearAllFilters:this.handleClearAllFilters,widgetName:"Dropdown Filter",widgetType:"DropdownFilter",children:c.jsx("div",{ref:this.panelContainer,className:"dropdown-filter-container h-100 w-100 container",children:c.jsx(od,{ref:this.dropdownFilterRef,column:s,columns:e,isValueShown:d,isLinkerActive:l,disableLinking:r,isLoaded:g,settingsError:C,source:p,value:h,values:b,onChange:this.handleChange,onColumnSelected:this.handleColumnSelected,onSourceMouseEnter:this.handleSourceMouseEnter,onSourceMouseLeave:this.handleSourceMouseLeave})})})}}Et(hr,"displayName","DropdownFilterPanel");Et(hr,"COMPONENT","DropdownFilterPanel");Et(hr,"MAX_TABLE_SIZE",256);Et(hr,"SOURCE_COLUMN",Object.freeze({name:"FilterSource",type:null}));var rT=tT(hr);const yn=rT;function ud(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 va(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ud(Object(t),!0).forEach(function(r){Oi(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ud(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Oi(n,e,t){return e=nT(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function nT(n){var e=iT(n,"string");return typeof e=="symbol"?e:String(e)}function iT(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var We=ge.module("FilterSetManager"),aT="Enter name...",dd="No Available Filter Sets";class Ma extends R.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),Oi(this,"renameInputRef",Me.createRef()),Oi(this,"dropdownRef",Me.createRef()),Oi(this,"editDropdownRef",Me.createRef()),Oi(this,"isRenamingExistingSet",be((t,r)=>r!==void 0&&t.some(i=>{var{id:a}=i;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{isValueShown:e}=this.props;e?this.updateSelectedId():this.initSettingsScreen()}componentDidUpdate(e,t){var{isValueShown:r,filterSets:i}=this.props,{modifiedFilterSets:a}=this.state;if(e.isValueShown&&!r&&this.initSettingsScreen(),this.isNameInputScreen()&&!this.isNameInputScreen(t)&&this.focusRenameInput(),i!==e.filterSets)if(!r&&i.length>0&&e.filterSets.length===0&&a.length===0){var{onChange:l}=this.props;l({isValueShown:!0,selectedId:i[0].id})}else this.updateSelectedId()}initSettingsScreen(){var{filterSets:e,selectedId:t}=this.props;We.debug("initSettingsScreen",e,t),this.setState({modifiedFilterSets:[...e],editId:t})}updateSelectedId(){var{isValueShown:e,filterSets:t,selectedId:r,onChange:i}=this.props;if(We.debug("updateSelectedId",t,r),!!e&&!t.some(l=>{var{id:s}=l;return s===r})){var a=t.length===0;i({isValueShown:!a,selectedId:a?void 0:t[0].id})}}handleEditDropdownChange(e){var{value:t}=e.target;this.setState({editId:t})}handleFilterChange(e){var{value:t}=e.target,{isValueShown:r,onChange:i}=this.props;this.applyFilterSet(t),i({isValueShown:r,selectedId:t})}handleFilterApply(){var{selectedId:e}=this.props;this.applyFilterSet(e)}handleSettingsCancel(){var{onChange:e,selectedId:t,filterSets:r}=this.props;this.setState({modifiedFilterSets:[]}),r.length>0&&e({isValueShown:!0,selectedId:t})}handleSettingsSave(){var{onChange:e,onUpdateSets:t}=this.props,{modifiedFilterSets:r,editId:i}=this.state;this.setState({modifiedFilterSets:[]}),We.debug("Update sets",r,i),t(r),r.length>0&&e({isValueShown:!0,selectedId:i})}handleCaptureNewSet(){var{getFilterState:e}=this.props;Ma.animateScreenFlash();var t=nt(),r=e(),i={id:t,title:"",panels:r};We.debug("handleSetCreate",i),this.setState({nameInputValue:"",nameInputError:void 0,renameSet:i})}handleRenameCancel(){this.setState({renameSet:void 0})}handleRestoreFullStateChange(e){this.setState({restoreFullState:e.target.value==="true"})}getNameError(e){var t,{renameSet:r,modifiedFilterSets:i}=this.state,a=(t=e?.trim())!==null&&t!==void 0?t:"";if(a.length===0)return We.debug("Name cannot be empty",a),"Name cannot be empty";if(r!==void 0&&i.some(l=>{var{title:s,id:o}=l;return s===a&&o!==r.id}))return We.debug("Set with this name already exists",a),"Set with this name already exists"}handleRenameConfirm(){var e,{nameInputValue:t,renameSet:r,modifiedFilterSets:i,restoreFullState:a}=this.state;if(r===void 0){We.error("Renamed set undefined.");return}var l=this.getNameError(t);if(We.debug("handleRenameConfirm",t,l),l!==void 0){this.setState({nameInputError:l});return}var s=(e=t?.trim())!==null&&e!==void 0?e:"",o=va(va({},r),{},{title:s,restoreFullState:a}),u=i.findIndex(h=>{var{id:v}=h;return v===r.id}),d=[...i];u>=0?(d[u]=o,We.debug("Renamed existing set",d)):(d.push(o),We.debug("Added new set to modified sets",d)),this.setState({editId:o.id,modifiedFilterSets:d,renameSet:void 0})}handleSetDelete(){this.setState(e=>{var{editId:t,modifiedFilterSets:r}=e,i=r.findIndex(o=>{var{id:u}=o;return u===t});if(i<0)return We.error("Unable to find selected filterSet index",r,t),null;var a=r.filter(o=>{var{id:u}=o;return u!==t}),l=Math.max(0,Math.min(a.length-1,i-1)),s=a.length>0?a[l].id:void 0;return We.debug("Deleted selected set",t,r,a),We.debug("New selection",l,s),{modifiedFilterSets:a,editId:s}})}handleSetUpdate(){var{getFilterState:e}=this.props;Ma.animateScreenFlash();var t=e();this.setState(r=>{var{modifiedFilterSets:i,editId:a}=r;if(a===void 0)return We.error("Filter for update not selected."),null;var l=[...i],s=l.findIndex(o=>{var{id:u}=o;return u===a});return s<0?(We.error("Selected set for update not found."),null):(l[s]=va(va({},l[s]),{},{panels:t}),We.debug("Update set",l,t),{modifiedFilterSets:l})})}handleSetEdit(){this.setState(e=>{var{editId:t,modifiedFilterSets:r}=e,i=r.find(s=>{var{id:o}=s;return o===t});if(i===void 0)return We.error("Could not find selected set",t,r),null;var{title:a,restoreFullState:l=!1}=i;return{nameInputValue:a,nameInputError:void 0,renameSet:i,restoreFullState:l}})}handleSettingsClick(e){e.stopPropagation();var{onChange:t,selectedId:r}=this.props;t({isValueShown:!1,selectedId:r})}handleBackgroundClick(e){We.debug("handleBackgroundClick"),e.target!==this.dropdownRef.current&&this.focusInput()}handleNameInputChange(e){var{value:t}=e.target,r=this.getNameError(t);this.setState({nameInputValue:t,nameInputError:r})}handleNameInputKeyPress(e){var{key:t}=e;t==="Enter"&&(e.preventDefault(),this.handleRenameConfirm())}isNameInputScreen(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.state,{renameSet:t}=e;return t!==void 0}applyFilterSet(e){var{onApply:t,filterSets:r}=this.props;if(e===void 0){We.debug("No filter selected");return}var i=r.find(a=>{var{id:l}=a;return l===e});if(i===void 0){We.debug("Selected id not found in filterSets",e,r);return}We.debug("Apply filterSet",i),t(i)}focusInput(){var e;(e=this.dropdownRef.current)===null||e===void 0||e.focus()}focusRenameInput(){var e;(e=this.renameInputRef.current)===null||e===void 0||e.focus()}render(){var{nameInputValue:e,nameInputError:t,editId:r,renameSet:i,modifiedFilterSets:a,restoreFullState:l}=this.state,{isValueShown:s,filterSets:o,selectedId:u}=this.props,d=this.isNameInputScreen(),h=this.isRenamingExistingSet(a,i),v=a.length===0,m=!d&&v&&o.length===0,f=!d&&!m,g=c.jsxs("div",{className:"fa-layers mr-3",children:[c.jsx(ae,{icon:Ai,mask:fo,transform:"shrink-1 down-5 right-7"}),c.jsx(ae,{icon:Fn,className:"text-primary",transform:"shrink-6 down-5 right-7"})]}),p=c.jsxs("div",{className:"fa-layers",children:[c.jsx(ae,{icon:Ai,mask:fo,transform:"shrink-1 down-5 right-7"}),c.jsx(ae,{icon:bm,transform:"shrink-1 down-5 right-7"})]});return c.jsx("div",{className:"filter-set-manager fill-parent-absolute",children:c.jsxs(fs,{className:"w-100 h-100",isFlipped:s,children:[c.jsx("div",{className:"filter-set-manager-settings-card fill-parent-absolute",children:c.jsxs("div",{className:"filter-set-manager-card-content",children:[m&&c.jsxs("div",{children:[c.jsx(Y,{kind:"ghost",className:"btn btn-link no-underline",onClick:this.handleCaptureNewSet,icon:g,children:"Capture filter set"}),c.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."})]}),d&&c.jsxs("div",{className:"d-flex flex-column justify-content-center","data-testid":"edit-filter-set-container",children:[c.jsxs("div",{className:"form-group",children:[c.jsx("label",{children:h?"Edit set":"Name captured set"}),c.jsxs("div",{className:"name-input-container",children:[c.jsx("input",{type:"text",className:"input-set-name form-control",placeholder:aT,value:e,ref:this.renameInputRef,onChange:this.handleNameInputChange,onKeyPress:this.handleNameInputKeyPress,spellCheck:"false"}),c.jsx(Y,{"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:Cm}),c.jsx(Y,{"data-testid":"rename-cancel-button",kind:"ghost",className:"btn btn-link no-underline pt-2 pb-2",onClick:this.handleRenameCancel,tooltip:"Cancel",icon:Sm})]}),t!==void 0&&c.jsx("div",{className:"error-message",children:t})]}),c.jsx("div",{className:"form-group",children:c.jsxs(Ha,{onChange:this.handleRestoreFullStateChange,value:"".concat(l),children:[c.jsx(jr,{value:"false",children:"Restore only filters"}),c.jsx(jr,{value:"true",children:"Restore full table state"})]})})]}),f&&c.jsxs("div",{className:"filter-set-manager-settings-grid-1",children:[c.jsxs("div",{className:"form-group",children:[c.jsx("label",{children:"Edit filter sets"}),c.jsxs("div",{className:"filter-select-container",children:[c.jsxs("select",{"data-testid":"settings-card-filter-select",ref:this.editDropdownRef,value:r??"-1",className:"custom-select filter-value-select",onChange:this.handleEditDropdownChange,disabled:v,children:[v&&c.jsx("option",{value:"-1",disabled:!0,children:dd}),a.map(C=>{var{id:S,title:b}=C;return c.jsx("option",{value:S,children:b},S)})]}),c.jsx(Y,{kind:"ghost",onClick:this.handleSetUpdate,disabled:v,icon:p,tooltip:"Update"}),c.jsx(Y,{kind:"ghost",onClick:this.handleSetEdit,disabled:v,icon:Hi,tooltip:"Edit"}),c.jsx(Y,{kind:"ghost",onClick:this.handleSetDelete,disabled:v,icon:fr,tooltip:"Delete"})]})]}),c.jsx("div",{children:c.jsx(Y,{kind:"ghost",className:"btn btn-link no-underline",onClick:this.handleCaptureNewSet,icon:g,children:"Capture new filter set"})}),c.jsxs("div",{className:"py-3 text-right",children:[c.jsx(Y,{kind:"secondary",onClick:this.handleSettingsCancel,children:"Cancel"})," ",c.jsx(Y,{kind:"primary",onClick:this.handleSettingsSave,children:"Save"})]})]})]})},"front"),c.jsxs("div",{className:"filter-set-manager-value-card fill-parent-absolute",onClick:this.handleBackgroundClick,children:[c.jsx("div",{className:"filter-set-manager-column",children:c.jsx("div",{className:"filter-set-manager-column-title",children:"Filter sets"})}),c.jsx("div",{className:"filter-set-manager-card-content",children:c.jsx("div",{className:"filter-set-manager-value-input",children:c.jsxs("div",{className:"filter-select-container",children:[c.jsxs("select",{"data-testid":"value-card-filter-select",ref:this.dropdownRef,value:u,className:"custom-select filter-value-select",onChange:this.handleFilterChange,children:[o.length===0&&c.jsx("option",{value:"-1",disabled:!0,children:dd}),o.map(C=>{var{id:S,title:b}=C;return c.jsx("option",{value:S,children:b},S)})]}),c.jsx(Y,{"data-testid":"filter-apply-button",kind:"ghost",onClick:this.handleFilterApply,icon:Ss,tooltip:"Apply Filter Set"})]})})}),c.jsx("div",{className:"filter-set-manager-menu",children:c.jsx(Y,{kind:"ghost",className:"btn btn-link btn-link-icon m-2 px-2",onClick:this.handleSettingsClick,tooltip:"Settings",icon:c.jsx(ae,{icon:Es,transform:"grow-4"})})})]},"back")]})})}}const lT=Ma;function Vs(n){var e,t,r,i,a,{model:l,widgetName:s,glContainer:o,description:u}=n,d=((e=l?.rowCount)!==null&&e!==void 0?e:0)-((t=l?.pendingRowCount)!==null&&t!==void 0?t:0)-((r=l?.floatingBottomRowCount)!==null&&r!==void 0?r:0)-((i=l?.floatingTopRowCount)!==null&&i!==void 0?i:0),h=l?.displayString(d,"long"),v=(a=l?.columnCount)!==null&&a!==void 0?a:0,m=l?.displayString(v,"long");return c.jsxs(Ya,{widgetType:"Table",widgetName:s,glContainer:o,description:u,children:[c.jsx("hr",{className:"tab-tooltip-divider"}),c.jsx("span",{children:"Number of Columns"}),c.jsx("span",{className:"tab-tooltip-statistic-value",children:m}),c.jsx("span",{children:"Number of Rows"}),c.jsx("span",{className:"tab-tooltip-statistic-value",children:h})]})}Vs.propTypes={glContainer:$d.Container.isRequired,widgetName:Z.string.isRequired,description:Z.string};Vs.defaultProps={description:null};function nc(n){if(n==null)return!1;var e=n;return typeof e.table=="string"}function ic(n){if(n==null)return!1;var e=n;return typeof e.name=="string"}function hd(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?hd(Object(t),!0).forEach(function(r){tt(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):hd(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function tt(n,e,t){return e=sT(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function sT(n){var e=oT(n,"string");return typeof e=="symbol"?e:String(e)}function oT(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Sr=ge.module("IrisGridPanel"),uT=500,dT={IrisGrid:Xh,IrisGridTableModel:Qh,ContextMenuRoot:Iv};function cd(n){if(n==null)throw new Error("No metadata provided");if(ic(n))return n.name;if(nc(n))return n.table;throw new Error("Unable to determine table name from metadata: ".concat(n))}class Xn extends R.PureComponent{constructor(e){super(e),tt(this,"irisGrid",void 0),tt(this,"pluginRef",void 0),tt(this,"modelPromise",void 0),tt(this,"irisGridState",void 0),tt(this,"gridState",void 0),tt(this,"pluginState",void 0),tt(this,"irisGridUtils",void 0),tt(this,"getGridInputFilters",be((r,i)=>fe.getInputFiltersForColumns(r,i.filter(a=>{var{value:l,excludePanelIds:s}=a,o=me.getIdFromPanel(this);return l!=null&&(s==null||o!=null&&!s.includes(o))})))),tt(this,"getAlwaysFetchColumns",be((r,i)=>{for(var a=me.getIdFromPanel(this),l=new Set(i),s=0;s<r.length;s+=1){var{start:o}=r[s];o!=null&&o.panelId===a&&l.add(o.columnName)}return[...l]})),tt(this,"getPluginContent",be((r,i,a,l,s)=>{if(!i||!bn(i)||r==null||i.table==null)return null;var o={panel:this,onFilter:this.handlePluginFilter,onFetchColumns:this.handlePluginFetchColumns,user:a,workspace:l,components:dT};return c.jsx("div",{className:"iris-grid-plugin",children:c.jsx(r,Zr({ref:this.pluginRef,filter:this.handlePluginFilter,fetchColumns:this.handlePluginFetchColumns,model:i,table:i.table,onStateChange:this.handlePluginStateChange,pluginState:s},o))})})),tt(this,"getDehydratedIrisGridPanelState",be((r,i,a,l,s)=>fe.dehydrateIrisGridPanelState(r,{isSelectingPartition:i,partition:a,partitionColumn:l,advancedSettings:s}))),tt(this,"getDehydratedIrisGridState",be((r,i,a,l,s,o,u,d,h,v,m,f,g,p,C,S,b,w,y,T,E)=>(L(this.irisGridUtils),this.irisGridUtils.dehydrateIrisGridState(r,{advancedFilters:a,aggregationSettings:b,customColumnFormatMap:l,isFilterBarShown:s,metrics:{userColumnWidths:C,userRowHeights:S},quickFilters:o,customColumns:u,reverseType:d,rollupConfig:h,showSearchBar:v,searchValue:m,selectDistinctColumns:f,selectedSearchColumns:g,sorts:i,invertSearchColumns:p,pendingDataMap:w,frozenColumns:y,conditionalFormats:T,columnHeaderGroups:E})))),tt(this,"getDehydratedGridState",be((r,i,a,l,s)=>fe.dehydrateGridState(r,{isStuckToBottom:l,isStuckToRight:s,movedColumns:i,movedRows:a}))),tt(this,"getCachedPanelState",be((r,i,a,l)=>({irisGridPanelState:r,irisGridState:i,gridState:a,pluginState:l}))),tt(this,"savePanelState",ct(()=>{var{irisGridState:r,gridState:i,pluginState:a}=this;L(r);var{onPanelStateUpdate:l}=this.props,{model:s,panelState:o,isSelectingPartition:u,partition:d,partitionColumn:h,advancedSettings:v}=this.state,{advancedFilters:m,aggregationSettings:f,customColumnFormatMap:g,isFilterBarShown:p,quickFilters:C,customColumns:S,reverseType:b,rollupConfig:w,showSearchBar:y,searchValue:T,selectDistinctColumns:E,selectedSearchColumns:P,sorts:O,invertSearchColumns:D,metrics:N,pendingDataMap:F,frozenColumns:A,conditionalFormats:j,columnHeaderGroups:k}=r;L(s),L(N);var{userColumnWidths:B,userRowHeights:G}=N;L(i);var{isStuckToBottom:W,isStuckToRight:z,movedColumns:q,movedRows:V}=i,I=this.getCachedPanelState(this.getDehydratedIrisGridPanelState(s,u,d,h,v),this.getDehydratedIrisGridState(s,O,m,g,p,C,S,b,w,y,T,E,P,D,B,G,f,F,A,j,k),this.getDehydratedGridState(s,q,V,W,z),a);I!==o&&(Sr.debug("Saving panel state",this,I),this.setState({panelState:I}),l?.(I))},uT)),this.handleAdvancedSettingsChange=this.handleAdvancedSettingsChange.bind(this),this.handleColumnsChanged=this.handleColumnsChanged.bind(this),this.handleTableChanged=this.handleTableChanged.bind(this),this.handleColumnSelected=this.handleColumnSelected.bind(this),this.handleDataSelected=this.handleDataSelected.bind(this),this.handleError=this.handleError.bind(this),this.handleGridStateChange=this.handleGridStateChange.bind(this),this.handlePluginStateChange=this.handlePluginStateChange.bind(this),this.handlePartitionAppend=this.handlePartitionAppend.bind(this),this.handleCreateChart=this.handleCreateChart.bind(this),this.handleResize=this.handleResize.bind(this),this.handleShow=this.handleShow.bind(this),this.handleTabClicked=this.handleTabClicked.bind(this),this.handleDisconnect=this.handleDisconnect.bind(this),this.handleReconnect=this.handleReconnect.bind(this),this.handleLoadSuccess=this.handleLoadSuccess.bind(this),this.handleLoadError=this.handleLoadError.bind(this),this.isColumnSelectionValid=this.isColumnSelectionValid.bind(this),this.handleContextMenu=this.handleContextMenu.bind(this),this.handlePluginFilter=this.handlePluginFilter.bind(this),this.handlePluginFetchColumns=this.handlePluginFetchColumns.bind(this),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.irisGrid=Me.createRef(),this.pluginRef=Me.createRef();var{panelState:t}=e;this.pluginState=null,this.irisGridUtils=null,this.state={error:null,isDisconnected:!1,isLoaded:!1,isLoading:!0,isModelReady:!1,model:void 0,advancedFilters:new Map,aggregationSettings:{aggregations:[],showOnTop:!1},advancedSettings:new Map(Rh.DEFAULTS),customColumns:[],customColumnFormatMap:new Map,isFilterBarShown:!1,quickFilters:new Map,sorts:[],userColumnWidths:new Map,userRowHeights:new Map,reverseType:x.REVERSE_TYPE.NONE,movedColumns:[],movedRows:[],isSelectingPartition:!1,partition:null,partitionColumn:null,rollupConfig:void 0,showSearchBar:!1,searchValue:"",selectedSearchColumns:void 0,invertSearchColumns:!0,Plugin:void 0,pluginFilters:[],pluginFetchColumns:[],modelQueue:[],pendingDataMap:new Map,frozenColumns:void 0,panelState:t,irisGridStateOverrides:{},gridStateOverrides:{},isStuckToBottom:!1,isStuckToRight:!1,conditionalFormats:[],selectDistinctColumns:[]}}componentDidMount(){this.initModel()}componentDidUpdate(e,t){var{model:r}=this.state;r!==t.model&&(t.model!=null&&(this.stopModelListening(t.model),t.model.close()),r!=null&&this.startModelListening(r))}componentWillUnmount(){this.savePanelState.cancel(),this.modelPromise!=null&&(this.modelPromise.cancel(),this.modelPromise=void 0);var{model:e}=this.state;e&&(this.stopModelListening(e),e.close())}getTableName(){var{metadata:e}=this.props;return cd(e)}initModel(){this.setState({isModelReady:!1,isLoading:!0,error:null});var{makeModel:e}=this.props;this.modelPromise!=null&&this.modelPromise.cancel(),this.modelPromise=st.makeCancelable(e(),t=>t.close()),this.modelPromise.then(this.handleLoadSuccess).catch(this.handleLoadError)}handleLoadSuccess(e){var t=e,{panelState:r,irisGridStateOverrides:i}=this.state,a=[];if(this.irisGridUtils=new fe(t.dh),r!=null){var{irisGridState:l}=r,{aggregationSettings:s,customColumns:o,selectDistinctColumns:u=[],rollupConfig:d}=Zr(Zr({},l),i);o.length>0&&a.push(h=>{h.customColumns=o}),d!=null&&d.columns.length>0&&a.push(h=>{h.rollupConfig=fe.getModelRollupConfig(h.originalColumns,d,s)}),u.length>0&&a.push(h=>{h.selectDistinctColumns=u})}this.setState({model:t,modelQueue:a}),this.initModelQueue(t,a)}initModelQueue(e,t){var r=e;if(t.length===0){this.modelInitialized(r);return}var i=t.shift();Sr.debug("initModelQueue",i),i&&i(r),this.setState({modelQueue:t})}handleAdvancedSettingsChange(e,t){Sr.debug("handleAdvancedSettingsChange",e,t),this.setState(r=>{var{advancedSettings:i}=r;return i.get(e)===t?null:{advancedSettings:new Map(i).set(e,t)}})}handlePluginFilter(e){var t,r,{model:i}=this.state;L(i);var{columns:a,formatter:l}=i,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{columnSelectionValidator:t}=this.props;return t&&e?t(this,e):!1}handleGridStateChange(e,t){this.irisGridState=e,this.gridState=t,this.setState({isLoaded:!0,isLoading:!1}),this.savePanelState();var{glEventHub:r,onStateChange:i}=this.props;r.emit(ur.STATE_CHANGED,this),i?.(e,t)}handlePluginStateChange(e){var{irisGridState:t,gridState:r}=this;this.pluginState=e,t!==null&&r!==null&&this.savePanelState()}handleColumnsChanged(e){var{isModelReady:t,model:r,modelQueue:i}=this.state;t?this.sendColumnsChange(e.detail):(L(r),this.initModelQueue(r,i))}handleTableChanged(e){Sr.debug("handleTableChanged",e);var{glEventHub:t}=this.props,{detail:r}=e;t.emit(lt.TABLE_CHANGED,this,r)}handlePartitionAppend(e,t){var{glEventHub:r}=this.props,{name:i}=e,a=this.getTableName(),l="".concat(a," = ").concat(a,'.where("').concat(i,"=`").concat(t,'`")');r.emit(av.SEND_COMMAND,l,!1,!0)}handleCreateChart(e,t){this.savePanelState.flush(),this.setState(()=>null,()=>{var{glEventHub:r,inputFilters:i}=this.props,a=this.getTableName(),{panelState:l}=this.state,s=me.getIdFromPanel(this),o;l&&(o=fe.extractTableSettings(l,i)),r.emit(ur.CREATE_CHART,{metadata:{settings:e,sourcePanelId:s,table:a,tableSettings:o},table:bn(t)?t.table:void 0})})}handleColumnSelected(e){var{glEventHub:t}=this.props;t.emit(ur.COLUMN_SELECTED,this,e)}handleDataSelected(e,t){var{glEventHub:r}=this.props;r.emit(ur.DATA_SELECTED,this,t)}handleResize(){this.updateGrid()}handleShow(){this.updateGrid()}handleTabClicked(){this.irisGrid.current&&this.irisGrid.current.focus()}handleError(e){Sr.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){st.isCanceled(e)||this.handleError(e)}modelInitialized(e){var{glEventHub:t,loadPlugin:r}=this.props;if(this.modelPromise=void 0,this.loadPanelState(e),this.setState({isModelReady:!0}),bn(e)){var{table:i}=e,{pluginName:a}=i;if(a!==""&&r!=null&&a!=null){var l=r(a);this.setState({Plugin:l})}t.emit(lt.TABLE_CHANGED,this,i)}this.sendColumnsChange(e.columns)}handleClearAllFilters(){var e=this.irisGrid.current,{isDisconnected:t}=this.state;e!=null&&!t&&e.clearAllFilters()}sendColumnsChange(e){Sr.debug2("sendColumnsChange",e);var{glEventHub:t}=this.props;t.emit(lt.COLUMNS_CHANGED,this,e)}startModelListening(e){e.addEventListener(ve.EVENT.DISCONNECT,this.handleDisconnect),e.addEventListener(ve.EVENT.RECONNECT,this.handleReconnect),e.addEventListener(ve.EVENT.COLUMNS_CHANGED,this.handleColumnsChanged),e.addEventListener(ve.EVENT.TABLE_CHANGED,this.handleTableChanged)}stopModelListening(e){e.removeEventListener(ve.EVENT.DISCONNECT,this.handleDisconnect),e.removeEventListener(ve.EVENT.RECONNECT,this.handleReconnect),e.removeEventListener(ve.EVENT.COLUMNS_CHANGED,this.handleColumnsChanged),e.removeEventListener(ve.EVENT.TABLE_CHANGED,this.handleTableChanged)}getCoordinateForColumn(e){var t,r,i,{model:a}=this.state;if(!a)return null;var l=this.irisGrid.current,{gridWrapper:s}=l||{},o=(t=s?.getBoundingClientRect())!==null&&t!==void 0?t:null;if(o==null||o.width<=0||o.height<=0)return null;L(l);var{metrics:u}=l.state;L(u);var{columnHeaderHeight:d,allColumnXs:h,allColumnWidths:v,right:m,columnHeaderMaxDepth:f}=u,g=a.getColumnIndexByName(e);L(g);var p=l.getVisibleColumn(g),C=(r=h.get(p))!==null&&r!==void 0?r:0,S=(i=v.get(p))!==null&&i!==void 0?i:0,b=Math.max(o.left,Math.min(p>m?o.right:o.left+C+S*.5,o.right)),w=o.top+d*f;return[b,w]}setFilterMap(e){var t=this.irisGrid.current;t?.setFilterMap(e)}setAdvancedFilterMap(e){var t=this.irisGrid.current;t?.setAdvancedFilterMap(e)}setFilters(e){var{quickFilters:t,advancedFilters:r}=e;Sr.debug("setFilters",t,r);var{model:i,isDisconnected:a}=this.state,l=this.irisGrid.current;if(l==null||a){Sr.debug("Ignore setFilters, model disconnected");return}L(i);var{columns:s,formatter:o}=i,u=fe.changeFilterColumnNamesToIndexes(i.columns,t).filter(h=>{var[v]=h;return i.isFilterable(v)}),d=fe.changeFilterColumnNamesToIndexes(i.columns,r).filter(h=>{var[v]=h;return i.isFilterable(v)});L(this.irisGridUtils),l.clearAllFilters(),l.setFilters({quickFilters:this.irisGridUtils.hydrateQuickFilters(s,u,o.timeZone),advancedFilters:this.irisGridUtils.hydrateAdvancedFilters(s,d,o.timeZone)})}setStateOverrides(e){Sr.debug("setStateOverrides",e);var{irisGridState:t,gridState:r}=e;this.setState({irisGridStateOverrides:t,gridStateOverrides:r},()=>{this.initModel()})}unsetFilterValue(){}loadPanelState(e){var{panelState:t,irisGridStateOverrides:r,gridStateOverrides:i}=this.state;if(t!=null)try{var{gridState:a,irisGridState:l,irisGridPanelState:s}=t,o=Zr({},r),{quickFilters:u,advancedFilters:d}=o;u&&(o.quickFilters=fe.changeFilterColumnNamesToIndexes(e.columns,u)),d&&(o.advancedFilters=fe.changeFilterColumnNamesToIndexes(e.columns,d));var{isSelectingPartition:h,partition:v,partitionColumn:m,advancedSettings:f}=fe.hydrateIrisGridPanelState(e,s);L(this.irisGridUtils);var{advancedFilters:g,customColumns:p,customColumnFormatMap:C,isFilterBarShown:S,quickFilters:b,reverseType:w,rollupConfig:y,aggregationSettings:T,sorts:E,userColumnWidths:P,userRowHeights:O,showSearchBar:D,searchValue:N,selectDistinctColumns:F,selectedSearchColumns:A,invertSearchColumns:j,pendingDataMap:k,frozenColumns:B,conditionalFormats:G,columnHeaderGroups:W}=this.irisGridUtils.hydrateIrisGridState(e,Zr(Zr({},l),o)),{isStuckToBottom:z,isStuckToRight:q,movedColumns:V,movedRows:I}=fe.hydrateGridState(e,Zr(Zr({},a),i),l.customColumns);this.setState({advancedFilters:g,advancedSettings:f,conditionalFormats:G,customColumns:p,customColumnFormatMap:C,isFilterBarShown:S,isSelectingPartition:h,movedColumns:V,movedRows:I,partition:v,partitionColumn:m,quickFilters:b,reverseType:w,rollupConfig:y,aggregationSettings:T,sorts:E,userColumnWidths:P,userRowHeights:O,showSearchBar:D,searchValue:N,selectDistinctColumns:F,selectedSearchColumns:A,invertSearchColumns:j,pendingDataMap:k,frozenColumns:B,isStuckToBottom:z,isStuckToRight:q,columnHeaderGroups:W})}catch(_){Sr.error("loadPanelState failed to load panelState",t,_)}}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,{children:r,glContainer:i,glEventHub:a,columnSelectionValidator:l,getDownloadWorker:s,inputFilters:o,links:u,metadata:d,panelState:h,user:v,workspace:m,settings:f,theme:g}=this.props,{advancedFilters:p,aggregationSettings:C,advancedSettings:S,conditionalFormats:b,customColumns:w,customColumnFormatMap:y,error:T,isDisconnected:E,isFilterBarShown:P,isSelectingPartition:O,isStuckToBottom:D,isStuckToRight:N,isLoaded:F,isLoading:A,isModelReady:j,model:k,movedColumns:B,movedRows:G,partition:W,partitionColumn:z,quickFilters:q,reverseType:V,rollupConfig:I,sorts:_,userColumnWidths:H,userRowHeights:X,showSearchBar:Q,searchValue:ne,selectDistinctColumns:se,selectedSearchColumns:ie,invertSearchColumns:de,Plugin:he,pluginFilters:Le,pluginFetchColumns:Ze,pendingDataMap:Je,frozenColumns:Ye,columnHeaderGroups:Ue}=this.state,et=T!=null?"Unable to open table. ".concat(T):void 0,De=cd(d),it=(e=k?.description)!==null&&e!==void 0?e:void 0,mt=(t=h?.pluginState)!==null&&t!==void 0?t:null,$t=r??this.getPluginContent(he,k,v,m,mt),{permissions:Pt}=v,{canCopy:Rr,canDownloadCsv:tr}=Pt;return c.jsx(Us,{errorMessage:et,isDisconnected:E,isLoading:A,isLoaded:F,className:"iris-grid-panel",glContainer:i,glEventHub:a,onClearAllFilters:this.handleClearAllFilters,onResize:this.handleResize,onShow:this.handleShow,onTabFocus:this.handleShow,onTabClicked:this.handleTabClicked,widgetName:De,widgetType:"Table",description:it,componentPanel:this,renderTabTooltip:()=>c.jsx(Vs,{model:k,widgetName:De,glContainer:i,description:it}),children:j&&k&&c.jsx(Xh,{advancedFilters:p,aggregationSettings:C,advancedSettings:S,alwaysFetchColumns:this.getAlwaysFetchColumns(u,Ze),columnAllowedCursor:"linker",columnNotAllowedCursor:"linker-not-allowed",customColumns:w,customColumnFormatMap:y,columnSelectionValidator:this.isColumnSelectionValid,conditionalFormats:b,inputFilters:this.getGridInputFilters(k.columns,o),applyInputFiltersOnInit:h==null,isFilterBarShown:P,isSelectingColumn:l!=null,isSelectingPartition:O,isStuckToBottom:D,isStuckToRight:N,movedColumns:B,movedRows:G,partition:W,partitionColumn:z,quickFilters:q,reverseType:V,rollupConfig:I,settings:f,sorts:_,userColumnWidths:H,userRowHeights:X,model:k,showSearchBar:Q,searchValue:ne,selectedSearchColumns:ie,selectDistinctColumns:se,invertSearchColumns:de,onColumnSelected:this.handleColumnSelected,onCreateChart:this.handleCreateChart,onDataSelected:this.handleDataSelected,onError:this.handleError,onPartitionAppend:this.handlePartitionAppend,onStateChange:this.handleGridStateChange,onContextMenu:this.handleContextMenu,onAdvancedSettingsChange:this.handleAdvancedSettingsChange,customFilters:Le,pendingDataMap:Je,canCopy:Rr,canDownloadCsv:tr,ref:this.irisGrid,getDownloadWorker:s,frozenColumns:Ye,theme:g,columnHeaderGroups:Ue,children:$t})})}}tt(Xn,"defaultProps",{onStateChange:()=>{},onPanelStateUpdate:()=>{}});tt(Xn,"displayName","IrisGridPanel");tt(Xn,"COMPONENT","IrisGridPanel");var hT=(n,e)=>{var{localDashboardId:t=ov}=e;return{inputFilters:ds(n,t),links:ja(n,t),columnSelectionValidator:us(n,t),user:lv(n),workspace:sv(n),settings:hs(n)}},cT=On(hT,null,null,{forwardRef:!0})(Xn);const Qn=cT;function Fi(n,e,t){return e=vT(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function vT(n){var e=mT(n,"string");return typeof e=="symbol"?e:String(e)}function mT(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var vd=ge.module("InputFilter"),fT=150;class Zn extends R.Component{constructor(e){super(e),Fi(this,"inputRef",void 0),Fi(this,"getItemLabel",we((a,l)=>{var{name:s,type:o}=a[l];if(l>0&&a[l-1].name===s||l<a.length-1&&a[l+1].name===s){var u=o.substring(o.lastIndexOf(".")+1);return"".concat(s," (").concat(u,")")}return s})),Fi(this,"sendUpdate",ct(()=>{var{onChange:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a({column:l,isValueShown:o,value:s})},fT)),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=Me.createRef();var{column:t,isValueShown:r,value:i}=e;this.state={column:t,selectedColumn:t,value:i,isValueShown:r}}componentDidUpdate(e,t){var{column:r}=this.props,{column:i,value:a,isValueShown:l}=this.state;r!==e.column&&this.setState({column:r,selectedColumn:r}),l!==void 0&&l&&l!==t.isValueShown&&this.focusInput(),(i!==t.column||a!==t.value||l!==t.isValueShown)&&this.sendUpdate()}componentWillUnmount(){this.sendUpdate.flush()}handleColumnChange(e){var{columns:t}=this.props,{value:r}=e.target,i=t[parseInt(r,10)];vd.debug2("handleColumnChange",i),this.setState({selectedColumn:i,value:void 0})}handleInputKeyPress(e){e.key==="Enter"&&(e.preventDefault(),e.stopPropagation(),this.setState(t=>{var{value:r}=t;return r==null?{value:""}:null},()=>{this.sendUpdate(),this.sendUpdate.flush()}))}handleValueChange(e){var{value:t}=e.target;vd.debug2("handleValueChange",t),this.setState({value:t})}handleSettingsCancel(){var{column:e}=this.state;this.setState({selectedColumn:e,isValueShown:!0})}handleSettingsSave(){var{selectedColumn:e}=this.state;this.setState({column:e,isValueShown:!0})}handleSettingsClick(e){var{column:t}=this.state;this.setState({selectedColumn:t,isValueShown:!1}),e.stopPropagation()}handleBackgroundClick(e){e.target!==this.inputRef.current&&this.focusInput()}focusInput(){this.inputRef.current!==null&&(this.inputRef.current.select(),this.inputRef.current.focus())}clearFilter(){this.setState({value:""})}setFilterState(e){var{name:t,type:r,value:i,isValueShown:a}=e,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{columns:e}=this.props,{column:t,isValueShown:r,selectedColumn:i,value:a}=this.state,l=a==null||a.length===0?Zn.PLACEHOLDER.length:a.length,s=null;if(t!=null){var o=e.findIndex(u=>u.name===t.name&&u.type===t.type);s=o>=0?this.getItemLabel(e,o):t.name}return c.jsxs(fs,{className:"input-filter fill-parent-absolute",isFlipped:r??!1,children:[c.jsx("div",{className:"input-filter-settings-card",children:c.jsxs("div",{className:"input-filter-settings-content",children:[c.jsxs("div",{className:"input-filter-settings-grid",children:[c.jsx("label",{children:"Filter Column"}),c.jsxs("select",{value:e.findIndex(u=>u.name===i?.name&&u.type===i?.type),className:"custom-select",onChange:this.handleColumnChange,children:[e.map((u,d)=>c.jsx("option",{value:d,children:this.getItemLabel(e,d)},"".concat(u.name,"/").concat(u.type))),e.length===0&&c.jsx("option",{value:"-1",disabled:!0,children:"No Available Columns"})]}),c.jsx("div",{className:"text-muted small",children:"Input filter control will apply its filter to all columns matching this name in this dashboard."})]}),c.jsxs("div",{className:"input-filter-settings-buttons",children:[c.jsx(Y,{kind:"secondary",onClick:this.handleSettingsCancel,disabled:t==null,children:"Cancel"}),c.jsx(Y,{kind:"primary",className:"ml-2",onClick:this.handleSettingsSave,disabled:i==null,children:"Save"})]})]})}),c.jsxs("div",{className:"input-filter-value-card",onClick:this.handleBackgroundClick,children:[c.jsx("div",{className:"input-filter-column",children:c.jsxs("div",{className:"input-filter-column-title",children:[s," Filter"]})}),c.jsx("div",{className:"d-flex justify-content-center align-items-center h-100 w-100",children:c.jsx("div",{className:"input-filter-value-input d-flex flex-column justify-content-center",children:c.jsx("input",{type:"text",ref:this.inputRef,placeholder:Zn.PLACEHOLDER,value:a??"",onChange:this.handleValueChange,onKeyPress:this.handleInputKeyPress,style:{width:"".concat(l+3,"ch")},spellCheck:"false"})})}),c.jsx("div",{className:"input-filter-menu",children:c.jsx(Y,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:c.jsx(ae,{icon:Es,transform:"grow-4"}),tooltip:"Input Filter Settings"})})]})]})}}Fi(Zn,"PLACEHOLDER","Enter value...");Fi(Zn,"defaultProps",{column:null,isValueShown:!1,value:null});const gT=Zn;function Xa(n,e,t){return e=pT(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function pT(n){var e=CT(n,"string");return typeof e=="symbol"?e:String(e)}function CT(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ST=250;class Qa extends R.Component{constructor(e){super(e),Xa(this,"inputFilterRef",void 0),this.handleChange=ct(this.handleChange.bind(this),ST),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.inputFilterRef=Me.createRef();var{panelState:t}=e,{value:r,isValueShown:i=!1,name:a,type:l,timestamp:s}=t??{};this.state={columns:[],column:a!=null&&l!=null?{name:a,type:l}:void 0,value:r,timestamp:s,isValueShown:i,wasFlipped:!1,skipUpdate:!1,panelState:t}}componentDidMount(){this.updateColumns();var{column:e,value:t,timestamp:r}=this.state;if(e!=null){var{name:i,type:a}=e;this.sendUpdate(i,a,t,r)}}componentDidUpdate(e){var{columns:t}=this.props;t!==e.columns&&this.updateColumns()}handleChange(e){var{column:t,isValueShown:r=!1,value:i}=e,a,l;t!=null&&({name:a,type:l}=t);var s=!0,o=Date.now();this.setState(u=>{var d,{panelState:h,timestamp:v,wasFlipped:m,skipUpdate:f}=u,g=h!=null&&r!==h.isValueShown&&a===h.name&&l===h.type&&i===h.value;return s=(d=!f&&r&&(!g||!m))!==null&&d!==void 0?d:!1,s||(o=v),{panelState:{isValueShown:r,name:a,type:l,value:i,timestamp:o},timestamp:o,wasFlipped:g,skipUpdate:!1}},()=>{s&&this.sendUpdate(a,l,i,o)})}handleClearAllFilters(){var e;(e=this.inputFilterRef.current)===null||e===void 0||e.clearFilter()}sendUpdate(e,t,r,i){var{glEventHub:a}=this.props;a.emit(lt.FILTERS_CHANGED,this,{name:e,type:t,value:r,timestamp:i})}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{columns:e}=this.props;e!=null&&this.setState(t=>{var{column:r}=t;return r==null&&e.length>0?{columns:[...e],column:e[0]}:r!=null&&!e.find(i=>{var{name:a,type:l}=i;return r.name===a&&r.type===l})?{columns:[...e,r]}:{columns:[...e]}})}render(){var{glContainer:e,glEventHub:t}=this.props,{column:r,columns:i,isValueShown:a,value:l}=this.state;return c.jsx(ka,{className:"iris-input-filter-panel",componentPanel:this,glContainer:e,glEventHub:t,onClearAllFilters:this.handleClearAllFilters,isClonable:!0,isRenamable:!0,children:c.jsx(gT,{ref:this.inputFilterRef,column:r,columns:i,onChange:this.handleChange,isValueShown:a,value:l})})}}Xa(Qa,"defaultProps",{panelState:null});Xa(Qa,"COMPONENT","InputFilterPanel");Xa(Qa,"displayName","InputFilterPanel");var bT=(n,e)=>{var{localDashboardId:t}=e;return{columns:Yd(n,t)}},wT=On(bT,null,null,{forwardRef:!0})(Qa);const Ni=wT;function md(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 ma(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?md(Object(t),!0).forEach(function(r){Bs(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):md(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Bs(n,e,t){return e=yT(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function yT(n){var e=TT(n,"string");return typeof e=="symbol"?e:String(e)}function TT(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var gt=ge.module("FilterSetManagerPanel");function ET(n){return n.setPanelState!=null}class Jn extends R.Component{static changeFilterIndexesToColumnNames(e,t){return t.map(r=>{var[i,a]=r;if(i>=e.columns.length)return null;var{name:l}=e.columns[i];return{name:l,filter:a}}).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{panelState:t,filterSets:r}=e,{selectedId:i=r.length>0?r[0].id:void 0,isValueShown:a=!1}=t??{};this.state={selectedId:i,isValueShown:a,panelState:t}}getFilterState(){var{dashboardOpenedPanelMap:e}=this.props,t=[];return[...e.keys()].forEach(r=>{var i=e.get(r);if(i===void 0){gt.error("Could not get panel",i);return}var a=me.getComponentNameFromPanel(i),l=me.getIdFromPanel(i);gt.debug("Panel:",i,a);var{glContainer:s=null}=i.props;if(s==null){gt.error("Could not get panel container",i);return}var o=me.getComponentConfigFromContainer(s);if(o==null){gt.error("Could not get component config from container",s);return}var u=me.getPanelComponentState(o);if(u==null){gt.debug("Panel state is null ".concat(l));return}switch(a){case me.getComponentName(Xn):{var d;l!=null&&(d=this.getIrisGridPanelFilters(l,u)),d!=null&&t.push({panelId:l,type:a,state:d});break}case me.getComponentName(Ni):case me.getComponentName(yn):{var{isValueShown:h,name:v,type:m,value:f}=u;t.push({panelId:l,type:a,state:{isValueShown:h,name:v,type:m,value:f}});break}}}),t}getIrisGridPanelFilters(e,t){var{panelTableMap:r}=this.props,i=r.get(e);if(i==null)return gt.error("Unable to get table for panel ".concat(e,".")),null;var{irisGridState:a={advancedFilters:void 0,quickFilters:void 0},gridState:l={}}=t,{advancedFilters:s,quickFilters:o}=a,u;s&&(u=Jn.changeFilterIndexesToColumnNames(i,s));var d;return o&&(d=Jn.changeFilterIndexesToColumnNames(i,o)),{irisGridState:ma(ma({},a),{},{advancedFilters:u,quickFilters:d}),gridState:ma({},l)}}handleGetFilterState(){return this.getFilterState()}handleChange(e){var{isValueShown:t,selectedId:r}=e;gt.debug("handleChange",t,r),this.setState({isValueShown:t,selectedId:r}),this.updatePanelState()}handleFilterApply(e){var{dashboardOpenedPanelMap:t}=this.props,{panels:r,restoreFullState:i=!1}=e;gt.debug("Apply filters from filter set",e),r.forEach(a=>{var{panelId:l,type:s,state:o}=a;if(l==null){gt.debug("panel is null",l);return}if(!t.has(l)){gt.debug("Ignore closed panel",l);return}gt.debug("Apply panel filters",l,s,o);var u=t.get(l);switch(s){case me.getComponentName(Xn):this.restoreIrisGridFilters(u,o,i);break;case me.getComponentName(Ni):case me.getComponentName(yn):this.restoreInputFilterState(u,o);break}})}handleSetsUpdate(e){var{setDashboardFilterSets:t,localDashboardId:r}=this.props;gt.debug("Saving updated sets",e),t(r,[...e])}updatePanelState(){this.setState(e=>{var{selectedId:t,isValueShown:r}=e;return{panelState:{selectedId:t,isValueShown:r}}})}restoreIrisGridFilters(e,t,r){var{irisGridState:i={},advancedFilters:a=[],quickFilters:l=[]}=t,{advancedFilters:s=a,quickFilters:o=l}=i,{panelTableMap:u}=this.props,d=me.getIdFromPanel(e);if(d==null){gt.error("Panel Id is null.");return}var h=u.get(d);if(h==null){gt.error("Unable to get table for panel ".concat(d,"."));return}gt.debug("restoreIrisGridFilters",d,t,r),r?e.setStateOverrides(t):e.setFilters({quickFilters:o,advancedFilters:s})}restoreInputFilterState(e,t){var r=ma({},t);delete r.isValueShown,gt.debug("restoreInputFilterState",e,r),e&&ET(e)&&e.setPanelState(r)}render(){var{glContainer:e,glEventHub:t,filterSets:r}=this.props,{isValueShown:i,selectedId:a}=this.state;return c.jsx(ka,{className:"filter-set-manager-panel",componentPanel:this,glContainer:e,glEventHub:t,isClonable:!0,isRenamable:!0,children:c.jsx("div",{className:"input-filter-container h-100 w-100 container",children:c.jsx(lT,{onChange:this.handleChange,onApply:this.handleFilterApply,onUpdateSets:this.handleSetsUpdate,isValueShown:i,filterSets:r,selectedId:a,getFilterState:this.handleGetFilterState})})})}}Bs(Jn,"defaultProps",{panelState:null});Bs(Jn,"COMPONENT","FilterSetManagerPanel");var OT=(n,e)=>{var{localDashboardId:t}=e;return{filterSets:dv(n,t),dashboardOpenedPanelMap:Kd(n,t),dashboardInputFilters:ds(n,t),panelTableMap:ls(n,t)}},PT=On(OT,{setDashboardFilterSets:uv},null,{forwardRef:!0})(Jn);const _l=PT;function RT(n,e,t){return e=DT(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function DT(n){var e=FT(n,"string");return typeof e=="symbol"?e:String(e)}function FT(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class ac extends R.PureComponent{render(){var{isEditing:e,children:t,onDoubleClick:r}=this.props;return c.jsxs("div",{className:"markdown-editor-container h-100 w-100",onDoubleClick:r,children:[c.jsx("div",{className:re("text-muted","edit-hint",{viewing:e===void 0||!e}),children:c.jsxs("span",{children:["double-click to edit ",c.jsx(ae,{icon:Hi})]})}),t]})}}RT(ac,"defaultProps",{isEditing:!1});function NT(n,e,t){return e=IT(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function IT(n){var e=AT(n,"string");return typeof e=="symbol"?e:String(e)}function AT(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var MT=ge.module("MarkdownStartPage");class lc extends R.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(MT.debug("delete markdown: ",e),e!==void 0){var{onDelete:t}=this.props;t(e)}this.setState({isDeleteModalShown:!1,toBeDeleted:void 0})}render(){var{closedMarkdowns:e,onOpen:t,onCreate:r}=this.props,{isDeleteModalShown:i,toBeDeleted:a}=this.state;return c.jsx("div",{className:"markdown-panel-start-page h-100 w-100",children:c.jsxs("div",{className:"markdown-panel-start-page-container",children:[c.jsxs("div",{className:"markdown-panel-start-list",children:[c.jsx("h3",{className:"list-title",children:"Start"}),c.jsx("div",{className:"list-item",children:c.jsx(Y,{kind:"ghost",className:"title",onClick:r,children:"New Markdown Note"})})]}),c.jsxs("div",{className:"markdown-panel-start-list",children:[c.jsx("h3",{className:"list-title",children:"Recently Closed from Dashboard"}),e.map(l=>c.jsxs("div",{className:"list-item",children:[c.jsx(Y,{kind:"ghost",className:"title",onClick:()=>t(l),children:l.title}),c.jsx("button",{className:"btn-link icon",type:"button",onClick:()=>{this.handleDeleteButtonClick(l)},children:c.jsx(ae,{icon:fr})})]},l.id)),c.jsxs(sh,{isOpen:i,toggle:this.handleDeleteModalClose,className:"modal-dialog-centered markdown-delete-modal theme-bg-light",children:[c.jsx(oh,{children:"Are you sure you want to permanently delete this note?"}),c.jsx(uh,{children:"You can't undo this action."}),c.jsxs(Av,{children:[c.jsx(Y,{kind:"secondary",onClick:this.handleDeleteModalClose,children:"Cancel"}),c.jsx(Y,{kind:"danger",onClick:()=>{this.handleDeleteMarkdown(a)},children:"Delete"})]})]})]})]})})}}NT(lc,"defaultProps",{closedMarkdowns:[],onOpen:()=>{},onCreate:()=>{},onDelete:()=>{}});const xT=lc;function sc(n,e,t){return e=LT(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function LT(n){var e=kT(n,"string");return typeof e=="symbol"?e:String(e)}function kT(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var jT=n=>{var{children:e,className:t}=n,r=t!=null&&t!==void 0&&t.startsWith("language-")?t.substring(9):"plaintext";return c.jsx("pre",{children:c.jsx("code",{children:c.jsx(hv,{language:r,children:Me.Children.map(e,i=>typeof i=="string"?i.trim():i)})})})};class oc extends R.PureComponent{constructor(e){super(e),sc(this,"container",void 0),this.container=null}render(){var{isEditing:e,content:t,onEditorInitialized:r}=this.props;return c.jsx("div",{className:"markdown-editor-container",ref:i=>{this.container=i},children:e?c.jsx(Gd,{settings:{language:"markdown",value:t,lineNumbers:"off"},onEditorInitialized:r}):c.jsx(ev,{components:{code:jT},children:t})})}}sc(oc,"defaultProps",{isEditing:!1,content:""});function Ii(n,e,t){return e=_T(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function _T(n){var e=HT(n,"string");return typeof e=="symbol"?e:String(e)}function HT(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var fa=ge.module("MarkdownPanel");class Gs extends R.Component{constructor(e){super(e),Ii(this,"markdownEditor",void 0),Ii(this,"editor",void 0),Ii(this,"getClosedMarkdowns",be(i=>i.filter(a=>a.component==="MarkdownPanel").reverse())),this.handleContainerDoubleClick=this.handleContainerDoubleClick.bind(this),this.handleCreateMarkdown=this.handleCreateMarkdown.bind(this),this.handleDeleteMarkdown=this.handleDeleteMarkdown.bind(this),this.handleOpenMarkdown=this.handleOpenMarkdown.bind(this),this.handleEditorInitialized=this.handleEditorInitialized.bind(this),this.handleEditorBlur=this.handleEditorBlur.bind(this),this.handleEditorResize=this.handleEditorResize.bind(this);var{panelState:t}=e,r=null;t!=null&&t.content!=null&&({content:r}=t),this.state={isStartPageShown:r==null,isEditing:!1,content:r,panelState:t},this.markdownEditor=null}setEditorPosition(e){L(this.markdownEditor);var{container:t}=this.markdownEditor;if(this.editor&&t){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{isEditing:t}=this.state,r=e.clientY;t||this.setState({isEditing:!0},()=>{this.setEditorPosition(r)})}handleEditorInitialized(e){fa.debug("Markdown Editor Initialized..."),this.editor=e}handleCreateMarkdown(){fa.debug("create markdown..."),this.setState({isStartPageShown:!1,content:"",isEditing:!0,panelState:{content:""}},()=>{this.editor!=null&&this.editor.focus!=null&&this.editor.focus()})}handleOpenMarkdown(e){fa.debug("open markdown...",e);var{glContainer:t,glEventHub:r}=this.props,i=me.getComponentConfigFromContainer(t);r.emit(At.REOPEN,e,i)}handleDeleteMarkdown(e){var{glEventHub:t}=this.props;t.emit(At.DELETE,e)}handleEditorBlur(e){var t;fa.debug("markdown content changed, saving...");var{isEditing:r}=this.state;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{isEditing:e}=this.state;e&&this.editor&&this.editor.layout()}render(){var{glContainer:e,glEventHub:t,closedPanels:r}=this.props,{isEditing:i,isStartPageShown:a,content:l}=this.state,s=this.getClosedMarkdowns(r);return c.jsx(ka,{glContainer:e,glEventHub:t,className:"markdown-panel",componentPanel:this,onResize:this.handleEditorResize,onBlur:this.handleEditorBlur,isClonable:!0,isRenamable:!0,children:a?c.jsx(xT,{closedMarkdowns:s,onCreate:this.handleCreateMarkdown,onOpen:this.handleOpenMarkdown,onDelete:this.handleDeleteMarkdown}):c.jsx(ac,{isEditing:i,onDoubleClick:this.handleContainerDoubleClick,children:c.jsx(oc,{ref:o=>{this.markdownEditor=o},isEditing:i,content:l??void 0,onEditorInitialized:this.handleEditorInitialized})})})}}Ii(Gs,"defaultProps",{panelState:null});Ii(Gs,"COMPONENT","MarkdownPanel");var UT=(n,e)=>{var{localDashboardId:t}=e;return{closedPanels:cv(n,t)}},VT=On(UT,null,null,{forwardRef:!0})(Gs);const Si=VT;function fd(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 gd(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?fd(Object(t),!0).forEach(function(r){ji(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):fd(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function BT(n){if(n==null)throw new TypeError("Cannot destructure "+n)}function ts(){return ts=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},ts.apply(this,arguments)}function ji(n,e,t){return e=GT(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function GT(n){var e=$T(n,"string");return typeof e=="symbol"?e:String(e)}function $T(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class $s extends R.Component{constructor(e){super(e),ji(this,"buttonRef",void 0),ji(this,"irisGridRef",void 0),this.irisGridRef=Me.createRef(),this.buttonRef=Me.createRef(),this.handleReload=this.handleReload.bind(this),this.handleGridStateChange=this.handleGridStateChange.bind(this),this.handlePanelStateUpdate=this.handlePanelStateUpdate.bind(this);var{panelState:t}=e;this.state={shouldFocusGrid:!1,panelState:t}}handleReload(){var e,t;(e=this.irisGridRef.current)===null||e===void 0||e.initModel(),(t=this.buttonRef.current)===null||t===void 0||t.blur(),this.setState({shouldFocusGrid:!0})}handleGridStateChange(){var e,t,r,{shouldFocusGrid:i}=this.state;i&&(e=this.irisGridRef.current)!==null&&e!==void 0&&(t=e.irisGrid)!==null&&t!==void 0&&(r=t.current)!==null&&r!==void 0&&r.grid&&(this.irisGridRef.current.irisGrid.current.grid.focus(),this.setState({shouldFocusGrid:!1}))}handlePanelStateUpdate(e){this.setState({panelState:e})}render(){var e=this.props,t=ts({},(BT(e),e));return c.jsx(Qn,gd(gd({ref:this.irisGridRef,onStateChange:this.handleGridStateChange,onPanelStateUpdate:this.handlePanelStateUpdate},t),{},{children:c.jsxs(Y,{ref:this.buttonRef,kind:"primary",className:"btn-pandas",onClick:this.handleReload,tooltip:"Click to refresh pandas dataframe, updates do not occur automatically.",children:["pandas dataframe",c.jsxs("span",{children:[c.jsx(ae,{icon:Ss,transform:"shrink-1",className:"mr-1"}),"Reload"]})]})}))}}ji($s,"defaultProps",{panelState:null});ji($s,"COMPONENT","PandasPanel");const pd=$s;function Cd(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function Sd(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Cd(a,r,i,l,s,"next",o)}function s(o){Cd(a,r,i,l,s,"throw",o)}l(void 0)})}}function bd(n,e,t){return e=WT(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function WT(n){var e=zT(n,"string");return typeof e=="symbol"?e:String(e)}function zT(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class KT{constructor(e){bd(this,"items",void 0),bd(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];uo(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];uo(t)&&(t.isExpanded=!1)}return Promise.resolve()}getViewportData(){return Promise.resolve({items:this.items,offset:0})}getSnapshot(e){return Sd(function*(){throw new Error("Method not implemented.")})()}setViewport(e){var t=this;return Sd(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}}const YT=KT;function wd(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function bi(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){wd(a,r,i,l,s,"next",o)}function s(o){wd(a,r,i,l,s,"throw",o)}l(void 0)})}}function qT(n,e,t){return e=XT(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function XT(n){var e=QT(n,"string");return typeof e=="symbol"?e:String(e)}function QT(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class ZT{constructor(e){qT(this,"items",void 0),this.items=e}getTable(){var e=this;return bi(function*(){return new YT(e.items)})()}saveFile(e){throw new Error("Method not implemented.")}loadFile(e){throw new Error("Method not implemented.")}copyFile(e,t){return bi(function*(){throw new Error("Method not implemented.")})()}deleteFile(e){var t=this;return bi(function*(){t.items=t.items.filter(r=>r.filename!==e)})()}moveFile(e,t){var r=this;return bi(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=vv.getBaseName(t),r.items[i].id=t;break}})()}info(e){var t=this;return bi(function*(){var r=t.items.filter(a=>a.filename===e);if(r.length===0)throw new mv;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.")}}const nO=ZT;function yd(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 xa(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?yd(Object(t),!0).forEach(function(r){JT(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):yd(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function JT(n,e,t){return e=eE(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function eE(n){var e=tE(n,"string");return typeof e=="symbol"?e:String(e)}function tE(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Td(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function rE(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Td(a,r,i,l,s,"next",o)}function s(o){Td(a,r,i,l,s,"throw",o)}l(void 0)})}}function nE(n,e,t,r){return rs.apply(this,arguments)}function rs(){return rs=rE(function*(n,e,t,r){var i,a,l,s;if(ba(t))i=t.settings,a=t.table,l=void 0,s=t.tableSettings;else{var o;i={},a="",l=(o=t.name)!==null&&o!==void 0?o:t.figure,s={}}if(r!=null&&(r.tableSettings!=null&&(s=r.tableSettings),r.table!=null&&(a=r.table),r.figure!=null&&(l=r.figure),r.settings!=null&&(i=xa(xa({},i),r.settings))),l!=null){var u={title:l,name:l,type:n.VariableType.FIGURE},d=yield e.getObject(u);return $l.makeModel(n,i,d)}var h={title:l,name:a,type:n.VariableType.TABLE},v=yield e.getObject(h);return new fe(n).applyTableSettings(v,s,Xd(fv.getState())),$l.makeModelFromSettings(n,i,v)}),rs.apply(this,arguments)}function iE(n){Pn(n);var e=_i(),t=ih(),r=R.useCallback((i,a)=>xa(xa({},i),{},{localDashboardId:a,makeModel:()=>{var{metadata:l}=i,s=U0(i)?i.panelState:void 0;if(l==null)throw new Error("Metadata is required for chart panel");return nE(e,t,l,s)}}),[e,t]);return js({dashboardProps:n,componentName:ki.COMPONENT,component:ki,supportedTypes:e.VariableType.FIGURE,hydrate:r}),null}var aE={name:"ChartPlugin",type:Rn.DASHBOARD_PLUGIN,component:iE};const iO=aE;function lE(n){Pn(n);var{id:e,layout:t}=n,r=_i(),i=R.useCallback(a=>{var{metadata:l,panelId:s=nt.generate(),table:o}=a,{settings:u}=l,d=()=>$l.makeModelFromSettings(r,u,o),h=dt.titleFromSettings(u),v={type:"react-component",component:ki.COMPONENT,props:{localDashboardId:e,id:s,metadata:l,makeModel:d},title:h,id:s},{root:m}=t;me.openComponent({root:m,config:v})},[r,e,t]);return br(t.eventHub,ur.CREATE_CHART,i),null}var sE={name:"ChartBuilderPlugin",type:Rn.DASHBOARD_PLUGIN,component:lE};const aO=sE;var wi=ge.module("FilterPlugin");function Ed(n,e){return n.concat(e)}function oE(n){Pn(n);var{id:e,layout:t,registerComponent:r}=n,i=tv(),[a]=R.useState(()=>new Map),[l]=R.useState(()=>new Map),[s]=R.useState(()=>new Map),o=R.useCallback(()=>{var p=Array.from(a.values()).reduce(Ed,[]).sort((b,w)=>{var y=sr.toLower(b.name),T=sr.toLower(w.name);if(y!==T)return y>T?1:-1;var E=sr.toLower(b.type),P=sr.toLower(w.type);return E!==P?E>P?1:-1:0}).reduce((b,w)=>((b.length===0||sr.toLower(b[b.length-1].name)!==sr.toLower(w.name)||sr.toLower(b[b.length-1].type)!==sr.toLower(w.type))&&b.push(w),b),[]),C=Array.from(l.values()).reduce(Ed,[]).sort((b,w)=>b.timestamp-w.timestamp),S=new Map(s);wi.debug("sendUpdate",{columns:p,filters:C,tableMap:S}),i(gv(e,{columns:p,filters:C,tableMap:S}))},[i,e,a,l,s]),u=R.useCallback((p,C)=>{wi.debug2("handleColumnsChanged",p,C),a.set(p,[].concat(C)),o()},[a,o]),d=R.useCallback((p,C)=>{wi.debug2("handleFiltersChanged",p,C),l.set(p,[].concat(C)),o()},[l,o]),h=R.useCallback((p,C)=>{wi.debug2("handleTableChanged",p,C),s.set(me.getIdFromPanel(p),C),o()},[s,o]),v=R.useCallback(p=>{wi.debug2("handlePanelUnmount",p),a.delete(p),l.delete(p),s.delete(me.getIdFromPanel(p)),o()},[a,l,s,o]),m=R.useCallback(p=>{var{title:C="DropdownFilter",metadata:S={},panelState:b=null,id:w=nt.generate(),focusElement:y=me.DEFAULT_FOCUS_SELECTOR,createNewStack:T=!1,dragEvent:E=null}=p,P={type:"react-component",component:yn.COMPONENT,props:{id:w,metadata:S,panelState:b,localDashboardId:e},title:C,id:w},{root:O}=t;me.openComponent({root:O,config:P,focusElement:y,createNewStack:T,dragEvent:E})},[t,e]),f=R.useCallback(p=>{var{title:C="InputFilter",metadata:S={},panelState:b=null,id:w=nt.generate(),focusElement:y=me.DEFAULT_FOCUS_SELECTOR,createNewStack:T=!1,dragEvent:E=void 0}=p,P={type:"react-component",component:Ni.COMPONENT,props:{id:w,metadata:S,panelState:b,localDashboardId:e},title:C,id:w},{root:O}=t;me.openComponent({root:O,config:P,focusElement:y,createNewStack:T,dragEvent:E})},[t,e]),g=R.useCallback(p=>{var{title:C="FilterSets",metadata:S={},panelState:b=null,id:w=nt.generate(),focusElement:y=me.DEFAULT_FOCUS_SELECTOR,createNewStack:T=!1,dragEvent:E=null}=p,P={type:"react-component",component:_l.COMPONENT,props:{id:w,metadata:S,panelState:b,localDashboardId:e},title:C,id:w},{root:O}=t;me.openComponent({root:O,config:P,focusElement:y,createNewStack:T,dragEvent:E})},[t,e]);return R.useEffect(function(){var C=[r(yn.COMPONENT,yn),r(Ni.COMPONENT,Ni),r(_l.COMPONENT,_l)];return()=>{C.forEach(S=>S())}},[r]),br(t.eventHub,lt.COLUMNS_CHANGED,u),br(t.eventHub,lt.FILTERS_CHANGED,d),br(t.eventHub,lt.TABLE_CHANGED,h),br(t.eventHub,lt.OPEN_DROPDOWN,m),br(t.eventHub,lt.OPEN_INPUT,f),br(t.eventHub,lt.OPEN_FILTER_SET_MANAGER,g),br(t.eventHub,At.UNMOUNT,v),null}var uE={name:"FilterPlugin",type:Rn.DASHBOARD_PLUGIN,component:oE};const lO=uE;function Od(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function dE(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Od(a,r,i,l,s,"next",o)}function s(o){Od(a,r,i,l,s,"throw",o)}l(void 0)})}}function Pd(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 Rd(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Pd(Object(t),!0).forEach(function(r){hE(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Pd(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function hE(n,e,t){return e=cE(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function cE(n){var e=vE(n,"string");return typeof e=="symbol"?e:String(e)}function vE(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function uc(){var n=_i(),e=ih(),t=Em(),r=R.useCallback((i,a)=>{var l;if(ic(i.metadata))l=i.metadata;else if(nc(i.metadata)){var s;l={name:i.metadata.table,type:(s=i.metadata.type)!==null&&s!==void 0?s:n.VariableType.TABLE}}else throw new Error("Metadata is required for table panel");return Rd(Rd({},i),{},{loadPlugin:t,localDashboardId:a,makeModel:function(){var o=dE(function*(){var{name:d,type:h}=l,v={title:d,name:d,type:h},m=yield e.getObject(v);return N0.makeModel(n,m)});function u(){return o.apply(this,arguments)}return u}()})},[n,e,t]);return r}function mE(n){Pn(n);var e=_i(),t=uc(),r=R.useMemo(()=>[e.VariableType.TABLE,e.VariableType.TREETABLE,e.VariableType.HIERARCHICALTABLE],[e]);return js({dashboardProps:n,componentName:Qn.COMPONENT,component:Qn,supportedTypes:r,hydrate:t}),null}var fE={name:"GridPlugin",type:Rn.DASHBOARD_PLUGIN,component:mE};const sO=fE;function Dd(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 Jr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Dd(Object(t),!0).forEach(function(r){dc(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Dd(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function dc(n,e,t){return e=gE(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function gE(n){var e=pE(n,"string");return typeof e=="symbol"?e:String(e)}function pE(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function hc(n){var e=n;return typeof e.getCoordinateForColumn=="function"}function Fd(n){var e=n;return hc(n)&&typeof e.setFilterMap=="function"&&typeof e.unsetFilterValue=="function"}function Nd(n){var e;return n.description===void 0||!((e=n.description)!==null&&e!==void 0&&e.startsWith("Preview of type: "))}var yi=ge.module("LinkerUtils");class Za{static getLinkType(e,t,r){var i;if(e?.panelId==null||t?.panelId==null||e.panelId===t.panelId||r!=null&&r!==e.panelId&&r!==t.panelId)return yi.debug2("Incompatible panel ids",e,t,r),"invalid";if(e.panelComponent==null||t.panelComponent==null)return yi.error("PanelComponent should not be null",e,t),"invalid";var a=(i=Za.ALLOWED_LINKS.get(e.panelComponent))===null||i===void 0?void 0:i.includes(t.panelComponent);if(a===void 0||!a)return yi.debug2("Incompatible panel components",e,t),"invalid";var{columnType:l}=e,{columnType:s}=t,o=s===null||x.isCompatibleType(l,s);if(!o)return yi.debug2("Incompatible type",l,s),"invalid";switch(t.panelComponent){case me.getComponentName(ki):return"chartLink";case me.getComponentName(Qn):return"tableLink";case me.getComponentName(yn):return"filterSource"}return yi.debug2("Incompatible target panel component",t.panelComponent),"invalid"}static findColumn(e,t){var{columnName:r,columnType:i}=t;return e.find(a=>{var{name:l,type:s}=a;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(Jr(Jr({},a),{},{id:nt.generate(),start:Jr(Jr({},a.start),{},{panelId:r})})):((l=a.end)===null||l===void 0?void 0:l.panelId)===t&&i.push(Jr(Jr({},a),{},{id:nt.generate(),end:Jr(Jr({},a.end),{},{panelId:r})}))}),i}}dc(Za,"ALLOWED_LINKS",new Map([[me.getComponentName(Qn),[me.getComponentName(Qn),me.getComponentName(ki),me.getComponentName(yn)]]]));const Bn=Za;function cc(n,e,t){return e=CE(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function CE(n){var e=SE(n,"string");return typeof e=="symbol"?e:String(e)}function SE(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var bE=ge.module("LinkerLink"),Id=.015,Ad=1.5,vc=12,mc=12,Md=2,ga=Math.sqrt((mc*.5)**2+vc**2),xd=Math.asin(mc*.5/vc),Ld=15,en=Math.PI*.5;class zn extends R.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(x.isNumberType(e)||x.isCharType(e))return ch(t);if(x.isTextType(e))return hh(t);if(x.isDateType(e))return vh(t);if(x.isBooleanType(e)){if(t===Ce.eq)return"is equal to";if(t===Ce.notEq)return"is not equal to"}throw new Error("Unrecognized column type: ".concat(e))}catch(r){return bE.warn(r),""}}constructor(e){super(e),cc(this,"getOperators",be((t,r)=>{var{onOperatorChanged:i}=this.props,a=x.getFilterTypes(r);return x.isBooleanType(r)&&(a=[Ce.eq,Ce.notEq]),a.flatMap((l,s)=>{if(l==="eqIgnoreCase"||l==="notEqIgnoreCase")return[];var o="";return l==="startsWith"?o="a*":l==="endsWith"?o="*z":o=x.getFilterOperatorString(l),[{title:zn.getLabelForLinkFilter(r,l),icon:c.jsx("b",{children:o}),action:()=>i(t,l),order:s}]})})),this.handleClick=this.handleClick.bind(this),this.handleMouseEnter=this.handleMouseEnter.bind(this),this.handleMouseLeave=this.handleMouseLeave.bind(this),this.handleDelete=this.handleDelete.bind(this),this.getDropdownActions=this.getDropdownActions.bind(this),this.state={isHovering:void 0}}handleClick(e){e.stopPropagation(),e.preventDefault();var{id:t,onClick:r,onDelete:i}=this.props;e.altKey?i(t):r(t)}handleMouseEnter(){this.setState({isHovering:!0})}handleMouseLeave(){this.setState({isHovering:!1})}handleDelete(){var{id:e,onDelete:t}=this.props;t(e)}getDropdownActions(){var{id:e,startColumnType:t}=this.props;return t!=null?this.getOperators(e,t):[]}render(){var{className:e,operator:t,isSelected:r,x1:i,y1:a,x2:l,y2:s,id:o,startColumnType:u,type:d}=this.props,{isHovering:h}=this.state,v=Math.sqrt((i-l)**2+(a-s)**2),m=Math.atan2(s-a,l-i),f=Math.sin(m),g=Math.cos(m)+2,p=window.innerWidth,C=window.innerHeight,S=0,b=0,w=Math.max(S,Math.min(i+(l-i)/2+f*(v*Id)**Ad,p)),y=Math.max(b,Math.min(a+(s-a)/2+g*(v*Id)**Ad,C)),T="M ".concat(i," ").concat(a," Q ").concat(w," ").concat(y," ").concat(l," ").concat(s),E="M ".concat(S," ").concat(b," L ").concat(S," ").concat(C," L ").concat(p," ").concat(C," L ").concat(p," ").concat(b,` z
16
+ `).concat(s," does not exist yet.")}if(i){var{widgetName:o}=this.props;return"".concat(o," is unavailable.")}}handleSessionClosed(){var{onSessionClose:e}=this.props;this.setState({isPanelDisconnected:!0,isWaitingForReconnect:!1}),e(...arguments)}handleSessionOpened(){var{onSessionOpen:e}=this.props;e(...arguments)}render(){var{children:e,className:t,componentPanel:r,isLoaded:i,isLoading:a,glContainer:l,glEventHub:s,isDisconnected:o,isClonable:u,isRenamable:d,showTabTooltip:h,renderTabTooltip:v,widgetType:m,widgetName:f,description:g,onClearAllFilters:p,onHide:C,onFocus:S,onBlur:b,onResize:w,onShow:y,onTabBlur:T,onTabFocus:E,onTabClicked:P}=this.props,{isPanelDisconnected:O,isWidgetDisconnected:D,isPanelInactive:N}=this.state,F=this.getErrorMessage(),A=v??this.getCachedRenderTabTooltip(h,l,m,f,g),j=[{title:"Copy ".concat(m," Name"),group:he.groups.medium,order:20,action:this.handleCopyName}];return c.jsxs(ka,{className:re(t,{disconnected:O||D||o,inactive:N}),componentPanel:r,glContainer:l,glEventHub:s,onClearAllFilters:p,onHide:C,onFocus:S,onBlur:b,onResize:w,onShow:y,onSessionClose:this.handleSessionClosed,onSessionOpen:this.handleSessionOpened,onTabBlur:T,onTabFocus:E,onTabClicked:P,renderTabTooltip:A,errorMessage:F,isLoaded:i,isLoading:a,isClonable:u,isRenamable:d,additionalActions:j,children:[e,N&&c.jsx("div",{className:"fill-parent-absolute"})]})}}Jh(ec,"defaultProps",{className:"",errorMessage:null,isClonable:!0,isDisconnected:!1,isLoading:!1,isLoaded:!0,isRenamable:!0,showTabTooltip:!0,widgetName:"Widget",widgetType:"Widget",renderTabTooltip:null,description:"",onFocus:()=>{},onBlur:()=>{},onHide:()=>{},onClearAllFilters:()=>{},onResize:()=>{},onSessionClose:()=>{},onSessionOpen:()=>{},onShow:()=>{},onTabBlur:()=>{},onTabFocus:()=>{},onTabClicked:()=>{}});const Us=ec;function tc(n){var{columnMap:e,inputFilterMap:t,linkedColumnMap:r,onAdd:i,onOpenLinker:a,waitingFilterMap:l,waitingInputMap:s}=n,o=R.useMemo(()=>{var f=Array.from(s.keys()),g=f.find(S=>t.get(S)!=null),p=f.find(S=>r.get(S)!=null),C=sr.join(f.map(S=>'"'.concat(S,'"')));return g!=null&&g&&p!=null&&p?"Use a filter control or linked table to set a value for ".concat(C):g!=null&&g?"Set a filter control value for ".concat(C):"Double click a row in a linked table to set a value for ".concat(C)},[t,r,s]),u=R.useMemo(()=>Array.from(e.values()),[e]),d=R.useCallback(f=>{f.stopPropagation(),f.preventDefault(),i(Array.from(l.values()))},[i,l]),h=R.useCallback(f=>{f.stopPropagation(),f.preventDefault(),a()},[a]),v=l.size>0,m=!v&&s.size>0;return c.jsx("div",{className:"chart-panel-overlay chart-filter-overlay",children:c.jsxs("div",{className:re("chart-panel-overlay-content chart-filter-overlay-content",{"chart-filter-waiting-filter":v},{"chart-filter-waiting-input":m}),children:[v&&c.jsxs(c.Fragment,{children:[c.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:"}),c.jsx("div",{className:"waiting-filter-list",children:u.map(f=>{var g=l.has(f.name),p=g?Wn:ps;return c.jsxs("div",{className:re("waiting-filter-item",{"is-invalid":g}),children:[c.jsx(le,{icon:p}),f.name]},f.name)})}),c.jsxs("div",{children:[c.jsx(co,{onClick:d,className:"btn-primary",children:"Add Input Filters"}),c.jsx(co,{onClick:h,className:"btn-primary",children:"Open Linker Tool"})]})]}),m&&c.jsxs(c.Fragment,{children:[c.jsx("div",{className:"info-message",children:"Waiting for User Input"}),c.jsx("div",{className:"",children:o})]})]})})}tc.propTypes={columnMap:Z.instanceOf(Map).isRequired,inputFilterMap:Z.instanceOf(Map).isRequired,linkedColumnMap:Z.instanceOf(Map).isRequired,onAdd:Z.func.isRequired,onOpenLinker:Z.func.isRequired,waitingFilterMap:Z.instanceOf(Map).isRequired,waitingInputMap:Z.instanceOf(Map).isRequired};function Li(n){var{columns:e,onColumnSelected:t,onMouseEnter:r,onMouseLeave:i}=n;return c.jsx("div",{className:"chart-panel-overlay chart-column-selector-overlay",children:c.jsxs("div",{className:re("chart-panel-overlay-content"),children:[c.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:"}),c.jsx("div",{className:"waiting-column-select-list",children:e.map(a=>c.jsx(nh,{className:re("btn-chart-column-selector",Li.makeButtonClassName(a.name)),onClick:()=>t(a.name),onMouseEnter:()=>{r&&r(a)},onMouseLeave:i,disabled:!a.isValid,isLinked:a.isActive,children:a.name},a.name))})]})})}Li.makeButtonClassName=n=>"btn-chart-column-selector-".concat(n);Li.defaultProps={onMouseEnter:()=>{},onMouseLeave:()=>{}};function ba(n){return n.settings!==void 0}function _0(n){if(n==null)return!1;var{settings:e,tableSettings:t}=n;return typeof e=="object"&&typeof t=="object"}function H0(n){return n!=null&&_0(n.panelState)}function ld(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 sd(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ld(Object(t),!0).forEach(function(r){Qt(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ld(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Qt(n,e,t){return e=U0(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function U0(n){var e=V0(n,"string");return typeof e=="symbol"?e:String(e)}function V0(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var It=fe.module("ChartPanel"),B0=150;function G0(n){return n.inputFilters!=null}function $0(n){return n.panelState!=null}class qa extends R.Component{constructor(e){var t;super(e),Qt(this,"panelContainer",void 0),Qt(this,"chart",void 0),Qt(this,"pending",void 0),Qt(this,"getWaitingInputMap",Se((s,o,u)=>{if(!s)return new Map;var d=new Map(o);return u.forEach((h,v)=>{d.delete(v)}),d})),Qt(this,"getWaitingFilterMap",Se((s,o,u,d,h)=>{if(!s)return new Map;var v=new Map(o);return u.forEach((m,f)=>{v.delete(f)}),h.forEach((m,f)=>{v.delete(f)}),d.forEach((m,f)=>{v.delete(f)}),v})),Qt(this,"getInputFilterColumnMap",Se((s,o)=>{for(var u=new Map,d=0;d<o.length;d+=1){var h=o[d],{name:v,type:m}=h,f=s.get(v);f!=null&&f.type===m&&u.set(v,h)}return u})),Qt(this,"getLinkedColumnMap",Se((s,o)=>{for(var u=new Map,d=ve.getIdFromPanel(this),h=0;h<o.length;h+=1){var v=o[h],m=null;if(v.start!=null&&v.start.panelId===d&&s.has(v.start.columnName)?m=v.start.columnName:v.end&&v.end.panelId===d&&s.has(v.end.columnName)&&(m=v.end.columnName),m!=null&&s.has(m)){var f=s.get(m);L(f),u.set(m,f)}}return u})),Qt(this,"getSelectorColumns",Se((s,o,u)=>Array.from(s.values()).map(d=>({name:d.name,type:d.type,isValid:u?u(this,d):!1,isActive:o.has(d.name)})))),this.handleColumnSelected=this.handleColumnSelected.bind(this),this.handleColumnMouseEnter=this.handleColumnMouseEnter.bind(this),this.handleColumnMouseLeave=this.handleColumnMouseLeave.bind(this),this.handleDisconnect=this.handleDisconnect.bind(this),this.handleReconnect=this.handleReconnect.bind(this),this.handleFilterAdd=this.handleFilterAdd.bind(this),this.handleHide=this.handleHide.bind(this),this.handleError=this.handleError.bind(this),this.handleLoadError=this.handleLoadError.bind(this),this.handleLoadSuccess=this.handleLoadSuccess.bind(this),this.handleResize=this.handleResize.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=ct(this.updateModelFromSource.bind(this),B0),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.panelContainer=(t=e.containerRef)!==null&&t!==void 0?t:Me.createRef(),this.chart=Me.createRef(),this.pending=new ls;var{metadata:r,panelState:i}=e,{filterValueMap:a=[],settings:l={}}=i??{};this.state={settings:l,error:void 0,isActive:!1,isDisconnected:!1,isLoading:!1,isLoaded:!1,isLinked:r!=null&&ba(r)&&r.settings.isLinked,filterMap:new Map(a),filterValueMap:new Map(a),model:void 0,columnMap:new Map,panelState:i}}componentDidMount(){this.isHidden()||(this.setState({isActive:!0}),this.initModel())}componentDidUpdate(e,t){var{inputFilters:r,source:i}=this.props,{columnMap:a,model:l,filterMap:s,filterValueMap:o,isLinked:u,settings:d}=this.state;l&&(a!==t.columnMap&&this.pruneFilterMaps(),r!==e.inputFilters&&this.updateChangedInputFilters(r,e.inputFilters),s!==t.filterMap?this.updateFilters():o!==t.filterValueMap&&this.updatePanelState(),d!==t.settings&&Oo(l)&&(l.updateSettings(d),this.updatePanelState()),u!==t.isLinked?i&&(u?(this.startListeningToSource(i),this.updateModelFromSource()):this.stopListeningToSource(i)):u&&i!==e.source&&(e.source&&this.stopListeningToSource(e.source),i&&(this.startListeningToSource(i),this.updateModelFromSource())))}componentWillUnmount(){this.pending.cancel();var{model:e}=this.state,{source:t}=this.props;e!=null&&t&&this.stopListeningToSource(t)}initModel(){this.setState({isLoading:!0,isLoaded:!1,error:void 0});var{makeModel:e}=this.props;this.pending.add(e(),t=>{t.close()}).then(this.handleLoadSuccess,this.handleLoadError)}startListeningToSource(e){It.debug("startListeningToSource",e);var{model:t}=this.state;L(t);var{dh:r}=t;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){It.debug("stopListeningToSource",e);var{model:t}=this.state;L(t);var{dh:r}=t;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{isActive:e,isLoaded:t,isLoading:r}=this.state;e&&!t&&!r&&this.initModel()}isHidden(){var{glContainer:e}=this.props,{isHidden:t}=e;return t}handleColumnSelected(e){var{glEventHub:t}=this.props,{columnMap:r}=this.state;t.emit(ts.COLUMN_SELECTED,this,r.get(e))}handleColumnMouseEnter(e){var{type:t,name:r}=e,{columnSelectionValidator:i}=this.props;It.debug("handleColumnMouseEnter",i,t,r),i&&i(this,{type:t,name:r})}handleColumnMouseLeave(){var{columnSelectionValidator:e}=this.props;It.debug("handleColumnMouseLeave",e),e&&e(this,void 0)}handleDisconnect(){this.setState({error:new Error("Figure disconnected"),isDisconnected:!0})}handleFilterAdd(e){for(var t=0;t<e.length;t+=1)this.openInputFilter(e[t])}handleOpenLinker(){var{localDashboardId:e,setActiveTool:t,setDashboardIsolatedLinkerPanelId:r}=this.props;r(e,void 0),t(wr.LINKER)}handleReconnect(){this.setState({isDisconnected:!1,error:void 0}),this.sendColumnChange(),this.updateColumnFilters()}handleLoadSuccess(e){It.debug("handleLoadSuccess");var{model:t}=this.state;this.setState({model:e,isLoaded:!0},()=>{var{inputFilters:r,source:i}=this.props,{filterMap:a,isLinked:l}=this.state;e!==t&&(this.sendColumnChange(),this.updateColumnFilters(),this.updateInputFilters(r,a.size>0||e.isFilterRequired()),i&&l&&(this.startListeningToSource(i),this.updateModelFromSource()))})}handleLoadError(e){st.isCanceled(e)||(It.error("handleLoadError",e),this.setState({error:e,isLoading:!1}))}handleSourceColumnChange(){this.updateModelFromSource()}handleSourceFilterChange(){this.updateModelFromSource()}handleSourceSortChange(){this.updateModelFromSource()}updateModelFromSource(){var{metadata:e,source:t}=this.props,{isLinked:r,model:i}=this.state;if(!r||!i||!t){It.debug2("updateModelFromSource ignoring",r,i,t);return}var{dh:a}=i;if(this.pending.cancel(),ba(e)){var{settings:l}=e;this.pending.add(a.plot.Figure.create(new dt(a).makeFigureSettings(l,t))).then(s=>{Oo(i)&&i.setFigure(s)}).catch(this.handleLoadError)}this.updatePanelState()}updatePanelState(){var{sourcePanel:e}=this.props,{panelState:t,filterValueMap:r,settings:i}=this.state,{tableSettings:a}=t??{};if(e&&G0(e.props)&&$0(e.state)){var{inputFilters:l}=e.props,{panelState:s}=e.state;s!=null&&(a=me.extractTableSettings(s,l))}this.setState({panelState:{settings:i,tableSettings:a,filterValueMap:Array.from(r)}})}handleError(){this.setState({isLoading:!1})}handleResize(){this.updateChart()}handleSettingsChanged(e){this.setState(t=>{var{settings:r}=t,i=sd(sd({},r),e);return It.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(){this.setState({isLoading:!1})}handleClearAllFilters(){this.setState({filterValueMap:new Map,filterMap:new Map}),this.updatePanelState()}openInputFilter(e){var{glEventHub:t}=this.props,{name:r,type:i}=e;t.emit(lt.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(),this.updateChart())})}sendColumnChange(){var{model:e}=this.state;if(e){var{glEventHub:t}=this.props;t.emit(lt.COLUMNS_CHANGED,this,Array.from(e.getFilterColumnMap().values()))}}getCoordinateForColumn(e){var t,r=Li.makeButtonClassName(e);if(!this.panelContainer.current)return null;var i=this.panelContainer.current.querySelector(".".concat(r)),a=(t=i?.getBoundingClientRect())!==null&&t!==void 0?t:null;if(a==null||a.width<=0||a.height<=0)return null;var l=a.left+a.width/2,s=a.bottom;return[l,s]}setFilterMap(e){It.debug("setFilterMap",e),this.setState(t=>{var r,{columnMap:i,filterMap:a}=t,l=null,s=new Map(t.filterValueMap);return e.forEach((o,u)=>{var{columnType:d,filterList:h}=o,v=i.get(u);if(!(v==null||v.type!==d)){if(h.length<1){It.debug("Ignoring empty filterList for column",u);return}var{value:m}=h[0];s.set(u,m),a.get(u)!==m&&(l===null&&(l=new Map(a)),l.set(u,m))}}),{filterValueMap:s,filterMap:(r=l)!==null&&r!==void 0?r:a}})}unsetFilterValue(e){this.setState(t=>{var{inputFilters:r}=this.props,{columnMap:i}=t,{filterMap:a,filterValueMap:l}=t;if(!l.has(e))return null;l=new Map(t.filterValueMap),l.delete(e);var s=this.getInputFilterColumnMap(i,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{columnMap:i}=r,a=new Map(r.filterValueMap),l=new Map(r.filterMap),s=t?{filterMap:l,filterValueMap:a}:{},o=0;o<e.length;o+=1){var{name:u,type:d,value:h}=e[o],v=i.get(u);v!=null&&v.type===d&&(h!=null&&l.get(u)!==h&&(h===""?l.delete(u):l.set(u,h),s.filterMap=l),a.has(u)&&(a.delete(u),s.filterValueMap=a))}return It.debug("updateInputFilters",s),s})}deleteInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;this.setState(r=>{for(var{columnMap:i,filterValueMap:a}=r,l=new Map(r.filterMap),s=t,o=0;o<e.length;o+=1){var{name:u,type:d}=e[o],h=i.get(u);if(h!=null&&h.type===d&&l.has(u)){var v=l.get(u);if(a.has(u)){var m=a.get(u);m!==v&&m!=null&&(s=!0,l.set(u,m))}else s=!0,l.delete(u)}}return It.debug("deleteInputFilters",s),s?{filterMap:l}:null})}updateColumnFilters(){this.setState(e=>{var{model:t}=e;return t?{columnMap:t.getFilterColumnMap()}:null})}updateFilters(){var{columnMap:e,filterMap:t,model:r}=this.state;L(r);var i=this.getWaitingInputMap(r.isFilterRequired(),e,t);if(r.setFilter(t),t.size>0&&i.size===0){var a=r.getDefaultTitle(),l=sr.join(Array.from(t.entries()).map(s=>{var[o,u]=s;return"".concat(o,": ").concat(u)}));a?r.setTitle("".concat(a,'<br><span style="font-size: smaller">').concat(l,"</span>")):r.setTitle(l),It.debug2("updateFilters filters set",t),this.setState({isLoading:!0})}else It.debug2("updateFilters waiting on inputs",i),r.setTitle(r.getDefaultTitle()),this.setState({isLoading:!1});this.updatePanelState()}pruneFilterMaps(){this.setState(e=>{var{columnMap:t}=e,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})}updateChart(){this.chart.current&&this.chart.current.updateDimensions()}render(){var{columnSelectionValidator:e,glContainer:t,glEventHub:r,inputFilters:i,isLinkerActive:a,links:l,metadata:s,settings:o,Plotly:u}=this.props,{columnMap:d,filterMap:h,error:v,model:m,isActive:f,isDisconnected:g,isLoaded:p,isLoading:C}=this.state,S;ba(s)?S=s.table:S=s.figure;var b=this.getInputFilterColumnMap(d,i),w=this.getLinkedColumnMap(d,l),y=m!=null?this.getWaitingInputMap(m.isFilterRequired(),d,h):new Map,T=m!=null?this.getWaitingFilterMap(m.isFilterRequired(),d,h,w,b):new Map,E=v!=null?"Unable to open chart. ".concat(v):void 0,P=y.size>0,O=d.size>0&&a;return c.jsx(Us,{className:re("iris-chart-panel",{"input-required":P}),componentPanel:this,glContainer:t,glEventHub:r,onHide:this.handleHide,onClearAllFilters:this.handleClearAllFilters,onResize:this.handleResize,onShow:this.handleShow,onTabBlur:this.handleTabBlur,onTabFocus:this.handleTabFocus,errorMessage:E,isDisconnected:g,isLoading:C,isLoaded:p,widgetName:S,widgetType:"Chart",children:c.jsxs("div",{ref:this.panelContainer,className:"chart-panel-container h-100 w-100",children:[c.jsx("div",{className:"chart-container h-100 w-100",children:p&&m&&c.jsx(km,{isActive:f,model:m,settings:o,ref:this.chart,onDisconnect:this.handleDisconnect,onReconnect:this.handleReconnect,onUpdate:this.handleUpdate,onError:this.handleError,onSettingsChanged:this.handleSettingsChanged,Plotly:u})}),c.jsx(vr,{in:P&&!O&&!C,timeout:ze.transitionMs,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0,children:c.jsx(tc,{inputFilterMap:b,linkedColumnMap:w,onAdd:this.handleFilterAdd,onOpenLinker:this.handleOpenLinker,columnMap:d,waitingFilterMap:T,waitingInputMap:y})}),c.jsx(vr,{in:O,timeout:ze.transitionMs,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0,children:c.jsx(Li,{columns:this.getSelectorColumns(d,w,e),onColumnSelected:this.handleColumnSelected,onMouseEnter:this.handleColumnMouseEnter,onMouseLeave:this.handleColumnMouseLeave})})]})})}}Qt(qa,"defaultProps",{columnSelectionValidator:null,isLinkerActive:!1,source:null,sourcePanel:null,panelState:null,settings:{},containerRef:null});Qt(qa,"displayName","ChartPanel");Qt(qa,"COMPONENT","ChartPanel");var W0=(n,e)=>{var{localDashboardId:t,metadata:r}=e,i;r!=null&&(i=r.sourcePanelId);var a=ss(n,t),l=Kd(n,t),s=os(n),o=us(n,t),u=s===wr.LINKER&&o===void 0;return{columnSelectionValidator:ds(n,t),isLinkerActive:u,inputFilters:hs(n,t),links:ja(n,t),source:i!=null?a.get(i):void 0,sourcePanel:i!=null?l.get(i):void 0,settings:cs(n)}},z0=On(W0,{setActiveTool:Wd,setDashboardIsolatedLinkerPanelId:zd},null,{forwardRef:!0})(qa);const ki=z0;function or(n,e,t){return e=K0(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function K0(n){var e=Y0(n,"string");return typeof e=="symbol"?e:String(e)}function Y0(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ca=fe.module("DropdownFilter"),q0=150;class _r extends R.Component{constructor(e){super(e),or(this,"dropdownRef",void 0),or(this,"getCompatibleColumns",Se((a,l)=>a!=null?l.filter(s=>{var{type:o}=s;return o!==void 0&&x.isCompatibleType(o,a.columnType)}):[])),or(this,"getColumnOptions",Se((a,l)=>{var s=-1,o=[];return o.push(c.jsx("option",{value:"-1",children:"Select a column"},"placeholder")),a.forEach((u,d)=>{o.push(c.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]})),or(this,"getSelectedOptionIndex",Se((a,l)=>a.indexOf(l))),or(this,"getValueOptions",Se(a=>[c.jsx("option",{value:"-1",children:_r.PLACEHOLDER},"-1"),...a.map((l,s)=>c.jsx("option",{value:s,children:l??"(null)"},"".concat(s,"/").concat(l)))])),or(this,"getItemLabel",be((a,l)=>{var{name:s,type:o}=a[l];if(l>0&&a[l-1].name===s||l<a.length-1&&a[l+1].name===s){var u=o.substring(o.lastIndexOf(".")+1);return"".concat(s," (").concat(u,")")}return s})),or(this,"sendUpdate",ct(()=>{var{onChange:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a({column:l,isValueShown:o,value:s??void 0})},q0)),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=Me.createRef();var{column:t,isValueShown:r,value:i}=e;this.state={column:t,id:nt(),selectedColumn:t,disableCancel:!r,isValueShown:r,value:i}}componentDidUpdate(e,t){var{source:r,values:i,isLoaded:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a&&(r!==e.source&&this.sourceUpdated(),i!==e.values&&s!==""&&!i.includes(s)&&this.resetValue(),o!==t.isValueShown&&o&&this.focusInput(),(l!==t.column||s!==t.value||o!==t.isValueShown)&&this.sendUpdate())}componentWillUnmount(){this.sendUpdate.flush()}handleColumnChange(e){var{value:t}=e.target;if(ca.debug2("handleColumnChange",t),t!=null&&parseInt(t,10)<0){this.setState({selectedColumn:null});return}var{columns:r,source:i}=this.props,a=this.getCompatibleColumns(i,r);this.setState({selectedColumn:a[parseInt(t,10)]})}handleDropdownKeyPress(e){e.key==="Enter"&&(e.preventDefault(),e.stopPropagation(),ca.debug2("handleDropdownKeyPress"),this.sendUpdate(),this.sendUpdate.flush())}handleValueChange(e){var{value:t}=e.target,r=parseInt(t,10),i="",{values:a}=this.props;r>=0&&r<a.length?i=a[r]:ca.debug2("Selected default item"),ca.debug2("handleValueChange",i),this.setState({value:i})}handleSettingsCancel(){this.setState(e=>{var{column:t}=e;return{selectedColumn:t,isValueShown:!0}})}handleSettingsSave(){this.setState(e=>{var{column:t,selectedColumn:r,value:i}=e;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{column:e}=this.state;this.setState({selectedColumn:e,isValueShown:!1})}focusInput(){var e;(e=this.dropdownRef.current)===null||e===void 0||e.focus()}resetValue(){this.setState({value:""})}clearFilter(){this.resetValue()}setFilterState(e){var{name:t,type:r,value:i,isValueShown:a}=e,l=t!=null&&r!=null?{name:t,type:r}:null;this.setState(s=>{var{value:o,isValueShown:u}=s;return{column:l,value:i??o,isValueShown:a??u}})}render(){var e,{columns:t,disableLinking:r,isLinkerActive:i,isLoaded:a,source:l,onColumnSelected:s,onSourceMouseEnter:o,onSourceMouseLeave:u,values:d,settingsError:h}=this.props,{column:v,disableCancel:m,id:f,isValueShown:g,selectedColumn:p,value:C}=this.state,S=l===null,b=this.getCompatibleColumns(l,t),w=l!=null,y=(e=l?.columnName)!==null&&e!==void 0?e:_r.SOURCE_BUTTON_PLACEHOLDER,T=v!=null?"".concat(v.name," Filter"):null,[E,P]=this.getColumnOptions(b,p),O=this.getValueOptions(d),D=this.getSelectedOptionIndex(d,C),N=!w||p==null,F=g&&!i,A="source-column-btn-".concat(f),j="filter-column-select-".concat(f);return c.jsxs(gs,{className:"dropdown-filter fill-parent-absolute",isFlipped:F,children:[c.jsx("div",{className:"dropdown-filter-settings-card",children:c.jsxs("div",{className:"dropdown-filter-card-content",children:[c.jsxs("div",{className:"dropdown-filter-settings-grid",children:[c.jsx("label",{htmlFor:A,children:"Source Column"}),c.jsx(nh,{id:A,isLinked:w,onClick:s,onMouseEnter:o,onMouseLeave:u,className:_r.SOURCE_BUTTON_CLASS_NAME,disabled:r,children:y}),c.jsx("div",{className:"text-muted small",children:"Select a source column for the list by linking to a table."}),c.jsx("label",{htmlFor:j,children:"Filter Column"}),c.jsx("select",{id:j,value:P,className:"custom-select",onChange:this.handleColumnChange,disabled:S,children:E}),c.jsx("div",{className:"text-muted small",children:"Dropdown filter control will apply its filter to all columns matching this name in this dashboard."})]}),h&&c.jsx("div",{className:"error-message text-center",children:h}),w&&c.jsxs("div",{className:"dropdown-filter-settings-buttons",children:[c.jsx(Y,{kind:"secondary",type:"button",onClick:this.handleSettingsCancel,disabled:m||g||i,tooltip:i?"Cancel disabled while linker open":void 0,children:"Cancel"}),c.jsx(Y,{kind:"primary",type:"button",className:"ml-2",onClick:this.handleSettingsSave,disabled:N||g||i,tooltip:i?"Save disabled while linker open":void 0,children:"Save"})]})]})}),c.jsx("div",{className:"dropdown-filter-value-card",onClick:this.handleBackgroundClick,"data-testid":"dropdown-filter-value-background",children:a&&c.jsxs(c.Fragment,{children:[c.jsx("div",{className:"dropdown-filter-column",children:c.jsx("div",{className:"dropdown-filter-column-title",children:T})}),c.jsxs("div",{className:"dropdown-filter-card-content",children:[c.jsx("div",{className:"dropdown-filter-value-input d-flex flex-column justify-content-center",children:c.jsx("select",{className:"custom-select",value:D,ref:this.dropdownRef,onChange:this.handleValueChange,onKeyPress:this.handleDropdownKeyPress,title:"Select Value",children:O})}),h&&c.jsx("div",{className:"error-message mt-3 text-center",children:h})]}),c.jsx("div",{className:"dropdown-filter-menu",children:c.jsx(Y,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:c.jsx(le,{icon:Os,transform:"grow-4"}),tooltip:"Dropdown Filter Settings"})})]})})]})}}or(_r,"defaultProps",{column:null,disableLinking:!1,isLinkerActive:!1,isLoaded:!1,isValueShown:!1,settingsError:null,source:null,value:"",values:[],onColumnSelected:()=>{},onSourceMouseEnter:()=>{},onSourceMouseLeave:()=>{}});or(_r,"PLACEHOLDER","Select a value...");or(_r,"SOURCE_BUTTON_CLASS_NAME","btn-dropdown-filter-selector");or(_r,"SOURCE_BUTTON_PLACEHOLDER","Select a column");const od=_r;function Et(n,e,t){return e=X0(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function X0(n){var e=Q0(n,"string");return typeof e=="symbol"?e:String(e)}function Q0(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Be=fe.module("DropdownFilterPanel"),Z0=250,J0=(n,e)=>{var{localDashboardId:t}=e,r=ve.getIdFromPanel({props:e}),i=ss(n,t),a=ja(n,t),l=os(n),s=us(n,t),o=l===wr.LINKER&&(s===void 0||s===r),u=l===wr.LINKER&&s!==void 0&&s!==r;return{columns:Yd(n,t),columnSelectionValidator:ds(n,t),dh:qd(n),isLinkerActive:o,disableLinking:u,settings:cs(n),panelTableMap:i,dashboardLinks:a}},eT=On(J0,null,null,{forwardRef:!0});class hr extends R.Component{constructor(e){super(e),Et(this,"dateTimeFormatter",void 0),Et(this,"dropdownFilterRef",void 0),Et(this,"panelContainer",void 0),Et(this,"pending",void 0),Et(this,"cleanup",void 0),Et(this,"columnFormats",void 0),Et(this,"getCachedValues",be((h,v,m)=>{var{type:f,name:g}=v;return f!==void 0&&x.isDateType(f)?h.map(p=>this.dateTimeFormatter.format(p)):h.map(p=>p!=null&&f!=null?m.getFormattedString(p,f,g):null)})),Et(this,"getCachedPanelLinks",be((h,v)=>{var m=ve.getIdFromPanel(v);return Be.debug("getCachedPanelLinks",h,m),h.filter(f=>{var g;return((g=f.end)===null||g===void 0?void 0:g.panelId)===m})})),Et(this,"getCachedSource",be(h=>{Be.debug("getCachedSource",h);var v;if(h.length>0){var[m]=h;v=m.start,h.length>1&&Be.error("Filter has more that one link",h)}return v})),Et(this,"getCachedSourceTable",be((h,v)=>{var m;if(Be.debug("getCachedSourceTable",h,v),v==null)return null;var{panelId:f}=v;return(m=h.get(f))!==null&&m!==void 0?m:null})),Et(this,"getCachedSourceColumn",be((h,v)=>{var m;return Be.debug("getCachedSourceColumn",h,v),h==null||v==null?null:(m=h.columns.find(f=>{var{name:g,type:p}=f;return g===v.columnName&&p===v.columnType}))!==null&&m!==void 0?m:null})),this.handleChange=ct(this.handleChange.bind(this),Z0),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=Me.createRef(),this.panelContainer=Me.createRef(),this.pending=new ls;var{dh:t,panelState:r,settings:i}=e;this.columnFormats=kr.getColumnFormats(i),this.dateTimeFormatter=new wn(t,{showTimeZone:!1,showTSeparator:!0,defaultDateTimeFormatString:"yyyy-MM-dd HH:mm:ss.SSSSSSSSS"});var{value:a="",isValueShown:l=!1,name:s,type:o,timestamp:u}=r??{},d=s!=null&&o!=null?{name:s,type:o}:void 0;this.state={column:d,formatter:new Pr(t,this.columnFormats),valuesTable:void 0,valuesColumn:void 0,sourceSize:0,value:a,timestamp:u,values:[],isValueShown:l,wasFlipped:!1,skipUpdate:!1,panelState:r,isDisconnected:!1,isLoading:!1,isLoaded:!1,error:null}}componentDidMount(){this.updateValuesTable();var{dashboardLinks:e,panelTableMap:t}=this.props,{column:r,value:i,timestamp:a}=this.state,l=this.getSourceTable(t,e);if(l!==null&&this.startListeningToSource(l),r!=null){var{name:s,type:o}=r;this.sendUpdate(s,o,i,a)}}componentDidUpdate(e,t){var{dashboardLinks:r,panelTableMap:i,settings:a}=this.props,{valuesTable:l}=this.state,s=this.getSource(r),o=this.getSourceTable(i,r),u=this.getSource(e.dashboardLinks),d=this.getSourceTable(e.panelTableMap,e.dashboardLinks);a!==e.settings&&a!==void 0&&this.updateFormatterSettings(a),l!==t.valuesTable&&t.valuesTable!=null&&(Be.debug("Table in state modified, closing the old table."),t.valuesTable.close()),(o!==d||s!==u)&&this.updateValuesTable(),o!==d&&(d!==null&&this.stopListeningToSource(d),o!==null&&this.startListeningToSource(o))}componentWillUnmount(){var{dashboardLinks:e,panelTableMap:t}=this.props,{valuesTable:r}=this.state,i=this.getSourceTable(t,e);this.pending.cancel(),i!==null&&this.stopListeningToSource(i),this.cleanup&&this.cleanup(),r?.close()}getCoordinateForColumn(){var e;if(this.panelContainer.current==null)return null;var t=this.panelContainer.current.querySelector(".".concat(od.SOURCE_BUTTON_CLASS_NAME)),r=(e=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{sourceSize:e}=this.state;if(e>hr.MAX_TABLE_SIZE)return"Table too large, must have fewer than ".concat(hr.MAX_TABLE_SIZE," options.")}getPanelErrorMessage(){var{error:e}=this.state;return e!=null?"".concat(e):void 0}getSource(e){var t=this.getCachedPanelLinks(e,this);return this.getCachedSource(t)}getSourceTable(e,t){var 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{dh:t}=this.props;Be.debug("startListeningToSource"),e.addEventListener(t.Table.EVENT_FILTERCHANGED,this.handleSourceFilterChange),e.addEventListener(t.Table.EVENT_SORTCHANGED,this.handleSourceSortChange),e.addEventListener(t.Table.EVENT_SIZECHANGED,this.handleSourceSizeChange),e.addEventListener(t.Table.EVENT_DISCONNECT,this.handleDisconnect),e.addEventListener(t.Table.EVENT_RECONNECT,this.handleReconnect)}stopListeningToSource(e){var{dh:t}=this.props;Be.debug("stopListeningToSource"),e.removeEventListener(t.Table.EVENT_FILTERCHANGED,this.handleSourceFilterChange),e.removeEventListener(t.Table.EVENT_SORTCHANGED,this.handleSourceSortChange),e.removeEventListener(t.Table.EVENT_SIZECHANGED,this.handleSourceSizeChange),e.removeEventListener(t.Table.EVENT_DISCONNECT,this.handleDisconnect),e.removeEventListener(t.Table.EVENT_RECONNECT,this.handleReconnect)}handleChange(e){var{column:t,isValueShown:r=!1,value:i}=e,{name:a=void 0,type:l=void 0}=t??{},s=!0,o=Date.now();this.setState(u=>{var d,h,{panelState:v,timestamp:m,wasFlipped:f,skipUpdate:g}=u,p=v!=null&&r!==v.isValueShown&&a===v.name&&l===v.type&&i===v.value;return s=(d=!g&&r&&(!p||!f))!==null&&d!==void 0?d:!1,s||(o=m),{panelState:{isValueShown:r,name:a,type:l,value:i,timestamp:(h=o)!==null&&h!==void 0?h:void 0},timestamp:o,wasFlipped:p,skipUpdate:!1}},()=>{s&&this.sendUpdate(a??null,l,i,o)})}handleDisconnect(){this.setState({error:new Error("Table disconnected"),isDisconnected:!0,isLoading:!1})}handleReconnect(){this.setState({isDisconnected:!1,error:null})}handleSourceFilterChange(){this.applySourceFilters()}handleSourceSortChange(){this.applySourceSorts()}handleSourceSizeChange(e){var{detail:t}=e;this.setState({sourceSize:t})}handleColumnSelected(){Be.debug("handleColumnSelected");var{glEventHub:e}=this.props;e.emit(lt.COLUMN_SELECTED,this,hr.SOURCE_COLUMN)}handleClearAllFilters(){var e,t;(e=this.dropdownFilterRef)===null||e===void 0||(t=e.current)===null||t===void 0||t.clearFilter()}setPanelState(e){var t,r,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,{dashboardLinks:a}=this.props;if(this.getSource(a)==null){Be.debug("Ignore state update for unlinked filter",e);return}this.setState({skipUpdate:!i}),(t=this.dropdownFilterRef)===null||t===void 0||(r=t.current)===null||r===void 0||r.setFilterState(e)}sendUpdate(e,t,r,i){var a,{dashboardLinks:l,glEventHub:s}=this.props,o=(a=this.getSource(l))===null||a===void 0?void 0:a.panelId,u=o===null?[]:[o];Be.debug("sendUpdate",{name:e,type:t,value:r,timestamp:i,excludePanelIds:u}),s.emit(lt.FILTERS_CHANGED,this,{name:e,type:t,value:r??"=null",timestamp:i,excludePanelIds:u})}updateValuesTable(){var{dashboardLinks:e,panelTableMap:t}=this.props,r=this.getSource(e),i=this.getSourceTable(t,e);if(Be.debug("updateValuesTable",r,i),this.setState({values:[],valuesTable:void 0,error:null}),r==null){Be.debug("Filter unlinked."),this.setState({isLoading:!1,isLoaded:!0,isValueShown:!1,sourceSize:0});return}this.setState({isLoading:!0}),i!=null&&(this.setState({isLoaded:!1,sourceSize:i.size}),this.pending.add(i.copy(),a=>a.close()).then(a=>{this.updateViewportListener(a),this.setState({valuesTable:a})}).catch(a=>{st.isCanceled(a)||(Be.error(a),this.setState({isLoading:!1,error:a}))}))}applySourceSorts(){var{dashboardLinks:e,panelTableMap:t}=this.props,{valuesTable:r}=this.state,i=this.getSourceTable(t,e);if(Be.debug("applySourceSorts",i?.sort),r==null||i==null){Be.debug("Table not initialized");return}var a=[...i.sort];r.applySort(a),this.setViewport(r)}applySourceFilters(){var{dashboardLinks:e,panelTableMap:t}=this.props,{valuesTable:r}=this.state,i=this.getSourceTable(t,e);if(Be.debug("applySourceFilters",i?.filter),r==null||i==null){Be.debug("Table not initialized");return}var a=[...i.filter];r.applyFilter(a),this.setViewport(r)}updateViewportListener(e){var{dh:t}=this.props;if(Be.debug("updateViewportListener",e?.size),this.cleanup&&this.cleanup(),e==null){this.cleanup=void 0;return}this.cleanup=e.addEventListener(t.Table.EVENT_UPDATED,this.handleValuesTableUpdate),this.setViewport(e)}setViewport(e){var{dashboardLinks:t}=this.props,r=this.getValuesColumn(e,t);if(!r){Be.error("values column is null");return}e.setViewport(0,hr.MAX_TABLE_SIZE-1,[r])}updateFormatterSettings(e){var{dh:t}=this.props,r=kr.getColumnFormats(e);ht(this.columnFormats,r)||(this.columnFormats=r,this.setState({formatter:new Pr(t,r)}))}handleValuesTableUpdate(e){var{detail:t}=e,{rows:r}=t,{dashboardLinks:i}=this.props,{valuesTable:a}=this.state;if(!a){Be.error("valuesTable is null");return}var l=this.getValuesColumn(a,i);if(!l){Be.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{columnSelectionValidator:e}=this.props;e&&e(this,hr.SOURCE_COLUMN)}handleSourceMouseLeave(){var{columnSelectionValidator:e}=this.props;e&&e(this,void 0)}render(){var{columns:e,dashboardLinks:t,disableLinking:r,glContainer:i,glEventHub:a,isLinkerActive:l}=this.props,{column:s,formatter:o,isDisconnected:u,isValueShown:d,value:h,values:v,valuesColumn:m,isLoading:f,isLoaded:g}=this.state,p=this.getSource(t),C=this.getSettingsErrorMessage(),S=this.getPanelErrorMessage(),b=g&&m!=null?this.getCachedValues(v,m,o):[];return c.jsx(Us,{errorMessage:S,isLoading:f,isLoaded:g,isDisconnected:u,className:"iris-dropdown-filter-panel",componentPanel:this,glContainer:i,glEventHub:a,onClearAllFilters:this.handleClearAllFilters,widgetName:"Dropdown Filter",widgetType:"DropdownFilter",children:c.jsx("div",{ref:this.panelContainer,className:"dropdown-filter-container h-100 w-100 container",children:c.jsx(od,{ref:this.dropdownFilterRef,column:s,columns:e,isValueShown:d,isLinkerActive:l,disableLinking:r,isLoaded:g,settingsError:C,source:p,value:h,values:b,onChange:this.handleChange,onColumnSelected:this.handleColumnSelected,onSourceMouseEnter:this.handleSourceMouseEnter,onSourceMouseLeave:this.handleSourceMouseLeave})})})}}Et(hr,"displayName","DropdownFilterPanel");Et(hr,"COMPONENT","DropdownFilterPanel");Et(hr,"MAX_TABLE_SIZE",256);Et(hr,"SOURCE_COLUMN",Object.freeze({name:"FilterSource",type:null}));var tT=eT(hr);const yn=tT;function ud(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 va(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ud(Object(t),!0).forEach(function(r){Oi(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ud(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Oi(n,e,t){return e=rT(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function rT(n){var e=nT(n,"string");return typeof e=="symbol"?e:String(e)}function nT(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var We=fe.module("FilterSetManager"),iT="Enter name...",dd="No Available Filter Sets";class Ma extends R.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),Oi(this,"renameInputRef",Me.createRef()),Oi(this,"dropdownRef",Me.createRef()),Oi(this,"editDropdownRef",Me.createRef()),Oi(this,"isRenamingExistingSet",Se((t,r)=>r!==void 0&&t.some(i=>{var{id:a}=i;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{isValueShown:e}=this.props;e?this.updateSelectedId():this.initSettingsScreen()}componentDidUpdate(e,t){var{isValueShown:r,filterSets:i}=this.props,{modifiedFilterSets:a}=this.state;if(e.isValueShown&&!r&&this.initSettingsScreen(),this.isNameInputScreen()&&!this.isNameInputScreen(t)&&this.focusRenameInput(),i!==e.filterSets)if(!r&&i.length>0&&e.filterSets.length===0&&a.length===0){var{onChange:l}=this.props;l({isValueShown:!0,selectedId:i[0].id})}else this.updateSelectedId()}initSettingsScreen(){var{filterSets:e,selectedId:t}=this.props;We.debug("initSettingsScreen",e,t),this.setState({modifiedFilterSets:[...e],editId:t})}updateSelectedId(){var{isValueShown:e,filterSets:t,selectedId:r,onChange:i}=this.props;if(We.debug("updateSelectedId",t,r),!!e&&!t.some(l=>{var{id:s}=l;return s===r})){var a=t.length===0;i({isValueShown:!a,selectedId:a?void 0:t[0].id})}}handleEditDropdownChange(e){var{value:t}=e.target;this.setState({editId:t})}handleFilterChange(e){var{value:t}=e.target,{isValueShown:r,onChange:i}=this.props;this.applyFilterSet(t),i({isValueShown:r,selectedId:t})}handleFilterApply(){var{selectedId:e}=this.props;this.applyFilterSet(e)}handleSettingsCancel(){var{onChange:e,selectedId:t,filterSets:r}=this.props;this.setState({modifiedFilterSets:[]}),r.length>0&&e({isValueShown:!0,selectedId:t})}handleSettingsSave(){var{onChange:e,onUpdateSets:t}=this.props,{modifiedFilterSets:r,editId:i}=this.state;this.setState({modifiedFilterSets:[]}),We.debug("Update sets",r,i),t(r),r.length>0&&e({isValueShown:!0,selectedId:i})}handleCaptureNewSet(){var{getFilterState:e}=this.props;Ma.animateScreenFlash();var t=nt(),r=e(),i={id:t,title:"",panels:r};We.debug("handleSetCreate",i),this.setState({nameInputValue:"",nameInputError:void 0,renameSet:i})}handleRenameCancel(){this.setState({renameSet:void 0})}handleRestoreFullStateChange(e){this.setState({restoreFullState:e.target.value==="true"})}getNameError(e){var t,{renameSet:r,modifiedFilterSets:i}=this.state,a=(t=e?.trim())!==null&&t!==void 0?t:"";if(a.length===0)return We.debug("Name cannot be empty",a),"Name cannot be empty";if(r!==void 0&&i.some(l=>{var{title:s,id:o}=l;return s===a&&o!==r.id}))return We.debug("Set with this name already exists",a),"Set with this name already exists"}handleRenameConfirm(){var e,{nameInputValue:t,renameSet:r,modifiedFilterSets:i,restoreFullState:a}=this.state;if(r===void 0){We.error("Renamed set undefined.");return}var l=this.getNameError(t);if(We.debug("handleRenameConfirm",t,l),l!==void 0){this.setState({nameInputError:l});return}var s=(e=t?.trim())!==null&&e!==void 0?e:"",o=va(va({},r),{},{title:s,restoreFullState:a}),u=i.findIndex(h=>{var{id:v}=h;return v===r.id}),d=[...i];u>=0?(d[u]=o,We.debug("Renamed existing set",d)):(d.push(o),We.debug("Added new set to modified sets",d)),this.setState({editId:o.id,modifiedFilterSets:d,renameSet:void 0})}handleSetDelete(){this.setState(e=>{var{editId:t,modifiedFilterSets:r}=e,i=r.findIndex(o=>{var{id:u}=o;return u===t});if(i<0)return We.error("Unable to find selected filterSet index",r,t),null;var a=r.filter(o=>{var{id:u}=o;return u!==t}),l=Math.max(0,Math.min(a.length-1,i-1)),s=a.length>0?a[l].id:void 0;return We.debug("Deleted selected set",t,r,a),We.debug("New selection",l,s),{modifiedFilterSets:a,editId:s}})}handleSetUpdate(){var{getFilterState:e}=this.props;Ma.animateScreenFlash();var t=e();this.setState(r=>{var{modifiedFilterSets:i,editId:a}=r;if(a===void 0)return We.error("Filter for update not selected."),null;var l=[...i],s=l.findIndex(o=>{var{id:u}=o;return u===a});return s<0?(We.error("Selected set for update not found."),null):(l[s]=va(va({},l[s]),{},{panels:t}),We.debug("Update set",l,t),{modifiedFilterSets:l})})}handleSetEdit(){this.setState(e=>{var{editId:t,modifiedFilterSets:r}=e,i=r.find(s=>{var{id:o}=s;return o===t});if(i===void 0)return We.error("Could not find selected set",t,r),null;var{title:a,restoreFullState:l=!1}=i;return{nameInputValue:a,nameInputError:void 0,renameSet:i,restoreFullState:l}})}handleSettingsClick(e){e.stopPropagation();var{onChange:t,selectedId:r}=this.props;t({isValueShown:!1,selectedId:r})}handleBackgroundClick(e){We.debug("handleBackgroundClick"),e.target!==this.dropdownRef.current&&this.focusInput()}handleNameInputChange(e){var{value:t}=e.target,r=this.getNameError(t);this.setState({nameInputValue:t,nameInputError:r})}handleNameInputKeyPress(e){var{key:t}=e;t==="Enter"&&(e.preventDefault(),this.handleRenameConfirm())}isNameInputScreen(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.state,{renameSet:t}=e;return t!==void 0}applyFilterSet(e){var{onApply:t,filterSets:r}=this.props;if(e===void 0){We.debug("No filter selected");return}var i=r.find(a=>{var{id:l}=a;return l===e});if(i===void 0){We.debug("Selected id not found in filterSets",e,r);return}We.debug("Apply filterSet",i),t(i)}focusInput(){var e;(e=this.dropdownRef.current)===null||e===void 0||e.focus()}focusRenameInput(){var e;(e=this.renameInputRef.current)===null||e===void 0||e.focus()}render(){var{nameInputValue:e,nameInputError:t,editId:r,renameSet:i,modifiedFilterSets:a,restoreFullState:l}=this.state,{isValueShown:s,filterSets:o,selectedId:u}=this.props,d=this.isNameInputScreen(),h=this.isRenamingExistingSet(a,i),v=a.length===0,m=!d&&v&&o.length===0,f=!d&&!m,g=c.jsxs("div",{className:"fa-layers mr-3",children:[c.jsx(le,{icon:Ai,mask:fo,transform:"shrink-1 down-5 right-7"}),c.jsx(le,{icon:Fn,className:"text-primary",transform:"shrink-6 down-5 right-7"})]}),p=c.jsxs("div",{className:"fa-layers",children:[c.jsx(le,{icon:Ai,mask:fo,transform:"shrink-1 down-5 right-7"}),c.jsx(le,{icon:Sm,transform:"shrink-1 down-5 right-7"})]});return c.jsx("div",{className:"filter-set-manager fill-parent-absolute",children:c.jsxs(gs,{className:"w-100 h-100",isFlipped:s,children:[c.jsx("div",{className:"filter-set-manager-settings-card fill-parent-absolute",children:c.jsxs("div",{className:"filter-set-manager-card-content",children:[m&&c.jsxs("div",{children:[c.jsx(Y,{kind:"ghost",className:"btn btn-link no-underline",onClick:this.handleCaptureNewSet,icon:g,children:"Capture filter set"}),c.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."})]}),d&&c.jsxs("div",{className:"d-flex flex-column justify-content-center","data-testid":"edit-filter-set-container",children:[c.jsxs("div",{className:"form-group",children:[c.jsx("label",{children:h?"Edit set":"Name captured set"}),c.jsxs("div",{className:"name-input-container",children:[c.jsx("input",{type:"text",className:"input-set-name form-control",placeholder:iT,value:e,ref:this.renameInputRef,onChange:this.handleNameInputChange,onKeyPress:this.handleNameInputKeyPress,spellCheck:"false"}),c.jsx(Y,{"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:pm}),c.jsx(Y,{"data-testid":"rename-cancel-button",kind:"ghost",className:"btn btn-link no-underline pt-2 pb-2",onClick:this.handleRenameCancel,tooltip:"Cancel",icon:Cm})]}),t!==void 0&&c.jsx("div",{className:"error-message",children:t})]}),c.jsx("div",{className:"form-group",children:c.jsxs(Ha,{onChange:this.handleRestoreFullStateChange,value:"".concat(l),children:[c.jsx(jr,{value:"false",children:"Restore only filters"}),c.jsx(jr,{value:"true",children:"Restore full table state"})]})})]}),f&&c.jsxs("div",{className:"filter-set-manager-settings-grid-1",children:[c.jsxs("div",{className:"form-group",children:[c.jsx("label",{children:"Edit filter sets"}),c.jsxs("div",{className:"filter-select-container",children:[c.jsxs("select",{"data-testid":"settings-card-filter-select",ref:this.editDropdownRef,value:r??"-1",className:"custom-select filter-value-select",onChange:this.handleEditDropdownChange,disabled:v,children:[v&&c.jsx("option",{value:"-1",disabled:!0,children:dd}),a.map(C=>{var{id:S,title:b}=C;return c.jsx("option",{value:S,children:b},S)})]}),c.jsx(Y,{kind:"ghost",onClick:this.handleSetUpdate,disabled:v,icon:p,tooltip:"Update"}),c.jsx(Y,{kind:"ghost",onClick:this.handleSetEdit,disabled:v,icon:Hi,tooltip:"Edit"}),c.jsx(Y,{kind:"ghost",onClick:this.handleSetDelete,disabled:v,icon:fr,tooltip:"Delete"})]})]}),c.jsx("div",{children:c.jsx(Y,{kind:"ghost",className:"btn btn-link no-underline",onClick:this.handleCaptureNewSet,icon:g,children:"Capture new filter set"})}),c.jsxs("div",{className:"py-3 text-right",children:[c.jsx(Y,{kind:"secondary",onClick:this.handleSettingsCancel,children:"Cancel"})," ",c.jsx(Y,{kind:"primary",onClick:this.handleSettingsSave,children:"Save"})]})]})]})},"front"),c.jsxs("div",{className:"filter-set-manager-value-card fill-parent-absolute",onClick:this.handleBackgroundClick,children:[c.jsx("div",{className:"filter-set-manager-column",children:c.jsx("div",{className:"filter-set-manager-column-title",children:"Filter sets"})}),c.jsx("div",{className:"filter-set-manager-card-content",children:c.jsx("div",{className:"filter-set-manager-value-input",children:c.jsxs("div",{className:"filter-select-container",children:[c.jsxs("select",{"data-testid":"value-card-filter-select",ref:this.dropdownRef,value:u,className:"custom-select filter-value-select",onChange:this.handleFilterChange,children:[o.length===0&&c.jsx("option",{value:"-1",disabled:!0,children:dd}),o.map(C=>{var{id:S,title:b}=C;return c.jsx("option",{value:S,children:b},S)})]}),c.jsx(Y,{"data-testid":"filter-apply-button",kind:"ghost",onClick:this.handleFilterApply,icon:bs,tooltip:"Apply Filter Set"})]})})}),c.jsx("div",{className:"filter-set-manager-menu",children:c.jsx(Y,{kind:"ghost",className:"btn btn-link btn-link-icon m-2 px-2",onClick:this.handleSettingsClick,tooltip:"Settings",icon:c.jsx(le,{icon:Os,transform:"grow-4"})})})]},"back")]})})}}const aT=Ma;function Vs(n){var e,t,r,i,a,{model:l,widgetName:s,glContainer:o,description:u}=n,d=((e=l?.rowCount)!==null&&e!==void 0?e:0)-((t=l?.pendingRowCount)!==null&&t!==void 0?t:0)-((r=l?.floatingBottomRowCount)!==null&&r!==void 0?r:0)-((i=l?.floatingTopRowCount)!==null&&i!==void 0?i:0),h=l?.displayString(d,"long"),v=(a=l?.columnCount)!==null&&a!==void 0?a:0,m=l?.displayString(v,"long");return c.jsxs(Ya,{widgetType:"Table",widgetName:s,glContainer:o,description:u,children:[c.jsx("hr",{className:"tab-tooltip-divider"}),c.jsx("span",{children:"Number of Columns"}),c.jsx("span",{className:"tab-tooltip-statistic-value",children:m}),c.jsx("span",{children:"Number of Rows"}),c.jsx("span",{className:"tab-tooltip-statistic-value",children:h})]})}Vs.propTypes={glContainer:$d.Container.isRequired,widgetName:Z.string.isRequired,description:Z.string};Vs.defaultProps={description:null};function rc(n){if(n==null)return!1;var e=n;return typeof e.table=="string"}function nc(n){if(n==null)return!1;var e=n;return typeof e.name=="string"}function hd(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?hd(Object(t),!0).forEach(function(r){tt(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):hd(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function tt(n,e,t){return e=lT(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function lT(n){var e=sT(n,"string");return typeof e=="symbol"?e:String(e)}function sT(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Sr=fe.module("IrisGridPanel"),oT=500,uT={IrisGrid:Xh,IrisGridTableModel:Qh,ContextMenuRoot:Nv};function cd(n){if(n==null)throw new Error("No metadata provided");if(nc(n))return n.name;if(rc(n))return n.table;throw new Error("Unable to determine table name from metadata: ".concat(n))}class Xn extends R.PureComponent{constructor(e){super(e),tt(this,"irisGrid",void 0),tt(this,"pluginRef",void 0),tt(this,"modelPromise",void 0),tt(this,"irisGridState",void 0),tt(this,"gridState",void 0),tt(this,"pluginState",void 0),tt(this,"irisGridUtils",void 0),tt(this,"getGridInputFilters",Se((r,i)=>me.getInputFiltersForColumns(r,i.filter(a=>{var{value:l,excludePanelIds:s}=a,o=ve.getIdFromPanel(this);return l!=null&&(s==null||o!=null&&!s.includes(o))})))),tt(this,"getAlwaysFetchColumns",Se((r,i)=>{for(var a=ve.getIdFromPanel(this),l=new Set(i),s=0;s<r.length;s+=1){var{start:o}=r[s];o!=null&&o.panelId===a&&l.add(o.columnName)}return[...l]})),tt(this,"getPluginContent",Se((r,i,a,l,s)=>{if(!i||!bn(i)||r==null||i.table==null)return null;var o={panel:this,onFilter:this.handlePluginFilter,onFetchColumns:this.handlePluginFetchColumns,user:a,workspace:l,components:uT};return c.jsx("div",{className:"iris-grid-plugin",children:c.jsx(r,Zr({ref:this.pluginRef,filter:this.handlePluginFilter,fetchColumns:this.handlePluginFetchColumns,model:i,table:i.table,onStateChange:this.handlePluginStateChange,pluginState:s},o))})})),tt(this,"getDehydratedIrisGridPanelState",Se((r,i,a,l,s)=>me.dehydrateIrisGridPanelState(r,{isSelectingPartition:i,partition:a,partitionColumn:l,advancedSettings:s}))),tt(this,"getDehydratedIrisGridState",Se((r,i,a,l,s,o,u,d,h,v,m,f,g,p,C,S,b,w,y,T,E)=>(L(this.irisGridUtils),this.irisGridUtils.dehydrateIrisGridState(r,{advancedFilters:a,aggregationSettings:b,customColumnFormatMap:l,isFilterBarShown:s,metrics:{userColumnWidths:C,userRowHeights:S},quickFilters:o,customColumns:u,reverseType:d,rollupConfig:h,showSearchBar:v,searchValue:m,selectDistinctColumns:f,selectedSearchColumns:g,sorts:i,invertSearchColumns:p,pendingDataMap:w,frozenColumns:y,conditionalFormats:T,columnHeaderGroups:E})))),tt(this,"getDehydratedGridState",Se((r,i,a,l,s)=>me.dehydrateGridState(r,{isStuckToBottom:l,isStuckToRight:s,movedColumns:i,movedRows:a}))),tt(this,"getCachedPanelState",Se((r,i,a,l)=>({irisGridPanelState:r,irisGridState:i,gridState:a,pluginState:l}))),tt(this,"savePanelState",ct(()=>{var{irisGridState:r,gridState:i,pluginState:a}=this;L(r);var{onPanelStateUpdate:l}=this.props,{model:s,panelState:o,isSelectingPartition:u,partition:d,partitionColumn:h,advancedSettings:v}=this.state,{advancedFilters:m,aggregationSettings:f,customColumnFormatMap:g,isFilterBarShown:p,quickFilters:C,customColumns:S,reverseType:b,rollupConfig:w,showSearchBar:y,searchValue:T,selectDistinctColumns:E,selectedSearchColumns:P,sorts:O,invertSearchColumns:D,metrics:N,pendingDataMap:F,frozenColumns:A,conditionalFormats:j,columnHeaderGroups:k}=r;L(s),L(N);var{userColumnWidths:B,userRowHeights:G}=N;L(i);var{isStuckToBottom:W,isStuckToRight:z,movedColumns:q,movedRows:V}=i,I=this.getCachedPanelState(this.getDehydratedIrisGridPanelState(s,u,d,h,v),this.getDehydratedIrisGridState(s,O,m,g,p,C,S,b,w,y,T,E,P,D,B,G,f,F,A,j,k),this.getDehydratedGridState(s,q,V,W,z),a);I!==o&&(Sr.debug("Saving panel state",this,I),this.setState({panelState:I}),l?.(I))},oT)),this.handleAdvancedSettingsChange=this.handleAdvancedSettingsChange.bind(this),this.handleColumnsChanged=this.handleColumnsChanged.bind(this),this.handleTableChanged=this.handleTableChanged.bind(this),this.handleColumnSelected=this.handleColumnSelected.bind(this),this.handleDataSelected=this.handleDataSelected.bind(this),this.handleError=this.handleError.bind(this),this.handleGridStateChange=this.handleGridStateChange.bind(this),this.handlePluginStateChange=this.handlePluginStateChange.bind(this),this.handlePartitionAppend=this.handlePartitionAppend.bind(this),this.handleCreateChart=this.handleCreateChart.bind(this),this.handleResize=this.handleResize.bind(this),this.handleShow=this.handleShow.bind(this),this.handleTabClicked=this.handleTabClicked.bind(this),this.handleDisconnect=this.handleDisconnect.bind(this),this.handleReconnect=this.handleReconnect.bind(this),this.handleLoadSuccess=this.handleLoadSuccess.bind(this),this.handleLoadError=this.handleLoadError.bind(this),this.isColumnSelectionValid=this.isColumnSelectionValid.bind(this),this.handleContextMenu=this.handleContextMenu.bind(this),this.handlePluginFilter=this.handlePluginFilter.bind(this),this.handlePluginFetchColumns=this.handlePluginFetchColumns.bind(this),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.irisGrid=Me.createRef(),this.pluginRef=Me.createRef();var{panelState:t}=e;this.pluginState=null,this.irisGridUtils=null,this.state={error:null,isDisconnected:!1,isLoaded:!1,isLoading:!0,isModelReady:!1,model:void 0,advancedFilters:new Map,aggregationSettings:{aggregations:[],showOnTop:!1},advancedSettings:new Map(Rh.DEFAULTS),customColumns:[],customColumnFormatMap:new Map,isFilterBarShown:!1,quickFilters:new Map,sorts:[],userColumnWidths:new Map,userRowHeights:new Map,reverseType:x.REVERSE_TYPE.NONE,movedColumns:[],movedRows:[],isSelectingPartition:!1,partition:null,partitionColumn:null,rollupConfig:void 0,showSearchBar:!1,searchValue:"",selectedSearchColumns:void 0,invertSearchColumns:!0,Plugin:void 0,pluginFilters:[],pluginFetchColumns:[],modelQueue:[],pendingDataMap:new Map,frozenColumns:void 0,panelState:t,irisGridStateOverrides:{},gridStateOverrides:{},isStuckToBottom:!1,isStuckToRight:!1,conditionalFormats:[],selectDistinctColumns:[]}}componentDidMount(){this.initModel()}componentDidUpdate(e,t){var{model:r}=this.state;r!==t.model&&(t.model!=null&&(this.stopModelListening(t.model),t.model.close()),r!=null&&this.startModelListening(r))}componentWillUnmount(){this.savePanelState.cancel(),this.modelPromise!=null&&(this.modelPromise.cancel(),this.modelPromise=void 0);var{model:e}=this.state;e&&(this.stopModelListening(e),e.close())}getTableName(){var{metadata:e}=this.props;return cd(e)}initModel(){this.setState({isModelReady:!1,isLoading:!0,error:null});var{makeModel:e}=this.props;this.modelPromise!=null&&this.modelPromise.cancel(),this.modelPromise=st.makeCancelable(e(),t=>t.close()),this.modelPromise.then(this.handleLoadSuccess).catch(this.handleLoadError)}handleLoadSuccess(e){var t=e,{panelState:r,irisGridStateOverrides:i}=this.state,a=[];if(this.irisGridUtils=new me(t.dh),r!=null){var{irisGridState:l}=r,{aggregationSettings:s,customColumns:o,selectDistinctColumns:u=[],rollupConfig:d}=Zr(Zr({},l),i);o.length>0&&a.push(h=>{h.customColumns=o}),d!=null&&d.columns.length>0&&a.push(h=>{h.rollupConfig=me.getModelRollupConfig(h.originalColumns,d,s)}),u.length>0&&a.push(h=>{h.selectDistinctColumns=u})}this.setState({model:t,modelQueue:a}),this.initModelQueue(t,a)}initModelQueue(e,t){var r=e;if(t.length===0){this.modelInitialized(r);return}var i=t.shift();Sr.debug("initModelQueue",i),i&&i(r),this.setState({modelQueue:t})}handleAdvancedSettingsChange(e,t){Sr.debug("handleAdvancedSettingsChange",e,t),this.setState(r=>{var{advancedSettings:i}=r;return i.get(e)===t?null:{advancedSettings:new Map(i).set(e,t)}})}handlePluginFilter(e){var t,r,{model:i}=this.state;L(i);var{columns:a,formatter:l}=i,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{columnSelectionValidator:t}=this.props;return t&&e?t(this,e):!1}handleGridStateChange(e,t){this.irisGridState=e,this.gridState=t,this.setState({isLoaded:!0,isLoading:!1}),this.savePanelState();var{glEventHub:r,onStateChange:i}=this.props;r.emit(ur.STATE_CHANGED,this),i?.(e,t)}handlePluginStateChange(e){var{irisGridState:t,gridState:r}=this;this.pluginState=e,t!==null&&r!==null&&this.savePanelState()}handleColumnsChanged(e){var{isModelReady:t,model:r,modelQueue:i}=this.state;t?this.sendColumnsChange(e.detail):(L(r),this.initModelQueue(r,i))}handleTableChanged(e){Sr.debug("handleTableChanged",e);var{glEventHub:t}=this.props,{detail:r}=e;t.emit(lt.TABLE_CHANGED,this,r)}handlePartitionAppend(e,t){var{glEventHub:r}=this.props,{name:i}=e,a=this.getTableName(),l="".concat(a," = ").concat(a,'.where("').concat(i,"=`").concat(t,'`")');r.emit(iv.SEND_COMMAND,l,!1,!0)}handleCreateChart(e,t){this.savePanelState.flush(),this.setState(()=>null,()=>{var{glEventHub:r,inputFilters:i}=this.props,a=this.getTableName(),{panelState:l}=this.state,s=ve.getIdFromPanel(this),o;l&&(o=me.extractTableSettings(l,i)),r.emit(ur.CREATE_CHART,{metadata:{settings:e,sourcePanelId:s,table:a,tableSettings:o},table:bn(t)?t.table:void 0})})}handleColumnSelected(e){var{glEventHub:t}=this.props;t.emit(ur.COLUMN_SELECTED,this,e)}handleDataSelected(e,t){var{glEventHub:r}=this.props;r.emit(ur.DATA_SELECTED,this,t)}handleResize(){this.updateGrid()}handleShow(){this.updateGrid()}handleTabClicked(){this.irisGrid.current&&this.irisGrid.current.focus()}handleError(e){Sr.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){st.isCanceled(e)||this.handleError(e)}modelInitialized(e){var{glEventHub:t,loadPlugin:r}=this.props;if(this.modelPromise=void 0,this.loadPanelState(e),this.setState({isModelReady:!0}),bn(e)){var{table:i}=e,{pluginName:a}=i;if(a!==""&&r!=null&&a!=null){var l=r(a);this.setState({Plugin:l})}t.emit(lt.TABLE_CHANGED,this,i)}this.sendColumnsChange(e.columns)}handleClearAllFilters(){var e=this.irisGrid.current,{isDisconnected:t}=this.state;e!=null&&!t&&e.clearAllFilters()}sendColumnsChange(e){Sr.debug2("sendColumnsChange",e);var{glEventHub:t}=this.props;t.emit(lt.COLUMNS_CHANGED,this,e)}startModelListening(e){e.addEventListener(ce.EVENT.DISCONNECT,this.handleDisconnect),e.addEventListener(ce.EVENT.RECONNECT,this.handleReconnect),e.addEventListener(ce.EVENT.COLUMNS_CHANGED,this.handleColumnsChanged),e.addEventListener(ce.EVENT.TABLE_CHANGED,this.handleTableChanged)}stopModelListening(e){e.removeEventListener(ce.EVENT.DISCONNECT,this.handleDisconnect),e.removeEventListener(ce.EVENT.RECONNECT,this.handleReconnect),e.removeEventListener(ce.EVENT.COLUMNS_CHANGED,this.handleColumnsChanged),e.removeEventListener(ce.EVENT.TABLE_CHANGED,this.handleTableChanged)}getCoordinateForColumn(e){var t,r,i,{model:a}=this.state;if(!a)return null;var l=this.irisGrid.current,{gridWrapper:s}=l||{},o=(t=s?.getBoundingClientRect())!==null&&t!==void 0?t:null;if(o==null||o.width<=0||o.height<=0)return null;L(l);var{metrics:u}=l.state;L(u);var{columnHeaderHeight:d,allColumnXs:h,allColumnWidths:v,right:m,columnHeaderMaxDepth:f}=u,g=a.getColumnIndexByName(e);L(g);var p=l.getVisibleColumn(g),C=(r=h.get(p))!==null&&r!==void 0?r:0,S=(i=v.get(p))!==null&&i!==void 0?i:0,b=Math.max(o.left,Math.min(p>m?o.right:o.left+C+S*.5,o.right)),w=o.top+d*f;return[b,w]}setFilterMap(e){var t=this.irisGrid.current;t?.setFilterMap(e)}setAdvancedFilterMap(e){var t=this.irisGrid.current;t?.setAdvancedFilterMap(e)}setFilters(e){var{quickFilters:t,advancedFilters:r}=e;Sr.debug("setFilters",t,r);var{model:i,isDisconnected:a}=this.state,l=this.irisGrid.current;if(l==null||a){Sr.debug("Ignore setFilters, model disconnected");return}L(i);var{columns:s,formatter:o}=i,u=me.changeFilterColumnNamesToIndexes(i.columns,t).filter(h=>{var[v]=h;return i.isFilterable(v)}),d=me.changeFilterColumnNamesToIndexes(i.columns,r).filter(h=>{var[v]=h;return i.isFilterable(v)});L(this.irisGridUtils),l.clearAllFilters(),l.setFilters({quickFilters:this.irisGridUtils.hydrateQuickFilters(s,u,o.timeZone),advancedFilters:this.irisGridUtils.hydrateAdvancedFilters(s,d,o.timeZone)})}setStateOverrides(e){Sr.debug("setStateOverrides",e);var{irisGridState:t,gridState:r}=e;this.setState({irisGridStateOverrides:t,gridStateOverrides:r},()=>{this.initModel()})}unsetFilterValue(){}loadPanelState(e){var{panelState:t,irisGridStateOverrides:r,gridStateOverrides:i}=this.state;if(t!=null)try{var{gridState:a,irisGridState:l,irisGridPanelState:s}=t,o=Zr({},r),{quickFilters:u,advancedFilters:d}=o;u&&(o.quickFilters=me.changeFilterColumnNamesToIndexes(e.columns,u)),d&&(o.advancedFilters=me.changeFilterColumnNamesToIndexes(e.columns,d));var{isSelectingPartition:h,partition:v,partitionColumn:m,advancedSettings:f}=me.hydrateIrisGridPanelState(e,s);L(this.irisGridUtils);var{advancedFilters:g,customColumns:p,customColumnFormatMap:C,isFilterBarShown:S,quickFilters:b,reverseType:w,rollupConfig:y,aggregationSettings:T,sorts:E,userColumnWidths:P,userRowHeights:O,showSearchBar:D,searchValue:N,selectDistinctColumns:F,selectedSearchColumns:A,invertSearchColumns:j,pendingDataMap:k,frozenColumns:B,conditionalFormats:G,columnHeaderGroups:W}=this.irisGridUtils.hydrateIrisGridState(e,Zr(Zr({},l),o)),{isStuckToBottom:z,isStuckToRight:q,movedColumns:V,movedRows:I}=me.hydrateGridState(e,Zr(Zr({},a),i),l.customColumns);this.setState({advancedFilters:g,advancedSettings:f,conditionalFormats:G,customColumns:p,customColumnFormatMap:C,isFilterBarShown:S,isSelectingPartition:h,movedColumns:V,movedRows:I,partition:v,partitionColumn:m,quickFilters:b,reverseType:w,rollupConfig:y,aggregationSettings:T,sorts:E,userColumnWidths:P,userRowHeights:O,showSearchBar:D,searchValue:N,selectDistinctColumns:F,selectedSearchColumns:A,invertSearchColumns:j,pendingDataMap:k,frozenColumns:B,isStuckToBottom:z,isStuckToRight:q,columnHeaderGroups:W})}catch(_){Sr.error("loadPanelState failed to load panelState",t,_)}}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,{children:r,glContainer:i,glEventHub:a,columnSelectionValidator:l,getDownloadWorker:s,inputFilters:o,links:u,metadata:d,panelState:h,user:v,workspace:m,settings:f,theme:g}=this.props,{advancedFilters:p,aggregationSettings:C,advancedSettings:S,conditionalFormats:b,customColumns:w,customColumnFormatMap:y,error:T,isDisconnected:E,isFilterBarShown:P,isSelectingPartition:O,isStuckToBottom:D,isStuckToRight:N,isLoaded:F,isLoading:A,isModelReady:j,model:k,movedColumns:B,movedRows:G,partition:W,partitionColumn:z,quickFilters:q,reverseType:V,rollupConfig:I,sorts:_,userColumnWidths:H,userRowHeights:X,showSearchBar:Q,searchValue:ne,selectDistinctColumns:oe,selectedSearchColumns:ie,invertSearchColumns:ae,Plugin:Oe,pluginFilters:Le,pluginFetchColumns:Ze,pendingDataMap:Je,frozenColumns:Ye,columnHeaderGroups:Ue}=this.state,et=T!=null?"Unable to open table. ".concat(T):void 0,De=cd(d),it=(e=k?.description)!==null&&e!==void 0?e:void 0,mt=(t=h?.pluginState)!==null&&t!==void 0?t:null,$t=r??this.getPluginContent(Oe,k,v,m,mt),{permissions:Pt}=v,{canCopy:Rr,canDownloadCsv:tr}=Pt;return c.jsx(Us,{errorMessage:et,isDisconnected:E,isLoading:A,isLoaded:F,className:"iris-grid-panel",glContainer:i,glEventHub:a,onClearAllFilters:this.handleClearAllFilters,onResize:this.handleResize,onShow:this.handleShow,onTabFocus:this.handleShow,onTabClicked:this.handleTabClicked,widgetName:De,widgetType:"Table",description:it,componentPanel:this,renderTabTooltip:()=>c.jsx(Vs,{model:k,widgetName:De,glContainer:i,description:it}),children:j&&k&&c.jsx(Xh,{advancedFilters:p,aggregationSettings:C,advancedSettings:S,alwaysFetchColumns:this.getAlwaysFetchColumns(u,Ze),columnAllowedCursor:"linker",columnNotAllowedCursor:"linker-not-allowed",customColumns:w,customColumnFormatMap:y,columnSelectionValidator:this.isColumnSelectionValid,conditionalFormats:b,inputFilters:this.getGridInputFilters(k.columns,o),applyInputFiltersOnInit:h==null,isFilterBarShown:P,isSelectingColumn:l!=null,isSelectingPartition:O,isStuckToBottom:D,isStuckToRight:N,movedColumns:B,movedRows:G,partition:W,partitionColumn:z,quickFilters:q,reverseType:V,rollupConfig:I,settings:f,sorts:_,userColumnWidths:H,userRowHeights:X,model:k,showSearchBar:Q,searchValue:ne,selectedSearchColumns:ie,selectDistinctColumns:oe,invertSearchColumns:ae,onColumnSelected:this.handleColumnSelected,onCreateChart:this.handleCreateChart,onDataSelected:this.handleDataSelected,onError:this.handleError,onPartitionAppend:this.handlePartitionAppend,onStateChange:this.handleGridStateChange,onContextMenu:this.handleContextMenu,onAdvancedSettingsChange:this.handleAdvancedSettingsChange,customFilters:Le,pendingDataMap:Je,canCopy:Rr,canDownloadCsv:tr,ref:this.irisGrid,getDownloadWorker:s,frozenColumns:Ye,theme:g,columnHeaderGroups:Ue,children:$t})})}}tt(Xn,"defaultProps",{onStateChange:()=>{},onPanelStateUpdate:()=>{}});tt(Xn,"displayName","IrisGridPanel");tt(Xn,"COMPONENT","IrisGridPanel");var dT=(n,e)=>{var{localDashboardId:t=sv}=e;return{inputFilters:hs(n,t),links:ja(n,t),columnSelectionValidator:ds(n,t),user:av(n),workspace:lv(n),settings:cs(n)}},hT=On(dT,null,null,{forwardRef:!0})(Xn);const Qn=hT;function Fi(n,e,t){return e=cT(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function cT(n){var e=vT(n,"string");return typeof e=="symbol"?e:String(e)}function vT(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var vd=fe.module("InputFilter"),mT=150;class Zn extends R.Component{constructor(e){super(e),Fi(this,"inputRef",void 0),Fi(this,"getItemLabel",be((a,l)=>{var{name:s,type:o}=a[l];if(l>0&&a[l-1].name===s||l<a.length-1&&a[l+1].name===s){var u=o.substring(o.lastIndexOf(".")+1);return"".concat(s," (").concat(u,")")}return s})),Fi(this,"sendUpdate",ct(()=>{var{onChange:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a({column:l,isValueShown:o,value:s})},mT)),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=Me.createRef();var{column:t,isValueShown:r,value:i}=e;this.state={column:t,selectedColumn:t,value:i,isValueShown:r}}componentDidUpdate(e,t){var{column:r}=this.props,{column:i,value:a,isValueShown:l}=this.state;r!==e.column&&this.setState({column:r,selectedColumn:r}),l!==void 0&&l&&l!==t.isValueShown&&this.focusInput(),(i!==t.column||a!==t.value||l!==t.isValueShown)&&this.sendUpdate()}componentWillUnmount(){this.sendUpdate.flush()}handleColumnChange(e){var{columns:t}=this.props,{value:r}=e.target,i=t[parseInt(r,10)];vd.debug2("handleColumnChange",i),this.setState({selectedColumn:i,value:void 0})}handleInputKeyPress(e){e.key==="Enter"&&(e.preventDefault(),e.stopPropagation(),this.setState(t=>{var{value:r}=t;return r==null?{value:""}:null},()=>{this.sendUpdate(),this.sendUpdate.flush()}))}handleValueChange(e){var{value:t}=e.target;vd.debug2("handleValueChange",t),this.setState({value:t})}handleSettingsCancel(){var{column:e}=this.state;this.setState({selectedColumn:e,isValueShown:!0})}handleSettingsSave(){var{selectedColumn:e}=this.state;this.setState({column:e,isValueShown:!0})}handleSettingsClick(e){var{column:t}=this.state;this.setState({selectedColumn:t,isValueShown:!1}),e.stopPropagation()}handleBackgroundClick(e){e.target!==this.inputRef.current&&this.focusInput()}focusInput(){this.inputRef.current!==null&&(this.inputRef.current.select(),this.inputRef.current.focus())}clearFilter(){this.setState({value:""})}setFilterState(e){var{name:t,type:r,value:i,isValueShown:a}=e,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{columns:e}=this.props,{column:t,isValueShown:r,selectedColumn:i,value:a}=this.state,l=a==null||a.length===0?Zn.PLACEHOLDER.length:a.length,s=null;if(t!=null){var o=e.findIndex(u=>u.name===t.name&&u.type===t.type);s=o>=0?this.getItemLabel(e,o):t.name}return c.jsxs(gs,{className:"input-filter fill-parent-absolute",isFlipped:r??!1,children:[c.jsx("div",{className:"input-filter-settings-card",children:c.jsxs("div",{className:"input-filter-settings-content",children:[c.jsxs("div",{className:"input-filter-settings-grid",children:[c.jsx("label",{children:"Filter Column"}),c.jsxs("select",{value:e.findIndex(u=>u.name===i?.name&&u.type===i?.type),className:"custom-select",onChange:this.handleColumnChange,children:[e.map((u,d)=>c.jsx("option",{value:d,children:this.getItemLabel(e,d)},"".concat(u.name,"/").concat(u.type))),e.length===0&&c.jsx("option",{value:"-1",disabled:!0,children:"No Available Columns"})]}),c.jsx("div",{className:"text-muted small",children:"Input filter control will apply its filter to all columns matching this name in this dashboard."})]}),c.jsxs("div",{className:"input-filter-settings-buttons",children:[c.jsx(Y,{kind:"secondary",onClick:this.handleSettingsCancel,disabled:t==null,children:"Cancel"}),c.jsx(Y,{kind:"primary",className:"ml-2",onClick:this.handleSettingsSave,disabled:i==null,children:"Save"})]})]})}),c.jsxs("div",{className:"input-filter-value-card",onClick:this.handleBackgroundClick,children:[c.jsx("div",{className:"input-filter-column",children:c.jsxs("div",{className:"input-filter-column-title",children:[s," Filter"]})}),c.jsx("div",{className:"d-flex justify-content-center align-items-center h-100 w-100",children:c.jsx("div",{className:"input-filter-value-input d-flex flex-column justify-content-center",children:c.jsx("input",{type:"text",ref:this.inputRef,placeholder:Zn.PLACEHOLDER,value:a??"",onChange:this.handleValueChange,onKeyPress:this.handleInputKeyPress,style:{width:"".concat(l+3,"ch")},spellCheck:"false"})})}),c.jsx("div",{className:"input-filter-menu",children:c.jsx(Y,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:c.jsx(le,{icon:Os,transform:"grow-4"}),tooltip:"Input Filter Settings"})})]})]})}}Fi(Zn,"PLACEHOLDER","Enter value...");Fi(Zn,"defaultProps",{column:null,isValueShown:!1,value:null});const fT=Zn;function Xa(n,e,t){return e=gT(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function gT(n){var e=pT(n,"string");return typeof e=="symbol"?e:String(e)}function pT(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var CT=250;class Qa extends R.Component{constructor(e){super(e),Xa(this,"inputFilterRef",void 0),this.handleChange=ct(this.handleChange.bind(this),CT),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.inputFilterRef=Me.createRef();var{panelState:t}=e,{value:r,isValueShown:i=!1,name:a,type:l,timestamp:s}=t??{};this.state={columns:[],column:a!=null&&l!=null?{name:a,type:l}:void 0,value:r,timestamp:s,isValueShown:i,wasFlipped:!1,skipUpdate:!1,panelState:t}}componentDidMount(){this.updateColumns();var{column:e,value:t,timestamp:r}=this.state;if(e!=null){var{name:i,type:a}=e;this.sendUpdate(i,a,t,r)}}componentDidUpdate(e){var{columns:t}=this.props;t!==e.columns&&this.updateColumns()}handleChange(e){var{column:t,isValueShown:r=!1,value:i}=e,a,l;t!=null&&({name:a,type:l}=t);var s=!0,o=Date.now();this.setState(u=>{var d,{panelState:h,timestamp:v,wasFlipped:m,skipUpdate:f}=u,g=h!=null&&r!==h.isValueShown&&a===h.name&&l===h.type&&i===h.value;return s=(d=!f&&r&&(!g||!m))!==null&&d!==void 0?d:!1,s||(o=v),{panelState:{isValueShown:r,name:a,type:l,value:i,timestamp:o},timestamp:o,wasFlipped:g,skipUpdate:!1}},()=>{s&&this.sendUpdate(a,l,i,o)})}handleClearAllFilters(){var e;(e=this.inputFilterRef.current)===null||e===void 0||e.clearFilter()}sendUpdate(e,t,r,i){var{glEventHub:a}=this.props;a.emit(lt.FILTERS_CHANGED,this,{name:e,type:t,value:r,timestamp:i})}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{columns:e}=this.props;e!=null&&this.setState(t=>{var{column:r}=t;return r==null&&e.length>0?{columns:[...e],column:e[0]}:r!=null&&!e.find(i=>{var{name:a,type:l}=i;return r.name===a&&r.type===l})?{columns:[...e,r]}:{columns:[...e]}})}render(){var{glContainer:e,glEventHub:t}=this.props,{column:r,columns:i,isValueShown:a,value:l}=this.state;return c.jsx(ka,{className:"iris-input-filter-panel",componentPanel:this,glContainer:e,glEventHub:t,onClearAllFilters:this.handleClearAllFilters,isClonable:!0,isRenamable:!0,children:c.jsx(fT,{ref:this.inputFilterRef,column:r,columns:i,onChange:this.handleChange,isValueShown:a,value:l})})}}Xa(Qa,"defaultProps",{panelState:null});Xa(Qa,"COMPONENT","InputFilterPanel");Xa(Qa,"displayName","InputFilterPanel");var ST=(n,e)=>{var{localDashboardId:t}=e;return{columns:Yd(n,t)}},bT=On(ST,null,null,{forwardRef:!0})(Qa);const Ni=bT;function md(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 ma(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?md(Object(t),!0).forEach(function(r){Bs(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):md(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Bs(n,e,t){return e=wT(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function wT(n){var e=yT(n,"string");return typeof e=="symbol"?e:String(e)}function yT(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var gt=fe.module("FilterSetManagerPanel");function TT(n){return n.setPanelState!=null}class Jn extends R.Component{static changeFilterIndexesToColumnNames(e,t){return t.map(r=>{var[i,a]=r;if(i>=e.columns.length)return null;var{name:l}=e.columns[i];return{name:l,filter:a}}).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{panelState:t,filterSets:r}=e,{selectedId:i=r.length>0?r[0].id:void 0,isValueShown:a=!1}=t??{};this.state={selectedId:i,isValueShown:a,panelState:t}}getFilterState(){var{dashboardOpenedPanelMap:e}=this.props,t=[];return[...e.keys()].forEach(r=>{var i=e.get(r);if(i===void 0){gt.error("Could not get panel",i);return}var a=ve.getComponentNameFromPanel(i),l=ve.getIdFromPanel(i);gt.debug("Panel:",i,a);var{glContainer:s=null}=i.props;if(s==null){gt.error("Could not get panel container",i);return}var o=ve.getComponentConfigFromContainer(s);if(o==null){gt.error("Could not get component config from container",s);return}var u=ve.getPanelComponentState(o);if(u==null){gt.debug("Panel state is null ".concat(l));return}switch(a){case ve.getComponentName(Xn):{var d;l!=null&&(d=this.getIrisGridPanelFilters(l,u)),d!=null&&t.push({panelId:l,type:a,state:d});break}case ve.getComponentName(Ni):case ve.getComponentName(yn):{var{isValueShown:h,name:v,type:m,value:f}=u;t.push({panelId:l,type:a,state:{isValueShown:h,name:v,type:m,value:f}});break}}}),t}getIrisGridPanelFilters(e,t){var{panelTableMap:r}=this.props,i=r.get(e);if(i==null)return gt.error("Unable to get table for panel ".concat(e,".")),null;var{irisGridState:a={advancedFilters:void 0,quickFilters:void 0},gridState:l={}}=t,{advancedFilters:s,quickFilters:o}=a,u;s&&(u=Jn.changeFilterIndexesToColumnNames(i,s));var d;return o&&(d=Jn.changeFilterIndexesToColumnNames(i,o)),{irisGridState:ma(ma({},a),{},{advancedFilters:u,quickFilters:d}),gridState:ma({},l)}}handleGetFilterState(){return this.getFilterState()}handleChange(e){var{isValueShown:t,selectedId:r}=e;gt.debug("handleChange",t,r),this.setState({isValueShown:t,selectedId:r}),this.updatePanelState()}handleFilterApply(e){var{dashboardOpenedPanelMap:t}=this.props,{panels:r,restoreFullState:i=!1}=e;gt.debug("Apply filters from filter set",e),r.forEach(a=>{var{panelId:l,type:s,state:o}=a;if(l==null){gt.debug("panel is null",l);return}if(!t.has(l)){gt.debug("Ignore closed panel",l);return}gt.debug("Apply panel filters",l,s,o);var u=t.get(l);switch(s){case ve.getComponentName(Xn):this.restoreIrisGridFilters(u,o,i);break;case ve.getComponentName(Ni):case ve.getComponentName(yn):this.restoreInputFilterState(u,o);break}})}handleSetsUpdate(e){var{setDashboardFilterSets:t,localDashboardId:r}=this.props;gt.debug("Saving updated sets",e),t(r,[...e])}updatePanelState(){this.setState(e=>{var{selectedId:t,isValueShown:r}=e;return{panelState:{selectedId:t,isValueShown:r}}})}restoreIrisGridFilters(e,t,r){var{irisGridState:i={},advancedFilters:a=[],quickFilters:l=[]}=t,{advancedFilters:s=a,quickFilters:o=l}=i,{panelTableMap:u}=this.props,d=ve.getIdFromPanel(e);if(d==null){gt.error("Panel Id is null.");return}var h=u.get(d);if(h==null){gt.error("Unable to get table for panel ".concat(d,"."));return}gt.debug("restoreIrisGridFilters",d,t,r),r?e.setStateOverrides(t):e.setFilters({quickFilters:o,advancedFilters:s})}restoreInputFilterState(e,t){var r=ma({},t);delete r.isValueShown,gt.debug("restoreInputFilterState",e,r),e&&TT(e)&&e.setPanelState(r)}render(){var{glContainer:e,glEventHub:t,filterSets:r}=this.props,{isValueShown:i,selectedId:a}=this.state;return c.jsx(ka,{className:"filter-set-manager-panel",componentPanel:this,glContainer:e,glEventHub:t,isClonable:!0,isRenamable:!0,children:c.jsx("div",{className:"input-filter-container h-100 w-100 container",children:c.jsx(aT,{onChange:this.handleChange,onApply:this.handleFilterApply,onUpdateSets:this.handleSetsUpdate,isValueShown:i,filterSets:r,selectedId:a,getFilterState:this.handleGetFilterState})})})}}Bs(Jn,"defaultProps",{panelState:null});Bs(Jn,"COMPONENT","FilterSetManagerPanel");var ET=(n,e)=>{var{localDashboardId:t}=e;return{filterSets:uv(n,t),dashboardOpenedPanelMap:Kd(n,t),dashboardInputFilters:hs(n,t),panelTableMap:ss(n,t)}},OT=On(ET,{setDashboardFilterSets:ov},null,{forwardRef:!0})(Jn);const _l=OT;function PT(n,e,t){return e=RT(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function RT(n){var e=DT(n,"string");return typeof e=="symbol"?e:String(e)}function DT(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class ic extends R.PureComponent{render(){var{isEditing:e,children:t,onDoubleClick:r}=this.props;return c.jsxs("div",{className:"markdown-editor-container h-100 w-100",onDoubleClick:r,children:[c.jsx("div",{className:re("text-muted","edit-hint",{viewing:e===void 0||!e}),children:c.jsxs("span",{children:["double-click to edit ",c.jsx(le,{icon:Hi})]})}),t]})}}PT(ic,"defaultProps",{isEditing:!1});function FT(n,e,t){return e=NT(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function NT(n){var e=IT(n,"string");return typeof e=="symbol"?e:String(e)}function IT(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var AT=fe.module("MarkdownStartPage");class ac extends R.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(AT.debug("delete markdown: ",e),e!==void 0){var{onDelete:t}=this.props;t(e)}this.setState({isDeleteModalShown:!1,toBeDeleted:void 0})}render(){var{closedMarkdowns:e,onOpen:t,onCreate:r}=this.props,{isDeleteModalShown:i,toBeDeleted:a}=this.state;return c.jsx("div",{className:"markdown-panel-start-page h-100 w-100",children:c.jsxs("div",{className:"markdown-panel-start-page-container",children:[c.jsxs("div",{className:"markdown-panel-start-list",children:[c.jsx("h3",{className:"list-title",children:"Start"}),c.jsx("div",{className:"list-item",children:c.jsx(Y,{kind:"ghost",className:"title",onClick:r,children:"New Markdown Note"})})]}),c.jsxs("div",{className:"markdown-panel-start-list",children:[c.jsx("h3",{className:"list-title",children:"Recently Closed from Dashboard"}),e.map(l=>c.jsxs("div",{className:"list-item",children:[c.jsx(Y,{kind:"ghost",className:"title",onClick:()=>t(l),children:l.title}),c.jsx("button",{className:"btn-link icon",type:"button",onClick:()=>{this.handleDeleteButtonClick(l)},children:c.jsx(le,{icon:fr})})]},l.id)),c.jsxs(oh,{isOpen:i,toggle:this.handleDeleteModalClose,className:"modal-dialog-centered markdown-delete-modal theme-bg-light",children:[c.jsx(uh,{children:"Are you sure you want to permanently delete this note?"}),c.jsx(dh,{children:"You can't undo this action."}),c.jsxs(Iv,{children:[c.jsx(Y,{kind:"secondary",onClick:this.handleDeleteModalClose,children:"Cancel"}),c.jsx(Y,{kind:"danger",onClick:()=>{this.handleDeleteMarkdown(a)},children:"Delete"})]})]})]})]})})}}FT(ac,"defaultProps",{closedMarkdowns:[],onOpen:()=>{},onCreate:()=>{},onDelete:()=>{}});const MT=ac;function lc(n,e,t){return e=xT(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function xT(n){var e=LT(n,"string");return typeof e=="symbol"?e:String(e)}function LT(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var kT=n=>{var{children:e,className:t}=n,r=t!=null&&t!==void 0&&t.startsWith("language-")?t.substring(9):"plaintext";return c.jsx("pre",{children:c.jsx("code",{children:c.jsx(dv,{language:r,children:Me.Children.map(e,i=>typeof i=="string"?i.trim():i)})})})};class sc extends R.PureComponent{constructor(e){super(e),lc(this,"container",void 0),this.container=null}render(){var{isEditing:e,content:t,onEditorInitialized:r}=this.props;return c.jsx("div",{className:"markdown-editor-container",ref:i=>{this.container=i},children:e?c.jsx(Gd,{settings:{language:"markdown",value:t,lineNumbers:"off"},onEditorInitialized:r}):c.jsx(Jc,{components:{code:kT},children:t})})}}lc(sc,"defaultProps",{isEditing:!1,content:""});function Ii(n,e,t){return e=jT(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function jT(n){var e=_T(n,"string");return typeof e=="symbol"?e:String(e)}function _T(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var fa=fe.module("MarkdownPanel");class Gs extends R.Component{constructor(e){super(e),Ii(this,"markdownEditor",void 0),Ii(this,"editor",void 0),Ii(this,"getClosedMarkdowns",Se(i=>i.filter(a=>a.component==="MarkdownPanel").reverse())),this.handleContainerDoubleClick=this.handleContainerDoubleClick.bind(this),this.handleCreateMarkdown=this.handleCreateMarkdown.bind(this),this.handleDeleteMarkdown=this.handleDeleteMarkdown.bind(this),this.handleOpenMarkdown=this.handleOpenMarkdown.bind(this),this.handleEditorInitialized=this.handleEditorInitialized.bind(this),this.handleEditorBlur=this.handleEditorBlur.bind(this),this.handleEditorResize=this.handleEditorResize.bind(this);var{panelState:t}=e,r=null;t!=null&&t.content!=null&&({content:r}=t),this.state={isStartPageShown:r==null,isEditing:!1,content:r,panelState:t},this.markdownEditor=null}setEditorPosition(e){L(this.markdownEditor);var{container:t}=this.markdownEditor;if(this.editor&&t){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{isEditing:t}=this.state,r=e.clientY;t||this.setState({isEditing:!0},()=>{this.setEditorPosition(r)})}handleEditorInitialized(e){fa.debug("Markdown Editor Initialized..."),this.editor=e}handleCreateMarkdown(){fa.debug("create markdown..."),this.setState({isStartPageShown:!1,content:"",isEditing:!0,panelState:{content:""}},()=>{this.editor!=null&&this.editor.focus!=null&&this.editor.focus()})}handleOpenMarkdown(e){fa.debug("open markdown...",e);var{glContainer:t,glEventHub:r}=this.props,i=ve.getComponentConfigFromContainer(t);r.emit(At.REOPEN,e,i)}handleDeleteMarkdown(e){var{glEventHub:t}=this.props;t.emit(At.DELETE,e)}handleEditorBlur(e){var t;fa.debug("markdown content changed, saving...");var{isEditing:r}=this.state;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{isEditing:e}=this.state;e&&this.editor&&this.editor.layout()}render(){var{glContainer:e,glEventHub:t,closedPanels:r}=this.props,{isEditing:i,isStartPageShown:a,content:l}=this.state,s=this.getClosedMarkdowns(r);return c.jsx(ka,{glContainer:e,glEventHub:t,className:"markdown-panel",componentPanel:this,onResize:this.handleEditorResize,onBlur:this.handleEditorBlur,isClonable:!0,isRenamable:!0,children:a?c.jsx(MT,{closedMarkdowns:s,onCreate:this.handleCreateMarkdown,onOpen:this.handleOpenMarkdown,onDelete:this.handleDeleteMarkdown}):c.jsx(ic,{isEditing:i,onDoubleClick:this.handleContainerDoubleClick,children:c.jsx(sc,{ref:o=>{this.markdownEditor=o},isEditing:i,content:l??void 0,onEditorInitialized:this.handleEditorInitialized})})})}}Ii(Gs,"defaultProps",{panelState:null});Ii(Gs,"COMPONENT","MarkdownPanel");var HT=(n,e)=>{var{localDashboardId:t}=e;return{closedPanels:hv(n,t)}},UT=On(HT,null,null,{forwardRef:!0})(Gs);const Si=UT;function fd(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 gd(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?fd(Object(t),!0).forEach(function(r){ji(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):fd(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function VT(n){if(n==null)throw new TypeError("Cannot destructure "+n)}function rs(){return rs=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},rs.apply(this,arguments)}function ji(n,e,t){return e=BT(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function BT(n){var e=GT(n,"string");return typeof e=="symbol"?e:String(e)}function GT(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class $s extends R.Component{constructor(e){super(e),ji(this,"buttonRef",void 0),ji(this,"irisGridRef",void 0),this.irisGridRef=Me.createRef(),this.buttonRef=Me.createRef(),this.handleReload=this.handleReload.bind(this),this.handleGridStateChange=this.handleGridStateChange.bind(this),this.handlePanelStateUpdate=this.handlePanelStateUpdate.bind(this);var{panelState:t}=e;this.state={shouldFocusGrid:!1,panelState:t}}handleReload(){var e,t;(e=this.irisGridRef.current)===null||e===void 0||e.initModel(),(t=this.buttonRef.current)===null||t===void 0||t.blur(),this.setState({shouldFocusGrid:!0})}handleGridStateChange(){var e,t,r,{shouldFocusGrid:i}=this.state;i&&(e=this.irisGridRef.current)!==null&&e!==void 0&&(t=e.irisGrid)!==null&&t!==void 0&&(r=t.current)!==null&&r!==void 0&&r.grid&&(this.irisGridRef.current.irisGrid.current.grid.focus(),this.setState({shouldFocusGrid:!1}))}handlePanelStateUpdate(e){this.setState({panelState:e})}render(){var e=this.props,t=rs({},(VT(e),e));return c.jsx(Qn,gd(gd({ref:this.irisGridRef,onStateChange:this.handleGridStateChange,onPanelStateUpdate:this.handlePanelStateUpdate},t),{},{children:c.jsxs(Y,{ref:this.buttonRef,kind:"primary",className:"btn-pandas",onClick:this.handleReload,tooltip:"Click to refresh pandas dataframe, updates do not occur automatically.",children:["pandas dataframe",c.jsxs("span",{children:[c.jsx(le,{icon:bs,transform:"shrink-1",className:"mr-1"}),"Reload"]})]})}))}}ji($s,"defaultProps",{panelState:null});ji($s,"COMPONENT","PandasPanel");const pd=$s;function Cd(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function Sd(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Cd(a,r,i,l,s,"next",o)}function s(o){Cd(a,r,i,l,s,"throw",o)}l(void 0)})}}function bd(n,e,t){return e=$T(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function $T(n){var e=WT(n,"string");return typeof e=="symbol"?e:String(e)}function WT(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class zT{constructor(e){bd(this,"items",void 0),bd(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];uo(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];uo(t)&&(t.isExpanded=!1)}return Promise.resolve()}getViewportData(){return Promise.resolve({items:this.items,offset:0})}getSnapshot(e){return Sd(function*(){throw new Error("Method not implemented.")})()}setViewport(e){var t=this;return Sd(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}}const KT=zT;function wd(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function bi(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){wd(a,r,i,l,s,"next",o)}function s(o){wd(a,r,i,l,s,"throw",o)}l(void 0)})}}function YT(n,e,t){return e=qT(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function qT(n){var e=XT(n,"string");return typeof e=="symbol"?e:String(e)}function XT(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class QT{constructor(e){YT(this,"items",void 0),this.items=e}getTable(){var e=this;return bi(function*(){return new KT(e.items)})()}saveFile(e){throw new Error("Method not implemented.")}loadFile(e){throw new Error("Method not implemented.")}copyFile(e,t){return bi(function*(){throw new Error("Method not implemented.")})()}deleteFile(e){var t=this;return bi(function*(){t.items=t.items.filter(r=>r.filename!==e)})()}moveFile(e,t){var r=this;return bi(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=cv.getBaseName(t),r.items[i].id=t;break}})()}info(e){var t=this;return bi(function*(){var r=t.items.filter(a=>a.filename===e);if(r.length===0)throw new vv;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.")}}const rO=QT;function yd(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 xa(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?yd(Object(t),!0).forEach(function(r){ZT(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):yd(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function ZT(n,e,t){return e=JT(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function JT(n){var e=eE(n,"string");return typeof e=="symbol"?e:String(e)}function eE(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Td(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function tE(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Td(a,r,i,l,s,"next",o)}function s(o){Td(a,r,i,l,s,"throw",o)}l(void 0)})}}function rE(n,e,t,r){return ns.apply(this,arguments)}function ns(){return ns=tE(function*(n,e,t,r){var i,a,l,s;if(ba(t))i=t.settings,a=t.table,l=void 0,s=t.tableSettings;else{var o;i={},a="",l=(o=t.name)!==null&&o!==void 0?o:t.figure,s={}}if(r!=null&&(r.tableSettings!=null&&(s=r.tableSettings),r.table!=null&&(a=r.table),r.figure!=null&&(l=r.figure),r.settings!=null&&(i=xa(xa({},i),r.settings))),l!=null){var u={title:l,name:l,type:n.VariableType.FIGURE},d=yield e.getObject(u);return $l.makeModel(n,i,d)}var h={title:l,name:a,type:n.VariableType.TABLE},v=yield e.getObject(h);return new me(n).applyTableSettings(v,s,Xd(mv.getState())),$l.makeModelFromSettings(n,i,v)}),ns.apply(this,arguments)}function nE(n){Pn(n);var e=_i(),t=ih(),r=R.useCallback((i,a)=>xa(xa({},i),{},{localDashboardId:a,makeModel:()=>{var{metadata:l}=i,s=H0(i)?i.panelState:void 0;if(l==null)throw new Error("Metadata is required for chart panel");return rE(e,t,l,s)}}),[e,t]);return js({dashboardProps:n,componentName:ki.COMPONENT,component:ki,supportedTypes:e.VariableType.FIGURE,hydrate:r}),null}var iE={name:"ChartPlugin",type:Rn.DASHBOARD_PLUGIN,component:nE};const nO=iE;function aE(n){Pn(n);var{id:e,layout:t}=n,r=_i(),i=R.useCallback(a=>{var{metadata:l,panelId:s=nt.generate(),table:o}=a,{settings:u}=l,d=()=>$l.makeModelFromSettings(r,u,o),h=dt.titleFromSettings(u),v={type:"react-component",component:ki.COMPONENT,props:{localDashboardId:e,id:s,metadata:l,makeModel:d},title:h,id:s},{root:m}=t;ve.openComponent({root:m,config:v})},[r,e,t]);return br(t.eventHub,ur.CREATE_CHART,i),null}var lE={name:"ChartBuilderPlugin",type:Rn.DASHBOARD_PLUGIN,component:aE};const iO=lE;var wi=fe.module("FilterPlugin");function Ed(n,e){return n.concat(e)}function sE(n){Pn(n);var{id:e,layout:t,registerComponent:r}=n,i=ev(),[a]=R.useState(()=>new Map),[l]=R.useState(()=>new Map),[s]=R.useState(()=>new Map),o=R.useCallback(()=>{var p=Array.from(a.values()).reduce(Ed,[]).sort((b,w)=>{var y=sr.toLower(b.name),T=sr.toLower(w.name);if(y!==T)return y>T?1:-1;var E=sr.toLower(b.type),P=sr.toLower(w.type);return E!==P?E>P?1:-1:0}).reduce((b,w)=>((b.length===0||sr.toLower(b[b.length-1].name)!==sr.toLower(w.name)||sr.toLower(b[b.length-1].type)!==sr.toLower(w.type))&&b.push(w),b),[]),C=Array.from(l.values()).reduce(Ed,[]).sort((b,w)=>b.timestamp-w.timestamp),S=new Map(s);wi.debug("sendUpdate",{columns:p,filters:C,tableMap:S}),i(fv(e,{columns:p,filters:C,tableMap:S}))},[i,e,a,l,s]),u=R.useCallback((p,C)=>{wi.debug2("handleColumnsChanged",p,C),a.set(p,[].concat(C)),o()},[a,o]),d=R.useCallback((p,C)=>{wi.debug2("handleFiltersChanged",p,C),l.set(p,[].concat(C)),o()},[l,o]),h=R.useCallback((p,C)=>{wi.debug2("handleTableChanged",p,C),s.set(ve.getIdFromPanel(p),C),o()},[s,o]),v=R.useCallback(p=>{wi.debug2("handlePanelUnmount",p),a.delete(p),l.delete(p),s.delete(ve.getIdFromPanel(p)),o()},[a,l,s,o]),m=R.useCallback(p=>{var{title:C="DropdownFilter",metadata:S={},panelState:b=null,id:w=nt.generate(),focusElement:y=ve.DEFAULT_FOCUS_SELECTOR,createNewStack:T=!1,dragEvent:E=null}=p,P={type:"react-component",component:yn.COMPONENT,props:{id:w,metadata:S,panelState:b,localDashboardId:e},title:C,id:w},{root:O}=t;ve.openComponent({root:O,config:P,focusElement:y,createNewStack:T,dragEvent:E})},[t,e]),f=R.useCallback(p=>{var{title:C="InputFilter",metadata:S={},panelState:b=null,id:w=nt.generate(),focusElement:y=ve.DEFAULT_FOCUS_SELECTOR,createNewStack:T=!1,dragEvent:E=void 0}=p,P={type:"react-component",component:Ni.COMPONENT,props:{id:w,metadata:S,panelState:b,localDashboardId:e},title:C,id:w},{root:O}=t;ve.openComponent({root:O,config:P,focusElement:y,createNewStack:T,dragEvent:E})},[t,e]),g=R.useCallback(p=>{var{title:C="FilterSets",metadata:S={},panelState:b=null,id:w=nt.generate(),focusElement:y=ve.DEFAULT_FOCUS_SELECTOR,createNewStack:T=!1,dragEvent:E=null}=p,P={type:"react-component",component:_l.COMPONENT,props:{id:w,metadata:S,panelState:b,localDashboardId:e},title:C,id:w},{root:O}=t;ve.openComponent({root:O,config:P,focusElement:y,createNewStack:T,dragEvent:E})},[t,e]);return R.useEffect(function(){var C=[r(yn.COMPONENT,yn),r(Ni.COMPONENT,Ni),r(_l.COMPONENT,_l)];return()=>{C.forEach(S=>S())}},[r]),br(t.eventHub,lt.COLUMNS_CHANGED,u),br(t.eventHub,lt.FILTERS_CHANGED,d),br(t.eventHub,lt.TABLE_CHANGED,h),br(t.eventHub,lt.OPEN_DROPDOWN,m),br(t.eventHub,lt.OPEN_INPUT,f),br(t.eventHub,lt.OPEN_FILTER_SET_MANAGER,g),br(t.eventHub,At.UNMOUNT,v),null}var oE={name:"FilterPlugin",type:Rn.DASHBOARD_PLUGIN,component:sE};const aO=oE;function Od(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function uE(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Od(a,r,i,l,s,"next",o)}function s(o){Od(a,r,i,l,s,"throw",o)}l(void 0)})}}function Pd(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 Rd(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Pd(Object(t),!0).forEach(function(r){dE(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Pd(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function dE(n,e,t){return e=hE(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function hE(n){var e=cE(n,"string");return typeof e=="symbol"?e:String(e)}function cE(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function oc(){var n=_i(),e=ih(),t=Tm(),r=R.useCallback((i,a)=>{var l;if(nc(i.metadata))l=i.metadata;else if(rc(i.metadata)){var s;l={name:i.metadata.table,type:(s=i.metadata.type)!==null&&s!==void 0?s:n.VariableType.TABLE}}else throw new Error("Metadata is required for table panel");return Rd(Rd({},i),{},{loadPlugin:t,localDashboardId:a,makeModel:function(){var o=uE(function*(){var{name:d,type:h}=l,v={title:d,name:d,type:h},m=yield e.getObject(v);return F0.makeModel(n,m)});function u(){return o.apply(this,arguments)}return u}()})},[n,e,t]);return r}function vE(n){Pn(n);var e=_i(),t=oc(),r=R.useMemo(()=>[e.VariableType.TABLE,e.VariableType.TREETABLE,e.VariableType.HIERARCHICALTABLE],[e]);return js({dashboardProps:n,componentName:Qn.COMPONENT,component:Qn,supportedTypes:r,hydrate:t}),null}var mE={name:"GridPlugin",type:Rn.DASHBOARD_PLUGIN,component:vE};const lO=mE;function Dd(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 Jr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Dd(Object(t),!0).forEach(function(r){uc(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Dd(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function uc(n,e,t){return e=fE(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function fE(n){var e=gE(n,"string");return typeof e=="symbol"?e:String(e)}function gE(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function dc(n){var e=n;return typeof e.getCoordinateForColumn=="function"}function Fd(n){var e=n;return dc(n)&&typeof e.setFilterMap=="function"&&typeof e.unsetFilterValue=="function"}function Nd(n){var e;return n.description===void 0||!((e=n.description)!==null&&e!==void 0&&e.startsWith("Preview of type: "))}var yi=fe.module("LinkerUtils");class Za{static getLinkType(e,t,r){var i;if(e?.panelId==null||t?.panelId==null||e.panelId===t.panelId||r!=null&&r!==e.panelId&&r!==t.panelId)return yi.debug2("Incompatible panel ids",e,t,r),"invalid";if(e.panelComponent==null||t.panelComponent==null)return yi.error("PanelComponent should not be null",e,t),"invalid";var a=(i=Za.ALLOWED_LINKS.get(e.panelComponent))===null||i===void 0?void 0:i.includes(t.panelComponent);if(a===void 0||!a)return yi.debug2("Incompatible panel components",e,t),"invalid";var{columnType:l}=e,{columnType:s}=t,o=s===null||x.isCompatibleType(l,s);if(!o)return yi.debug2("Incompatible type",l,s),"invalid";switch(t.panelComponent){case ve.getComponentName(ki):return"chartLink";case ve.getComponentName(Qn):return"tableLink";case ve.getComponentName(yn):return"filterSource"}return yi.debug2("Incompatible target panel component",t.panelComponent),"invalid"}static findColumn(e,t){var{columnName:r,columnType:i}=t;return e.find(a=>{var{name:l,type:s}=a;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(Jr(Jr({},a),{},{id:nt.generate(),start:Jr(Jr({},a.start),{},{panelId:r})})):((l=a.end)===null||l===void 0?void 0:l.panelId)===t&&i.push(Jr(Jr({},a),{},{id:nt.generate(),end:Jr(Jr({},a.end),{},{panelId:r})}))}),i}}uc(Za,"ALLOWED_LINKS",new Map([[ve.getComponentName(Qn),[ve.getComponentName(Qn),ve.getComponentName(ki),ve.getComponentName(yn)]]]));const Bn=Za;function hc(n,e,t){return e=pE(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function pE(n){var e=CE(n,"string");return typeof e=="symbol"?e:String(e)}function CE(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var SE=fe.module("LinkerLink"),Id=.015,Ad=1.5,cc=12,vc=12,Md=2,ga=Math.sqrt((vc*.5)**2+cc**2),xd=Math.asin(vc*.5/cc),Ld=15,en=Math.PI*.5;class zn extends R.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(x.isNumberType(e)||x.isCharType(e))return ch(t);if(x.isTextType(e))return hh(t);if(x.isDateType(e))return vh(t);if(x.isBooleanType(e)){if(t===Ce.eq)return"is equal to";if(t===Ce.notEq)return"is not equal to"}throw new Error("Unrecognized column type: ".concat(e))}catch(r){return SE.warn(r),""}}constructor(e){super(e),hc(this,"getOperators",Se((t,r)=>{var{onOperatorChanged:i}=this.props,a=x.getFilterTypes(r);return x.isBooleanType(r)&&(a=[Ce.eq,Ce.notEq]),a.flatMap((l,s)=>{if(l==="eqIgnoreCase"||l==="notEqIgnoreCase")return[];var o="";return l==="startsWith"?o="a*":l==="endsWith"?o="*z":o=x.getFilterOperatorString(l),[{title:zn.getLabelForLinkFilter(r,l),icon:c.jsx("b",{children:o}),action:()=>i(t,l),order:s}]})})),this.handleClick=this.handleClick.bind(this),this.handleMouseEnter=this.handleMouseEnter.bind(this),this.handleMouseLeave=this.handleMouseLeave.bind(this),this.handleDelete=this.handleDelete.bind(this),this.getDropdownActions=this.getDropdownActions.bind(this),this.state={isHovering:void 0}}handleClick(e){e.stopPropagation(),e.preventDefault();var{id:t,onClick:r,onDelete:i}=this.props;e.altKey?i(t):r(t)}handleMouseEnter(){this.setState({isHovering:!0})}handleMouseLeave(){this.setState({isHovering:!1})}handleDelete(){var{id:e,onDelete:t}=this.props;t(e)}getDropdownActions(){var{id:e,startColumnType:t}=this.props;return t!=null?this.getOperators(e,t):[]}render(){var{className:e,operator:t,isSelected:r,x1:i,y1:a,x2:l,y2:s,id:o,startColumnType:u,type:d}=this.props,{isHovering:h}=this.state,v=Math.sqrt((i-l)**2+(a-s)**2),m=Math.atan2(s-a,l-i),f=Math.sin(m),g=Math.cos(m)+2,p=window.innerWidth,C=window.innerHeight,S=0,b=0,w=Math.max(S,Math.min(i+(l-i)/2+f*(v*Id)**Ad,p)),y=Math.max(b,Math.min(a+(s-a)/2+g*(v*Id)**Ad,C)),T="M ".concat(i," ").concat(a," Q ").concat(w," ").concat(y," ").concat(l," ").concat(s),E="M ".concat(S," ").concat(b," L ").concat(S," ").concat(C," L ").concat(p," ").concat(C," L ").concat(p," ").concat(b,` z
17
17
  `).concat(zn.makeCirclePath(i,a,Ld),`
18
- `).concat(zn.makeCirclePath(l,s,Ld)),P="link-select-clip-".concat(o),O=Math.atan2(s-y,l-w),D=O-xd+Math.PI,N=O+xd+Math.PI,F=l+Math.cos(O)*Md,A=s+Math.sin(O)*Md,j=F+Math.cos(D)*ga,k=A+Math.sin(D)*ga,B=F+Math.cos(N)*ga,G=A+Math.sin(N)*ga,W="".concat(F,",").concat(A," ").concat(j,",").concat(k," ").concat(B,",").concat(G),z=.25*i+.5*w+.25*l,q=.25*a+.5*y+.25*s,V=w-i+(l-w),I=y-a+(s-y),_=I/V,H=20,X=H/Math.sqrt(1+_**2),Q=X*_,ne=X*-1,se=Q*-1;Number.isFinite(_)?_>0?(X*=-1,Q*=-1,ne*=-1,se*=-1,ne-=50-10*(Math.abs(m)%en),se+=10*(Math.abs(m)%en),X-=50-10*(Math.abs(m)%en),Q+=10*(Math.abs(m)%en)):_<0?(ne+=10*(Math.abs(m)%en),se+=10*(Math.abs(m)%en),X+=10*(Math.abs(m)%en),Q+=10*(Math.abs(m)%en)):(ne=15,se=10,X=-25,Q=10):(ne=10,se=5,X=10,Q=-35);var ie="";t!==void 0&&(t==="startsWith"?ie="a*":t==="endsWith"?ie="*z":ie=x.getFilterOperatorString(t));var de=d!=="chartLink"&&d!=="filterSource";return c.jsxs(c.Fragment,{children:[c.jsxs("svg",{className:re(e,{hovering:h}),children:[c.jsx("clipPath",{id:P,children:c.jsx("path",{d:E,clipRule:"evenodd"})}),c.jsx("path",{className:"link-select",d:T,onClick:this.handleClick,onMouseEnter:this.handleMouseEnter,onMouseLeave:this.handleMouseLeave,clipPath:"url(#".concat(P,")"),"data-testid":"link-select"}),c.jsx("path",{className:"link-background",d:T}),c.jsx("path",{className:"link-foreground",d:T}),c.jsx("circle",{className:"link-dot",cx:i,cy:a,r:"5"}),c.jsx("polygon",{className:"link-triangle",points:W})]}),u!=null&&r&&c.jsxs(c.Fragment,{children:[de&&c.jsx(Y,{kind:"primary",className:"btn-fab btn-operator",style:{top:q+(_>=0?Q:se),left:z+(_>=0?X:ne)},onClick:()=>{},icon:c.jsxs("div",{className:"fa-md fa-layers",children:[c.jsx("b",{children:ie}),c.jsx(ae,{icon:Cs,transform:"right-8 down-9 shrink-5"})]}),tooltip:"Change comparison operator",children:c.jsx(ms,{actions:this.getDropdownActions,popperOptions:{placement:"bottom-start"}})}),c.jsx(Y,{kind:"primary",className:"btn-fab btn-delete",style:{top:q+(_<0?Q:se),left:z+(_<0?X:ne)},onClick:this.handleDelete,icon:fr,tooltip:"Delete"})]})]})}}cc(zn,"defaultProps",{className:"",isSelected:!1,onClick(){},onDelete(){}});const wE=zn;function kd(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 jd(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?kd(Object(t),!0).forEach(function(r){Ws(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):kd(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Ws(n,e,t){return e=yE(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function yE(n){var e=TE(n,"string");return typeof e=="symbol"?e:String(e)}function TE(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Hl=ge.module("LinkerOverlayContent");class fc extends R.Component{constructor(e){super(e),Ws(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=Me.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){Hl.error("componentDidCatch",e,t)}componentWillUnmount(){window.removeEventListener("blur",this.handleBlur,!0),window.removeEventListener("mousemove",this.handleMouseMove,!0),window.removeEventListener("mouseup",this.handleMouseUp,!0),window.removeEventListener("keydown",this.handleKeyDown,!0),window.removeEventListener("keyup",this.handleKeyUp,!0),window.removeEventListener("resize",this.handleResize,!0)}getPointFromLinkPoint(e){var{panelManager:t}=this.props,{panelId:r,columnName:i}=e,a=t.getOpenedPanelById(r);if(a!=null){if(!hc(a))throw new Error("Panel does not have getCoordinateForColumn method: ".concat(r));try{var l=a.getCoordinateForColumn(i);if(l!=null)return l}catch{Hl.error("Could not get coordinate for column",i,a)}}var s=t.getContainerByPanelId(r);if(s==null)throw new Error("Unable to find panel container for id: ".concat(r));return me.getTabPoint(s)}handleOperatorChanged(e,t){var{links:r,onLinksUpdated:i}=this.props,a=r.map(l=>l.id===e?jd(jd({},l),{},{operator:t}):l);i(a)}handleBlur(){this.setState({mode:"select"})}handleResize(){var{dialog:e}=this.state;if(e&&this.dialogRef.current){var t=this.dialogRef.current.getBoundingClientRect(),r=Ae(e.x,0,window.innerWidth-t.width),i=Ae(e.y,0,window.innerHeight-t.height);this.setState({dialog:{x:r,y:i}})}}handleMouseMove(e){var{offset:t,isDragging:r}=this.state;if(this.setState({mouse:{x:e.clientX,y:e.clientY}}),r&&this.dialogRef.current){var i=this.dialogRef.current.getBoundingClientRect(),a=Ae(window.innerWidth-(e.clientX+i.width+t.x),0,window.innerWidth-i.width),l=Ae(window.innerHeight-(e.clientY+i.height+t.y),0,window.innerHeight-i.height);this.setState({dialog:{x:a,y:l}})}}handleMouseDown(e){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{selectedIds:t,onLinkDeleted:r}=this.props;e.preventDefault(),t.forEach(i=>r(i))}}handleKeyUp(e){e.key==="Alt"&&(e.preventDefault(),this.setState({mode:"select"}))}handleEscapePressed(){var{onCancel:e}=this.props;e()}render(){var{disabled:e,links:t,selectedIds:r,messageText:i,onLinkSelected:a,onLinkDeleted:l,onAllLinksDeleted:s,onDone:o}=this.props,{mouse:u,dialog:d,isDragging:h,mode:v}=this.state,m=t.map(f=>{try{var g,p,{id:C,type:S,isReversed:b,start:w,end:y,operator:T}=f,E=w.columnType,[P,O]=this.getPointFromLinkPoint(w),D=(g=u?.x)!==null&&g!==void 0?g:P,N=(p=u?.y)!==null&&p!==void 0?p:O;if(y!=null&&([D,N]=this.getPointFromLinkPoint(y)),b!=null&&b){var[F,A]=[P,O];[P,O]=[D,N],[D,N]=[F,A]}var j=re("linker-link",{disabled:e},{"link-filter-source":S==="filterSource"},{"link-invalid":S==="invalid"},{interactive:f.end==null},{"link-is-selected":r.has(C)},{"danger-delete":v==="delete"});return{x1:P,y1:O,x2:D,y2:N,id:C,className:j,operator:T,startColumnType:E,type:S}}catch(k){return Hl.warn("Unable to get point for link",f,k),null}}).filter(f=>f!=null);return c.jsxs("div",{className:re("linker-overlay",{"danger-delete":v==="delete"}),children:[m.map(f=>{var{x1:g,y1:p,x2:C,y2:S,id:b,className:w,operator:y,startColumnType:T,type:E}=f;return c.jsx(wE,{className:w,id:b,x1:g,y1:p,x2:C,y2:S,onClick:a,onDelete:l,isSelected:r.has(b),operator:y,startColumnType:T,type:E,onOperatorChanged:this.handleOperatorChanged},b)}),c.jsxs("div",{className:re("linker-toast-dialog",{dragging:h}),ref:this.dialogRef,style:{bottom:d?.y,right:d?.x},"data-testid":"linker-toast-dialog",children:[c.jsx(Y,{draggable:!0,kind:"inline",className:"btn-drag-handle",icon:Ua,onClick:()=>{},onMouseDown:this.handleMouseDown,children:!h&&c.jsx(Jt,{children:"Drag to reposition"})}),c.jsx("div",{className:"toast-body",children:i}),c.jsxs("div",{className:"toast-footer",children:[c.jsx(Y,{kind:"secondary",onClick:s,children:"Clear All"}),c.jsx(Y,{kind:"primary",onClick:o,children:"Done"})]})]}),c.jsx(ce,{actions:[{action:this.handleEscapePressed,shortcut:Jd.LINKER_CLOSE,isGlobal:!0}]})]})}}Ws(fc,"defaultProps",{disabled:"false"});const EE=fc;function _d(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 Hd(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?_d(Object(t),!0).forEach(function(r){gc(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):_d(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function gc(n,e,t){return e=OE(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function OE(n){var e=PE(n,"string");return typeof e=="symbol"?e:String(e)}function PE(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ut=ge.module("Linker"),RE=(n,e)=>({activeTool:ss(n),dh:qd(n),isolatedLinkerPanelId:os(n,e.localDashboardId),links:ja(n,e.localDashboardId),timeZone:Xd(n)}),DE=On(RE,{setActiveTool:Wd,setDashboardLinks:pv,addDashboardLinks:Cv,deleteDashboardLinks:Sv,setDashboardIsolatedLinkerPanelId:zd,setDashboardColumnSelectionValidator:bv});class FE extends R.Component{constructor(e){super(e),gc(this,"getCachedLinks",be((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?.end==null}):a})),this.handleCancel=this.handleCancel.bind(this),this.handleDone=this.handleDone.bind(this),this.handlePanelCloned=this.handlePanelCloned.bind(this),this.handleFilterColumnSelect=this.handleFilterColumnSelect.bind(this),this.handleColumnsChanged=this.handleColumnsChanged.bind(this),this.handlePanelClosed=this.handlePanelClosed.bind(this),this.handleLayoutStateChanged=this.handleLayoutStateChanged.bind(this),this.handleAllLinksDeleted=this.handleAllLinksDeleted.bind(this),this.handleLinkDeleted=this.handleLinkDeleted.bind(this),this.handleLinksUpdated=this.handleLinksUpdated.bind(this),this.handleChartColumnSelect=this.handleChartColumnSelect.bind(this),this.handleGridColumnSelect=this.handleGridColumnSelect.bind(this),this.handleUpdateValues=this.handleUpdateValues.bind(this),this.handleStateChange=this.handleStateChange.bind(this),this.handleExited=this.handleExited.bind(this),this.handleLinkSelected=this.handleLinkSelected.bind(this),this.handlePanelDragging=this.handlePanelDragging.bind(this),this.handlePanelDropped=this.handlePanelDropped.bind(this),this.isColumnSelectionValid=this.isColumnSelectionValid.bind(this),this.state={linkInProgress:void 0,selectedIds:new Set,isDraggingPanel:!1}}componentDidMount(){var{layout:e}=this.props;this.startListening(e),this.updateSelectionValidators()}componentDidUpdate(e){var{activeTool:t,layout:r}=this.props;r!==e.layout&&(this.stopListening(e.layout),this.startListening(r)),t!==e.activeTool&&(this.updateSelectionValidators(),t===wr.DEFAULT&&this.reset())}componentDidCatch(e,t){ut.error("componentDidCatch",e,t)}componentWillUnmount(){var{layout:e}=this.props;this.stopListening(e)}startListening(e){e.on("stateChanged",this.handleLayoutStateChanged);var{eventHub:t}=e;t.on(ur.COLUMN_SELECTED,this.handleGridColumnSelect),t.on(ur.DATA_SELECTED,this.handleUpdateValues),t.on(ur.STATE_CHANGED,this.handleStateChange),t.on(es.COLUMN_SELECTED,this.handleChartColumnSelect),t.on(At.CLONED,this.handlePanelCloned),t.on(lt.COLUMN_SELECTED,this.handleFilterColumnSelect),t.on(lt.COLUMNS_CHANGED,this.handleColumnsChanged),t.on(At.CLOSE,this.handlePanelClosed),t.on(At.CLOSED,this.handlePanelClosed),t.on(At.DRAGGING,this.handlePanelDragging),t.on(At.DROPPED,this.handlePanelDropped)}stopListening(e){e.off("stateChanged",this.handleLayoutStateChanged);var{eventHub:t}=e;t.off(ur.COLUMN_SELECTED,this.handleGridColumnSelect),t.off(ur.DATA_SELECTED,this.handleUpdateValues),t.off(ur.STATE_CHANGED,this.handleStateChange),t.off(es.COLUMN_SELECTED,this.handleChartColumnSelect),t.off(At.CLONED,this.handlePanelCloned),t.off(lt.COLUMN_SELECTED,this.handleFilterColumnSelect),t.off(lt.COLUMNS_CHANGED,this.handleColumnsChanged),t.off(At.CLOSE,this.handlePanelClosed),t.off(At.CLOSED,this.handlePanelClosed),t.off(At.DRAGGING,this.handlePanelDragging),t.off(At.DROPPED,this.handlePanelDropped)}reset(){this.setState({linkInProgress:void 0,selectedIds:new Set})}handleCancel(){var{linkInProgress:e}=this.state;if(e==null){var{setActiveTool:t}=this.props;t(wr.DEFAULT)}this.setState({linkInProgress:void 0})}handleDone(){var{setActiveTool:e}=this.props;e(wr.DEFAULT)}handleChartColumnSelect(e,t){this.columnSelected(e,t,!0)}handleFilterColumnSelect(e,t){ut.debug("handleFilterColumnSelect",this.isOverlayShown());var{links:r,localDashboardId:i,setActiveTool:a,setDashboardIsolatedLinkerPanelId:l}=this.props,s=me.getIdFromPanel(e),o=r.filter(u=>{var d,h;return((d=u.start)===null||d===void 0?void 0:d.panelId)===s||((h=u.end)===null||h===void 0?void 0:h.panelId)===s});if(!this.isOverlayShown()&&s!=null){a(wr.LINKER),l(i,s),o.length===0&&this.columnSelected(e,t,!0,s);return}this.columnSelected(e,t,!0)}handleColumnsChanged(e,t){ut.debug("handleColumnsChanged",e,t);var{links:r}=this.props,i=me.getIdFromPanel(e);if(i==null){ut.error("Invalid panelId",e);return}var a=r.filter(l=>{var{start:s,end:o}=l;return s.panelId===i&&Bn.findColumn(t,s)==null||o!=null&&o.panelId===i&&Bn.findColumn(t,o)==null});this.deleteLinks(a)}handleGridColumnSelect(e,t){if(!Nd(t)){ut.debug2("Column is not filterable");return}this.columnSelected(e,t)}columnSelected(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3?arguments[3]:void 0;if(!(i===void 0&&!this.isOverlayShown())){var{isolatedLinkerPanelId:a}=this.props,{linkInProgress:l}=this.state,s=me.getIdFromPanel(e);if(s!=null){var o=me.getComponentNameFromPanel(e),{name:u,type:d}=t;if(l==null||l.start==null){var h={id:nt.generate(),start:{panelId:s,panelComponent:o,columnName:u,columnType:d},type:"invalid",isReversed:r};ut.debug("starting link",h),this.setState({linkInProgress:h})}else{var{links:v}=this.props,{start:m,id:f,isReversed:g}=l,p={panelId:s,panelComponent:o,columnName:u,columnType:d},C=Bn.getLinkType(g!==void 0&&g?p:m,g!==void 0&&g?m:p,i??a);switch(C){case"invalid":ut.debug("Ignore invalid link connection",l,p);return;case"filterSource":{var S=g!==void 0&&g?m.panelId:p.panelId,b=v.filter(P=>{var{end:O}=P;return O?.panelId===S});this.deleteLinks(b);break}case"chartLink":{var w=g===!0?m:p,y=g===!0?p:m;ut.debug("creating chartlink",{existingLinkEnd:w,start:m,end:p});var T=v.filter(P=>{var{end:O,start:D}=P;return D?.panelId===y.panelId&&O?.panelId===w.panelId&&O?.columnName===w.columnName&&O?.columnType===w.columnType});this.deleteLinks(T);break}}var E={start:g!==void 0&&g?p:m,end:g!==void 0&&g?m:p,id:f,type:C,operator:Ce.eq};ut.info("creating link",E),this.setState({linkInProgress:void 0,selectedIds:new Set([f])},()=>{this.addLinks([E])})}}}}unsetFilterValueForLink(e){var{panelManager:t}=this.props;if(e.end){var{end:r}=e,{panelId:i,columnName:a,columnType:l}=r,s=t.getOpenedPanelById(i);s?Fd(s)?s.unsetFilterValue(a,l):ut.debug("endPanel.unsetFilterValue not implemented",s):ut.debug("endPanel no longer exists, ignoring unsetFilterValue",i)}}setPanelFilterMap(e,t){ut.debug("Set filter data for panel:",e,t);var{panelManager:r}=this.props,i=r.getOpenedPanelById(e);i?Fd(i)?i.setFilterMap(t):ut.debug("panel.setFilterMap not implemented",e,i):ut.debug("panel no longer exists, ignoring setFilterMap",e)}addLinks(e){var{addDashboardLinks:t,localDashboardId:r}=this.props;t(r,e)}deleteLinks(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,{localDashboardId:r}=this.props;if(e.forEach(l=>this.unsetFilterValueForLink(l)),t){var{setDashboardLinks:i}=this.props;i(r,[])}else if(e.length>0){var{deleteDashboardLinks:a}=this.props;a(r,e.map(l=>{var{id:s}=l;return s}))}}handleAllLinksDeleted(){var{links:e,isolatedLinkerPanelId:t}=this.props;if(t===void 0)this.deleteLinks(e,!0);else{var r=e.filter(i=>{var a,l;return(i==null||(a=i.start)===null||a===void 0?void 0:a.panelId)===t||(i==null||(l=i.end)===null||l===void 0?void 0:l.panelId)===t});this.deleteLinks(r)}this.reset()}handleLinkDeleted(e){var{links:t}=this.props,r=t.find(i=>i.id===e);r?this.deleteLinks([r]):ut.error("Unable to find link to delete",e)}handleUpdateValues(e,t){for(var r=me.getIdFromPanel(e),{dh:i,links:a,timeZone:l}=this.props,s=new Map,o=0;o<a.length;o+=1){var{start:u,end:d,operator:h}=a[o];if(u.panelId===r&&d!=null){var{panelId:v,columnName:m,columnType:f}=d,g=s.has(v)?s.get(v):new Map,p=g.has(m)===!0?g.get(m).filterList:[],{visibleIndex:C,isExpandable:S,isGrouped:b}=t[u.columnName],{value:w}=t[u.columnName],y="".concat(w);if(w===null&&S&&b&&(w=void 0),f!=null&&x.isDateType(f)){var T=new wn(i,{timeZone:l,showTimeZone:!1,showTSeparator:!0,defaultDateTimeFormatString:Tn.FULL_DATE_FORMAT});y=T.format(w)}var E={operator:h,text:y,value:w,startColumnIndex:C};p.push(E),g.set(m,{columnType:f,filterList:p}),s.set(v,g)}}s.forEach((P,O)=>{this.setPanelFilterMap(O,P)})}handlePanelCloned(e,t){var{links:r}=this.props,i=me.getIdFromPanel(e),a=t.id;if(i!=null){var l=Bn.cloneLinksForPanel(r,i,a);this.addLinks(l)}}handlePanelDragging(e){for(var{links:t}=this.props,r=0;r<t.length;r+=1){var i=t[r],{start:a,end:l}=i;if(a.panelId===e||l?.panelId===e){this.setState({isDraggingPanel:!0});return}}}handlePanelDropped(){this.setState({isDraggingPanel:!1})}handlePanelClosed(e){ut.debug("Panel ".concat(e," closed, deleting links.")),this.deleteLinksForPanelId(e)}handleLinkSelected(e){this.setState({selectedIds:new Set([e])})}handleLinksUpdated(e){var{localDashboardId:t,setDashboardLinks:r}=this.props;r(t,e)}handleLayoutStateChanged(){this.forceUpdate()}handleStateChange(){this.forceUpdate()}handleExited(){var{localDashboardId:e,setDashboardIsolatedLinkerPanelId:t}=this.props;t(e,void 0)}deleteLinksForPanelId(e){for(var{links:t}=this.props,r=0;r<t.length;r+=1){var i=t[r],{start:a,end:l,id:s}=i;(a.panelId===e||l?.panelId===e)&&this.handleLinkDeleted(s)}}isOverlayShown(){var{activeTool:e}=this.props;return e===wr.LINKER}updateSelectionValidators(){var{activeTool:e,setDashboardColumnSelectionValidator:t,localDashboardId:r}=this.props;switch(e){case wr.LINKER:t(r,this.isColumnSelectionValid);break;default:t(r,void 0);break}}updateLinkInProgressType(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"invalid";this.setState(t=>{var{linkInProgress:r}=t;return r!==void 0?{linkInProgress:Hd(Hd({},r),{},{type:e})}:null})}isColumnSelectionValid(e,t){var{linkInProgress:r}=this.state,{isolatedLinkerPanelId:i}=this.props;if(t==null)return r?.start!=null&&this.updateLinkInProgressType(),!1;if(!Nd(t))return ut.debug2("Column is not filterable",t.description),r?.start!=null&&this.updateLinkInProgressType("invalid"),!1;if(r?.start==null)return!0;var{isReversed:a,start:l}=r,s=me.getIdFromPanel(e);if(s==null)return!1;var o={panelId:s,panelComponent:me.getComponentNameFromPanel(e),columnName:t.name,columnType:t.type},u=a!==void 0&&a?Bn.getLinkType(o,l,i):Bn.getLinkType(l,o,i);return this.updateLinkInProgressType(u),u!=="invalid"}render(){var{links:e,isolatedLinkerPanelId:t,panelManager:r}=this.props,{linkInProgress:i,selectedIds:a,isDraggingPanel:l}=this.state,s=this.isOverlayShown(),o=i!=null&&i.start!=null,u=t===void 0?"Click a column source, then click a column target to create a filter link. The filter comparison operator used by a selected link can be changed. Delete a filter link by clicking the delete button or with alt+click. Click done when finished.":"Create a link between the source column button and a table column by clicking on one, then the other. Delete a filter link by clicking the delete button or with alt+click. Click done when finished.";return l?null:c.jsx(vr,{in:s,timeout:ze.transitionMs,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0,onExited:this.handleExited,children:c.jsx(EE,{disabled:o,panelManager:r,links:this.getCachedLinks(e,i,t),selectedIds:a,messageText:u,onLinkSelected:this.handleLinkSelected,onLinkDeleted:this.handleLinkDeleted,onAllLinksDeleted:this.handleAllLinksDeleted,onLinksUpdated:this.handleLinksUpdated,onDone:this.handleDone,onCancel:this.handleCancel})})}}var NE=DE(FE);const IE=NE;function AE(n){Pn(n);var{id:e,layout:t,panelManager:r}=n;return c.jsx(IE,{layout:t,localDashboardId:e,panelManager:r})}var ME={name:"LinkerPlugin",type:Rn.DASHBOARD_PLUGIN,component:AE};const oO=ME;function pc(n,e,t){return e=xE(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function xE(n){var e=LE(n,"string");return typeof e=="symbol"?e:String(e)}function LE(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class ei{static getNewMarkdownTitle(e){for(var t="".concat(ei.DEFAULT_TITLE),r=0;e.indexOf(t)>=0;)r+=1,t="".concat(ei.DEFAULT_TITLE,"-").concat(r);return t}}pc(ei,"DEFAULT_TITLE","Note");pc(ei,"DEFAULT_CONTENT",`# Markdown Note
18
+ `).concat(zn.makeCirclePath(l,s,Ld)),P="link-select-clip-".concat(o),O=Math.atan2(s-y,l-w),D=O-xd+Math.PI,N=O+xd+Math.PI,F=l+Math.cos(O)*Md,A=s+Math.sin(O)*Md,j=F+Math.cos(D)*ga,k=A+Math.sin(D)*ga,B=F+Math.cos(N)*ga,G=A+Math.sin(N)*ga,W="".concat(F,",").concat(A," ").concat(j,",").concat(k," ").concat(B,",").concat(G),z=.25*i+.5*w+.25*l,q=.25*a+.5*y+.25*s,V=w-i+(l-w),I=y-a+(s-y),_=I/V,H=20,X=H/Math.sqrt(1+_**2),Q=X*_,ne=X*-1,oe=Q*-1;Number.isFinite(_)?_>0?(X*=-1,Q*=-1,ne*=-1,oe*=-1,ne-=50-10*(Math.abs(m)%en),oe+=10*(Math.abs(m)%en),X-=50-10*(Math.abs(m)%en),Q+=10*(Math.abs(m)%en)):_<0?(ne+=10*(Math.abs(m)%en),oe+=10*(Math.abs(m)%en),X+=10*(Math.abs(m)%en),Q+=10*(Math.abs(m)%en)):(ne=15,oe=10,X=-25,Q=10):(ne=10,oe=5,X=10,Q=-35);var ie="";t!==void 0&&(t==="startsWith"?ie="a*":t==="endsWith"?ie="*z":ie=x.getFilterOperatorString(t));var ae=d!=="chartLink"&&d!=="filterSource";return c.jsxs(c.Fragment,{children:[c.jsxs("svg",{className:re(e,{hovering:h}),children:[c.jsx("clipPath",{id:P,children:c.jsx("path",{d:E,clipRule:"evenodd"})}),c.jsx("path",{className:"link-select",d:T,onClick:this.handleClick,onMouseEnter:this.handleMouseEnter,onMouseLeave:this.handleMouseLeave,clipPath:"url(#".concat(P,")"),"data-testid":"link-select"}),c.jsx("path",{className:"link-background",d:T}),c.jsx("path",{className:"link-foreground",d:T}),c.jsx("circle",{className:"link-dot",cx:i,cy:a,r:"5"}),c.jsx("polygon",{className:"link-triangle",points:W})]}),u!=null&&r&&c.jsxs(c.Fragment,{children:[ae&&c.jsx(Y,{kind:"primary",className:"btn-fab btn-operator",style:{top:q+(_>=0?Q:oe),left:z+(_>=0?X:ne)},onClick:()=>{},icon:c.jsxs("div",{className:"fa-md fa-layers",children:[c.jsx("b",{children:ie}),c.jsx(le,{icon:Ss,transform:"right-8 down-9 shrink-5"})]}),tooltip:"Change comparison operator",children:c.jsx(fs,{actions:this.getDropdownActions,popperOptions:{placement:"bottom-start"}})}),c.jsx(Y,{kind:"primary",className:"btn-fab btn-delete",style:{top:q+(_<0?Q:oe),left:z+(_<0?X:ne)},onClick:this.handleDelete,icon:fr,tooltip:"Delete"})]})]})}}hc(zn,"defaultProps",{className:"",isSelected:!1,onClick(){},onDelete(){}});const bE=zn;function kd(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 jd(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?kd(Object(t),!0).forEach(function(r){Ws(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):kd(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Ws(n,e,t){return e=wE(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function wE(n){var e=yE(n,"string");return typeof e=="symbol"?e:String(e)}function yE(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Hl=fe.module("LinkerOverlayContent");class mc extends R.Component{constructor(e){super(e),Ws(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=Me.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){Hl.error("componentDidCatch",e,t)}componentWillUnmount(){window.removeEventListener("blur",this.handleBlur,!0),window.removeEventListener("mousemove",this.handleMouseMove,!0),window.removeEventListener("mouseup",this.handleMouseUp,!0),window.removeEventListener("keydown",this.handleKeyDown,!0),window.removeEventListener("keyup",this.handleKeyUp,!0),window.removeEventListener("resize",this.handleResize,!0)}getPointFromLinkPoint(e){var{panelManager:t}=this.props,{panelId:r,columnName:i}=e,a=t.getOpenedPanelById(r);if(a!=null){if(!dc(a))throw new Error("Panel does not have getCoordinateForColumn method: ".concat(r));try{var l=a.getCoordinateForColumn(i);if(l!=null)return l}catch{Hl.error("Could not get coordinate for column",i,a)}}var s=t.getContainerByPanelId(r);if(s==null)throw new Error("Unable to find panel container for id: ".concat(r));return ve.getTabPoint(s)}handleOperatorChanged(e,t){var{links:r,onLinksUpdated:i}=this.props,a=r.map(l=>l.id===e?jd(jd({},l),{},{operator:t}):l);i(a)}handleBlur(){this.setState({mode:"select"})}handleResize(){var{dialog:e}=this.state;if(e&&this.dialogRef.current){var t=this.dialogRef.current.getBoundingClientRect(),r=Ae(e.x,0,window.innerWidth-t.width),i=Ae(e.y,0,window.innerHeight-t.height);this.setState({dialog:{x:r,y:i}})}}handleMouseMove(e){var{offset:t,isDragging:r}=this.state;if(this.setState({mouse:{x:e.clientX,y:e.clientY}}),r&&this.dialogRef.current){var i=this.dialogRef.current.getBoundingClientRect(),a=Ae(window.innerWidth-(e.clientX+i.width+t.x),0,window.innerWidth-i.width),l=Ae(window.innerHeight-(e.clientY+i.height+t.y),0,window.innerHeight-i.height);this.setState({dialog:{x:a,y:l}})}}handleMouseDown(e){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{selectedIds:t,onLinkDeleted:r}=this.props;e.preventDefault(),t.forEach(i=>r(i))}}handleKeyUp(e){e.key==="Alt"&&(e.preventDefault(),this.setState({mode:"select"}))}handleEscapePressed(){var{onCancel:e}=this.props;e()}render(){var{disabled:e,links:t,selectedIds:r,messageText:i,onLinkSelected:a,onLinkDeleted:l,onAllLinksDeleted:s,onDone:o}=this.props,{mouse:u,dialog:d,isDragging:h,mode:v}=this.state,m=t.map(f=>{try{var g,p,{id:C,type:S,isReversed:b,start:w,end:y,operator:T}=f,E=w.columnType,[P,O]=this.getPointFromLinkPoint(w),D=(g=u?.x)!==null&&g!==void 0?g:P,N=(p=u?.y)!==null&&p!==void 0?p:O;if(y!=null&&([D,N]=this.getPointFromLinkPoint(y)),b!=null&&b){var[F,A]=[P,O];[P,O]=[D,N],[D,N]=[F,A]}var j=re("linker-link",{disabled:e},{"link-filter-source":S==="filterSource"},{"link-invalid":S==="invalid"},{interactive:f.end==null},{"link-is-selected":r.has(C)},{"danger-delete":v==="delete"});return{x1:P,y1:O,x2:D,y2:N,id:C,className:j,operator:T,startColumnType:E,type:S}}catch(k){return Hl.warn("Unable to get point for link",f,k),null}}).filter(f=>f!=null);return c.jsxs("div",{className:re("linker-overlay",{"danger-delete":v==="delete"}),children:[m.map(f=>{var{x1:g,y1:p,x2:C,y2:S,id:b,className:w,operator:y,startColumnType:T,type:E}=f;return c.jsx(bE,{className:w,id:b,x1:g,y1:p,x2:C,y2:S,onClick:a,onDelete:l,isSelected:r.has(b),operator:y,startColumnType:T,type:E,onOperatorChanged:this.handleOperatorChanged},b)}),c.jsxs("div",{className:re("linker-toast-dialog",{dragging:h}),ref:this.dialogRef,style:{bottom:d?.y,right:d?.x},"data-testid":"linker-toast-dialog",children:[c.jsx(Y,{draggable:!0,kind:"inline",className:"btn-drag-handle",icon:Ua,onClick:()=>{},onMouseDown:this.handleMouseDown,children:!h&&c.jsx(Jt,{children:"Drag to reposition"})}),c.jsx("div",{className:"toast-body",children:i}),c.jsxs("div",{className:"toast-footer",children:[c.jsx(Y,{kind:"secondary",onClick:s,children:"Clear All"}),c.jsx(Y,{kind:"primary",onClick:o,children:"Done"})]})]}),c.jsx(he,{actions:[{action:this.handleEscapePressed,shortcut:Jd.LINKER_CLOSE,isGlobal:!0}]})]})}}Ws(mc,"defaultProps",{disabled:"false"});const TE=mc;function _d(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 Hd(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?_d(Object(t),!0).forEach(function(r){fc(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):_d(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function fc(n,e,t){return e=EE(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function EE(n){var e=OE(n,"string");return typeof e=="symbol"?e:String(e)}function OE(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ut=fe.module("Linker"),PE=(n,e)=>({activeTool:os(n),dh:qd(n),isolatedLinkerPanelId:us(n,e.localDashboardId),links:ja(n,e.localDashboardId),timeZone:Xd(n)}),RE=On(PE,{setActiveTool:Wd,setDashboardLinks:gv,addDashboardLinks:pv,deleteDashboardLinks:Cv,setDashboardIsolatedLinkerPanelId:zd,setDashboardColumnSelectionValidator:Sv});class DE extends R.Component{constructor(e){super(e),fc(this,"getCachedLinks",Se((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?.end==null}):a})),this.handleCancel=this.handleCancel.bind(this),this.handleDone=this.handleDone.bind(this),this.handlePanelCloned=this.handlePanelCloned.bind(this),this.handleFilterColumnSelect=this.handleFilterColumnSelect.bind(this),this.handleColumnsChanged=this.handleColumnsChanged.bind(this),this.handlePanelClosed=this.handlePanelClosed.bind(this),this.handleLayoutStateChanged=this.handleLayoutStateChanged.bind(this),this.handleAllLinksDeleted=this.handleAllLinksDeleted.bind(this),this.handleLinkDeleted=this.handleLinkDeleted.bind(this),this.handleLinksUpdated=this.handleLinksUpdated.bind(this),this.handleChartColumnSelect=this.handleChartColumnSelect.bind(this),this.handleGridColumnSelect=this.handleGridColumnSelect.bind(this),this.handleUpdateValues=this.handleUpdateValues.bind(this),this.handleStateChange=this.handleStateChange.bind(this),this.handleExited=this.handleExited.bind(this),this.handleLinkSelected=this.handleLinkSelected.bind(this),this.handlePanelDragging=this.handlePanelDragging.bind(this),this.handlePanelDropped=this.handlePanelDropped.bind(this),this.isColumnSelectionValid=this.isColumnSelectionValid.bind(this),this.state={linkInProgress:void 0,selectedIds:new Set,isDraggingPanel:!1}}componentDidMount(){var{layout:e}=this.props;this.startListening(e),this.updateSelectionValidators()}componentDidUpdate(e){var{activeTool:t,layout:r}=this.props;r!==e.layout&&(this.stopListening(e.layout),this.startListening(r)),t!==e.activeTool&&(this.updateSelectionValidators(),t===wr.DEFAULT&&this.reset())}componentDidCatch(e,t){ut.error("componentDidCatch",e,t)}componentWillUnmount(){var{layout:e}=this.props;this.stopListening(e)}startListening(e){e.on("stateChanged",this.handleLayoutStateChanged);var{eventHub:t}=e;t.on(ur.COLUMN_SELECTED,this.handleGridColumnSelect),t.on(ur.DATA_SELECTED,this.handleUpdateValues),t.on(ur.STATE_CHANGED,this.handleStateChange),t.on(ts.COLUMN_SELECTED,this.handleChartColumnSelect),t.on(At.CLONED,this.handlePanelCloned),t.on(lt.COLUMN_SELECTED,this.handleFilterColumnSelect),t.on(lt.COLUMNS_CHANGED,this.handleColumnsChanged),t.on(At.CLOSE,this.handlePanelClosed),t.on(At.CLOSED,this.handlePanelClosed),t.on(At.DRAGGING,this.handlePanelDragging),t.on(At.DROPPED,this.handlePanelDropped)}stopListening(e){e.off("stateChanged",this.handleLayoutStateChanged);var{eventHub:t}=e;t.off(ur.COLUMN_SELECTED,this.handleGridColumnSelect),t.off(ur.DATA_SELECTED,this.handleUpdateValues),t.off(ur.STATE_CHANGED,this.handleStateChange),t.off(ts.COLUMN_SELECTED,this.handleChartColumnSelect),t.off(At.CLONED,this.handlePanelCloned),t.off(lt.COLUMN_SELECTED,this.handleFilterColumnSelect),t.off(lt.COLUMNS_CHANGED,this.handleColumnsChanged),t.off(At.CLOSE,this.handlePanelClosed),t.off(At.CLOSED,this.handlePanelClosed),t.off(At.DRAGGING,this.handlePanelDragging),t.off(At.DROPPED,this.handlePanelDropped)}reset(){this.setState({linkInProgress:void 0,selectedIds:new Set})}handleCancel(){var{linkInProgress:e}=this.state;if(e==null){var{setActiveTool:t}=this.props;t(wr.DEFAULT)}this.setState({linkInProgress:void 0})}handleDone(){var{setActiveTool:e}=this.props;e(wr.DEFAULT)}handleChartColumnSelect(e,t){this.columnSelected(e,t,!0)}handleFilterColumnSelect(e,t){ut.debug("handleFilterColumnSelect",this.isOverlayShown());var{links:r,localDashboardId:i,setActiveTool:a,setDashboardIsolatedLinkerPanelId:l}=this.props,s=ve.getIdFromPanel(e),o=r.filter(u=>{var d,h;return((d=u.start)===null||d===void 0?void 0:d.panelId)===s||((h=u.end)===null||h===void 0?void 0:h.panelId)===s});if(!this.isOverlayShown()&&s!=null){a(wr.LINKER),l(i,s),o.length===0&&this.columnSelected(e,t,!0,s);return}this.columnSelected(e,t,!0)}handleColumnsChanged(e,t){ut.debug("handleColumnsChanged",e,t);var{links:r}=this.props,i=ve.getIdFromPanel(e);if(i==null){ut.error("Invalid panelId",e);return}var a=r.filter(l=>{var{start:s,end:o}=l;return s.panelId===i&&Bn.findColumn(t,s)==null||o!=null&&o.panelId===i&&Bn.findColumn(t,o)==null});this.deleteLinks(a)}handleGridColumnSelect(e,t){if(!Nd(t)){ut.debug2("Column is not filterable");return}this.columnSelected(e,t)}columnSelected(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3?arguments[3]:void 0;if(!(i===void 0&&!this.isOverlayShown())){var{isolatedLinkerPanelId:a}=this.props,{linkInProgress:l}=this.state,s=ve.getIdFromPanel(e);if(s!=null){var o=ve.getComponentNameFromPanel(e),{name:u,type:d}=t;if(l==null||l.start==null){var h={id:nt.generate(),start:{panelId:s,panelComponent:o,columnName:u,columnType:d},type:"invalid",isReversed:r};ut.debug("starting link",h),this.setState({linkInProgress:h})}else{var{links:v}=this.props,{start:m,id:f,isReversed:g}=l,p={panelId:s,panelComponent:o,columnName:u,columnType:d},C=Bn.getLinkType(g!==void 0&&g?p:m,g!==void 0&&g?m:p,i??a);switch(C){case"invalid":ut.debug("Ignore invalid link connection",l,p);return;case"filterSource":{var S=g!==void 0&&g?m.panelId:p.panelId,b=v.filter(P=>{var{end:O}=P;return O?.panelId===S});this.deleteLinks(b);break}case"chartLink":{var w=g===!0?m:p,y=g===!0?p:m;ut.debug("creating chartlink",{existingLinkEnd:w,start:m,end:p});var T=v.filter(P=>{var{end:O,start:D}=P;return D?.panelId===y.panelId&&O?.panelId===w.panelId&&O?.columnName===w.columnName&&O?.columnType===w.columnType});this.deleteLinks(T);break}}var E={start:g!==void 0&&g?p:m,end:g!==void 0&&g?m:p,id:f,type:C,operator:Ce.eq};ut.info("creating link",E),this.setState({linkInProgress:void 0,selectedIds:new Set([f])},()=>{this.addLinks([E])})}}}}unsetFilterValueForLink(e){var{panelManager:t}=this.props;if(e.end){var{end:r}=e,{panelId:i,columnName:a,columnType:l}=r,s=t.getOpenedPanelById(i);s?Fd(s)?s.unsetFilterValue(a,l):ut.debug("endPanel.unsetFilterValue not implemented",s):ut.debug("endPanel no longer exists, ignoring unsetFilterValue",i)}}setPanelFilterMap(e,t){ut.debug("Set filter data for panel:",e,t);var{panelManager:r}=this.props,i=r.getOpenedPanelById(e);i?Fd(i)?i.setFilterMap(t):ut.debug("panel.setFilterMap not implemented",e,i):ut.debug("panel no longer exists, ignoring setFilterMap",e)}addLinks(e){var{addDashboardLinks:t,localDashboardId:r}=this.props;t(r,e)}deleteLinks(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,{localDashboardId:r}=this.props;if(e.forEach(l=>this.unsetFilterValueForLink(l)),t){var{setDashboardLinks:i}=this.props;i(r,[])}else if(e.length>0){var{deleteDashboardLinks:a}=this.props;a(r,e.map(l=>{var{id:s}=l;return s}))}}handleAllLinksDeleted(){var{links:e,isolatedLinkerPanelId:t}=this.props;if(t===void 0)this.deleteLinks(e,!0);else{var r=e.filter(i=>{var a,l;return(i==null||(a=i.start)===null||a===void 0?void 0:a.panelId)===t||(i==null||(l=i.end)===null||l===void 0?void 0:l.panelId)===t});this.deleteLinks(r)}this.reset()}handleLinkDeleted(e){var{links:t}=this.props,r=t.find(i=>i.id===e);r?this.deleteLinks([r]):ut.error("Unable to find link to delete",e)}handleUpdateValues(e,t){for(var r=ve.getIdFromPanel(e),{dh:i,links:a,timeZone:l}=this.props,s=new Map,o=0;o<a.length;o+=1){var{start:u,end:d,operator:h}=a[o];if(u.panelId===r&&d!=null){var{panelId:v,columnName:m,columnType:f}=d,g=s.has(v)?s.get(v):new Map,p=g.has(m)===!0?g.get(m).filterList:[],{visibleIndex:C,isExpandable:S,isGrouped:b}=t[u.columnName],{value:w}=t[u.columnName],y="".concat(w);if(w===null&&S&&b&&(w=void 0),f!=null&&x.isDateType(f)){var T=new wn(i,{timeZone:l,showTimeZone:!1,showTSeparator:!0,defaultDateTimeFormatString:Tn.FULL_DATE_FORMAT});y=T.format(w)}var E={operator:h,text:y,value:w,startColumnIndex:C};p.push(E),g.set(m,{columnType:f,filterList:p}),s.set(v,g)}}s.forEach((P,O)=>{this.setPanelFilterMap(O,P)})}handlePanelCloned(e,t){var{links:r}=this.props,i=ve.getIdFromPanel(e),a=t.id;if(i!=null){var l=Bn.cloneLinksForPanel(r,i,a);this.addLinks(l)}}handlePanelDragging(e){for(var{links:t}=this.props,r=0;r<t.length;r+=1){var i=t[r],{start:a,end:l}=i;if(a.panelId===e||l?.panelId===e){this.setState({isDraggingPanel:!0});return}}}handlePanelDropped(){this.setState({isDraggingPanel:!1})}handlePanelClosed(e){ut.debug("Panel ".concat(e," closed, deleting links.")),this.deleteLinksForPanelId(e)}handleLinkSelected(e){this.setState({selectedIds:new Set([e])})}handleLinksUpdated(e){var{localDashboardId:t,setDashboardLinks:r}=this.props;r(t,e)}handleLayoutStateChanged(){this.forceUpdate()}handleStateChange(){this.forceUpdate()}handleExited(){var{localDashboardId:e,setDashboardIsolatedLinkerPanelId:t}=this.props;t(e,void 0)}deleteLinksForPanelId(e){for(var{links:t}=this.props,r=0;r<t.length;r+=1){var i=t[r],{start:a,end:l,id:s}=i;(a.panelId===e||l?.panelId===e)&&this.handleLinkDeleted(s)}}isOverlayShown(){var{activeTool:e}=this.props;return e===wr.LINKER}updateSelectionValidators(){var{activeTool:e,setDashboardColumnSelectionValidator:t,localDashboardId:r}=this.props;switch(e){case wr.LINKER:t(r,this.isColumnSelectionValid);break;default:t(r,void 0);break}}updateLinkInProgressType(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"invalid";this.setState(t=>{var{linkInProgress:r}=t;return r!==void 0?{linkInProgress:Hd(Hd({},r),{},{type:e})}:null})}isColumnSelectionValid(e,t){var{linkInProgress:r}=this.state,{isolatedLinkerPanelId:i}=this.props;if(t==null)return r?.start!=null&&this.updateLinkInProgressType(),!1;if(!Nd(t))return ut.debug2("Column is not filterable",t.description),r?.start!=null&&this.updateLinkInProgressType("invalid"),!1;if(r?.start==null)return!0;var{isReversed:a,start:l}=r,s=ve.getIdFromPanel(e);if(s==null)return!1;var o={panelId:s,panelComponent:ve.getComponentNameFromPanel(e),columnName:t.name,columnType:t.type},u=a!==void 0&&a?Bn.getLinkType(o,l,i):Bn.getLinkType(l,o,i);return this.updateLinkInProgressType(u),u!=="invalid"}render(){var{links:e,isolatedLinkerPanelId:t,panelManager:r}=this.props,{linkInProgress:i,selectedIds:a,isDraggingPanel:l}=this.state,s=this.isOverlayShown(),o=i!=null&&i.start!=null,u=t===void 0?"Click a column source, then click a column target to create a filter link. The filter comparison operator used by a selected link can be changed. Delete a filter link by clicking the delete button or with alt+click. Click done when finished.":"Create a link between the source column button and a table column by clicking on one, then the other. Delete a filter link by clicking the delete button or with alt+click. Click done when finished.";return l?null:c.jsx(vr,{in:s,timeout:ze.transitionMs,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0,onExited:this.handleExited,children:c.jsx(TE,{disabled:o,panelManager:r,links:this.getCachedLinks(e,i,t),selectedIds:a,messageText:u,onLinkSelected:this.handleLinkSelected,onLinkDeleted:this.handleLinkDeleted,onAllLinksDeleted:this.handleAllLinksDeleted,onLinksUpdated:this.handleLinksUpdated,onDone:this.handleDone,onCancel:this.handleCancel})})}}var FE=RE(DE);const NE=FE;function IE(n){Pn(n);var{id:e,layout:t,panelManager:r}=n;return c.jsx(NE,{layout:t,localDashboardId:e,panelManager:r})}var AE={name:"LinkerPlugin",type:Rn.DASHBOARD_PLUGIN,component:IE};const sO=AE;function gc(n,e,t){return e=ME(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ME(n){var e=xE(n,"string");return typeof e=="symbol"?e:String(e)}function xE(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class ei{static getNewMarkdownTitle(e){for(var t="".concat(ei.DEFAULT_TITLE),r=0;e.indexOf(t)>=0;)r+=1,t="".concat(ei.DEFAULT_TITLE,"-").concat(r);return t}}gc(ei,"DEFAULT_TITLE","Note");gc(ei,"DEFAULT_CONTENT",`# Markdown Note
19
19
 
20
- This note can be edited using **markdown** for styling.`);const Ul=ei;function kE(n){Pn(n);var{id:e,layout:t,panelManager:r,registerComponent:i}=n,a=R.useCallback(s=>{var{title:o,componentState:u,props:d}=s,{panelState:h=null}=d;return u!=null&&({panelState:h=null}=u),o==null||h==null||h.content==null||h.content.length===0||h.content===Ul.DEFAULT_CONTENT?null:wv(s)},[]),l=R.useCallback(function(){var{title:s="",metadata:o={},id:u=nt.generate(),focusElement:d=me.DEFAULT_FOCUS_SELECTOR,createNewStack:h=!1,dragEvent:v=null}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},m=r.getOpenedPanelConfigsOfType(Si.COMPONENT),f=r.getClosedPanelConfigsOfType(Si.COMPONENT),g=m.map(w=>{var y;return(y=w.title)!==null&&y!==void 0?y:""}),p=s!=null&&s!==""?s:Ul.getNewMarkdownTitle(g),C=f.length>0?null:Ul.DEFAULT_CONTENT,S={type:"react-component",component:Si.COMPONENT,props:{id:u,metadata:o,panelState:{content:C},localDashboardId:e},title:p,id:u},{root:b}=t;me.openComponent({root:b,config:S,focusElement:d,createNewStack:h,dragEvent:v})},[e,t,r]);return R.useEffect(function(){var o=[i(Si.COMPONENT,Si,yv,a)];return()=>{o.forEach(u=>u())}},[a,i]),br(t.eventHub,Tv.OPEN,l),null}var jE={name:"MarkdownPlugin",type:Rn.DASHBOARD_PLUGIN,component:kE};const uO=jE;function _E(n){Pn(n);var e=_i(),t=uc();return js({dashboardProps:n,componentName:pd.COMPONENT,component:pd,supportedTypes:e.VariableType.PANDAS,hydrate:t}),null}var HE={name:"PandasPlugin",type:Rn.DASHBOARD_PLUGIN,component:_E};const dO=HE;var UE=Z.shape({state:Z.shape({panelState:Z.shape({})})}),VE=Z.shape({panelId:Z.string.isRequired,columnName:Z.string.isRequired,columnType:Z.string.isRequired}),Ud=Z.shape({panelId:Z.string.isRequired,columnName:Z.string.isRequired}),Cc=Z.shape({start:Ud,end:Ud,id:Z.string,isReversed:Z.bool}),BE=Z.arrayOf(Cc),GE=Z.shape({name:Z.string.isRequired,operateAs:Z.string.isRequired,groups:Z.arrayOf(Z.string).isRequired,permissions:Z.shape({canUsePanels:Z.bool.isRequired,canCopy:Z.bool.isRequired,canDownloadCsv:Z.bool.isRequired,canLogout:Z.bool.isRequired}).isRequired}),$E=Object.freeze({LinkPoint:VE,Link:Cc,Links:BE,Panel:UE,User:GE});const hO=$E;var WE=(n,e)=>n[e]===null?null:Z.bool,zE=(n,e)=>n[e]===null?null:Z.string,KE=Object.freeze({nullableBoolean:WE,nullableString:zE});const cO=KE;export{lE as ChartBuilderPlugin,aO as ChartBuilderPluginConfig,es as ChartEvent,ki as ChartPanel,iE as ChartPlugin,iO as ChartPluginConfig,fO as CommandHistoryPanel,cO as CommonPropTypes,av as ConsoleEvent,gO as ConsolePanel,pO as ConsolePlugin,CO as ControlType,yn as DropdownFilterPanel,SO as FileExplorerPanel,oE as FilterPlugin,lO as FilterPluginConfig,lT as FilterSetManager,_l as FilterSetManagerPanel,mE as GridPlugin,sO as GridPluginConfig,lt as InputFilterEvent,Ni as InputFilterPanel,ur as IrisGridEvent,Qn as IrisGridPanel,AE as LinkerPlugin,oO as LinkerPluginConfig,Bn as LinkerUtils,bO as LogPanel,Tv as MarkdownEvent,Si as MarkdownPanel,kE as MarkdownPlugin,uO as MarkdownPluginConfig,nO as MockFileStorage,wO as NotebookEvent,yO as NotebookPanel,rO as PandasEvent,pd as PandasPanel,_E as PandasPlugin,dO as PandasPluginConfig,ka as Panel,TO as TabEvent,wr as ToolType,hO as UIPropTypes,Us as WidgetPanel,Ya as WidgetPanelTooltip,Cv as addDashboardLinks,Sv as deleteDashboardLinks,us as getColumnSelectionValidatorForDashboard,Yd as getColumnsForDashboard,EO as getDashboardConnection,OO as getDashboardConsoleSettings,PO as getDashboardSessionWrapper,dv as getFilterSetsForDashboard,ds as getInputFiltersForDashboard,os as getIsolatedLinkerPanelIdForDashboard,ja as getLinksForDashboard,ls as getTableMapForDashboard,U0 as isChartPanelDehydratedProps,ba as isChartPanelTableMetadata,H0 as isGLChartPanelState,ic as isIrisGridPanelMetadata,nc as isLegacyIrisGridPanelMetadata,bv as setDashboardColumnSelectionValidator,RO as setDashboardConnection,DO as setDashboardConsoleSettings,uv as setDashboardFilterSets,zd as setDashboardIsolatedLinkerPanelId,pv as setDashboardLinks,FO as setDashboardSessionWrapper};
21
- //# sourceMappingURL=index-303a0543.js.map
20
+ This note can be edited using **markdown** for styling.`);const Ul=ei;function LE(n){Pn(n);var{id:e,layout:t,panelManager:r,registerComponent:i}=n,a=R.useCallback(s=>{var{title:o,componentState:u,props:d}=s,{panelState:h=null}=d;return u!=null&&({panelState:h=null}=u),o==null||h==null||h.content==null||h.content.length===0||h.content===Ul.DEFAULT_CONTENT?null:bv(s)},[]),l=R.useCallback(function(){var{title:s="",metadata:o={},id:u=nt.generate(),focusElement:d=ve.DEFAULT_FOCUS_SELECTOR,createNewStack:h=!1,dragEvent:v=null}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},m=r.getOpenedPanelConfigsOfType(Si.COMPONENT),f=r.getClosedPanelConfigsOfType(Si.COMPONENT),g=m.map(w=>{var y;return(y=w.title)!==null&&y!==void 0?y:""}),p=s!=null&&s!==""?s:Ul.getNewMarkdownTitle(g),C=f.length>0?null:Ul.DEFAULT_CONTENT,S={type:"react-component",component:Si.COMPONENT,props:{id:u,metadata:o,panelState:{content:C},localDashboardId:e},title:p,id:u},{root:b}=t;ve.openComponent({root:b,config:S,focusElement:d,createNewStack:h,dragEvent:v})},[e,t,r]);return R.useEffect(function(){var o=[i(Si.COMPONENT,Si,wv,a)];return()=>{o.forEach(u=>u())}},[a,i]),br(t.eventHub,yv.OPEN,l),null}var kE={name:"MarkdownPlugin",type:Rn.DASHBOARD_PLUGIN,component:LE};const oO=kE;function jE(n){Pn(n);var e=_i(),t=oc();return js({dashboardProps:n,componentName:pd.COMPONENT,component:pd,supportedTypes:e.VariableType.PANDAS,hydrate:t}),null}var _E={name:"PandasPlugin",type:Rn.DASHBOARD_PLUGIN,component:jE};const uO=_E;var HE=Z.shape({state:Z.shape({panelState:Z.shape({})})}),UE=Z.shape({panelId:Z.string.isRequired,columnName:Z.string.isRequired,columnType:Z.string.isRequired}),Ud=Z.shape({panelId:Z.string.isRequired,columnName:Z.string.isRequired}),pc=Z.shape({start:Ud,end:Ud,id:Z.string,isReversed:Z.bool}),VE=Z.arrayOf(pc),BE=Z.shape({name:Z.string.isRequired,operateAs:Z.string.isRequired,groups:Z.arrayOf(Z.string).isRequired,permissions:Z.shape({canUsePanels:Z.bool.isRequired,canCopy:Z.bool.isRequired,canDownloadCsv:Z.bool.isRequired,canLogout:Z.bool.isRequired}).isRequired}),GE=Object.freeze({LinkPoint:UE,Link:pc,Links:VE,Panel:HE,User:BE});const dO=GE;var $E=(n,e)=>n[e]===null?null:Z.bool,WE=(n,e)=>n[e]===null?null:Z.string,zE=Object.freeze({nullableBoolean:$E,nullableString:WE});const hO=zE;export{aE as ChartBuilderPlugin,iO as ChartBuilderPluginConfig,ts as ChartEvent,ki as ChartPanel,nE as ChartPlugin,nO as ChartPluginConfig,mO as CommandHistoryPanel,hO as CommonPropTypes,iv as ConsoleEvent,fO as ConsolePanel,gO as ConsolePlugin,pO as ControlType,yn as DropdownFilterPanel,CO as FileExplorerPanel,sE as FilterPlugin,aO as FilterPluginConfig,aT as FilterSetManager,_l as FilterSetManagerPanel,vE as GridPlugin,lO as GridPluginConfig,lt as InputFilterEvent,Ni as InputFilterPanel,ur as IrisGridEvent,Qn as IrisGridPanel,IE as LinkerPlugin,sO as LinkerPluginConfig,Bn as LinkerUtils,SO as LogPanel,yv as MarkdownEvent,Si as MarkdownPanel,LE as MarkdownPlugin,oO as MarkdownPluginConfig,rO as MockFileStorage,bO as NotebookEvent,wO as NotebookPanel,tO as PandasEvent,pd as PandasPanel,jE as PandasPlugin,uO as PandasPluginConfig,ka as Panel,yO as TabEvent,wr as ToolType,dO as UIPropTypes,Us as WidgetPanel,Ya as WidgetPanelTooltip,pv as addDashboardLinks,Cv as deleteDashboardLinks,ds as getColumnSelectionValidatorForDashboard,Yd as getColumnsForDashboard,TO as getDashboardConnection,EO as getDashboardConsoleSettings,OO as getDashboardSessionWrapper,uv as getFilterSetsForDashboard,hs as getInputFiltersForDashboard,us as getIsolatedLinkerPanelIdForDashboard,ja as getLinksForDashboard,ss as getTableMapForDashboard,H0 as isChartPanelDehydratedProps,ba as isChartPanelTableMetadata,_0 as isGLChartPanelState,nc as isIrisGridPanelMetadata,rc as isLegacyIrisGridPanelMetadata,Sv as setDashboardColumnSelectionValidator,PO as setDashboardConnection,RO as setDashboardConsoleSettings,ov as setDashboardFilterSets,zd as setDashboardIsolatedLinkerPanelId,gv as setDashboardLinks,DO as setDashboardSessionWrapper};
21
+ //# sourceMappingURL=index-4d662ebf.js.map