@deephaven/code-studio 0.48.1-beta.0 → 0.48.1-beta.1

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.
@@ -1,4 +1,4 @@
1
- import{C as u,G as te,r as y,I as pS,P as Y,F as J,J as et,K as qg,H as he,L as Ce,M as Zo,N as qi,O as tt,Q as Pe,S as Xg,T as ct,U as Sh,V as CS,W as bS,X as SS,Y as wS,$ as me,R as wh,Z as Bc,_ as yh,a0 as yS,a1 as Ue,a2 as ju,E as ES,D as Lr,a3 as ed,a4 as Qg,a5 as Eh,a6 as TS,a7 as Mn,a8 as PS,a9 as OS,aa as DS,ab as RS,ac as Hu,ad as NS,ae as FS,af as IS,ag as Vc,ah as _S,ai as Gc,aj as xS,ak as MS,al as AS,am as LS,an as kS,ao as jS,ap as Ht,aq as Zg,ar as HS,as as Jg,at as $S,au as ep,av as US,aw as BS,ax as VS,ay as GS,az as Wc,aA as WS,aB as zS}from"./vendor-a1e39f4e.js";import{e as fn,l as _n,K as Nr,a as ni,b as zc,R as KS,W as YS}from"./monaco-3857fcdf.js";import{v as $u,d as qS,a as tp,b as Th,L as kn,c as Cs,e as ti,f as rp,g as ae,h as Kc,i as XS,j as QS,k as ZS,l as JS,m as jr,n as Ki,o as np,p as ii,q as td,r as ro,s as ew,t as tw,u as Yc,w as _l,x as qc,y as ip,z as rw,A as bs,B as ap,C as nw,D as iw,T as Ze,E as Ph,F as Oh,G as xl,H as Vn,I as aw,J as ow,K as sw,M as lw,N as dw,O as uw,P as Dh,Q as Qi,R as Xc,S as Ss,U as Rh,V as Nh,W as op,X as hw,Y as rd,Z as cw,_ as ls,$ as mw,a0 as Fh,a1 as sp,a2 as fa,a3 as vw,a4 as fw,a5 as gw,a6 as pw,a7 as Cw,a8 as bw,a9 as Qc,aa as au,ab as Sw,ac as ww,ad as yw,ae as nd,af as id,ag as Ew,ah as Tw,ai as ad,aj as lp,ak as Pw,al as Ow,am as Dw,an as dp,ao as Rw,ap as Nw,aq as Fw,ar as Iw,as as _w,at as xw,au as Mw,av as Aw,aw as Lw,ax as kw,ay as jw,az as Hw,aA as $w,aB as up,aC as Uw,aD as Uu,aE as Bu,aF as Bw,aG as Vw,aH as Gw,aI as Ww,aJ as zw,aK as Kw,aL as Yw,aM as qw,aN as Xw,aO as Qw,aP as Zw,aQ as Jw,aR as ey,aS as Zc,aT as ty,aU as ry,aV as Jc}from"./index-59632136.js";import{P as Te,u as Oa,T as od,B as G,a as A,S as qe,M as we,K as Oe,G as ui,C as oe,b as Qr,c as tn,D as ai,d as fo,e as sd,f as pt,g as ws,I as no,U as ny,h as pe,i as j,F as oi,j as Sn,k as Ea,l as iy,m as Ih,n as $,E as ke,o as Zn,p as Xi,q as ay,r as El,s as Tt,t as Je,v as Et,w as ld,x as oy,O as ei,y as sy,z as Cn,A as cn,H as ly,J as dy,R as dd,L as si,N as ud,Q as hp,V as cp,W as uy,X as hy,Y as em,Z as Qe,_ as tm,$ as mp,a0 as _h,a1 as rm,a2 as ds,a3 as vp,a4 as cy,a5 as fp,a6 as my,a7 as dn,a8 as vy,a9 as fy,aa as gy,ab as py,ac as Cy,ad as by,ae as Sy,af as wy,ag as yy,ah as Ey,ai as Ty,aj as Py,ak as Oy,al as Dy,am as Ry,an as Ny}from"./useUser-7a05e9ff.js";import{P as Ml,b as Fy,h as Iy,p as _y,o as xy,s as My,t as Ay,c as Tl}from"./plotly-fd13a16f.js";import"./helpers-042e6b4d.js";class xh{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 o=xh.getBrightness(a);return o<125}static getBrightness(e){return Math.round((e[0]*299+e[1]*587+e[2]*114)/1e3)}}const gp=xh;function go(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 jy="table_",pp="column_",Hy=new Set(["in","not","i","ii","k"]),$y=new Set(["abstract","continue","for","new","switch","assert","default","if","package","synchronized","boolean","do","goto","private","this","break","double","implements","protected","throw","byte","else","import","public","throws","case","enum","instanceof","return","transient","catch","extends","int","short","try","char","final","interface","static","void","class","finally","long","strictfp","volatile","const","float","native","super","while","null","true","false"]),Uy=/[^a-zA-Z0-9_$+@-]/g,By=/[^A-Za-z0-9_$]/g;class rn{}go(rn,"legalize",(n,e,t,r,i)=>{var a=n.trim().replace(/[- ]/g,"_");return r&&(Hy.has(a)||$y.has(a))&&(a=e+a),a=a.replace(t,""),a||(a=e+i),Number.isNaN(Number(a.charAt(0)))||(a=e+a),a});go(rn,"legalizeTableName",n=>rn.legalize(n,jy,Uy,!1,0));go(rn,"legalizeColumnNames",n=>{var e=[];return n.forEach((t,r)=>{var i=rn.legalizeColumnName(t,r);e.includes(i)&&(i=pp+r),e.push(i)}),e});go(rn,"legalizeColumnName",function(n){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return rn.legalize(n,pp,By,!0,e)});go(rn,"isValidTableName",n=>rn.legalizeTableName(n)===n);go(rn,"isValidColumnName",n=>rn.legalizeColumnName(n)===n);const po=rn;function nm(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=Gy(n,"string");return typeof e=="symbol"?e:String(e)}function Gy(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 Wy{constructor(){nm(this,"pending",[]),nm(this,"resolved",[])}add(e,t){var r=Te.makeCancelable(e,t);return this.pending.push(r),r.then(()=>{this.resolve(r)},()=>{this.resolve(r)}),r}remove(e){for(var t=0;t<this.pending.length;t+=1)if(this.pending[t]===e){this.pending.splice(t,1);return}}resolve(e){this.remove(e),this.resolved.push(e)}cancel(){for(var e=[...this.pending,...this.resolved],t=0;t<e.length;t+=1)e[t].cancel();this.pending=[],this.resolved=[]}}const hi=Wy;function zy(n,e,t){return e=Ky(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ky(n){var e=Yy(n,"string");return typeof e=="symbol"?e:String(e)}function Yy(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 qy extends Error{constructor(){super(...arguments),zy(this,"isInvalid",!0)}}const Ja=qy;function Cp(n){var{type:e}=n,t=Oa();switch(e){case t.VariableType.TABLE:case t.VariableType.TABLEMAP:case t.VariableType.TREETABLE:case t.VariableType.HIERARCHICALTABLE:return u.jsx(te,{icon:Th});case t.VariableType.FIGURE:return u.jsx(te,{icon:tp});case t.VariableType.PANDAS:return u.jsx(te,{icon:qS});default:return u.jsx(te,{icon:$u})}}function Xy(n,e,t){return e=Qy(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Qy(n){var e=Zy(n,"string");return typeof e=="symbol"?e:String(e)}function Zy(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 Jy extends y.Component{constructor(e){super(e),Xy(this,"container",void 0),this.container=null}componentDidMount(){this.colorize()}colorize(){var{children:e}=this.props;this.container&&e!=null&&fn.colorizeElement(this.container,{theme:"dh-dark"})}render(){var{children:e,language:t}=this.props;return u.jsx("div",{children:u.jsx("div",{"data-lang":t,ref:r=>{this.container=r},style:{pointerEvents:"none"},children:e})})}}const hd=Jy;class e0{static get LANGUAGE_MAP(){return new Map([["python","Python"],["groovy","Groovy"],["scala","Scala"]])}}const bp=e0;class Al{static hasComment(e){return e.comment!==void 0}static hasPattern(e){return e.pattern!==void 0}static hasOp(e){return e.op!==void 0}static parseArguments(e){return e==null||!(typeof e=="string"||e instanceof String)?[]:pS.parse(e).filter(t=>!this.hasComment(t)).map(t=>this.hasPattern(t)?t.pattern:this.hasOp(t)?t.op:"".concat(t))}static formatTimestamp(e){if(e==null||!(e instanceof Date))return null;var t="".concat(e.getHours()).padStart(2,"0"),r="".concat(e.getMinutes()).padStart(2,"0"),i="".concat(e.getSeconds()).padStart(2,"0"),a="".concat(e.getMilliseconds()).padStart(3,"0");return"".concat(t,":").concat(r,":").concat(i,".").concat(a)}static isTableType(e,t){return t===e.VariableType.TABLE||t===e.VariableType.TREETABLE||t===e.VariableType.HIERARCHICALTABLE}static isWidgetType(e,t){return t===e.VariableType.FIGURE||t===e.VariableType.OTHERWIDGET||t===e.VariableType.PANDAS}static isOpenableType(e,t){return Al.isTableType(e,t)||Al.isWidgetType(e,t)}static isFigureType(e,t){return t===e.VariableType.FIGURE}static isPandas(e,t){return t===e.VariableType.PANDAS}}const Vu=Al;function Sp(n){var{children:e}=n;return u.jsxs("div",{className:"console-history-item-result",children:[u.jsx("div",{className:"console-history-gutter",children:"-"}),u.jsx("div",{className:"console-history-content",children:e})]})}Sp.propTypes={children:Y.node.isRequired};function Gu(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=r0(n,"string");return typeof e=="symbol"?e:String(e)}function r0(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 wp extends y.Component{constructor(e){super(e),Gu(this,"timer",void 0),Gu(this,"startTime",void 0),this.updateElapsed=this.updateElapsed.bind(this),this.startTime=Date.now(),this.state={elapsed:0}}componentDidMount(){this.timer=setInterval(this.updateElapsed,1e3)}componentWillUnmount(){this.timer&&clearInterval(this.timer),this.timer=void 0}updateElapsed(){this.setState({elapsed:Math.round((Date.now()-this.startTime)/1e3)})}render(){var{disabled:e,onCancelClick:t}=this.props,{elapsed:r}=this.state;return u.jsx("div",{className:J("console-history-result-in-progress",{disabled:e}),children:u.jsxs("span",{className:"badge",children:[u.jsx(kn,{})," Running... ",od.formatElapsedTime(r)," ",u.jsx(G,{className:"console-history-result-in-progress-cancel",kind:"ghost",icon:Cs,tooltip:"Cancel",onClick:t,disabled:e})]})})}}Gu(wp,"defaultProps",{disabled:!1});const n0=wp;function Jo(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 io extends y.PureComponent{constructor(e){super(e),Jo(this,"mouseX",void 0),Jo(this,"mouseY",void 0),Jo(this,"isClicking",void 0),this.handleKeyPress=this.handleKeyPress.bind(this),this.handleMouseDown=this.handleMouseDown.bind(this),this.handleMouseMove=this.handleMouseMove.bind(this),this.handleMouseUp=this.handleMouseUp.bind(this),this.handleToggleError=this.handleToggleError.bind(this),this.handleMouseEnter=this.handleMouseEnter.bind(this),this.handleMouseLeave=this.handleMouseLeave.bind(this),this.mouseX=null,this.mouseY=null,this.isClicking=!1,this.state={isExpanded:!1,isTriggerHovered:!1}}handleKeyPress(e){switch(e.key){case"Enter":case" ":this.handleToggleError(),e.stopPropagation(),e.preventDefault();break}}handleMouseDown(e){this.mouseX=e.clientX,this.mouseY=e.clientY,this.isClicking=!0}handleMouseMove(e){this.mouseX!=null&&this.mouseY!=null?(Math.abs(e.clientX-this.mouseX)>=io.mouseDragThreshold||Math.abs(e.clientY-this.mouseY)>=io.mouseDragThreshold)&&(this.isClicking=!1):this.isClicking&&(this.isClicking=!1)}handleMouseUp(e){this.isClicking&&!e.shiftKey&&!e.metaKey&&!e.altKey&&this.handleToggleError(),this.mouseX=null,this.mouseY=null,this.isClicking=!1}handleToggleError(){this.setState(e=>({isExpanded:!e.isExpanded}))}handleMouseEnter(){this.setState({isTriggerHovered:!0})}handleMouseLeave(){this.setState({isTriggerHovered:!1})}render(){var{isExpanded:e,isTriggerHovered:t}=this.state,{message:r}=this.props;A(r);var i=r.indexOf(`
1
+ import{C as u,G as te,r as y,I as pS,P as Y,F as J,J as et,K as qg,H as he,L as Ce,M as Zo,N as qi,O as tt,Q as Pe,S as Xg,T as ct,U as Sh,V as CS,W as bS,X as SS,Y as wS,$ as me,R as wh,Z as Bc,_ as yh,a0 as yS,a1 as Ue,a2 as ju,E as ES,D as Lr,a3 as ed,a4 as Qg,a5 as Eh,a6 as TS,a7 as Mn,a8 as PS,a9 as OS,aa as DS,ab as RS,ac as Hu,ad as NS,ae as FS,af as IS,ag as Vc,ah as _S,ai as Gc,aj as xS,ak as MS,al as AS,am as LS,an as kS,ao as jS,ap as Ht,aq as Zg,ar as HS,as as Jg,at as $S,au as ep,av as US,aw as BS,ax as VS,ay as GS,az as Wc,aA as WS,aB as zS}from"./vendor-a1e39f4e.js";import{e as fn,l as _n,K as Nr,a as ni,b as zc,R as KS,W as YS}from"./monaco-3857fcdf.js";import{v as $u,d as qS,a as tp,b as Th,L as kn,c as Cs,e as ti,f as rp,g as ae,h as Kc,i as XS,j as QS,k as ZS,l as JS,m as jr,n as Ki,o as np,p as ii,q as td,r as ro,s as ew,t as tw,u as Yc,w as _l,x as qc,y as ip,z as rw,A as bs,B as ap,C as nw,D as iw,T as Ze,E as Ph,F as Oh,G as xl,H as Vn,I as aw,J as ow,K as sw,M as lw,N as dw,O as uw,P as Dh,Q as Qi,R as Xc,S as Ss,U as Rh,V as Nh,W as op,X as hw,Y as rd,Z as cw,_ as ls,$ as mw,a0 as Fh,a1 as sp,a2 as fa,a3 as vw,a4 as fw,a5 as gw,a6 as pw,a7 as Cw,a8 as bw,a9 as Qc,aa as au,ab as Sw,ac as ww,ad as yw,ae as nd,af as id,ag as Ew,ah as Tw,ai as ad,aj as lp,ak as Pw,al as Ow,am as Dw,an as dp,ao as Rw,ap as Nw,aq as Fw,ar as Iw,as as _w,at as xw,au as Mw,av as Aw,aw as Lw,ax as kw,ay as jw,az as Hw,aA as $w,aB as up,aC as Uw,aD as Uu,aE as Bu,aF as Bw,aG as Vw,aH as Gw,aI as Ww,aJ as zw,aK as Kw,aL as Yw,aM as qw,aN as Xw,aO as Qw,aP as Zw,aQ as Jw,aR as ey,aS as Zc,aT as ty,aU as ry,aV as Jc}from"./index-9666da2b.js";import{P as Te,u as Oa,T as od,B as G,a as A,S as qe,M as we,K as Oe,G as ui,C as oe,b as Qr,c as tn,D as ai,d as fo,e as sd,f as pt,g as ws,I as no,U as ny,h as pe,i as j,F as oi,j as Sn,k as Ea,l as iy,m as Ih,n as $,E as ke,o as Zn,p as Xi,q as ay,r as El,s as Tt,t as Je,v as Et,w as ld,x as oy,O as ei,y as sy,z as Cn,A as cn,H as ly,J as dy,R as dd,L as si,N as ud,Q as hp,V as cp,W as uy,X as hy,Y as em,Z as Qe,_ as tm,$ as mp,a0 as _h,a1 as rm,a2 as ds,a3 as vp,a4 as cy,a5 as fp,a6 as my,a7 as dn,a8 as vy,a9 as fy,aa as gy,ab as py,ac as Cy,ad as by,ae as Sy,af as wy,ag as yy,ah as Ey,ai as Ty,aj as Py,ak as Oy,al as Dy,am as Ry,an as Ny}from"./useUser-7ef1f752.js";import{P as Ml,b as Fy,h as Iy,p as _y,o as xy,s as My,t as Ay,c as Tl}from"./plotly-fd13a16f.js";import"./helpers-042e6b4d.js";class xh{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 o=xh.getBrightness(a);return o<125}static getBrightness(e){return Math.round((e[0]*299+e[1]*587+e[2]*114)/1e3)}}const gp=xh;function go(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 jy="table_",pp="column_",Hy=new Set(["in","not","i","ii","k"]),$y=new Set(["abstract","continue","for","new","switch","assert","default","if","package","synchronized","boolean","do","goto","private","this","break","double","implements","protected","throw","byte","else","import","public","throws","case","enum","instanceof","return","transient","catch","extends","int","short","try","char","final","interface","static","void","class","finally","long","strictfp","volatile","const","float","native","super","while","null","true","false"]),Uy=/[^a-zA-Z0-9_$+@-]/g,By=/[^A-Za-z0-9_$]/g;class rn{}go(rn,"legalize",(n,e,t,r,i)=>{var a=n.trim().replace(/[- ]/g,"_");return r&&(Hy.has(a)||$y.has(a))&&(a=e+a),a=a.replace(t,""),a||(a=e+i),Number.isNaN(Number(a.charAt(0)))||(a=e+a),a});go(rn,"legalizeTableName",n=>rn.legalize(n,jy,Uy,!1,0));go(rn,"legalizeColumnNames",n=>{var e=[];return n.forEach((t,r)=>{var i=rn.legalizeColumnName(t,r);e.includes(i)&&(i=pp+r),e.push(i)}),e});go(rn,"legalizeColumnName",function(n){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return rn.legalize(n,pp,By,!0,e)});go(rn,"isValidTableName",n=>rn.legalizeTableName(n)===n);go(rn,"isValidColumnName",n=>rn.legalizeColumnName(n)===n);const po=rn;function nm(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=Gy(n,"string");return typeof e=="symbol"?e:String(e)}function Gy(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 Wy{constructor(){nm(this,"pending",[]),nm(this,"resolved",[])}add(e,t){var r=Te.makeCancelable(e,t);return this.pending.push(r),r.then(()=>{this.resolve(r)},()=>{this.resolve(r)}),r}remove(e){for(var t=0;t<this.pending.length;t+=1)if(this.pending[t]===e){this.pending.splice(t,1);return}}resolve(e){this.remove(e),this.resolved.push(e)}cancel(){for(var e=[...this.pending,...this.resolved],t=0;t<e.length;t+=1)e[t].cancel();this.pending=[],this.resolved=[]}}const hi=Wy;function zy(n,e,t){return e=Ky(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ky(n){var e=Yy(n,"string");return typeof e=="symbol"?e:String(e)}function Yy(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 qy extends Error{constructor(){super(...arguments),zy(this,"isInvalid",!0)}}const Ja=qy;function Cp(n){var{type:e}=n,t=Oa();switch(e){case t.VariableType.TABLE:case t.VariableType.TABLEMAP:case t.VariableType.TREETABLE:case t.VariableType.HIERARCHICALTABLE:return u.jsx(te,{icon:Th});case t.VariableType.FIGURE:return u.jsx(te,{icon:tp});case t.VariableType.PANDAS:return u.jsx(te,{icon:qS});default:return u.jsx(te,{icon:$u})}}function Xy(n,e,t){return e=Qy(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Qy(n){var e=Zy(n,"string");return typeof e=="symbol"?e:String(e)}function Zy(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 Jy extends y.Component{constructor(e){super(e),Xy(this,"container",void 0),this.container=null}componentDidMount(){this.colorize()}colorize(){var{children:e}=this.props;this.container&&e!=null&&fn.colorizeElement(this.container,{theme:"dh-dark"})}render(){var{children:e,language:t}=this.props;return u.jsx("div",{children:u.jsx("div",{"data-lang":t,ref:r=>{this.container=r},style:{pointerEvents:"none"},children:e})})}}const hd=Jy;class e0{static get LANGUAGE_MAP(){return new Map([["python","Python"],["groovy","Groovy"],["scala","Scala"]])}}const bp=e0;class Al{static hasComment(e){return e.comment!==void 0}static hasPattern(e){return e.pattern!==void 0}static hasOp(e){return e.op!==void 0}static parseArguments(e){return e==null||!(typeof e=="string"||e instanceof String)?[]:pS.parse(e).filter(t=>!this.hasComment(t)).map(t=>this.hasPattern(t)?t.pattern:this.hasOp(t)?t.op:"".concat(t))}static formatTimestamp(e){if(e==null||!(e instanceof Date))return null;var t="".concat(e.getHours()).padStart(2,"0"),r="".concat(e.getMinutes()).padStart(2,"0"),i="".concat(e.getSeconds()).padStart(2,"0"),a="".concat(e.getMilliseconds()).padStart(3,"0");return"".concat(t,":").concat(r,":").concat(i,".").concat(a)}static isTableType(e,t){return t===e.VariableType.TABLE||t===e.VariableType.TREETABLE||t===e.VariableType.HIERARCHICALTABLE}static isWidgetType(e,t){return t===e.VariableType.FIGURE||t===e.VariableType.OTHERWIDGET||t===e.VariableType.PANDAS}static isOpenableType(e,t){return Al.isTableType(e,t)||Al.isWidgetType(e,t)}static isFigureType(e,t){return t===e.VariableType.FIGURE}static isPandas(e,t){return t===e.VariableType.PANDAS}}const Vu=Al;function Sp(n){var{children:e}=n;return u.jsxs("div",{className:"console-history-item-result",children:[u.jsx("div",{className:"console-history-gutter",children:"-"}),u.jsx("div",{className:"console-history-content",children:e})]})}Sp.propTypes={children:Y.node.isRequired};function Gu(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=r0(n,"string");return typeof e=="symbol"?e:String(e)}function r0(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 wp extends y.Component{constructor(e){super(e),Gu(this,"timer",void 0),Gu(this,"startTime",void 0),this.updateElapsed=this.updateElapsed.bind(this),this.startTime=Date.now(),this.state={elapsed:0}}componentDidMount(){this.timer=setInterval(this.updateElapsed,1e3)}componentWillUnmount(){this.timer&&clearInterval(this.timer),this.timer=void 0}updateElapsed(){this.setState({elapsed:Math.round((Date.now()-this.startTime)/1e3)})}render(){var{disabled:e,onCancelClick:t}=this.props,{elapsed:r}=this.state;return u.jsx("div",{className:J("console-history-result-in-progress",{disabled:e}),children:u.jsxs("span",{className:"badge",children:[u.jsx(kn,{})," Running... ",od.formatElapsedTime(r)," ",u.jsx(G,{className:"console-history-result-in-progress-cancel",kind:"ghost",icon:Cs,tooltip:"Cancel",onClick:t,disabled:e})]})})}}Gu(wp,"defaultProps",{disabled:!1});const n0=wp;function Jo(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 io extends y.PureComponent{constructor(e){super(e),Jo(this,"mouseX",void 0),Jo(this,"mouseY",void 0),Jo(this,"isClicking",void 0),this.handleKeyPress=this.handleKeyPress.bind(this),this.handleMouseDown=this.handleMouseDown.bind(this),this.handleMouseMove=this.handleMouseMove.bind(this),this.handleMouseUp=this.handleMouseUp.bind(this),this.handleToggleError=this.handleToggleError.bind(this),this.handleMouseEnter=this.handleMouseEnter.bind(this),this.handleMouseLeave=this.handleMouseLeave.bind(this),this.mouseX=null,this.mouseY=null,this.isClicking=!1,this.state={isExpanded:!1,isTriggerHovered:!1}}handleKeyPress(e){switch(e.key){case"Enter":case" ":this.handleToggleError(),e.stopPropagation(),e.preventDefault();break}}handleMouseDown(e){this.mouseX=e.clientX,this.mouseY=e.clientY,this.isClicking=!0}handleMouseMove(e){this.mouseX!=null&&this.mouseY!=null?(Math.abs(e.clientX-this.mouseX)>=io.mouseDragThreshold||Math.abs(e.clientY-this.mouseY)>=io.mouseDragThreshold)&&(this.isClicking=!1):this.isClicking&&(this.isClicking=!1)}handleMouseUp(e){this.isClicking&&!e.shiftKey&&!e.metaKey&&!e.altKey&&this.handleToggleError(),this.mouseX=null,this.mouseY=null,this.isClicking=!1}handleToggleError(){this.setState(e=>({isExpanded:!e.isExpanded}))}handleMouseEnter(){this.setState({isTriggerHovered:!0})}handleMouseLeave(){this.setState({isTriggerHovered:!1})}render(){var{isExpanded:e,isTriggerHovered:t}=this.state,{message:r}=this.props;A(r);var i=r.indexOf(`
2
2
  `),a=i>-1,o=r;a&&(o=r.slice(0,i));var s=r.slice(i),l=t?"error-btn-link error-btn-link--active":"error-btn-link";return u.jsxs("div",{className:J("error-message",{expanded:e}),children:[a&&u.jsxs(u.Fragment,{children:[u.jsx("div",{className:"error-gutter",children:u.jsx("button",{type:"button",onClick:this.handleToggleError,className:l,tabIndex:-1,children:u.jsx(te,{icon:e?ti:rp,transform:"left-3"})})}),u.jsxs("div",{className:"error-content",children:[u.jsx("div",{className:"console-error-text-trigger",role:"button",tabIndex:0,onKeyPress:this.handleKeyPress,onMouseDown:this.handleMouseDown,onMouseMove:this.handleMouseMove,onMouseEnter:this.handleMouseEnter,onMouseLeave:this.handleMouseLeave,onMouseUp:this.handleMouseUp,children:o}),e?s:""]})]}),!a&&u.jsx("div",{className:"error-content",children:u.jsx("div",{className:"console-error-text",children:o})})]},"error")}}Jo(io,"defaultProps",{message:""});Jo(io,"mouseDragThreshold",5);const o0=io;function s0(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=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 im=ae.module("ConsoleHistoryItem");class yp extends y.PureComponent{constructor(e){super(e),this.handleCancelClick=this.handleCancelClick.bind(this),this.handleObjectClick=this.handleObjectClick.bind(this)}handleObjectClick(e){im.debug("handleObjectClick",e);var{openObject:t}=this.props;t(e)}handleCancelClick(){var{item:e}=this.props;e!=null&&e.cancelResult&&(im.debug("Cancelling command: ".concat(e.command)),e.cancelResult())}render(){var{disabled:e,item:t,language:r}=this.props,{disabledObjects:i,result:a}=t,o=t.command!=null&&t.command!=="",s=null;o&&(s=u.jsxs("div",{className:"console-history-item-command",children:[u.jsx("div",{className:"console-history-gutter",children:">"}),u.jsx("div",{className:"console-history-content",children:u.jsx(hd,{language:r,children:t.command})})]}));var l=[],d=!1;if(a){var{error:h,message:c,changes:m}=a;if(m){var{created:v,updated:f}=m;[...v,...f].forEach(E=>{d=!0;var{title:T}=E,P="".concat(T),D=e===void 0||e||(i??[]).indexOf(P)>=0,O=u.jsx(G,{kind:"primary",onClick:()=>this.handleObjectClick(E),className:"btn-console-object",disabled:D,icon:u.jsx(Cp,{type:E.type}),children:T},P);l.push(O)})}if(h!=null&&!o){var g,p="".concat((g=h.message)!==null&&g!==void 0?g:h);p||(p=h);var C=u.jsx(o0,{message:p},"result-error");l.push(C)}if(c!==void 0&&c!==""){var b=u.jsx("div",{className:"log-message",children:c},"log-message");l.push(b)}}else{d=!0;var S=u.jsx(n0,{onCancelClick:this.handleCancelClick,disabled:e},"in_progress");l.push(S)}var w=null;return l.length>0&&(w=u.jsx(Sp,{children:l})),u.jsxs("div",{className:J("console-command-result",{"console-result-buttons":d}),children:[s,w]})}}s0(yp,"defaultProps",{disabled:!1});const u0=yp;function h0(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=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 cd extends y.Component{static itemKey(e,t){return"".concat(e,".").concat(t.command,".").concat(t.result&&t.result.message,".").concat(t.result&&t.result.error)}render(){for(var{disabled:e,items:t,language:r,openObject:i}=this.props,a=[],o=0;o<t.length;o+=1){var s=t[o],l=u.jsx(u0,{disabled:e,item:s,openObject:i,language:r},cd.itemKey(o,s));a.push(l)}return u.jsx("div",{className:"container-fluid console-history",children:a})}}h0(cd,"defaultProps",{disabled:!1});const v0=cd;var f0={name:"Console",CLEAR:qe.createAndAdd({id:"CONSOLE.CLEAR",name:"Clear",shortcut:[we.CTRL,Oe.L],macShortcut:[we.CTRL,Oe.C]}),FOCUS_HISTORY:qe.createAndAdd({id:"CONSOLE.FOCUS_HISTORY",name:"Focus History",shortcut:[we.CTRL,Oe.H],macShortcut:[we.CTRL,we.OPTION,Oe.H]})},g0={name:"Command History",FOCUS_HISTORY:qe.createAndAdd({id:"COMMAND_HISTORY.FOCUS_HISTORY",name:"Focus History Search",shortcut:[we.CTRL,Oe.H],macShortcut:[we.CTRL,we.OPTION,Oe.H]}),SEND_TO_CONSOLE:qe.createAndAdd({id:"COMMAND_HISTORY.SEND_TO_CONSOLE",name:"Send to Console",shortcut:[Oe.ENTER],macShortcut:[Oe.ENTER]}),SEND_TO_NOTEBOOK:qe.createAndAdd({id:"COMMAND_HISTORY.SEND_TO_NOTEBOOK",name:"Send to Notebook",shortcut:[we.CTRL,Oe.ENTER],macShortcut:[we.CMD,Oe.ENTER]}),RUN:qe.createAndAdd({id:"COMMAND_HISTORY.RUN",name:"Run",shortcut:[we.ALT,Oe.R],macShortcut:[we.OPTION,Oe.R]})},p0={name:"Notebook",RUN:qe.createAndAdd({id:"NOTEBOOK.RUN",name:"Run",shortcut:[we.ALT,Oe.R],macShortcut:[we.OPTION,Oe.R]}),RUN_SELECTED:qe.createAndAdd({id:"NOTEBOOK.RUN_SELECTED",name:"Run Selected",shortcut:[we.ALT,we.SHIFT,Oe.R],macShortcut:[we.OPTION,we.SHIFT,Oe.R]}),FIND:qe.createAndAdd({id:"NOTEBOOK.FIND",name:"Find",shortcut:[we.CTRL,Oe.F],macShortcut:[we.CMD,Oe.F],isEditable:!1}),MINIMAP:qe.createAndAdd({id:"NOTEBOOK.MINIMAP",name:"Show Minimap",shortcut:[we.ALT,Oe.M],macShortcut:[we.OPTION,Oe.M]}),WORDWRAP:qe.createAndAdd({id:"NOTEBOOK.WORDWRAP",name:"Word Wrap",shortcut:[we.ALT,Oe.Z],macShortcut:[we.OPTION,Oe.Z]})},C0={CONSOLE:f0,COMMAND_HISTORY:g0,NOTEBOOK:p0};const or=C0,Lt=Object.freeze({FATAL:"FATAL",STDERR:"STDERR",ERROR:"ERROR",WARN:"WARN",STDOUT:"STDOUT",INFO:"INFO",DEBUG:"DEBUG",TRACE:"TRACE"}),b0="#2d2a2e",S0="#fcfcfa",w0="#fcd65b",y0="#b2b1b2",E0="#9edc6f",T0="#76d9e4",P0="#f95d84",O0="#aa9af4",D0="#f95d84",R0="#fcfcfa",N0="#7c7b7c",be={"error-foreground":"#f95d84",background:b0,foreground:S0,"line-height":"19px",string:w0,"string-delim":"#929192",delimiter:y0,predefined:E0,keyword:T0,storage:P0,number:O0,operator:D0,identifier:R0,"namespace-identifier":"#f95d84","identifier-js":"#fcd65b",comment:N0,"input-option-active-border":"#929192","focus-border":"rgba(72, 120, 234, 0.85)","input-background":"#555356","input-foreground":"#f0f0ee","input-border":"#929192","editor-line-number-foreground":"#929192","editor-selection-background":"#676368","editor-line-highlight-bg":"#373438","context-menu-background":"#555356","context-menu-foreground":"#f0f0ee","menu-selection-background":"#4878ea","log-date":"#929192","log-error":"#f95d84","log-info":"#76d9e4","log-stdout":"#f0f0ee","log-warn":"#fcd65b","log-debug":"#aa9af4","log-trace":"#9edc6f","editor-find-match-background":"#3c5595","editor-find-match-highlight-background":"#343e5d","editor-widget-background":"#403e41","input-option-active-background":"#4878ea","input-option-active-foreground":"#f0f0ee","editor-suggest-widget-background":"#403e41","editor-suggest-widget-border":"#5b5a5c","editor-suggest-widget-foreground":"#f0f0ee","editor-suggest-widget-selected-background":"#41475a","editor-suggest-widget-highlightForeground":"#4878ea","list-hover-background":"#555356","text-link-foreground":"#929192","text-link-active-foreground":"#f0f0ee","editor-link-active-foreground":"#f0f0ee"};var F0="python",I0={comments:{lineComment:"#",blockComment:["'''","'''"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],onEnterRules:[{beforeText:/^\s*(?:def|class|for|if|elif|else|while|try|with|finally|except|async).*?:\s*$/,action:{indentAction:1}}],folding:{offSide:!0,markers:{start:/^\s*#region\b/,end:/^\s*#endregion\b/}}},_0={keywords:["and","del","from","not","while","as","elif","global","or","with","assert","else","if","pass","yield","break","except","import","print","exec","in","raise","continue","finally","is","return","for","try",":","=","isinstance","__debug__"],storage:["class","def","async","lambda"],operators:["+","-","*","**","/","//","%","<<",">>","&","|","^","~","<",">","<=",">=","==","!=","<>","+=","-=","*=","/","//=","%=","&=","|=","^=",">>=","<<=","**="],brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"}],symbols:/[=><!~&|+\-*/^%]+/,delimiters:/[;=.@:,`]/,escapes:/\\(?:[abfnrtv\\"'\n\r]|x[0-9A-Fa-f]{2}|[0-7]{3}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8}|N\{\w+\})/,rawpre:/(?:[rR]|ur|Ur|uR|UR|br|Br|bR|BR)/,strpre:/(?:[buBU])/,tokenizer:{root:[[/@strpre?("""|''')/,{token:"string.delim",bracket:"@open",next:"@mstring.$1"}],[/@strpre?"([^"\\]|\\.)*$/,"string.invalid"],[/@strpre?'([^'\\]|\\.)*$/,"string.invalid"],[/@strpre?(["])/,{token:"string.delim",bracket:"@open",next:"@sstring.$1",nextEmbedded:"deephavenDb"}],[/@strpre?(["'])/,{token:"string.delim",bracket:"@open",next:"@string.$1"}],[/@rawpre("""|''')/,{token:"string.delim",bracket:"@open",next:"@mrawstring.$1"}],[/@rawpre"([^"\\]|\\.)*$/,"string.invalid"],[/@rawpre'([^'\\]|\\.)*$/,"string.invalid"],[/@rawpre(["'])/,{token:"string.delim",bracket:"@open",next:"@rawstring.$1"}],[/__[\w$]*/,"predefined"],[/[a-z_$][\w$]*/,{cases:{"@keywords":"keyword","@storage":"storage","@default":"identifier"}}],[/[A-Z][\w]*/,{cases:{"~[A-Z0-9_]+":"constructor.identifier","@default":"namespace.identifier"}}],{include:"@whitespace"},[/[{}()[\]]/,"@brackets"],[/@symbols/,{cases:{"@keywords":"keyword","@operators":"operator","@default":""}}],[/\d*\.\d+([eE][-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F]+[lL]?/,"number.hex"],[/0[bB][0-1]+[lL]?/,"number.binary"],[/(0[oO][0-7]+|0[0-7]+)[lL]?/,"number.octal"],[/(0|[1-9]\d*)[lL]?/,"number"],[":",{token:"keyword",bracket:"@open"}],[/@delimiters/,{cases:{"@keywords":"keyword","@default":"delimiter"}}]],comment:[[/[^/*]+/,"comment"],[/\/\*/,"comment","@push"],["\\*/","comment","@pop"],[/[/*]/,"comment"]],mstring:[{include:"@strcontent"},[/"""|'''/,{cases:{"$#==$S2":{token:"string.delim",bracket:"@close",next:"@pop"},"@default":{token:"string"}}}],[/["']/,"string"],[/./,"string.invalid"]],sstring:[{include:"@strcontent"},[/["]/,{token:"string.delim",bracket:"@close",next:"@pop",nextEmbedded:"@pop"}],[/./,"string.invalid"]],string:[{include:"@strcontent"},[/[']/,{token:"string.delim",bracket:"@close",next:"@pop"}],[/./,"string.invalid"]],strcontent:[[/[^\\"']+/,"string"],[/\\$/,"string.escape"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"]],mrawstring:[{include:"@rawstrcontent"},[/"""|'''/,{cases:{"$#==$S2":{token:"string.delim",bracket:"@close",next:"@pop"},"@default":{token:"string"}}}],[/["']/,"string"],[/./,"string.invalid"]],rawstring:[{include:"@rawstrcontent"},[/["']/,{cases:{"$#==$S2":{token:"string.delim",bracket:"@close",next:"@pop"},"@default":{token:"string"}}}],[/./,"string.invalid"]],rawstrcontent:[[/[^\\"']+/,"string"],[/\\["']/,"string"],[/\\u[0-9A-Fa-f]{4}/,"string.escape"],[/\\/,"string"]],whitespace:[[/\s+/,"white"],[/(^#.*$)/,"comment"],[/'''/,"string","@endDocString"],[/"""/,"string","@endDblDocString"]],endDocString:[[/[^']+/,"string"],[/\\'/,"string"],[/'''/,"string","@popall"],[/'/,"string"]],endDblDocString:[[/[^"]+/,"string"],[/\\"/,"string"],[/"""/,"string","@popall"],[/"/,"string"]]}},x0={id:F0,conf:I0,language:_0};const M0=x0;var A0="groovy",L0={comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],onEnterRules:[{beforeText:/^\s*(?:def|class|for|if|elif|else|while|try|with|finally|except|async).*?:\s*$/,action:{indentAction:1}}],folding:{offSide:!0,markers:{start:/^\s*#region\b/,end:/^\s*#endregion\b/}}},k0={keywords:["and","del","from","not","while","as","elif","global","or","with","assert","else","if","pass","yield","break","except","import","print","println","class","exec","in","raise","continue","finally","is","return","def","for","lambda","try",":","=","isinstance","__debug__"],operators:["+","-","*","**","/","//","%","<<",">>","&","|","^","~","<",">","<=",">=","==","!=","<>","+=","-=","*=","/","//=","%=","&=","|=","^=",">>=","<<=","**="],brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"}],symbols:/[=><!~&|+\-*/^%]+/,delimiters:/[;=.@:,`]/,escapes:/\\(?:[abfnrtv\\"'\n\r]|x[0-9A-Fa-f]{2}|[0-7]{3}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8}|N\{\w+\})/,rawpre:/(?:[rR]|ur|Ur|uR|UR|br|Br|bR|BR)/,strpre:/(?:[buBU])/,tokenizer:{root:[[/@strpre?("""|''')/,{token:"string.delim",bracket:"@open",next:"@mstring.$1"}],[/@strpre?"([^"\\]|\\.)*$/,"string.invalid"],[/@strpre?'([^'\\]|\\.)*$/,"string.invalid"],[/@strpre?(["])/,{token:"string.delim",bracket:"@open",next:"@sstring.$1",nextEmbedded:"deephavenDb"}],[/@strpre?(["'])/,{token:"string.delim",bracket:"@open",next:"@string.$1"}],[/@rawpre("""|''')/,{token:"string.delim",bracket:"@open",next:"@mrawstring.$1"}],[/@rawpre"([^"\\]|\\.)*$/,"string.invalid"],[/@rawpre'([^'\\]|\\.)*$/,"string.invalid"],[/@rawpre(["'])/,{token:"string.delim",bracket:"@open",next:"@rawstring.$1"}],[/__[\w$]*/,"predefined"],[/[a-z_$][\w$]*/,{cases:{"@keywords":"keyword","@default":"identifier"}}],[/[A-Z][\w]*/,{cases:{"~[A-Z0-9_]+":"constructor.identifier","@default":"namespace.identifier"}}],{include:"@whitespace"},[/[{}()[\]]/,"@brackets"],[/@symbols/,{cases:{"@keywords":"keyword","@operators":"operator","@default":""}}],[/\d*\.\d+([eE][-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F]+[lL]?/,"number.hex"],[/0[bB][0-1]+[lL]?/,"number.binary"],[/(0[oO][0-7]+|0[0-7]+)[lL]?/,"number.octal"],[/(0|[1-9]\d*)[lL]?/,"number"],[":",{token:"keyword",bracket:"@open"}],[/@delimiters/,{cases:{"@keywords":"keyword","@default":"delimiter"}}]],mstring:[{include:"@strcontent"},[/"""|'''/,{cases:{"$#==$S2":{token:"string.delim",bracket:"@close",next:"@pop"},"@default":{token:"string"}}}],[/["']/,"string"],[/./,"string.invalid"]],sstring:[{include:"@strcontent"},[/["]/,{token:"string.delim",bracket:"@close",next:"@pop",nextEmbedded:"@pop"}],[/./,"string.invalid"]],string:[{include:"@strcontent"},[/[']/,{token:"string.delim",bracket:"@close",next:"@pop"}],[/./,"string.invalid"]],strcontent:[[/[^\\"']+/,"string"],[/\\$/,"string.escape"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"]],mrawstring:[{include:"@rawstrcontent"},[/"""|'''/,{cases:{"$#==$S2":{token:"string.delim",bracket:"@close",next:"@pop"},"@default":{token:"string"}}}],[/["']/,"string"],[/./,"string.invalid"]],rawstring:[{include:"@rawstrcontent"},[/["']/,{cases:{"$#==$S2":{token:"string.delim",bracket:"@close",next:"@pop"},"@default":{token:"string"}}}],[/./,"string.invalid"]],rawstrcontent:[[/[^\\"']+/,"string"],[/\\["']/,"string"],[/\\u[0-9A-Fa-f]{4}/,"string.escape"],[/\\/,"string"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@doccomment"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[/*]/,"comment"]],doccomment:[[/[^/*]+/,"comment.doc"],[/\*\//,"comment.doc","@pop"],[/[/*]/,"comment.doc"]]}},j0={id:A0,conf:L0,language:k0};const H0=j0;var $0="scala",U0={wordPattern:/(unary_[@~!#%^&*()\-=+\\|:<>/?]+)|([a-zA-Z_$][\w$]*?_=)|(`[^`]+`)|([a-zA-Z_$][\w$]*)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{markers:{start:/^\s*\/\/\s*(?:(?:#?region\b)|(?:<editor-fold\b))/,end:/^\s*\/\/\s*(?:(?:#?endregion\b)|(?:<\/editor-fold>))/}}},B0={keywords:["asInstanceOf","catch","class","classOf","def","do","else","extends","finally","for","foreach","forSome","if","import","isInstanceOf","macro","match","new","object","package","return","throw","trait","try","type","until","val","var","while","with","yield","given","enum","then"],softKeywords:["as","export","extension","end","derives","on"],constants:["true","false","null","this","super"],modifiers:["abstract","final","implicit","lazy","override","private","protected","sealed"],softModifiers:["inline","opaque","open","transparent","using"],name:/(?:[a-z_$][\w$]*|`[^`]+`)/,type:/(?:[A-Z][\w$]*)/,symbols:/[=><!~?:&|+\-*/^\\%@#]+/,digits:/\d+(_+\d+)*/,hexdigits:/[[0-9a-fA-F]+(_+[0-9a-fA-F]+)*/,escapes:/\\(?:[btnfr\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,fstring_conv:/[bBhHsScCdoxXeEfgGaAt]|[Tn](?:[HIklMSLNpzZsQ]|[BbhAaCYyjmde]|[RTrDFC])/,tokenizer:{root:[[/\braw"""/,{token:"string.quote",bracket:"@open",next:"@rawstringt"}],[/\braw"/,{token:"string.quote",bracket:"@open",next:"@rawstring"}],[/\bs"""/,{token:"string.quote",bracket:"@open",next:"@sstringt"}],[/\bs"/,{token:"string.quote",bracket:"@open",next:"@sstring"}],[/\bf""""/,{token:"string.quote",bracket:"@open",next:"@fstringt"}],[/\bf"/,{token:"string.quote",bracket:"@open",next:"@fstring"}],[/"""/,{token:"string.quote",bracket:"@open",next:"@stringt"}],[/"/,{token:"string.quote",bracket:"@open",next:"@string"}],[/(@digits)[eE]([-+]?(@digits))?[fFdD]?/,"number.float","@allowMethod"],[/(@digits)\.(@digits)([eE][-+]?(@digits))?[fFdD]?/,"number.float","@allowMethod"],[/0[xX](@hexdigits)[Ll]?/,"number.hex","@allowMethod"],[/(@digits)[fFdD]/,"number.float","@allowMethod"],[/(@digits)[lL]?/,"number","@allowMethod"],[/\b_\*/,"key"],[/\b(_)\b/,"keyword","@allowMethod"],[/\bimport\b/,"keyword","@import"],[/\b(case)([ \t]+)(class)\b/,["keyword.modifier","white","keyword"]],[/\bcase\b/,"keyword","@case"],[/\bva[lr]\b/,"keyword","@vardef"],[/\b(def)([ \t]+)((?:unary_)?@symbols|@name(?:_=)|@name)/,["keyword","white","identifier"]],[/@name(?=[ \t]*:(?!:))/,"variable"],[/(\.)(@name|@symbols)/,[{token:"operator"},{token:"@rematch",next:"@allowMethod"}]],[/([{(])(\s*)(@name(?=\s*=>))/,["@brackets","white","variable"]],[/@name/,{cases:{"@keywords":"keyword","@softKeywords":"keyword","@modifiers":"keyword.modifier","@softModifiers":"keyword.modifier","@constants":{token:"constant",next:"@allowMethod"},"@default":{token:"identifier",next:"@allowMethod"}}}],[/@type/,"type","@allowMethod"],{include:"@whitespace"},[/@[a-zA-Z_$][\w$]*(?:\.[a-zA-Z_$][\w$]*)*/,"annotation"],[/[{(]/,"@brackets"],[/[})]/,"@brackets","@allowMethod"],[/\[/,"operator.square"],[/](?!\s*(?:va[rl]|def|type)\b)/,"operator.square","@allowMethod"],[/]/,"operator.square"],[/([=-]>|<-|>:|<:|:>|<%)(?=[\s\w()[\]{},."'`])/,"keyword"],[/@symbols/,"operator"],[/[;,.]/,"delimiter"],[/'[a-zA-Z$][\w$]*(?!')/,"attribute.name"],[/'[^\\']'/,"string","@allowMethod"],[/(')(@escapes)(')/,[{token:"string"},{token:"string.escape"},{token:"string",next:"@allowMethod"}]],[/'/,"string.invalid"]],import:[[/;/,"delimiter","@pop"],[/^|$/,"","@pop"],[/[ \t]+/,"white"],[/[\n\r]+/,"white","@pop"],[/\/\*/,"comment","@comment"],[/@name|@type/,"type"],[/[(){}]/,"@brackets"],[/[[\]]/,"operator.square"],[/[.,]/,"delimiter"]],allowMethod:[[/^|$/,"","@pop"],[/[ \t]+/,"white"],[/[\n\r]+/,"white","@pop"],[/\/\*/,"comment","@comment"],[/(?==>[\s\w([{])/,"keyword","@pop"],[/(@name|@symbols)(?=[ \t]*[[({"'`]|[ \t]+(?:[+-]?\.?\d|\w))/,{cases:{"@keywords":{token:"keyword",next:"@pop"},"->|<-|>:|<:|<%":{token:"keyword",next:"@pop"},"@default":{token:"@rematch",next:"@pop"}}}],["","","@pop"]],comment:[[/[^/*]+/,"comment"],[/\/\*/,"comment","@push"],[/\*\//,"comment","@pop"],[/[/*]/,"comment"]],case:[[/\b_\*/,"key"],[/\b(_|true|false|null|this|super)\b/,"keyword","@allowMethod"],[/\bif\b|=>/,"keyword","@pop"],[/`[^`]+`/,"identifier","@allowMethod"],[/@name/,"variable","@allowMethod"],[/:::?|\||@(?![a-z_$])/,"keyword"],{include:"@root"}],vardef:[[/\b_\*/,"key"],[/\b(_|true|false|null|this|super)\b/,"keyword"],[/@name/,"variable"],[/:::?|\||@(?![a-z_$])/,"keyword"],[/=|:(?!:)/,"operator","@pop"],[/$/,"white","@pop"],{include:"@root"}],string:[[/[^\\"\n\r]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,{token:"string.quote",bracket:"@close",switchTo:"@allowMethod"}]],stringt:[[/[^\\"\n\r]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"(?=""")/,"string"],[/"""/,{token:"string.quote",bracket:"@close",switchTo:"@allowMethod"}],[/"/,"string"]],fstring:[[/@escapes/,"string.escape"],[/"/,{token:"string.quote",bracket:"@close",switchTo:"@allowMethod"}],[/\$\$/,"string"],[/(\$)([a-z_]\w*)/,["operator","identifier"]],[/\$\{/,"operator","@interp"],[/%%/,"string"],[/(%)([-#+ 0,(])(\d+|\.\d+|\d+\.\d+)(@fstring_conv)/,["metatag","keyword.modifier","number","metatag"]],[/(%)(\d+|\.\d+|\d+\.\d+)(@fstring_conv)/,["metatag","number","metatag"]],[/(%)([-#+ 0,(])(@fstring_conv)/,["metatag","keyword.modifier","metatag"]],[/(%)(@fstring_conv)/,["metatag","metatag"]],[/./,"string"]],fstringt:[[/@escapes/,"string.escape"],[/"(?=""")/,"string"],[/"""/,{token:"string.quote",bracket:"@close",switchTo:"@allowMethod"}],[/\$\$/,"string"],[/(\$)([a-z_]\w*)/,["operator","identifier"]],[/\$\{/,"operator","@interp"],[/%%/,"string"],[/(%)([-#+ 0,(])(\d+|\.\d+|\d+\.\d+)(@fstring_conv)/,["metatag","keyword.modifier","number","metatag"]],[/(%)(\d+|\.\d+|\d+\.\d+)(@fstring_conv)/,["metatag","number","metatag"]],[/(%)([-#+ 0,(])(@fstring_conv)/,["metatag","keyword.modifier","metatag"]],[/(%)(@fstring_conv)/,["metatag","metatag"]],[/./,"string"]],sstring:[[/@escapes/,"string.escape"],[/"/,{token:"string.quote",bracket:"@close",switchTo:"@allowMethod"}],[/\$\$/,"string"],[/(\$)([a-z_]\w*)/,["operator","identifier"]],[/\$\{/,"operator","@interp"],[/./,"string"]],sstringt:[[/@escapes/,"string.escape"],[/"(?=""")/,"string"],[/"""/,{token:"string.quote",bracket:"@close",switchTo:"@allowMethod"}],[/\$\$/,"string"],[/(\$)([a-z_]\w*)/,["operator","identifier"]],[/\$\{/,"operator","@interp"],[/./,"string"]],interp:[[/{/,"operator","@push"],[/}/,"operator","@pop"],{include:"@root"}],rawstring:[[/[^"]/,"string"],[/"/,{token:"string.quote",bracket:"@close",switchTo:"@allowMethod"}]],rawstringt:[[/[^"]/,"string"],[/"(?=""")/,"string"],[/"""/,{token:"string.quote",bracket:"@close",switchTo:"@allowMethod"}],[/"/,"string"]],whitespace:[[/[ \t\r\n]+/,"white"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]]}},V0={id:$0,conf:U0,language:B0};const G0=V0;var W0="deephavenDb",z0={comments:{lineComment:"#",blockComment:["'''","'''"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],onEnterRules:[{beforeText:/^\s*(?:def|class|for|if|elif|else|while|try|with|finally|except|async).*?:\s*$/,action:{indentAction:1}}],folding:{offSide:!0,markers:{start:/^\s*#region\b/,end:/^\s*#endregion\b/}}},K0={tokenPostfix:".js",keywords:["boolean","break","byte","case","catch","char","class","const","continue","debugger","default","delete","do","double","else","enum","export","extends","false","final","finally","float","for","function","goto","if","implements","import","in","instanceof","int","interface","long","native","new","null","package","private","protected","public","return","short","static","super","switch","synchronized","this","throw","throws","transient","true","try","typeof","var","void","volatile","while","with"],builtins:["define","require","window","document","undefined"],operators:["=",">","<","!","~","?",":","==","<=",">=","!=","&&","||","++","--","+","-","*","/","&","|","^","%","<<",">>",">>>","+=","-=","*=","/=","&=","|=","^=","%=","<<=",">>=",">>>="],brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.bracket"},{open:"(",close:")",token:"delimiter.parenthesis"}],symbols:/[~!@#%\^&*-+=|\\:`<>.?\/]+/,escapes:/\\(?:[btnfr\\"']|[0-7][0-7]?|[0-3][0-7]{2})/,exponent:/[eE][\-+]?[0-9]+/,regexpctl:/[(){}\[\]\$\^|\-*+?\.]/,regexpesc:/\\(?:[bBdDfnrstvwWn0\\\/]|@regexpctl|c[A-Z]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4})/,tokenizer:{root:[[/([a-zA-Z_\$][\w\$]*)(\s*)(:?)/,{cases:{"$1@keywords":["keyword","white","delimiter"],$3:["key.identifier","white","delimiter"],"$1@builtins":["predefined.identifier","white","delimiter"],"@default":["identifier","white","delimiter"]}}],{include:"@whitespace"},[/\/(?=([^\\\/]|\\.)+\/)/,{token:"regexp.slash",bracket:"@open",next:"@regexp"}],[/[{}()\[\]]/,"@brackets"],[/[;,.]/,"delimiter"],[/@symbols/,{cases:{"@operators":"operator","@default":""}}],[/\d+\.\d*(@exponent)?/,"number.float"],[/\.\d+(@exponent)?/,"number.float"],[/\d+@exponent/,"number.float"],[/0[xX][\da-fA-F]+/,"number.hex"],[/0[0-7]+/,"number.octal"],[/\d+/,"number"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/"/,"string",'@string."'],[/'/,"string","@string.'"]],whitespace:[[/[ \t\r\n]+/,"white"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\/\*/,"comment.invalid"],["\\*/","comment","@pop"],[/[\/*]/,"comment"]],string:[[/[^\\"']+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":"string"}}]],regexp:[[/(\{)(\d+(?:,\d*)?)(\})/,["@brackets.regexp.escape.control","regexp.escape.control","@brackets.regexp.escape.control"]],[/(\[)(\^?)(?=(?:[^\]\\\/]|\\.)+)/,[{token:"@brackets.regexp.escape.control"},{token:"regexp.escape.control",next:"@regexrange"}]],[/(\()(\?:|\?=|\?!)/,["@brackets.regexp.escape.control","regexp.escape.control"]],[/[()]/,"@brackets.regexp.escape.control"],[/@regexpctl/,"regexp.escape.control"],[/[^\\\/]/,"regexp"],[/@regexpesc/,"regexp.escape"],[/\\\./,"regexp.invalid"],["/",{token:"regexp.slash",bracket:"@close"},"@pop"]],regexrange:[[/-/,"regexp.escape.control"],[/\^/,"regexp.invalid"],[/@regexpesc/,"regexp.escape"],[/[^\]]/,"regexp"],[/\]/,"@brackets.regexp.escape.control","@pop"]]}},Y0={id:W0,conf:z0,language:K0};const q0=Y0;var X0="log",Q0={},Z0={tokenizer:{root:[[/ FATAL[\s\S]*/,{token:"error",next:"@error"}],[/ ERROR[\s\S]*/,{token:"error",next:"@error"}],[/ STDERR[\s\S]*/,{token:"error",next:"@error"}],[/ STDOUT.*/,{token:"stdout",next:"@stdout"}],[/ INFO[\s\S]*/,{token:"info",next:"@info"}],[/ WARN.*/,{token:"warn",next:"@warn"}],[/ TRACE[\s\S]*/,{token:"trace",next:"@trace"}],[/ DEBUG[.\s\S]*/,{token:"debug",next:"@debug"}],[/^\d{2}:\d{2}:\d{2}.\d{3}/,"date"]],error:[{include:"@body"}],info:[{include:"@body"}],warn:[{include:"@body"}],stdout:[{include:"@body"}],trace:[{include:"@body"}],debug:[{include:"@body"}],body:[[/^\d{2}:\d{2}:\d{2}.\d{3}/,{token:"date",next:"@pop"}],[/[\s\S]*/,{token:"$S0"}]]}},J0={id:X0,conf:Q0,language:Z0};const eE=J0;function am(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 om(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?am(Object(t),!0).forEach(function(r){tE(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):am(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function tE(n,e,t){return e=rE(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function rE(n){var e=nE(n,"string");return typeof e=="symbol"?e:String(e)}function nE(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 na=ae.module("MonacoUtils");class Li{static init(){var{getWorker:e}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};na.debug("Initializing Monaco..."),e!==void 0&&Li.registerGetWorker(e);var{registerLanguages:t,removeHashtag:r}=Li,i=[{token:"",foreground:r(be.foreground)},{token:"string",foreground:r(be.string)},{token:"string.delim",foreground:r(be["string-delim"])},{token:"keyword",foreground:r(be.keyword)},{token:"identifier.js",foreground:r(be["identifier-js"])},{token:"delimiter",foreground:r(be.delimiter)},{token:"comment",foreground:r(be.comment)},{token:"number",foreground:r(be.number)},{token:"storage",foreground:r(be.storage)},{token:"identifier",foreground:r(be.identifier)},{token:"namespace.identifier",foreground:r(be["namespace-identifier"])},{token:"operator",foreground:r(be.operator)},{token:"predefined",foreground:r(be.predefined)},{token:"error.log",foreground:be["log-error"].substring(1)},{token:"warn.log",foreground:r(be["log-warn"])},{token:"info.log",foreground:r(be["log-info"])},{token:"stdout.log",foreground:r(be["log-stdout"])},{token:"trace.log",foreground:r(be["log-trace"])},{token:"debug.log",foreground:r(be["log-debug"])},{token:"date.log",foreground:r(be["log-date"])}],a={errorForeground:be["error-foreground"],"inputOption.activeBorder":be["input-option-active-border"],"editor.background":be.background,"editor.foreground":be.foreground,"editor.lineHighlightBackground":be["editor-line-highlight-bg"],"editorLineNumber.foreground":be["editor-line-number-foreground"],"editor.selectionBackground":be["editor-selection-background"],"editor.findMatchBackground":be["editor-find-match-background"],"editor.findMatchHighlightBackground":be["editor-find-match-highlight-background"],"editorSuggestWidget.background":be["editor-suggest-widget-background"],"editorSuggestWidget.border":be["editor-suggest-widget-border"],"editorSuggestWidget.foreground":be["editor-suggest-widget-foreground"],"editorSuggestWidget.selectedBackground":be["editor-suggest-widget-selected-background"],"editorSuggestWidget.highlightForeground":be["editor-suggest-widget-highlightForeground"],"list.hoverBackground":be["list-hover-background"],"dropdown.background":be["context-menu-background"],"dropdown.foreground":be["context-menu-foreground"],"menu.selectionBackground":be["menu-selection-background"],"list.focusBackground":be["menu-selection-background"],"editorWidget.background":be["editor-widget-background"],"inputOption.activeBackground":be["input-option-active-background"],"inputOption.activeForeground":be["input-option-active-foreground"],focusBorder:be["focus-border"],"input.background":be["input-background"],"input.foreground":be["input-foreground"],"input.border":be["input-border"],"textLink.foreground":be["text-link-foreground"],"textLink.activeForeground":be["text-link-active-foreground"],"editorLink.activeForeground":be["editor-link-active-foreground"]};fn.defineTheme("dh-dark",{base:"vs-dark",inherit:!0,rules:i,colors:a}),na.debug2("monaco theme: ",be),fn.setTheme("dh-dark"),t([q0,M0,H0,eE,G0]),Li.removeConflictingKeybindings(),na.debug("Monaco initialized.")}static registerGetWorker(e){window.MonacoEnvironment=om(om({},window.MonacoEnvironment),{},{getWorker:e})}static removeHashtag(e){return e.substring(1)}static registerLanguages(e){var t=e.map(r=>{var{id:i}=r;return i});_n.getLanguages().filter(r=>{var{id:i}=r;return t.includes(i)}).forEach(r=>{var i=r;na.debug2("Overriding default language loader:",i.id)}),e.forEach(r=>{Li.registerLanguage(r)})}static registerLanguage(e){na.debug2("Registering language: ",e.id),_n.register(e),_n.onLanguage(e.id,()=>{_n.setLanguageConfiguration(e.id,e.conf),_n.setMonarchTokensProvider(e.id,e.language)})}static setEOL(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:fn.EndOfLineSequence.LF;(t=e.getModel())===null||t===void 0||t.setEOL(r)}static openDocument(e,t){var r=e.getModel();A(r);var i={textDocument:{uri:"".concat(r.uri),languageId:r.getLanguageId(),version:r.getVersionId(),text:r.getValue()}};na.debug2("didOpenDocumentParams: ",i),t.openDocument(i);var a=e.onDidChangeModelContent(o=>{for(var{changes:s,versionId:l}=o,d=[],h=0;h<s.length;h+=1){var c=s[h],{range:m,rangeLength:v,text:f}=c,g={range:{start:{line:m.startLineNumber-1,character:m.startColumn-1},end:{line:m.endLineNumber-1,character:m.endColumn-1}},rangeLength:v,text:f};d.push(g)}if(d.length>0){var p={textDocument:{version:l,uri:"".concat(r.uri)},contentChanges:d};na.debug2("didChangeDocumentParams",p),t.changeDocument(p)}});return a}static closeDocument(e,t){var r=e.getModel();A(r);var i={textDocument:{uri:"".concat(r.uri)}};t.closeDocument(i)}static registerPasteHandler(e){e.onDidPaste(t=>{var r=/“|”/g,i=/\u200b/g,a=/\u00A0/g,o=e.getModel();A(o);var s=o.getValueInRange(t.range);(r.test(s)||i.test(s)||a.test(s))&&o.applyEdits([{range:t.range,text:s.replace(r,'"').replace(i,"").replace(a," ")}])})}static isMacPlatform(){var{platform:e}=window.navigator;return e.startsWith("Mac")}static removeConflictingKeybindings(){fn.addKeybindingRule({keybinding:Nr.CtrlCmd|ni.KeyD,command:null}),Li.isMacPlatform()||fn.addKeybindingRule({keybinding:Nr.CtrlCmd|ni.KeyH,command:null})}static disableKeyBindings(e,t){e.addAction({id:"disable-keybindings-".concat(et()),label:"",keybindings:t,run:()=>{}})}static getMonacoKeyCodeFromShortcut(e){var{keyState:t}=e,{keyValue:r}=t;if(r===null)return 0;var i=Li.isMacPlatform();return i?(t.metaKey?Nr.CtrlCmd:0)|(t.shiftKey?Nr.Shift:0)|(t.altKey?Nr.Alt:0)|(t.ctrlKey?Nr.WinCtrl:0)|zc.fromString(r):(t.ctrlKey?Nr.CtrlCmd:0)|(t.shiftKey?Nr.Shift:0)|(t.altKey?Nr.Alt:0)|(t.metaKey?Nr.WinCtrl:0)|zc.fromString(r)}static provideLinks(e){for(var t=[],r=function(o){var s=e.getLineContent(o),l=qg(s),d=l.filter(h=>h.type==="url"?/^https?:\/\//.test(h.value):!0);d.forEach(h=>{t.push({url:h.href,range:new KS(o,h.start+1,o,h.end+1)})})},i=1;i<=e.getLineCount();i+=1)r(i);return{links:t}}}const Cr=Li;function ou(n,e,t){return e=iE(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function iE(n){var e=aE(n,"string");return typeof e=="symbol"?e:String(e)}function aE(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 Gn=ae.module("MonacoCompletionProvider");class ha extends y.PureComponent{static lspToMonacoKind(e){var t=_n.CompletionItemKind;switch(e){case 1:return t.Text;case 2:return t.Method;case 3:return t.Function;case 4:return t.Constructor;case 5:return t.Field;case 6:return t.Variable;case 7:return t.Class;case 8:return t.Interface;case 9:return t.Module;case 10:return t.Property;case 11:return t.Unit;case 12:return t.Value;case 13:return t.Enum;case 14:return t.Keyword;case 15:return t.Snippet;case 16:return t.Color;case 17:return t.File;case 18:return t.Reference;case 19:return t.Folder;case 20:return t.EnumMember;case 21:return t.Constant;case 22:return t.Struct;case 23:return t.Event;case 24:return t.Operator;case 25:return t.TypeParameter;default:return t.Variable}}static lspToMonacoRange(e){var{start:t,end:r}=e;return{startLineNumber:t.line+1,startColumn:t.character+1,endLineNumber:r.line+1,endColumn:r.character+1}}static monacoToLspPosition(e){return{line:e.lineNumber-1,character:e.column-1}}constructor(e){super(e),ou(this,"registeredCompletionProvider",void 0),ou(this,"registeredSignatureProvider",void 0),ou(this,"registeredHoverProvider",void 0),this.handleCompletionRequest=this.handleCompletionRequest.bind(this),this.handleSignatureRequest=this.handleSignatureRequest.bind(this),this.handleHoverRequest=this.handleHoverRequest.bind(this)}componentDidMount(){var{language:e,session:t}=this.props;this.registeredCompletionProvider=_n.registerCompletionItemProvider(e,{provideCompletionItems:this.handleCompletionRequest,triggerCharacters:[".",'"',"'"]}),t.getSignatureHelp&&(this.registeredSignatureProvider=_n.registerSignatureHelpProvider(e,{provideSignatureHelp:this.handleSignatureRequest,signatureHelpTriggerCharacters:["(",","]})),t.getHover&&(this.registeredHoverProvider=_n.registerHoverProvider(e,{provideHover:this.handleHoverRequest}))}componentWillUnmount(){var e,t,r;(e=this.registeredCompletionProvider)===null||e===void 0||e.dispose(),(t=this.registeredSignatureProvider)===null||t===void 0||t.dispose(),(r=this.registeredHoverProvider)===null||r===void 0||r.dispose()}handleCompletionRequest(e,t,r){var{model:i,session:a}=this.props;if(e!==i)return null;var o={textDocument:{uri:"".concat(e.uri),version:e.getVersionId()},position:ha.monacoToLspPosition(t),context:r},s=a.getCompletionItems(o);Gn.debug("Requested completion items",o);var l=s.then(d=>{Gn.debug("Completion items received: ",o,d);var h=d.map(c=>{var{label:m,kind:v,detail:f,documentation:g,sortText:p,filterText:C,textEdit:b,insertTextFormat:S}=c;return{label:m,kind:ha.lspToMonacoKind(v),detail:f,documentation:g?.kind==="markdown"?g:g?.value,sortText:p,filterText:C,insertText:b.text,insertTextRules:S===2?4:S,range:ha.lspToMonacoRange(b.range)}});return{incomplete:!0,suggestions:h}}).catch(d=>(Gn.error("There was an error retrieving completion items",d),{suggestions:[]}));return l}handleSignatureRequest(e,t,r,i){var a={value:{signatures:[],activeSignature:0,activeParameter:0},dispose:()=>{}},{model:o,session:s}=this.props;if(e!==o||!s.getSignatureHelp)return null;var l={textDocument:{uri:"".concat(e.uri),version:e.getVersionId()},position:ha.monacoToLspPosition(t),context:i},d=s.getSignatureHelp(l);Gn.debug("Requested signature help",l);var h=d.then(c=>{Gn.debug("Signatures received: ",l,d);var m=c.map(f=>{var{label:g,documentation:p,parameters:C}=f;return{documentation:p?.kind==="markdown"?p:p?.value,label:g,parameters:C??[]}});if(m.length===0)return a;var v=0;return{value:{signatures:m,activeSignature:v,activeParameter:c[v].activeParameter},dispose:()=>{}}}).catch(c=>(Gn.error("There was an error retrieving completion items",c),a));return h}handleHoverRequest(e,t){var{model:r,session:i}=this.props;if(e!==r||!i.getHover)return null;var a={textDocument:{uri:"".concat(e.uri),version:e.getVersionId()},position:ha.monacoToLspPosition(t)},o=i.getHover(a);Gn.debug("Requested hover",a);var s=o.then(l=>{Gn.debug("Hover received: ",a,l);var{contents:d}=l;return{contents:d?[d]:[]}}).catch(l=>(Gn.error("There was an error retrieving hover",l),{contents:[]}));return s}render(){return null}}const Ep=ha;function sm(n,e,t,r,i,a,o){try{var s=n[a](o),l=s.value}catch(d){t(d);return}s.done?e(l):Promise.resolve(l).then(r,i)}function oE(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){sm(a,r,i,o,s,"next",l)}function s(l){sm(a,r,i,o,s,"throw",l)}o(void 0)})}}function Kr(n,e,t){return e=sE(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function sE(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)}var su=ae.module("ConsoleInput"),Ll=parseInt(be["line-height"],10),Tp=6,Pp=6,dE=Ll+Tp+Pp,lu=100;class ys extends y.PureComponent{constructor(e){super(e),Kr(this,"cancelListener",void 0),Kr(this,"commandContainer",void 0),Kr(this,"commandEditor",void 0),Kr(this,"commandHistoryIndex",void 0),Kr(this,"commandSuggestionContainer",void 0),Kr(this,"loadingPromise",void 0),Kr(this,"timestamp",void 0),Kr(this,"bufferIndex",void 0),Kr(this,"history",void 0),Kr(this,"modifiedCommands",void 0),this.handleWindowResize=this.handleWindowResize.bind(this),this.commandContainer=he.createRef(),this.commandHistoryIndex=null,this.timestamp=Date.now(),this.bufferIndex=0,this.history=[],this.modifiedCommands=new Map,this.state={commandEditorHeight:Ll,isFocused:!1,model:null}}componentDidMount(){this.initCommandEditor(),window.addEventListener("resize",this.handleWindowResize),this.loadMoreHistory()}componentDidUpdate(){this.layoutEditor()}componentWillUnmount(){window.removeEventListener("resize",this.handleWindowResize),this.loadingPromise!=null&&this.loadingPromise.cancel(),this.destroyCommandEditor()}setConsoleText(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;if(e){if(su.debug("Command received: ",e),!r){var i;this.commandHistoryIndex=null,(i=this.commandEditor)===null||i===void 0||i.setValue(e)}t&&this.focusEnd(),this.updateDimensions(),r&&this.processCommand(e)}}initCommandEditor(){var{language:e,session:t}=this.props,r={copyWithSyntaxHighlighting:!1,cursorStyle:"block",fixedOverflowWidgets:!0,folding:!1,fontFamily:"Fira Mono",glyphMargin:!1,language:e,lineHeight:Ll,lineDecorationsWidth:3,lineNumbers:"off",minimap:{enabled:!1},renderLineHighlight:"none",scrollBeyondLastLine:!1,scrollbar:{arrowSize:0,horizontal:"hidden",horizontalScrollbarSize:0},padding:{top:Tp,bottom:Pp},tabCompletion:"on",value:"",wordWrap:"on"},i=this.commandContainer.current;A(i),this.commandEditor=fn.create(i,r),Cr.setEOL(this.commandEditor),Cr.openDocument(this.commandEditor,t),this.commandEditor.onDidChangeModelContent(()=>{var a,o=(a=this.commandEditor)===null||a===void 0?void 0:a.getValue();this.modifiedCommands.set(this.commandHistoryIndex,o??null),this.updateDimensions()}),this.commandEditor.onDidFocusEditorText(()=>{this.setState({isFocused:!0})}),this.commandEditor.onDidBlurEditorText(()=>{this.setState({isFocused:!1})}),this.commandEditor.onKeyDown(a=>{var{commandEditor:o,commandHistoryIndex:s}=this,l=o?.getPosition();A(l);var{lineNumber:d}=l,h=o?.getModel();if(a.code==="ArrowUp"&&!this.isSuggestionMenuPopulated()&&d===1){s!=null?this.loadCommand(s+1):this.loadCommand(0),this.focusStart(),a.stopPropagation(),a.preventDefault();return}if(a.code==="ArrowDown"&&!this.isSuggestionMenuPopulated()&&d===h?.getLineCount()){s!=null&&s>0?this.loadCommand(s-1):this.loadCommand(null),this.focusEnd(),a.stopPropagation(),a.preventDefault();return}if(!a.altKey&&!a.shiftKey&&!a.metaKey){if(a.keyCode===ni.Enter){if(!this.isSuggestionMenuPopulated()){var c;a.stopPropagation(),a.preventDefault();var m=(c=this.commandEditor)===null||c===void 0?void 0:c.getValue().trim();if(m!==void 0){var v;this.processCommand(m),(v=this.commandEditor)===null||v===void 0||v.setValue("")}}}else if(a.keyCode===ni.Tab)if(this.isSuggestionMenuActive())this.isSuggestionMenuPopulated()||(a.stopPropagation(),a.preventDefault());else{var f;a.stopPropagation(),a.preventDefault(),(f=this.commandEditor)===null||f===void 0||f.trigger("Tab key trigger suggestions","editor.action.triggerSuggest",{})}}}),Cr.disableKeyBindings(this.commandEditor,[Nr.CtrlCmd|ni.KeyF]),Cr.registerPasteHandler(this.commandEditor),this.commandEditor.focus(),this.updateDimensions(),this.setState({model:this.commandEditor.getModel()})}destroyCommandEditor(){var{session:e}=this.props;this.commandEditor&&(Cr.closeDocument(this.commandEditor,e),this.commandEditor.dispose(),this.commandEditor=void 0)}handleWindowResize(){this.updateDimensions()}isSuggestionMenuActive(){var e;if(!this.commandSuggestionContainer){var t,r;this.commandSuggestionContainer=(t=this.commandEditor)===null||t===void 0||(r=t.getDomNode())===null||r===void 0?void 0:r.querySelector(".suggest-widget")}return(e=this.commandSuggestionContainer&&this.commandSuggestionContainer.classList.contains("visible"))!==null&&e!==void 0?e:!1}isSuggestionMenuPopulated(){var e,t,r;return this.isSuggestionMenuActive()&&((e=(t=this.commandSuggestionContainer)===null||t===void 0||(r=t.querySelector(".monaco-list-rows"))===null||r===void 0?void 0:r.childElementCount)!==null&&e!==void 0?e:0)>0}focus(){var e;(e=this.commandEditor)===null||e===void 0||e.focus()}focusStart(){var e,t,r,i,a,o=(e=this.commandEditor)===null||e===void 0?void 0:e.getModel();A(o);var s=o.getLineLength(1)+1,l=(t=this.commandEditor)===null||t===void 0?void 0:t.getTopForPosition(1,s);A(l),(r=this.commandEditor)===null||r===void 0||r.setPosition({lineNumber:1,column:s}),(i=this.commandEditor)===null||i===void 0||i.setScrollTop(l),(a=this.commandEditor)===null||a===void 0||a.focus()}focusEnd(){var e,t,r,i,a,o=(e=this.commandEditor)===null||e===void 0?void 0:e.getModel();A(o);var s=o.getLineCount(),l=o.getLineLength(s)+1,d=(t=this.commandEditor)===null||t===void 0?void 0:t.getTopForPosition(s,l);A(d),(r=this.commandEditor)===null||r===void 0||r.setPosition({lineNumber:s,column:l}),(i=this.commandEditor)===null||i===void 0||i.setScrollTop(d),(a=this.commandEditor)===null||a===void 0||a.focus()}clear(){var e,t,r;(e=this.commandEditor)===null||e===void 0||e.focus(),(t=this.commandEditor)===null||t===void 0||(r=t.getModel())===null||r===void 0||r.setValue(""),this.commandHistoryIndex=null}layoutEditor(){this.commandEditor&&this.commandEditor.layout()}loadCommand(e){var t,r;if(!(e!==null&&e>=this.history.length)){var i=this.modifiedCommands.get(e),a=e===null?"":this.history[this.history.length-e-1];this.commandHistoryIndex=e,(t=this.commandEditor)===null||t===void 0||(r=t.getModel())===null||r===void 0||r.setValue(i??a),e!==null&&e>this.history.length-lu&&this.loadMoreHistory()}}loadMoreHistory(){var e=this;return oE(function*(){try{if(e.loadingPromise!=null||e.bufferIndex==null)return;var{commandHistoryStorage:t,language:r,scope:i}=e.props;e.loadingPromise=Te.makeCancelable(t.getTable(r,i??"",e.timestamp),s=>s.close());var a=yield e.loadingPromise;a.setReversed(!0),a.setViewport({top:e.bufferIndex,bottom:e.bufferIndex+lu-1}),e.loadingPromise=Te.makeCancelable(a.getViewportData(),()=>a.close());var o=yield e.loadingPromise;e.bufferIndex+=lu,e.bufferIndex>=a.size&&(e.bufferIndex=null),e.history=[...o.items.filter((s,l,d)=>{var{name:h}=s;return l===0||h!==d[l-1].name}).map(s=>{var{name:l}=s;return l}).reverse(),...e.history],e.loadingPromise=void 0,a.close()}catch(s){if(e.loadingPromise=void 0,Te.isCanceled(s)){su.debug2("Promise canceled, not loading history");return}su.error("Error fetching history",s)}})()}processCommand(e){this.commandHistoryIndex=null,this.modifiedCommands.clear(),A(e),e!==""&&(this.history.length===0||e!==this.history[this.history.length-1])&&this.history.push(e),this.updateDimensions();var{onSubmit:t}=this.props;t(e)}updateDimensions(){if(this.commandEditor){var{maxHeight:e}=this.props;A(e);var t=this.commandEditor.getContentHeight(),r=Math.max(Math.min(t,e),dE),i=t>r,a={overviewRulerLanes:i?void 0:0};this.setState({commandEditorHeight:r},()=>{var o,s;(o=this.commandEditor)===null||o===void 0||o.updateOptions(a),(s=this.commandEditor)===null||s===void 0||s.layout()})}}render(){var{disabled:e,language:t,session:r}=this.props,{commandEditorHeight:i,isFocused:a,model:o}=this.state;return u.jsx("div",{className:J("console-input-wrapper",{disabled:e}),children:u.jsxs("div",{className:J("console-input-inner-wrapper",{focus:a}),children:[u.jsx("div",{className:ys.INPUT_CLASS_NAME,ref:this.commandContainer,style:{height:i}}),o&&u.jsx(Ep,{model:o,language:t,session:r})]})})}}Kr(ys,"defaultProps",{maxHeight:Ll*10,scope:null,disabled:!1});Kr(ys,"INPUT_CLASS_NAME","console-input");const lm=ys;function $i(n,e,t){return e=uE(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function uE(n){var e=hE(n,"string");return typeof e=="symbol"?e:String(e)}function hE(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 dm="pasted values",cE=[/^audio.*/,/^font.*/,/^image.*/,/^video.*/],du=[".csv",".tsv",".tab",".psv",".dsv",".txt"],um=[".zip"];class xn extends y.Component{static isValidDropItem(e){return e!=null&&e.kind==="file"&&!cE.find(t=>t.test(e.type))}static isValidExtension(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;return du.some(r=>e.endsWith(r))||t&&um.some(r=>e.endsWith(r))}static handleDragOver(e){e.preventDefault(),e.stopPropagation()}static getIcon(e){return e===dm?Kc:e.endsWith(".csv")?XS:e.endsWith(".zip")?QS:ZS}constructor(e){super(e),$i(this,"fileElem",void 0),$i(this,"divElem",void 0),$i(this,"getValidExtensions",Ce(t=>t?[...du,...um]:[...du])),$i(this,"getAcceptString",Ce(t=>this.getValidExtensions(t).join(", "))),$i(this,"getFileTypeErrorString",Ce(t=>Qr.join(this.getValidExtensions(t),"or"))),this.handleSelectFile=this.handleSelectFile.bind(this),this.handleFiles=this.handleFiles.bind(this),this.handleDrop=this.handleDrop.bind(this),this.unstageFile=this.unstageFile.bind(this),this.handleMenuPaste=this.handleMenuPaste.bind(this),this.handlePasteEvent=this.handlePasteEvent.bind(this),this.fileElem=he.createRef(),this.divElem=he.createRef(),this.state={selectedFileName:""}}componentDidMount(){var e,t;(e=this.divElem.current)===null||e===void 0||e.addEventListener("paste",this.handlePasteEvent),(t=this.divElem.current)===null||t===void 0||t.focus()}componentWillUnmount(){var e;(e=this.divElem.current)===null||e===void 0||e.removeEventListener("paste",this.handlePasteEvent)}handleSelectFile(){if(this.fileElem.current){var e;this.fileElem.current.value="",(e=this.fileElem.current)===null||e===void 0||e.click()}}handleFiles(e){e.stopPropagation(),e.preventDefault();var{files:t}=e.target;t!=null&&this.handleFile(t[0])}handleDrop(e){var{allowZip:t,clearDragError:r,dragError:i}=this.props;if(e.preventDefault(),e.stopPropagation(),i!=null){r();return}if(!(e.dataTransfer==null||e.dataTransfer.items==null||e.dataTransfer.items.length===0)){var a=e.dataTransfer.items[0].getAsFile();A(a),xn.isValidExtension(a.name,t)?this.handleFile(a):this.setState({dropError:xn.FILE_TYPE_ERROR})}}unstageFile(e){var{onCancel:t}=this.props;e.stopPropagation(),e.preventDefault(),t(),this.setState({selectedFileName:"",dropError:void 0})}handleFile(e){var{onFileOpened:t}=this.props;t(e),this.setState({selectedFileName:e.name,dropError:void 0})}handleMenuPaste(){var{onPaste:e,onError:t,uploadInProgress:r}=this.props;r||navigator.clipboard.readText().then(i=>{e(i),this.setState({selectedFileName:dm,dropError:void 0})}).catch(i=>t(i))}handlePasteEvent(e){e.stopPropagation(),e.preventDefault(),this.handleMenuPaste()}makeContextMenuItems(){var{uploadInProgress:e}=this.props;return[{title:"Paste",icon:Kc,action:this.handleMenuPaste,shortcut:ui.PASTE,disabled:e}]}render(){var{allowZip:e,dragError:t,uploadInProgress:r}=this.props,{selectedFileName:i,dropError:a}=this.state,o=t??a,s=this.makeContextMenuItems();return u.jsxs("div",{ref:this.divElem,className:"csv-overlay fill-parent-absolute",onDragOver:xn.handleDragOver,onDrop:this.handleDrop,tabIndex:-1,children:[u.jsx(oe,{actions:s}),u.jsx("input",{ref:this.fileElem,type:"file",id:"fileElem",accept:this.getAcceptString(e),style:{display:"none"},onChange:this.handleFiles,"data-testid":"fileElem"}),!i&&(o===void 0||o==="")&&u.jsxs("div",{className:"message-content",children:[u.jsx("div",{className:"message-icon",children:u.jsx(te,{icon:JS})}),u.jsx("label",{children:"Drop file (or paste values) here to import"}),u.jsx("div",{className:"message-small",children:u.jsx("label",{children:"or"})}),u.jsx(G,{kind:"primary",onClick:this.handleSelectFile,children:"Select File..."})]}),i&&(o===void 0||o==="")&&u.jsxs("div",{className:"selected-content",children:[u.jsx("div",{className:"selected-icon",children:u.jsx(te,{icon:xn.getIcon(i)})}),u.jsxs("div",{className:"selected-text",children:[u.jsx("label",{children:"Selected File"}),u.jsxs("label",{className:"selected-name",children:[i,!r&&u.jsx(G,{kind:"ghost",className:"ml-2",onClick:this.unstageFile,icon:jr,tooltip:"Remove"})]})]})]}),!!o&&u.jsxs("div",{className:"message-content",children:[u.jsx("div",{className:"message-icon",children:u.jsx(te,{icon:Ki})}),u.jsx("label",{children:o}),o===xn.FILE_TYPE_ERROR&&u.jsx("div",{className:"message-small",children:u.jsx("label",{children:this.getFileTypeErrorString(e)})})]})]})}}$i(xn,"defaultProps",{allowZip:!1,dragError:null});$i(xn,"MULTIPLE_FILE_ERROR","Please select only one file");$i(xn,"FILE_TYPE_ERROR","Filetype not supported.");const Wa=xn;function Da(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=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)}class Zi{}Da(Zi,"INTEGER","int");Da(Zi,"LONG","long");Da(Zi,"DOUBLE","double");Da(Zi,"BOOLEAN","bool");Da(Zi,"STRING","string");Da(Zi,"DATE_TIME","datetime");Da(Zi,"LOCAL_TIME","localtime");const Be=Zi;function Op(n,e){var t=n.internalStream("string");return t.readable=!0,t.read=()=>!1,t.removeListener=()=>!1,t.on("data",(r,i)=>e(i)),t}function hm(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 cm(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?hm(Object(t),!0).forEach(function(r){er(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):hm(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function er(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)}var mm="unknown",pE=2147483647,CE=-2147483648,vm=/^[0-9]{4}-[0-1][0-9]-[0-3][0-9][ T][0-2][0-9]:[0-5][0-9]:[0-6][0-9](?:\.[0-9]{1,9})?(?: [a-zA-Z]+)?$/,fm=/^([0-9]+T)?([0-9]+):([0-9]+)(:[0-9]+)?(?:\.[0-9]{1,9})?$/;class zt{static determineType(e,t,r){if(!e||e===r)return t;switch(t){case Be.STRING:return Be.STRING;case Be.INTEGER:return zt.checkInteger(e);case Be.LONG:return zt.checkLong(e);case Be.DOUBLE:return zt.checkDouble(e);case Be.BOOLEAN:return zt.checkBoolean(e);case Be.DATE_TIME:return zt.checkDateTime(e);case Be.LOCAL_TIME:return zt.checkLocalTime(e);default:return zt.getTypeFromUnknown(e)}}static isNotParsableNumber(e){return isNaN(e)||e==="Infinity"||e==="-Infinity"}static checkInteger(e){var t=e.replace(/,/g,"");return zt.isNotParsableNumber(t)?Be.STRING:zt.getNumberType(t)}static checkLong(e){var t=e.replace(/,/g,"");return zt.isNotParsableNumber(t)?Be.STRING:t.includes(".")?Be.DOUBLE:Be.LONG}static checkDouble(e){var t=e.replace(/,/g,"");return zt.isNotParsableNumber(t)?Be.STRING:Be.DOUBLE}static checkBoolean(e){var t=e.toLowerCase();return t==="true"||t==="false"?Be.BOOLEAN:Be.STRING}static checkDateTime(e){return vm.test(e)?Be.DATE_TIME:Be.STRING}static checkLocalTime(e){return fm.test(e)?Be.LOCAL_TIME:Be.STRING}static getTypeFromUnknown(e){var t=e.replace(/,/g,"");if(zt.isNotParsableNumber(t)){var r=e.toLowerCase();return r==="true"||r==="false"?Be.BOOLEAN:vm.test(e)&&e.includes(":")?Be.DATE_TIME:fm.test(e)?Be.LOCAL_TIME:Be.STRING}return zt.getNumberType(t)}static getNumberType(e){if(e.includes("."))return Be.DOUBLE;var t=e.startsWith("-")?11:10;if(e.length>t)return Be.LONG;var r=parseInt(e,10);return r>pE||r<CE?Be.LONG:Be.INTEGER}constructor(e,t,r,i,a,o,s,l,d,h){er(this,"onFileCompleted",void 0),er(this,"file",void 0),er(this,"readHeaders",void 0),er(this,"nullString",void 0),er(this,"onProgress",void 0),er(this,"onError",void 0),er(this,"types",void 0),er(this,"chunks",void 0),er(this,"totalChunks",void 0),er(this,"rowCount",void 0),er(this,"isZip",void 0),er(this,"shouldTrim",void 0),er(this,"zipProgress",void 0),er(this,"config",void 0),this.onFileCompleted=e,this.file=t,this.readHeaders=r,this.nullString=a,this.onProgress=o,this.onError=s,this.chunks=0,this.totalChunks=l,this.rowCount=0,this.isZip=d,this.shouldTrim=h,this.zipProgress=0,this.handleChunk=this.handleChunk.bind(this),this.handleComplete=this.handleComplete.bind(this),this.handleError=this.handleError.bind(this),this.handleNodeUpdate=this.handleNodeUpdate.bind(this),this.config=cm(cm({},i),{},{error:this.handleError,chunk:this.handleChunk,complete:this.handleComplete})}parse(){if(this.file instanceof File||this.file instanceof Blob)Zo.parse(this.file,this.config);else{var e=Op(this.file,this.handleNodeUpdate);Zo.parse(e,this.config),e.resume()}}handleChunk(e,t){var{data:r}=e;if(!this.types){if(r==null||r.length===0){t.abort(),this.onError("Error parsing CSV: no data in file.");return}this.types=new Array(r[0].length).fill(mm),this.readHeaders&&(r=r.slice(1))}this.rowCount+=r.length,A(this.types);var i=[...this.types];r.forEach(s=>{if(s.length>=i.length){for(var l=0;l<i.length;l+=1)i[l]=zt.determineType(this.shouldTrim?s[l].trim():s[l],i[l],this.nullString);this.types=i}else t.abort(),this.onError(`Error parsing CSV: Insufficient data in row.
3
3
  Expected length `.concat(i.length," but found ").concat(s.length,`.
4
4
  Row = `).concat(s))}),this.chunks+=1;var a=0;this.totalChunks>0?a=Math.round(this.chunks/this.totalChunks*50):a=Math.round(this.zipProgress/2);var o=this.onProgress(a);o&&t.abort()}handleComplete(e){var{types:t,onFileCompleted:r}=this;A(t),(e==null||!e.meta.aborted)&&r(t.map(i=>i===mm||i===Be.LOCAL_TIME?Be.STRING:i),this.rowCount)}handleError(e){var{onError:t}=this;t(e)}handleNodeUpdate(e){this.zipProgress=e.percent}}const bE=zt;function st(n,e,t){return e=SE(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function SE(n){var e=wE(n,"string");return typeof e=="symbol"?e:String(e)}function wE(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 Us=ae.module("CsvParser"),yE=650;class ao{static generateHeaderRecursive(e){var t="",r=e;return e>=26&&(t=t.concat(ao.generateHeaderRecursive(Math.floor(e/26)-1)),r=e%26),t.concat(String.fromCharCode(65+r))}constructor(e){var{onFileCompleted:t,session:r,file:i,type:a,readHeaders:o=!0,onProgress:s,onError:l,timeZone:d,isZip:h}=e;st(this,"onFileCompleted",void 0),st(this,"session",void 0),st(this,"file",void 0),st(this,"isZip",void 0),st(this,"type",void 0),st(this,"readHeaders",void 0),st(this,"timeZone",void 0),st(this,"onProgress",void 0),st(this,"onError",void 0),st(this,"tables",void 0),st(this,"headers",void 0),st(this,"types",void 0),st(this,"rowCount",void 0),st(this,"rowsProcessed",void 0),st(this,"chunks",void 0),st(this,"totalChunks",void 0),st(this,"isComplete",void 0),st(this,"zipProgress",void 0),st(this,"consolidatedChunks",void 0),st(this,"numConsolidated",void 0),st(this,"isCancelled",void 0),st(this,"config",void 0),this.onFileCompleted=t,this.session=r,this.file=i,this.isZip=h,this.type=a,this.readHeaders=o,this.timeZone=d,this.onProgress=s,this.onError=l,this.tables=[],this.rowCount=0,this.rowsProcessed=0,this.chunks=0,this.totalChunks=h?0:Math.ceil(i.size/Zo.LocalChunkSize),this.isComplete=!1,this.zipProgress=0,this.numConsolidated=0,this.isCancelled=!1,this.handleChunk=this.handleChunk.bind(this),this.handleError=this.handleError.bind(this),this.handleComplete=this.handleComplete.bind(this),this.handleNodeUpdate=this.handleNodeUpdate.bind(this),this.handleCreateTable=this.handleCreateTable.bind(this),this.config={delimiter:a.delimiter,newline:a.newline,escapeChar:a.escapeChar,dynamicTyping:!1,error:this.handleError,skipEmptyLines:a.skipEmptyLines,chunk:this.handleChunk,complete:this.handleComplete,fastMode:!1}}cancel(){this.isCancelled=!0}transpose(e,t){for(var r=t.length,i=new Array(e).fill(null).map(()=>new Array(r)),a=0;a<r;a+=1){var o=t[a];if(o.length<e)throw new Error("Insufficient columns. Expected ".concat(e," but found ").concat(o.length,`
@@ -19,7 +19,7 @@ Row = `).concat(s))}),this.chunks+=1;var a=0;this.totalChunks>0?a=Math.round(thi
19
19
  `&&(e+=`
20
20
  `)}this.bufferedMessages=[],this.appendLogText(e)}queue(e){this.bufferedMessages.push(e),this.bufferedMessages.length===1&&(this.flushTimer=setTimeout(this.handleFlushTimeout,gt.bufferTimeout))}stopFlushTimer(){this.flushTimer&&(clearTimeout(this.flushTimer),this.flushTimer=void 0)}updateDimensions(){this.editor&&this.editor.layout()}handleClearClick(){this.clearLogs()}clearLogs(){this.messages=[],this.refreshLogText()}handleFlushTimeout(){this.stopFlushTimer(),this.flush()}handleLogMessage(e){this.messages.push(e),this.editor&&this.isLogItemVisible(e)&&this.queue(e)}handleMenuItemClick(e){this.toggleLogLevel(e)}handleResetClick(){this.resetLogLevels()}handleResize(){this.updateDimensions()}handleToggleAllClick(){this.toggleAll()}render(){var e={placement:"bottom-end"},{shownLogLevels:t}=this.state,r=this.getMenuActions(t);return u.jsxs("div",{className:"log-pane h-100 w-100",children:[u.jsxs("div",{className:"log-pane-menu",children:[u.jsx(G,{kind:"ghost",className:"btn-clear-logs",onClick:this.handleClearClick,icon:rw,tooltip:"Clear log"}),u.jsx(G,{kind:"ghost",className:"btn-link-icon btn-overflow",icon:bs,tooltip:"Log Settings",onClick:()=>{},children:u.jsx(ai,{actions:r,popperClassName:"log-level-menu-popper",popperOptions:e})})]}),u.jsx("div",{className:"log-pane-editor h-100 w-100",ref:i=>{this.editorContainer=i}})]})}}Fr(gt,"DefaultLogLevels",[Lt.STDOUT,Lt.ERROR,Lt.FATAL,Lt.STDERR,Lt.WARN]);Fr(gt,"AllLogLevels",[Lt.INFO,Lt.STDOUT,Lt.ERROR,Lt.FATAL,Lt.STDERR,Lt.WARN,Lt.DEBUG,Lt.TRACE]);Fr(gt,"bufferTimeout",16);Fr(gt,"maxLogSize",131072);Fr(gt,"truncateSize",65536);const dT=gt;function Mp(n){switch(n){case pe.eq:return"is exactly";case pe.eqIgnoreCase:return"is exactly (ignore case)";case pe.notEq:return"is not exactly";case pe.notEqIgnoreCase:return"is not exactly (ignore case)";case pe.contains:return"contains";case pe.notContains:return"does not contain";case pe.startsWith:return"starts with";case pe.endsWith:return"ends with";default:throw new Error("Unrecognized text filter type ".concat(n))}}function Ap(n){switch(n){case pe.eq:return"is equal to";case pe.notEq:return"is not equal to";case pe.greaterThan:return"greater than";case pe.greaterThanOrEqualTo:return"greater than or equal to";case pe.lessThan:return"less than";case pe.lessThanOrEqualTo:return"less than or equal to";default:throw new Error("Unrecognized number filter type ".concat(n))}}function Lp(n){switch(n){case pe.eq:return"date is";case pe.notEq:return"date is not";case pe.notEqIgnoreCase:case pe.greaterThan:return"date is after";case pe.greaterThanOrEqualTo:return"date is after or equal";case pe.lessThan:return"date is before";case pe.lessThanOrEqualTo:return"date is before or equal";default:throw new Error("Unrecognized date filter type ".concat(n))}}function uT(n){switch(n){case pe.isTrue:return"Is True";case pe.isFalse:return"Is False";case pe.isNull:return"Is Null";default:throw new Error("Unrecognized boolean filter type ".concat(n))}}Ml.register([Fy,Iy,_y,xy,My,Ay]);function br(n,e,t){return e=hT(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function hT(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)}class It{constructor(e){br(this,"dh",void 0),br(this,"listeners",void 0),br(this,"formatter",void 0),br(this,"rect",void 0),br(this,"isDownsamplingDisabled",void 0),br(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(It.EVENT_UPDATED,{detail:e}))}fireDisconnect(){this.fireEvent(new CustomEvent(It.EVENT_DISCONNECT))}fireReconnect(){this.fireEvent(new CustomEvent(It.EVENT_RECONNECT))}fireDownsampleStart(e){this.fireEvent(new CustomEvent(It.EVENT_DOWNSAMPLESTARTED,{detail:e}))}fireDownsampleFinish(e){this.fireEvent(new CustomEvent(It.EVENT_DOWNSAMPLEFINISHED,{detail:e}))}fireDownsampleFail(e){this.fireEvent(new CustomEvent(It.EVENT_DOWNSAMPLEFAILED,{detail:e}))}fireDownsampleNeeded(e){this.fireEvent(new CustomEvent(It.EVENT_DOWNSAMPLENEEDED,{detail:e}))}fireLoadFinished(){this.fireEvent(new CustomEvent(It.EVENT_LOADFINISHED))}}br(It,"EVENT_UPDATED","ChartModel.EVENT_UPDATED");br(It,"EVENT_DISCONNECT","ChartModel.EVENT_DISCONNECT");br(It,"EVENT_RECONNECT","ChartModel.EVENT_RECONNECT");br(It,"EVENT_DOWNSAMPLESTARTED","ChartModel.EVENT_DOWNSAMPLESTARTED");br(It,"EVENT_DOWNSAMPLEFINISHED","ChartModel.EVENT_DOWNSAMPLEFINISHED");br(It,"EVENT_DOWNSAMPLEFAILED","ChartModel.EVENT_DOWNSAMPLEFAILED");br(It,"EVENT_DOWNSAMPLENEEDED","ChartModel.EVENT_DOWNSAMPLENEEDED");br(It,"EVENT_LOADFINISHED","ChartModel.EVENT_LOADFINISHED");const Xn=It,mT="#76d9e4 #9edc6f #fcd65b #aa9af4 #f37e3f #f95d84 #f0f0ee",vT="#403e41",fT="#5b5a5c",gT="#c0bfbf",pT="#4878ea",CT="rgba(91, 90, 92, 0.7)",Vt={"paper-bgcolor":"#2d2a2e","plot-bgcolor":"#322f33","title-color":"#f0f0ee",colorway:mT,gridcolor:vT,linecolor:fT,zerolinecolor:gT,activecolor:pT,rangebgcolor:CT,"area-color":"#76d9e4","trend-color":"#d5f0c1","line-color":"#9edc6f","error-band-line-color":"white","error-band-fill-color":"rgba(213, 240, 193, 0.1)","ohlc-increasing":"#9edc6f","ohlc-decreasing":"#f95d84"},ar=Object.freeze({paper_bgcolor:Vt["paper-bgcolor"],plot_bgcolor:Vt["plot-bgcolor"],title_color:Vt["title-color"],colorway:Vt.colorway,gridcolor:Vt.gridcolor,linecolor:Vt.linecolor,zerolinecolor:Vt.zerolinecolor,activecolor:Vt.activecolor,rangebgcolor:Vt.rangebgcolor,area_color:Vt["area-color"],trend_color:Vt["trend-color"],line_color:Vt["line-color"],error_band_line_color:Vt["error-band-line-color"],error_band_fill_color:Vt["error-band-fill-color"],ohlc_increasing:Vt["ohlc-increasing"],ohlc_decreasing:Vt["ohlc-decreasing"]});function Dm(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?Dm(Object(t),!0).forEach(function(r){jt(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Dm(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function jt(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=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 Fo=ae.module("ChartUtils"),Rm="io.deephaven.time.DateTime",wT=36e5,yT=1e6;function ET(n){return n.asDate!==void 0}function TT(n){return n.asNumber!==void 0}function Nm(n){return n.dhTimeZone!==void 0}function PT(n){return n!=null&&n.range!=null&&(n.autorange===!1||n.autorange===void 0)}class de{static getPlotlyErrorBars(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:ar,a=r.map((s,l)=>s-e[l]),o=t.map((s,l)=>e[l]-s);return{type:"data",symmetric:!1,array:a,arrayminus:o,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*)(%?)(.*)/);A(a);var[,o,s,l,,d,h,c,m,v]=a,f=l.replace(",","").length,g=s.indexOf(",")>=0||l.indexOf(",")>=0,p=g?",":"",C=c!=null&&c!==""?"e":"f",b=m!==""?m:C,S=d.length+h.length,w="",E="0".concat(f).concat(p,".").concat(S).concat(w).concat(b),T=de.convertNumberPrefix(o),P=de.convertNumberPrefix(v);return{tickformat:E,tickprefix:T,ticksuffix:P,automargin:!0}}static addTickSpacing(e,t,r){var{gapBetweenMajorTicks:i}=t;if(i>0){var a=e||{},o=i;return r&&(o=i/yT),t.log&&(o=Math.log(o)),a.tickmode="linear",a.dtick=o,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 o=i.sources[a];if(o.axis===t)return o}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]:de.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],o=0;o<a.series.length;o+=1)if(t===a.series[o])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],o=e[a];PT(o)&&(t[a]=[...o.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,o=i[t],s=(a=r.get(o))!==null&&a!==void 0?a:[];return s.push(i),r.set(o,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(" "):Fo.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){jt(this,"dh",void 0),jt(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},o=de.getAllAxes(e),s=de.groupArray(o,"type"),{charts:l}=e,d=0;d<l.length;d+=1)for(var h=l[d],c=0;c<h.series.length;c+=1)for(var m=h.series[c],{sources:v}=m,f=v.filter(b=>b.axis),g=function(){var S=f[p],{axis:w}=S,{type:E}=w,T=s.get(E);A(T);var P=T.indexOf(w),D=r.getAxisPropertyName(E);if(D!=null){var O=de.getAxisLayoutProperty(D,P);if(i.has(O))Fo.debug("".concat(O," already added."));else{Fo.debug("Adding ".concat(O," to axisFormats."));var R=r.getPlotlyAxisFormat(S,t);if(R===null)i.set(O,a);else{i.set(O,R);var{businessCalendar:x}=w;if(x!=null){var F=[],{businessPeriods:_,businessDays:L,holidays:M,timeZone:U}=x,V=t?.getColumnTypeFormatter(Rm),z;Nm(V)&&(z=V.dhTimeZone);var Q=z?(U.standardOffset-z.standardOffset)/60:0;M.length>0&&F.push(...r.createRangeBreakValuesFromHolidays(M,U,z)),_.forEach(Z=>F.push({pattern:"hour",bounds:[de.periodToDecimal(Z.close)+Q,de.periodToDecimal(Z.open)+Q]})),L.length<r.daysOfWeek.length&&r.createBoundsFromDays(L).forEach(Z=>F.push({pattern:"day of week",bounds:Z})),R.rangebreaks=F}if(i.size===h.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(de.MODE_LINES),(r??!0)&&a.add(de.MODE_MARKERS);break;case i.plot.SeriesPlotStyle.LINE:(t??!0)&&a.add(de.MODE_LINES),(r??!1)&&a.add(de.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?de.ORIENTATION.HORIZONTAL:de.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:o,isLinesVisible:s,isShapesVisible:l,plotStyle:d,lineColor:h,shapeColor:c,sources:m,shape:v,shapeSize:f}=e,g=m.some(w=>{var E;return(E=w.axis)===null||E===void 0?void 0:E.businessCalendar}),p=this.getChartType(d,g),C=this.getPlotlyChartMode(d,s??void 0,l??void 0),b=this.getPlotlySeriesOrientation(e),S=de.makeSeriesData(p,C,o,i,b);return this.addSourcesToSeriesData(S,d,m,t),this.addStylingToSeriesData(S,d,a,h,c,v,f,r),S}addSourcesToSeriesData(e,t,r,i){for(var a=e,o=0;o<r.length;o+=1){var s=r[o],{axis:l,type:d}=s,h=this.getPlotlyProperty(t,d);Xg(a,h,[]);var c=l!=null?this.getAxisPropertyName(l.type):null;if(c!=null){var m=i.get(l.type);if(m){var v=m.indexOf(l),f=v>0?"".concat(v+1):"";a["".concat(c,"axis")]="".concat(c).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,o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:null,s=arguments.length>6&&arguments[6]!==void 0?arguments[6]:null,l=arguments.length>7&&arguments[7]!==void 0?arguments[7]:null,{dh:d}=this,h=e;if(h.marker={line:{}},h.line={width:1},t===d.plot.SeriesPlotStyle.AREA?h.fill="tozeroy":t===d.plot.SeriesPlotStyle.STACKED_AREA?h.stackgroup="stack":t===d.plot.SeriesPlotStyle.STEP?h.line.shape="hv":t===d.plot.SeriesPlotStyle.HISTOGRAM?(h.width=[],h.marker.line!==void 0&&Object.assign(h.marker.line,{color:r.paper_bgcolor,width:1})):t===d.plot.SeriesPlotStyle.OHLC?(h.increasing={line:{color:r.ohlc_increasing}},h.decreasing={line:{color:r.ohlc_decreasing}}):t===d.plot.SeriesPlotStyle.PIE?(h.textinfo="label+percent",h.outsidetextfont={color:r.title_color}):t===d.plot.SeriesPlotStyle.TREEMAP&&(h.hoverinfo="text",h.textinfo="label+text",h.tiling={packing:"squarify",pad:0},h.textposition="middle center",h.outsidetextfont={color:r.title_color}),i!=null&&(t===d.plot.SeriesPlotStyle.BAR?h.marker.color=i:h.line.color=i),a!=null&&(h.marker.color=a),o!=null&&o.length>0)try{h.marker.symbol=de.getMarkerSymbol(o)}catch(c){Fo.warn("Unable to handle shape",o,":",c)}s!=null&&(h.marker.size=s*de.DEFAULT_MARKER_SIZE),l!=null&&t!==d.plot.SeriesPlotStyle.PIE&&(h.visible=l)}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,o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:ar,s=e,l=de.getAllAxes(t),d=0;d<t.charts.length;d+=1){var h=t.charts[d],c=r?.(h),m=this.getChartBounds(t,h,i,a);this.updateLayoutAxes(s,h.axes,l,i,a,m,c,o)}this.removeStaleAxes(s,l)}getChartBounds(e,t,r,i){var a,{dh:o}=this,{cols:s,rows:l}=e,{column:d,colspan:h,row:c,rowspan:m}=t,v=d+h,f=c+m,g=1/s,p=1/l,C=de.AXIS_SIZE_PX/r,b=de.AXIS_SIZE_PX/i,S={bottom:(l-f)*p+(f<l?b/2:0),top:(l-c)*p-(c>0?b/2:0),left:d*g+(d>0?C/2:0),right:v*g-(v<s?C/2:0)},w=de.groupArray(t.axes,"position"),E=(a=w.get(o.plot.AxisPosition.RIGHT))!==null&&a!==void 0?a:[];return E.length>0&&(r>0?S.right-=(S.right-S.left)*Math.max(0,Math.min(de.LEGEND_WIDTH_PX/r,de.MAX_LEGEND_SIZE)):S.right-=(S.right-S.left)*de.DEFAULT_AXIS_SIZE),S}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",""),o,s=e?.getColumnTypeFormatter(t);return s!=null&&Nm(s)&&s.dhTimeZone!=null&&s.showTimeZone&&(o=i.i18n.DateTimeFormat.format(" z",new Date,s.dhTimeZone)),{tickformat:a,ticksuffix:o,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:o}=i,s=null;return j.isDateType(a)?(s=this.getPlotlyDateFormat(t,a,o),s=de.addTickSpacing(s,i,!0)):j.isNumberType(a)&&(s=de.getPlotlyNumberFormat(t,a,o),s=de.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,o=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,l=arguments.length>7&&arguments[7]!==void 0?arguments[7]:ar,{dh:d}=this,h=i>0?Math.max(de.MIN_AXIS_SIZE,Math.min(de.AXIS_SIZE_PX/a,de.MAX_AXIS_SIZE)):de.DEFAULT_AXIS_SIZE,c=a>0?Math.max(de.MIN_AXIS_SIZE,Math.min(de.AXIS_SIZE_PX/i,de.MAX_AXIS_SIZE)):de.DEFAULT_AXIS_SIZE,m=e,v=de.groupArray(t,"position"),f=de.groupArray(t,"type"),g=[...f.keys()],p=de.groupArray(r,"type"),C=0;C<g.length;C+=1){var b=g[C],S=this.getAxisPropertyName(b);if(S!=null){var w=f.get(b),E=p.get(b),T=b===d.plot.AxisType.Y,P=T?a:i;A(w),A(E);for(var D=0;D<w.length;D+=1){var O=w[D],R=E.indexOf(O),x=de.getAxisLayoutProperty(S,R);m[x]==null&&(m[x]=this.makeLayoutAxis(b,l));var F=m[x];if(F!=null){this.updateLayoutAxis(F,O,D,v,h,c,o);var{range:_,autorange:L}=F;if(s!=null&&_!==void 0&&(L===void 0||L===!1)){var M=s(O),[U,V]=M(_);Fo.debug("Setting downsample range",P,U,V),O.range(P,U,V)}else O.range(P)}}}}}removeStaleAxes(e,t){for(var r=e,i=de.groupArray(t,"type"),a=[...i.keys()],o=0;o<a.length;o+=1){var s=a[o],l=i.get(s);A(l);var d=l.length,h=this.getAxisPropertyName(s);if(h!=null)for(var c=de.getAxisLayoutProperty(h,d);r[c]!=null;)delete r[c],d+=1,c=de.getAxisLayoutProperty(h,d)}}updateLayoutAxis(e,t,r,i,a,o,s){var l,{dh:d}=this,h=t.type===d.plot.AxisType.Y,c=h?o:a,m=e,v=(l=t.label)!==null&&l!==void 0?l:"";if(m.title!==void 0&&typeof m.title!="string"?m.title.text=v:m.title={text:v},t.log&&(m.type="log"),m.side=this.getAxisSide(t.position),r>0){var f,g;m.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&&(m.anchor="free",t.position===d.plot.AxisPosition.RIGHT?m.position=s.right+(C-p.length+1)*c:t.position===d.plot.AxisPosition.TOP?m.position=s.top+(C-p.length+1)*c:t.position===d.plot.AxisPosition.BOTTOM?m.position=s.bottom+(p.length-C+1)*c:t.position===d.plot.AxisPosition.LEFT&&(m.position=s.left+(p.length-C+1)*c))}else if(t.type===d.plot.AxisType.X){var b=i.get(d.plot.AxisPosition.LEFT)||[],S=i.get(d.plot.AxisPosition.RIGHT)||[],w=Math.max(s.left,s.left+(b.length-1)*o),E=Math.min(s.right-(S.length-1)*o,s.right);m.domain=[w,E]}else if(t.type===d.plot.AxisType.Y){var T=i.get(d.plot.AxisPosition.BOTTOM)||[],P=i.get(d.plot.AxisPosition.TOP)||[],D=Math.max(s.bottom,s.bottom+(T.length-1)*a),O=Math.min(s.top-(P.length-1)*a,s.top);m.domain=[D,O]}}createBoundsFromDays(e){var t=e.map(o=>this.daysOfWeek.indexOf(o)),r=this.daysOfWeek.filter(o=>!e.includes(o)).map(o=>this.daysOfWeek.indexOf(o)),i=new Set;r.forEach(o=>{for(var s=o+1;s<o+this.daysOfWeek.length;s+=1){var l=s%this.daysOfWeek.length;if(t.includes(l)){i.add(l);break}}});var a=[];return i.forEach(o=>{for(var s=o-1;s>o-this.daysOfWeek.length;s-=1){var l=s<0?s+this.daysOfWeek.length:s;if(t.includes(l)){var d=(l+1)%7;a.push([d,o]);break}}}),a}createRangeBreakValuesFromHolidays(e,t,r){var i=[],a=[];return e.forEach(o=>{o.businessPeriods.length>0?a.push(...this.createPartialHoliday(o,t,r)):i.push(this.createFullHoliday(o,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(m=>{a.push(m.open),a.push(m.close)}),a.push("24:00");for(var o=[],s=0;s<a.length;s+=2){var l=a[s],d=a[s+1];if(l!==d){var h=[this.adjustDateForTimeZone("".concat(i," ").concat(l,":00.000000"),t,r)],c=wT*(de.periodToDecimal(d)-de.periodToDecimal(l));o.push({values:h,dvalue:c})}}return o}adjustDateForTimeZone(e,t,r){return r&&r.standardOffset!==t.standardOffset?this.unwrapValue(this.wrapValue(e,Rm,t),r):e}makeFigureSettings(e,t){var{dh:r}=this,{series:i,xAxis:a,type:o}=e,s=de.titleFromSettings(e),l={formatType:"".concat(r.plot.AxisFormatType.NUMBER),type:"".concat(r.plot.AxisType.X),position:"".concat(r.plot.AxisPosition.BOTTOM)},d={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:[l,d],series:(i??[]).map(h=>({plotStyle:"".concat(o),name:h,dataSources:[{type:"".concat(r.plot.SourceType.X),columnName:a??"",axis:l,table:t},{type:"".concat(r.plot.SourceType.Y),columnName:h,axis:d,table:t}]}))}],title:s}}unwrapValue(e,t){var{dh:r}=this;if(e!=null){if(ET(e))return r.i18n.DateTimeFormat.format(de.DATE_FORMAT,e,t);if(TT(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(j.isDateType(t)&&typeof e=="string"){var a=e,o=de.DATE_FORMAT.substr(0,e.length),s=i.i18n.DateTimeFormat.parse(o,a);if(!r)return s;var l="".concat(o," Z"),d=i.i18n.DateTimeFormat.format("Z",s,r),h=i.i18n.DateTimeFormat.parse(l,"".concat(a," ").concat(d)),c=i.i18n.DateTimeFormat.format("Z",h,r);return i.i18n.DateTimeFormat.parse(l,"".concat(a," ").concat(c))}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=Ha(Ha({},e),{},{autosize:!0,colorway:de.getColorwayFromTheme(e),font:{family:"'Fira Sans', sans-serif",color:e.title_color},title:{font:{color:e.title_color},yanchor:"top",pad:Ha({},de.DEFAULT_TITLE_PADDING),y:1},legend:{font:{color:e.title_color}},margin:Ha({},de.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 Ha(Ha({},e),{},{type:e.type!=null?t.plot.SeriesPlotStyle[e.type]:void 0})}}jt(de,"DEFAULT_AXIS_SIZE",.15);jt(de,"MIN_AXIS_SIZE",.025);jt(de,"MAX_AXIS_SIZE",.2);jt(de,"AXIS_SIZE_PX",75);jt(de,"LEGEND_WIDTH_PX",50);jt(de,"MAX_LEGEND_SIZE",.25);jt(de,"ORIENTATION",Object.freeze({HORIZONTAL:"h",VERTICAL:"v"}));jt(de,"DATE_FORMAT","yyyy-MM-dd HH:mm:ss.SSSSSS");jt(de,"DEFAULT_MARGIN",Object.freeze({l:60,r:50,t:30,b:60,pad:0}));jt(de,"DEFAULT_TITLE_PADDING",Object.freeze({t:8}));jt(de,"SUBTITLE_LINE_HEIGHT",25);jt(de,"DEFAULT_MARKER_SIZE",6);jt(de,"MODE_MARKERS","markers");jt(de,"MODE_LINES","lines");const At=de;function Fm(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 Im(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Fm(Object(t),!0).forEach(function(r){tr(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Fm(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function tr(n,e,t){return e=OT(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function OT(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)}var wi=ae.module("Chart");class ga extends y.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),tr(this,"currentSeries",void 0),tr(this,"PlotComponent",void 0),tr(this,"plot",void 0),tr(this,"plotWrapper",void 0),tr(this,"columnFormats",void 0),tr(this,"dateTimeFormatterOptions",void 0),tr(this,"decimalFormatOptions",void 0),tr(this,"integerFormatOptions",void 0),tr(this,"rect",void 0),tr(this,"ranges",void 0),tr(this,"isSubscribed",void 0),tr(this,"isLoadedFired",void 0),tr(this,"getCachedConfig",Ce((t,r,i,a,o)=>{var s=[],l=!!t;if(l&&s.push({name:"Downsampling failed: ".concat(t),title:"Downsampling failed",click:()=>{},icon:ga.convertIcon(ap),attr:"fill-warning"}),r||i||a||l){var d=ga.downsampleButtonTitle(i,a),h=ga.downsampleButtonAttr(i,a),c=i?nw:iw;s.push({name:d,title:"Downsampling status",icon:ga.convertIcon(c),click:this.handleDownsampleClick,attr:h})}var m=o.some(p=>{var{type:C}=p;return C!=null&&!C.includes("3d")}),v=o.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||l?!0:"hover",modeBarButtons:[s,["toImage"],["zoom2d","pan2d"],[...m?f:[],...v?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=Tl(e.Plotly),this.plot=he.createRef(),this.plotWrapper=he.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:Im(Im({},t),e.getLayout())})}subscribe(){if(!this.isSubscribed){var{model:e}=this.props;if(!this.rect||this.rect.width===0||this.rect.height===0){wi.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(wi.debug2("Received data update",t,r),t){case Xn.EVENT_UPDATED:{this.currentSeries+=1,this.setState(c=>{var{layout:m,revision:v}=c;return typeof m.datarevision=="number"&&(m.datarevision+=1),{data:r,layout:m,revision:v+1}});var{onUpdate:i}=this.props;i({isLoading:!this.isLoadedFired});break}case Xn.EVENT_LOADFINISHED:{var{onUpdate:a}=this.props;this.isLoadedFired=!0,a({isLoading:!1});break}case Xn.EVENT_DISCONNECT:{var{onDisconnect:o}=this.props;o();break}case Xn.EVENT_RECONNECT:{var{onReconnect:s}=this.props;s();break}case Xn.EVENT_DOWNSAMPLESTARTED:{this.setState({isDownsampleFinished:!1,isDownsampleInProgress:!0,downsamplingError:null});break}case Xn.EVENT_DOWNSAMPLEFINISHED:{this.setState({isDownsampleFinished:!0,isDownsampleInProgress:!1,downsamplingError:null});break}case Xn.EVENT_DOWNSAMPLENEEDED:case Xn.EVENT_DOWNSAMPLEFAILED:{var l,d=(l=r.message)!==null&&l!==void 0?l:r;this.setState({isDownsampleFinished:!1,isDownsampleInProgress:!1,isDownsamplingDisabled:!1,downsamplingError:d});var{onError:h}=this.props;h(new Error(d));break}default:wi.debug("Unknown event type",t,e)}}handlePlotUpdate(e){var{layout:t}=e,r=At.getLayoutRanges(t),i=!ct(r,this.ranges);i&&(this.ranges=r,this.updateModelDimensions(!0))}handleRelayout(e){if(wi.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(wi.debug("handleRestyle",t,r),Object.keys(t).includes("visible")){var{data:i}=this.state,{onSettingsChanged:a}=this.props;if(i!=null){var o=i.reduce((s,l)=>{var{name:d,visible:h}=l;return d!=null&&h==="legendonly"?[...s,d]:s},[]);a({hiddenSeries:o})}}}updateModelDimensions(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,t=this.getPlotRect();if(!t){wi.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=oi.getColumnFormats(e),r=oi.getDateTimeFormatterOptions(e),{decimalFormatOptions:i={},integerFormatOptions:a={}}=e;(!ct(this.columnFormats,t)||!ct(this.dateTimeFormatterOptions,r)||!ct(this.decimalFormatOptions,i)||!ct(this.integerFormatOptions,a))&&(this.columnFormats=oi.getColumnFormats(e),this.dateTimeFormatterOptions=r,this.decimalFormatOptions=i,this.integerFormatOptions=a,this.updateFormatter())}updateFormatter(){var{model:e}=this.props,t=new Sn(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=>{wi.debug("Unable to resize, promise rejected",r)})}render(){var{PlotComponent:e}=this,{data:t,downsamplingError:r,isDownsampleFinished:i,isDownsampleInProgress:a,isDownsamplingDisabled:o,layout:s,revision:l}=this.state,d=this.getCachedConfig(r,i,a,o,t??[]),h=t!=null;return u.jsx("div",{className:"h-100 w-100 chart-wrapper",ref:this.plotWrapper,children:h&&u.jsx(e,{ref:this.plot,data:t,layout:s,revision:l,config:d,onAfterPlot:this.handleAfterPlot,onError:wi.error,onRelayout:this.handleRelayout,onUpdate:this.handlePlotUpdate,onRestyle:this.handleRestyle,useResizeHandler:!0,style:{height:"100%",width:"100%"}})})}}tr(ga,"defaultProps",{isActive:!0,settings:{timeZone:"America/New_York",defaultDateTimeFormat:Ea.FULL_DATE_FORMAT,showTimeZone:!1,showTSeparator:!0,formatter:[]},Plotly:Ml,onDisconnect:()=>{},onReconnect:()=>{},onUpdate:()=>{},onError:()=>{},onSettingsChanged:()=>{}});const RT=ga;function _m(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 xm(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?_m(Object(t),!0).forEach(function(r){ht(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):_m(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function ht(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=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)}var qt=ae.module("FigureChartModel");class fd extends Xn{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,ht(this,"chartUtils",void 0),ht(this,"dh",void 0),ht(this,"figure",void 0),ht(this,"settings",void 0),ht(this,"theme",void 0),ht(this,"data",void 0),ht(this,"layout",void 0),ht(this,"seriesDataMap",void 0),ht(this,"pendingSeries",void 0),ht(this,"oneClicks",void 0),ht(this,"filterColumnMap",void 0),ht(this,"lastFilter",void 0),ht(this,"isConnected",void 0),ht(this,"seriesToProcess",void 0),ht(this,"addPendingSeries",tt(()=>{for(var s=At.getAllAxes(this.figure),{pendingSeries:l}=this,d=function(){var m,v=l[h],f=r.figure.charts.find(g=>g.series.includes(v));r.addSeries(v,s,(m=f?.showLegend)!==null&&m!==void 0?m:null),v.subscribe()},h=0;h<l.length;h+=1)d();this.pendingSeries=[]},fd.ADD_SERIES_DEBOUNCE)),ht(this,"getTimeZone",Pe((s,l)=>{if(l!=null){var d=l.getColumnTypeFormatter(s);if(d!=null)return d.dhTimeZone}})),ht(this,"getValueTranslator",Pe((s,l)=>{var d=this.getTimeZone(s,l);return h=>this.chartUtils.unwrapValue(h,d)})),ht(this,"getValueParser",Pe((s,l)=>{var d=this.getTimeZone(s,l);return h=>this.chartUtils.wrapValue(h,s,d)})),ht(this,"getRangeParser",Pe((s,l)=>d=>{var[h,c]=d,m=this.getValueParser(s,l);return h=m(h),c=m(c),[h,c]})),ht(this,"getAxisRangeParser",Pe((s,l)=>d=>{var h=At.getSourceForAxis(s,d);return h!=null?this.getRangeParser(h.columnType,l):c=>c})),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 At(e),this.figure=t,this.settings=i,this.theme=a,this.data=[];var o={data:{},layout:this.chartUtils.makeDefaultLayout(a)};this.layout={grid:{rows:t.rows,columns:t.cols,pattern:"independent"},template:o},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=At.getAllAxes(this.figure),r=[],i=0;i<e.length;i+=1)for(var a=e[i],o=0;o<a.series.length;o+=1){var s=a.series[o];r.push(s.name),this.addSeries(s,t,a.showLegend)}for(var l=[...this.seriesDataMap.keys()],d=l.filter(m=>r.indexOf(m)<0),h=0;h<d.length;h+=1){var c=d[h];this.seriesDataMap.delete(c)}this.seriesToProcess=new Set([...this.seriesDataMap.keys()])}addSeries(e,t,r){var{dh:i}=this,a=At.groupArray(t,"type"),o=this.chartUtils.makeSeriesDataFromSeries(e,a,At.getSeriesVisibility(e.name,this.settings),r,this.theme);if(this.seriesDataMap.set(e.name,o),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=At.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:l}=s,d=0;d<l.length;d+=1)this.filterColumnMap.set(l[d].name,l[d]);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){qt.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){qt.debug("Downsample started",e),this.fireDownsampleStart(e.detail)}handleDownsampleFinish(e){qt.debug("Downsample finished",e),this.fireDownsampleFinish(e.detail)}handleDownsampleFail(e){qt.error("Downsample failed",e),this.fireDownsampleFail(e.detail)}handleDownsampleNeeded(e){qt.info("Downsample needed",e),this.fireDownsampleNeeded(e.detail)}handleFigureUpdated(e){var{detail:t}=e,{series:r}=t;qt.debug2("handleFigureUpdated",r);for(var i=0;i<r.length;i+=1){var a=r[i];qt.debug2("handleFigureUpdated updating series",a.name);for(var{sources:o}=a,s=0;s<o.length;s+=1){var l=o[s],{columnType:d,type:h}=l,c=this.getValueTranslator(d,this.formatter),m=t.getArray(a,h,c);this.setDataArrayForSeries(a,h,m)}this.seriesToProcess.delete(a.name),this.seriesToProcess.size===0&&this.fireLoadFinished(),this.cleanSeries(a)}var{data:v}=this;this.fireUpdate(v)}handleRequestFailed(e){qt.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){qt.debug("Figure disconnected",e),this.isConnected=!1,this.listeners.length>0&&this.unsubscribeFigure(),this.fireDisconnect()}handleFigureReconnected(e){qt.debug("Figure reconnected",e),this.isConnected=!0,this.initAllSeries(),this.fireReconnect(),this.listeners.length>0&&this.subscribeFigure()}handleFigureSeriesAdded(e){var{detail:t}=e;qt.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=At.DEFAULT_MARGIN.t+i*At.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=xm({},this.layout.title),this.layout.title.text=e,this.layout.title.pad=xm({},this.layout.title.pad),this.layout.title.pad.t=At.DEFAULT_TITLE_PADDING.t+i*At.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)=>{qt.debug("Assigning ".concat(r),this.layout[r],t);var i=this.layout[r];i!=null?Object.assign(i,t):qt.debug("Ignoring null layout.".concat(r))})}}setDataArrayForSeries(e,t,r){var{name:i,plotStyle:a}=e,o=this.seriesDataMap.get(i),s=this.chartUtils.getPlotlyProperty(a,t);o&&Xg(o,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:o,xHigh:s}=a;if(o&&s&&o.length===s.length){for(var l=[],d=0;d<o.length;d+=1)l.push(s[d]-o[d]);a.width=l}}else if(i===t.plot.SeriesPlotStyle.LINE||i===t.plot.SeriesPlotStyle.ERROR_BAR||i===t.plot.SeriesPlotStyle.BAR){var{x:h,xLow:c,xHigh:m,y:v,yLow:f,yHigh:g}=a;c&&m&&c!==h&&(a.error_x=At.getPlotlyErrorBars(h,c,m)),f&&g&&f!==v&&(a.error_y=At.getPlotlyErrorBars(v,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){qt.warn("Trying to set a filter, but no one click!");return}qt.debug("setFilter",e);for(var r=function(){var o=t.oneClicks[i],{columns:s}=o,l=new Set([...e.keys(),...t.lastFilter.keys()]);l.forEach(d=>{var h=e.get(d);t.lastFilter.get(d)!==h&&s.find(c=>c.name===d)!=null&&o.setValueForColumn(d,h)})},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}}ht(fd,"ADD_SERIES_DEBOUNCE",50);const Mm=fd;function Am(n,e,t,r,i,a,o){try{var s=n[a](o),l=s.value}catch(d){t(d);return}s.done?e(l):Promise.resolve(l).then(r,i)}function uu(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){Am(a,r,i,o,s,"next",l)}function s(l){Am(a,r,i,o,s,"throw",l)}o(void 0)})}}class Lh{static makeModelFromSettings(e,t,r){var i=arguments;return uu(function*(){var a=i.length>3&&i[3]!==void 0?i[3]:ar,o=yield Lh.makeFigureFromSettings(e,t,r);return new Mm(e,o,t,a)})()}static makeFigureFromSettings(e,t,r){return uu(function*(){var i=yield r.copy();return i.applyCustomColumns(r.customColumns),i.applyFilter(r.filter),i.applySort(r.sort),e.plot.Figure.create(new At(e).makeFigureSettings(t,i))})()}static makeModel(e,t,r){var i=arguments;return uu(function*(){var a=i.length>3&&i[3]!==void 0?i[3]:ar;return new Mm(e,r,t,a)})()}}const zu=Lh,IT=typeof Tl=="function"?Tl(Ml):Tl.default(Ml);function Lm(n){return n.setFigure!==void 0}function km(n,e,t,r,i,a,o){try{var s=n[a](o),l=s.value}catch(d){t(d);return}s.done?e(l):Promise.resolve(l).then(r,i)}function _T(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){km(a,r,i,o,s,"next",l)}function s(l){km(a,r,i,o,s,"throw",l)}o(void 0)})}}var xT=ae.module("HeapUsage");function MT(n){var e,{connection:t,defaultUpdateInterval:r,hoverUpdateInterval:i,bgMonitoring:a=!0,monitorDuration:o}=n,[s,l]=y.useState({freeMemory:0,maximumHeapSize:999,totalHeapSize:0}),[d,h]=y.useState(!1),c=y.useRef({timestamps:[],usages:[]}),m=y.useCallback(_T(function*(){try{var _=yield t.getWorkerHeapInfo();if(l(_),a||d){for(var L=(_.totalHeapSize-_.freeMemory)/_.maximumHeapSize,M=Date.now(),{timestamps:U,usages:V}=c.current;U.length!==0&&M-U[0]>o*1.5;)U.shift(),V.shift();U.push(M),V.push(L)}else c.current={timestamps:[],usages:[]}}catch(z){xT.warn("Unable to get heap usage",z)}}),[d,t,o,a]);iy(m,d?i:r);var v=(_,L)=>Math.round(_*10**L)/10**L,f=2,g=1024**3,{freeMemory:p,totalHeapSize:C,maximumHeapSize:b}=s,S=v(p/g,f),w=v(C/g,f),E=v(b/g,f),T=w-S,P=function(L,M){var U=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;return u.jsxs("div",{className:J("heap-usage-info-row",{"heading-bottom-border":U}),children:[u.jsx("div",{className:"font-weight-bold",children:L}),u.jsx("div",{children:M})]})},{timestamps:D,usages:O}=c.current,R=(e=D[D.length-1])!==null&&e!==void 0?e:0,x=C/b,F=(C-p)/b;return u.jsxs(u.Fragment,{children:[u.jsxs("div",{className:"max-memory",children:[u.jsx("div",{className:"total-memory",style:{width:"calc(".concat(x*100,"% - ").concat(x*2,"px")}}),u.jsx("div",{className:J("used-memory",{"heap-overflow":(C-p)/b>.95}),style:{width:"calc(".concat(F*100,"% - ").concat(F*2,"px")}}),u.jsxs("div",{className:"memory-text",children:[E.toFixed(1)," GB"]})]}),u.jsx(pt,{onEntered:()=>h(!0),onExited:()=>h(!1),interactive:!0,children:u.jsxs("div",{className:"heap-tooltip",children:[P("In use:","".concat(T.toFixed(f)," of ").concat(E.toFixed(f)," GB"),!0),P("Free:","".concat(S.toFixed(f)," GB")),P("Total:","".concat(w.toFixed(f)," GB")),P("Max:","".concat(E.toFixed(f)," GB")),u.jsx("div",{className:"heap-plot",children:u.jsx(IT,{data:[{x:[...D],y:[...O],type:"scatter",mode:"lines"}],config:{staticPlot:!0,responsive:!0},style:{width:"196px",height:"100px"},layout:{margin:{l:2,t:2,r:2,b:2},plot_bgcolor:"transparent",paper_bgcolor:"transparent",colorway:["#4878ea"],xaxis:{dtick:Math.round(o/6),gridcolor:ar.linecolor,range:[R-o,R],linecolor:ar.linecolor,linewidth:2,mirror:!0},yaxis:{dtick:.2,gridcolor:ar.linecolor,range:[0,1],linecolor:ar.linecolor,linewidth:2,mirror:!0}}})}),u.jsxs("div",{className:"heap-utilisation-text",children:["% utilization over ",Math.round(o/1e3/60)," min."]})]})})]})}var kh=Object.freeze({}),AT=new Map,gd=n=>n.api,kp=n=>n.user,jh=n=>n.storage,jp=n=>jh(n).commandHistoryStorage,Hp=n=>jh(n).fileStorage,LT=n=>jh(n).workspaceStorage,pd=n=>n.workspace,$t=n=>pd(n).data.settings,$p=n=>$t(n).defaultDateTimeFormat,Up=n=>{var e;return(e=$t(n).defaultDecimalFormatOptions)!==null&&e!==void 0?e:kh},Bp=n=>{var e;return(e=$t(n).defaultIntegerFormatOptions)!==null&&e!==void 0?e:kh},Vp=n=>$t(n).formatter,Es=n=>$t(n).timeZone,Gp=n=>$t(n).showTimeZone,Wp=n=>$t(n).showTSeparator,zp=n=>$t(n).truncateNumbersWithPound,kT=n=>$t(n).shortcutOverrides,jT=n=>{var e;return(e=$t(n).defaultNotebookSettings)!==null&&e!==void 0?e:kh},Cd=n=>n.activeTool,HT=n=>{var e;return(e=n.plugins)!==null&&e!==void 0?e:AT},Kp="SET_ACTIVE_TOOL",Yp="SET_API",qp="SET_COMMAND_HISTORY_STORAGE",Xp="SET_FILE_STORAGE",Qp="SET_PLUGINS",Zp="SET_USER",Jp="SET_WORKSPACE",eC="SET_WORKSPACE_STORAGE",tC="SET_SERVER_CONFIG_VALUES";function jm(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 Vs(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?jm(Object(t),!0).forEach(function(r){$T(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):jm(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function $T(n,e,t){return e=UT(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function UT(n){var e=BT(n,"string");return typeof e=="symbol"?e:String(e)}function BT(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 VT=n=>({type:Zp,payload:n}),GT=n=>({type:Yp,payload:n}),rC=n=>({type:Jp,payload:n}),WT=n=>({type:eC,payload:n}),zT=n=>({type:qp,payload:n}),KT=n=>({type:Xp,payload:n}),YT=n=>(e,t)=>{e(rC(n));var{storage:r}=t(),{workspaceStorage:i}=r;return i.save(n)},nC=n=>(e,t)=>{var{workspace:r}=t(),{data:i}=r,a=Vs(Vs({},r),{},{data:Vs(Vs({},i),n)});return e(YT(a))},bd=n=>e=>e(nC({settings:n})),Sd=n=>({type:Kp,payload:n}),qT=n=>({type:Qp,payload:n}),XT=n=>({type:tC,payload:n});function Hm(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?Hm(Object(t),!0).forEach(function(r){QT(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Hm(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function QT(n,e,t){return e=ZT(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ZT(n){var e=JT(n,"string");return typeof e=="symbol"?e:String(e)}function JT(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 iC(n,e){return function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:e,r=arguments.length>1?arguments[1]:void 0;switch(r.type){case n:{var i=r.payload;return i==null?null:t!=null?hu(hu({},t),i):hu({},i)}default:return t}}}function $m(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 Um(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?$m(Object(t),!0).forEach(function(r){eP(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):$m(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function eP(n,e,t){return e=tP(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function tP(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)}function nP(n){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;return function(){var r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:e,i=arguments.length>1?arguments[1]:void 0;switch(i.type){case n:{var{id:a,payload:o}=i;return t&&ct({payload:o},{payload:r[a]})?r:Um(Um({},r),{},{[a]:o})}default:return r}}}function Ji(n,e){return function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:e,r=arguments.length>1?arguments[1]:void 0;switch(r.type){case n:return r.payload;default:return t}}}const iP=Ji(Yp,null),aP=Ji(Kp,null),oP=Ji(Qp,null),sP=Ji(qp,null),lP=Ji(Xp,null),dP=Ji(eC,null),uP=Sh({commandHistoryStorage:sP,fileStorage:lP,workspaceStorage:dP}),hP=iC(Zp,null),cP=iC(Jp,null),mP=Ji(tC,null);var vP={activeTool:aP,api:iP,plugins:oP,storage:uP,user:hP,workspace:cP,serverConfigValues:mP};const fP=vP;function Bm(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 Vm(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Bm(Object(t),!0).forEach(function(r){Ku(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Bm(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Ku(n,e,t){return e=gP(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function gP(n){var e=pP(n,"string");return typeof e=="symbol"?e:String(e)}function pP(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 CP{constructor(){Ku(this,"reducers",{}),Ku(this,"listener",null)}register(e,t){var r;this.reducers=Vm(Vm({},this.reducers),{},{[e]:t}),(r=this.listener)===null||r===void 0||r.call(this,this.reducers)}setListener(e){this.listener=e}}var bP=new CP;const Ts=bP;var Gm=ae.module("redux-logger"),SP=n=>e=>t=>{Gm.debug("dispatching",t);var r=e(t);return Gm.debug("next state",n.getState()),r};const wP=SP;var yP=ae.module("redux-crashReporter"),EP=n=>e=>t=>{try{return e(t)}catch(r){throw yP.error("Error executing",t," with state ",n.getState(),":",r),r}};const TP=EP,PP=[wP,TP,CS];var cu;Object.entries(fP).map(n=>{var[e,t]=n;return Ts.register(e,t)});var OP=(cu=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__)!==null&&cu!==void 0?cu:wS,aC=bS(Sh(Ts.reducers),OP(SS(...PP)));Ts.setListener(n=>{aC.replaceReducer(Sh(n))});const Hh=aC;var oC=Object.freeze({openPopouts:[],settings:{hasHeaders:!0,constrainDragToContainer:!0,reorderEnabled:!0,selectionEnabled:!1,popoutWholeStack:!1,blockedPopoutsThrowError:!0,closePopoutsOnUnload:!0,showPopoutIcon:!0,showMaximiseIcon:!0,showCloseIcon:!0,responsiveMode:"onload",tabOverlapAllowance:0,tabControlOffset:10},dimensions:{borderWidth:5,borderGrabWidth:10,minItemHeight:10,minItemWidth:10,headerHeight:20,dragProxyWidth:300,dragProxyHeight:200},labels:{close:"Close",maximise:"Maximize",minimise:"Minimize",popout:"Open in new window",popin:"Pop in",tabDropdown:"Additional tabs",tabNextLabel:"Next",tabPreviousLabel:"Previous"},content:[]});function sC(n){return n.componentName!==void 0}function DP(n){return n.component!==void 0}var lC=Object.freeze({type:"default",isClosable:!0,isFocusOnShow:!0,reorderEnabled:!0,title:""});const RP=Object.freeze(Object.defineProperty({__proto__:null,defaultConfig:oC,isGLComponentConfig:sC,isReactComponentConfig:DP,itemDefaultConfig:lC},Symbol.toStringTag,{value:"Module"}));function Pl(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=FP(n,"string");return typeof e=="symbol"?e:String(e)}function FP(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 us{constructor(){Pl(this,"_mSubscriptions",void 0),Pl(this,"off",this.unbind),Pl(this,"trigger",this.emit),this._mSubscriptions={},this._mSubscriptions[us.ALL_EVENT]=[]}on(e,t,r){if(typeof t!="function")throw new Error("Tried to listen to event "+e+" with non-function callback "+t);this._mSubscriptions[e]||(this._mSubscriptions[e]=[]),this._mSubscriptions[e].push({fn:t,ctx:r})}emit(e){for(var t=this._mSubscriptions[e],r=arguments.length,i=new Array(r>1?r-1:0),a=1;a<r;a++)i[a-1]=arguments[a];if(t)for(var o=0;o<t.length;o++){var s=t[o].ctx||{};try{t[o].fn.apply(s,i)}catch(c){console.error("Error while emitting event:",c)}}i.unshift(e);for(var l=this._mSubscriptions[us.ALL_EVENT],d=0;d<l.length;d++){var h=l[d].ctx||{};try{l[d].fn.apply(h,i)}catch(c){console.error("Error while emitting event to allEventSubs:",c)}}}unbind(e,t,r){if(!this._mSubscriptions[e])throw new Error("No subscriptions to unsubscribe for event "+e);for(var i=!1,a=0;a<this._mSubscriptions[e].length;a++)(!t||this._mSubscriptions[e][a].fn===t)&&(!r||r===this._mSubscriptions[e][a].ctx)&&(this._mSubscriptions[e].splice(a,1),i=!0);if(i===!1)throw new Error("Nothing to unbind for "+e)}}Pl(us,"ALL_EVENT","__all");const En=us;function sn(n,e,t){return e=IP(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function IP(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 Yu extends En{constructor(e,t,r){super(),sn(this,"width",void 0),sn(this,"height",void 0),sn(this,"title",void 0),sn(this,"parent",void 0),sn(this,"layoutManager",void 0),sn(this,"tab",void 0),sn(this,"_config",void 0),sn(this,"isHidden",!1),sn(this,"beforeCloseHandler",void 0),sn(this,"_element",me(['<div class="lm_item_container">','<div class="lm_content" tabindex="-1"></div>',"</div>"].join(""))),sn(this,"_contentElement",void 0),this.title=sC(e)?e.componentName:"",this.parent=t,this.layoutManager=r,this._config=e,this._contentElement=this._element.find(".lm_content"),this.beforeCloseHandler=null}getElement(){return this._contentElement}hide(){this.emit("hide"),this.isHidden=!0,this._element.hide()}show(){this.emit("show"),this.isHidden=!1,this._element.show(),(this.height!=0||this.width!=0)&&this.emit("shown")}setSize(e,t){for(var r,i,a,o=this.parent,s=null;o&&!o.isColumn&&!o.isRow;){var l;if(s=o,o=o.parent,(l=o)!==null&&l!==void 0&&l.isRoot)return!1}if(!o||!s)return!1;for(var d=o.isColumn?"height":"width",h=d==="height"?t:e,c=((r=this[d])!==null&&r!==void 0?r:0)*(1/(((i=s.config[d])!==null&&i!==void 0?i:0)/100)),m=h/c*100,v=(((a=s.config[d])!==null&&a!==void 0?a:0)-m)/(o.contentItems.length-1),f=0;f<o.contentItems.length;f++)if(o.contentItems[f]===s)o.contentItems[f].config[d]=m;else{var g;o.contentItems[f].config[d]=((g=o.contentItems[f].config[d])!==null&&g!==void 0?g:0)+v}return o.callDownwards("setSize"),!0}close(e){var t,r;this._config.isClosable&&(!((t=(r=this.beforeCloseHandler)===null||r===void 0?void 0:r.call(this,e))!==null&&t!==void 0)||t)&&(this.emit("close"),this.parent.close())}beforeClose(e){this.beforeCloseHandler=e}getState(){return this._config.componentState}extendState(e){this.setState(me.extend(!0,this.getState(),e))}setState(e){this._config.componentState=e,this.parent.emitBubblingEvent("stateChanged")}setTitle(e){this.parent.setTitle(e)}_$setSize(){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!==this.width||t!==this.height){this.width=e,this.height=t;var r=this._contentElement[0],i=r.offsetWidth-r.clientWidth,a=r.offsetHeight-r.clientHeight;this._contentElement.width(this.width-i).height(this.height-a),this.emit("resize")}}}const xP=Object.freeze(Object.defineProperty({__proto__:null,Container:Yu,ItemContainer:Yu},Symbol.toStringTag,{value:"Module"}));function dC(n){var e=location.hash.match(new RegExp(n+"=([^&]*)"));return e?e[1]:null}function uC(n){if(window.location.hash)return dC(n);if(!window.location.search)return null;var e=window.location.search.substr(1).split("&"),t={},r,i;for(i=0;i<e.length;i++)r=e[i].split("="),t[r[0]]=r[1];return t[n]||null}function $h(n){return window.requestAnimationFrame(n)}function MP(n,e){var t=e.indexOf(n);if(t===-1)throw new Error("Can't remove item from array. Item is not in the array");e.splice(t,1)}function Uh(){return(Math.random()*1e15).toString(36).replace(".","")}function AP(n,e){var t=n.replace(/javascript/gi,"j&#97;vascript").replace(/expression/gi,"expr&#101;ssion").replace(/onload/gi,"onlo&#97;d").replace(/script/gi,"&#115;cript").replace(/onerror/gi,"on&#101;rror");return e===!0?t:t.replace(/>/g,"&gt;").replace(/</g,"&lt;")}function Bh(n){return me.trim(n.replace(/(<([^>]+)>)/gi,""))}function Pr(n,e,t){return e=LP(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function LP(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 jP extends En{constructor(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;super(),Pr(this,"_eElement",void 0),Pr(this,"_oDocument",void 0),Pr(this,"_eBody",void 0),Pr(this,"_destroyAfterMouseUp",void 0),Pr(this,"_nDelay",400),Pr(this,"_timeout",void 0),Pr(this,"timeout",void 0),Pr(this,"_nDistance",10),Pr(this,"_nX",0),Pr(this,"_nY",0),Pr(this,"_nOriginalX",0),Pr(this,"_nOriginalY",0),Pr(this,"_bDragging",!1),this._eElement=e,this._oDocument=me(document),this._eBody=me(document.body),this._destroyAfterMouseUp=r,this.onMouseMove=this.onMouseMove.bind(this),this.onMouseUp=this.onMouseUp.bind(this),this.onMouseDown=this.onMouseDown.bind(this),this._startDrag=this._startDrag.bind(this),(t=this._eElement)===null||t===void 0||t.on("mousedown",this.onMouseDown)}destroy(){var e,t;(e=this._eElement)===null||e===void 0||e.unbind("mousedown",this.onMouseDown),(t=this._oDocument)===null||t===void 0||t.unbind("mouseup",this.onMouseUp),this._eElement=void 0,this._oDocument=void 0,this._eBody=void 0,clearTimeout(this._timeout),this._timeout=void 0}onMouseDown(e){if(e.preventDefault(),e.button===0){var t,r,i,a,o=this._getCoordinates(e);this._nOriginalX=(t=o.x)!==null&&t!==void 0?t:0,this._nOriginalY=(r=o.y)!==null&&r!==void 0?r:0,(i=this._oDocument)===null||i===void 0||i.on("mousemove",this.onMouseMove),(a=this._oDocument)===null||a===void 0||a.on("mouseup",this.onMouseUp),this._timeout=window.setTimeout(this._startDrag,this._nDelay)}}onMouseMove(e){if(this._timeout!=null){var t,r;e.preventDefault();var i=this._getCoordinates(e);this._nX=((t=i.x)!==null&&t!==void 0?t:0)-this._nOriginalX,this._nY=((r=i.y)!==null&&r!==void 0?r:0)-this._nOriginalY,this._bDragging===!1&&(Math.abs(this._nX)>this._nDistance||Math.abs(this._nY)>this._nDistance)&&this._startDrag(),this._bDragging&&this.emit("drag",this._nX,this._nY,e)}}onMouseUp(e){if(this._timeout!=null){var t,r,i,a,o;if(clearTimeout(this._timeout),(t=this._oDocument)===null||t===void 0||t.unbind("mousemove",this.onMouseMove),(r=this._oDocument)===null||r===void 0||r.unbind("mouseup",this.onMouseUp),(i=this._oDocument)===null||i===void 0||(a=i.find("iframe"))===null||a===void 0||a.css("pointer-events",""),this._bDragging===!0&&(this._bDragging=!1,this.emit("dragStop",e,this._nOriginalX+this._nX)),(o=this._eBody)===null||o===void 0||o.removeClass("lm_dragging"),!(this._eElement instanceof Window)){var s;(s=this._eElement)===null||s===void 0||s.removeClass("lm_dragging")}this._destroyAfterMouseUp&&this.destroy()}}_startDrag(){var e,t,r,i;window.clearTimeout(this._timeout),this._bDragging=!0,(e=this._eBody)===null||e===void 0||e.addClass("lm_dragging"),(t=this._eElement)===null||t===void 0||t.addClass("lm_dragging"),(r=this._oDocument)===null||r===void 0||(i=r.find("iframe"))===null||i===void 0||i.css("pointer-events","none"),this.emit("dragStart",this._nOriginalX,this._nOriginalY)}_getCoordinates(e){var t,r;return{x:(t=e.pageX)!==null&&t!==void 0?t:0,y:(r=e.pageY)!==null&&r!==void 0?r:0}}}const Ps=jP;function $a(n,e,t){return e=HP(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function HP(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 hC{constructor(e,t){$a(this,"_container",void 0),$a(this,"_reactComponent",null),$a(this,"_portalComponent",null),$a(this,"_originalComponentWillUpdate",null),$a(this,"_initialState",void 0),$a(this,"_reactClass",void 0),this._reactComponent=null,this._portalComponent=null,this._originalComponentWillUpdate=null,this._container=e,this._initialState=t,this._reactClass=this._getReactClass(),this._container.on("open",this._render,this),this._container.on("destroy",this._destroy,this)}_key(){var e=this._container._config.id;if(!e)throw new Error("Cannot mount panel without id");return Array.isArray(e)?e.join(","):e}_render(){var e=this._key();this._portalComponent=wh.createPortal(this._getReactComponent(),this._container.getElement()[0],e),this._container.layoutManager.addReactChild(e,this._portalComponent)}_gotReactComponent(e){if(e){this._reactComponent=e,this._originalComponentWillUpdate=this._reactComponent.componentWillUpdate||function(){},this._reactComponent.componentWillUpdate=this._onUpdate.bind(this);var t=this._container.getState();t&&this._reactComponent.setState(t)}}_destroy(){this._container.layoutManager.removeReactChild(this._key(),this._portalComponent),this._container.off("open",this._render,this),this._container.off("destroy",this._destroy,this)}_onUpdate(e,t){var r;this._container.setState(t),(r=this._originalComponentWillUpdate)===null||r===void 0||r.call(this._reactComponent,e,t)}_getReactClass(){var e=this._container._config.component;if(!e)throw new Error("No react component name. type: react-component needs a field `component`");var t=this._container.layoutManager.getComponent(e)||this._container.layoutManager.getFallbackComponent();if(!t)throw new Error('React component "'+e+'" not found. Please register all components with GoldenLayout using `registerComponent(name, component)`');return t}_getReactComponent(){var e={glEventHub:this._container.layoutManager.eventHub,glContainer:this._container},t=me.extend(e,this._container._config.props);return he.createElement(this._reactClass,t)}}var $l=["settings","hasHeaders","constrainDragToContainer","selectionEnabled","dimensions","borderWidth","minItemHeight","minItemWidth","headerHeight","dragProxyWidth","dragProxyHeight","labels","close","maximise","minimise","popout","content","componentName","componentState","id","width","type","height","isClosable","title","popoutWholeStack","openPopouts","parentId","activeItemIndex","reorderEnabled","borderGrabWidth"],UP=[!0,!1,"row","column","stack","component","close","maximise","minimise","open in new window"];function Vh(n){if($l.length>36)throw new Error("Too many keys in config minifier map");var e={};return Gh(n,e,"_min"),e}function qu(n){if($l.length>36)throw new Error("Too many keys in config minifier map");var e={};return Gh(n,e,"_max"),e}function Gh(n,e,t){var r=t==="_min"?BP:VP;for(var i in n)if(n.hasOwnProperty(i)){var a=Array.isArray(n)?n[Number.parseInt(i,10)]:n[i];if(typeof a=="object"&&a!=null){var o=a instanceof Array?[]:{};if(Array.isArray(e))e[Number.parseInt(i,10)]=o;else{var s=r(i,$l);e[s]=o}Gh(a,o,t)}else{var l=r(a,UP);if(Array.isArray(e))e[Number.parseInt(i,10)]=l;else{var d=r(i,$l);e[d]=l}}}}function BP(n,e){if(typeof n=="string"&&n.length===1)return"___"+n;var t=e.indexOf(n);return t===-1?n:t.toString(36)}function VP(n,e){return typeof n=="string"&&n.length===1?e[parseInt(n,36)]:typeof n=="string"&&n.substr(0,3)==="___"?n[3]:n}function mu(n,e,t){return e=GP(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function GP(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)}class Xu{constructor(e,t){mu(this,"name",void 0),mu(this,"origin",void 0),mu(this,"isPropagationStopped",void 0),this.name=e,this.origin=t,this.isPropagationStopped=!1}stopPropagation(){this.isPropagationStopped=!0}}function Gs(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)}let YP=class extends En{constructor(e){super(),Gs(this,"_layoutManager",void 0),Gs(this,"_dontPropagateToParent",void 0),Gs(this,"_childEventSource",void 0),Gs(this,"_boundOnEventFromChild",void 0),this._layoutManager=e,this._dontPropagateToParent=null,this._childEventSource=null,this.on(En.ALL_EVENT,this._onEventFromThis.bind(this)),this._boundOnEventFromChild=this._onEventFromChild.bind(this),me(window).on("gl_child_event",this._boundOnEventFromChild)}_onEventFromThis(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];this._layoutManager.isSubWindow&&t[0]!==this._dontPropagateToParent&&this._propagateToParent(t),this._propagateToChildren(t),this._dontPropagateToParent=null,this._childEventSource=null}_$onEventFromParent(e){this._dontPropagateToParent=e[0],this.emit.apply(this,e)}_onEventFromChild(e){this._childEventSource=e.originalEvent.__gl,this.emit.apply(this,e.originalEvent.__glArgs)}_propagateToParent(e){var t,r="gl_child_event",i=(t=window.opener)===null||t===void 0?void 0:t.document.createEvent("HTMLEvents");i.initEvent(r,!0,!0),i.eventName=r,i.__glArgs=e,i.__gl=this._layoutManager,window.opener.dispatchEvent(i)}_propagateToChildren(e){for(var t=0;t<this._layoutManager.openPopouts.length;t++){var r=this._layoutManager.openPopouts[t].getGlInstance();r&&r!==this._childEventSource&&r.eventHub._$onEventFromParent(e)}}destroy(){me(window).off("gl_child_event",this._boundOnEventFromChild)}};const cC=YP,qP=Object.freeze(Object.defineProperty({__proto__:null,BubblingEvent:Xu,DragListener:Ps,EventEmitter:En,EventHub:cC,ReactComponentHandler:hC,animFrame:$h,filterXss:AP,getHashValue:dC,getQueryStringParam:uC,getUniqueId:Uh,minifyConfig:Vh,removeFromArray:MP,stripTags:Bh,unminifyConfig:qu},Symbol.toStringTag,{value:"Module"}));function yi(n,e,t){return e=XP(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function XP(n){var e=QP(n,"string");return typeof e=="symbol"?e:String(e)}function QP(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 mC extends En{constructor(e,t,r,i,a){super(),yi(this,"isInitialised",!1),yi(this,"_config",void 0),yi(this,"_dimensions",void 0),yi(this,"_parentId",void 0),yi(this,"_indexInParent",void 0),yi(this,"_layoutManager",void 0),yi(this,"_popoutWindow",null),yi(this,"_id",null),this._config=e,this._dimensions=t,this._parentId=r,this._indexInParent=i,this._layoutManager=a,this._createWindow()}toConfig(){var e,t,r,i,a,o,s,l,d,h,c;if(this.isInitialised===!1)throw new Error("Can't create config, layout not yet initialised");return{dimensions:{width:(e=this.getGlInstance())===null||e===void 0?void 0:e.width,height:(t=this.getGlInstance())===null||t===void 0?void 0:t.height,left:(r=(i=(a=this._popoutWindow)===null||a===void 0?void 0:a.screenX)!==null&&i!==void 0?i:(o=this._popoutWindow)===null||o===void 0?void 0:o.screenLeft)!==null&&r!==void 0?r:0,top:(s=(l=(d=this._popoutWindow)===null||d===void 0?void 0:d.screenY)!==null&&l!==void 0?l:(h=this._popoutWindow)===null||h===void 0?void 0:h.screenTop)!==null&&s!==void 0?s:0},content:(c=this.getGlInstance())===null||c===void 0?void 0:c.toConfig().content,parentId:this._parentId,indexInParent:this._indexInParent}}getGlInstance(){var e;return(e=this._popoutWindow)===null||e===void 0?void 0:e.__glInstance}getWindow(){return this._popoutWindow}close(){if(this.getGlInstance()){var e;(e=this.getGlInstance())===null||e===void 0||e._$closeWindow()}else try{var t;(t=this.getWindow())===null||t===void 0||t.close()}catch{}}popIn(){var e;this._indexInParent;var t=null,r=null;if(this._parentId){var i;if(t=me.extend(!0,{},(i=this.getGlInstance())===null||i===void 0?void 0:i.toConfig()).content[0],r=this._layoutManager.root.getItemsById(this._parentId)[0],!r){var a;((a=this._layoutManager.root.contentItems.length)!==null&&a!==void 0?a:0)>0?r=this._layoutManager.root.contentItems[0]:r=this._layoutManager.root}}t&&((e=r)===null||e===void 0||e.addChild(t,this._indexInParent),this.close())}_createWindow(){var e=this._createUrl(),t=Math.floor(Math.random()*1e6).toString(36),r=this._serializeWindowOptions({width:this._dimensions.width,height:this._dimensions.height,innerWidth:this._dimensions.width,innerHeight:this._dimensions.height,menubar:"no",toolbar:"no",location:"no",personalbar:"no",resizable:"yes",scrollbars:"no",status:"no"});if(this._popoutWindow=window.open(e,t,r),!this._popoutWindow)if(this._layoutManager.config.settings.blockedPopoutsThrowError===!0){var i=new Error("Popout blocked");throw i.type="popoutBlocked",i}else return;me(this._popoutWindow).on("load",this._positionWindow.bind(this)).on("unload beforeunload",this._onClose.bind(this));var a=window.setInterval(()=>{var o;(o=this._popoutWindow)!==null&&o!==void 0&&o.__glInstance&&this._popoutWindow.__glInstance.isInitialised&&(this._onInitialised(),window.clearInterval(a))},10)}_serializeWindowOptions(e){var t=[],r;for(r in e)t.push(r+"="+e[r]);return t.join(",")}_createUrl(){var e={content:this._config},t="gl-window-config-"+Uh();e=Vh(e);try{localStorage.setItem(t,JSON.stringify(e))}catch(i){throw new Error("Error while writing to localStorage "+i.toString())}var r=document.location.href.split("?");return r.length===1?r[0]+"?gl-window="+t:document.location.href+"&gl-window="+t}_positionWindow(){var e,t;(e=this._popoutWindow)===null||e===void 0||e.moveTo(this._dimensions.left,this._dimensions.top),(t=this._popoutWindow)===null||t===void 0||t.focus()}_onInitialised(){var e;this.isInitialised=!0,(e=this.getGlInstance())===null||e===void 0||e.on("popIn",this.popIn,this),this.emit("initialised")}_onClose(){setTimeout(this.emit.bind(this,"closed"),50)}}function Mt(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 Ra extends En{constructor(e,t,r,i,a,o){var s,l,d,h,c,m,v,f;if(super(),Mt(this,"_dragListener",void 0),Mt(this,"_layoutManager",void 0),Mt(this,"_contentItem",void 0),Mt(this,"_originalParent",void 0),Mt(this,"_area",null),Mt(this,"_lastValidArea",null),Mt(this,"_minX",void 0),Mt(this,"_maxX",void 0),Mt(this,"_minY",void 0),Mt(this,"_maxY",void 0),Mt(this,"_width",void 0),Mt(this,"_height",void 0),Mt(this,"_sided",void 0),Mt(this,"element",void 0),Mt(this,"childElementContainer",void 0),Mt(this,"_proxyTab",void 0),this._dragListener=r,this._layoutManager=i,this._contentItem=a,this._originalParent=o,this._dragListener.on("drag",this._onDrag,this),this._dragListener.on("dragStop",this._onDrop,this),this._contentItem.tab&&this._contentItem.tab.element){var g,p;this._layoutManager.tabDropPlaceholder.width((g=this._contentItem.tab.element.outerWidth(!0))!==null&&g!==void 0?g:0),this._layoutManager.tabDropPlaceholder.height((p=this._contentItem.tab.element.outerHeight(!0))!==null&&p!==void 0?p:0)}if(this.element=me(Ra._template),o&&o._side&&(this._sided=o._sided,this.element.addClass("lm_"+o._side),["right","bottom"].indexOf(o._side.toString())>=0&&this.element.find(".lm_content").after(this.element.find(".lm_header"))),this.element.css({left:e,top:t}),this._proxyTab=this.element.find(".lm_tab"),this._proxyTab.attr("title",Bh((s=this._contentItem.config.title)!==null&&s!==void 0?s:"")),this.element.find(".lm_title").html((l=this._contentItem.config.title)!==null&&l!==void 0?l:""),this.childElementContainer=this.element.find(".lm_content"),this.childElementContainer.append(a.element),this._updateTree(),this._layoutManager._$calculateItemAreas(),me(document.body).append(this.element),this._setDimensions(),!this._contentItem.tab&&this._proxyTab.length){var C,b;this._layoutManager.tabDropPlaceholder.width((C=this._proxyTab.outerWidth(!0))!==null&&C!==void 0?C:0),this._layoutManager.tabDropPlaceholder.height((b=this._proxyTab.outerHeight(!0))!==null&&b!==void 0?b:0)}var S=this._layoutManager.container.offset();this._minX=(d=S?.left)!==null&&d!==void 0?d:0,this._minY=(h=S?.top)!==null&&h!==void 0?h:0,this._maxX=((c=this._layoutManager.container.width())!==null&&c!==void 0?c:0)+this._minX,this._maxY=((m=this._layoutManager.container.height())!==null&&m!==void 0?m:0)+this._minY,this._width=(v=this.element.width())!==null&&v!==void 0?v:0,this._height=(f=this.element.height())!==null&&f!==void 0?f:0,this._setDropPosition(e,t),this._layoutManager.emit("itemPickedUp",this._contentItem)}_onDrag(e,t,r){var i,a,o=(i=r.pageX)!==null&&i!==void 0?i:0,s=(a=r.pageY)!==null&&a!==void 0?a:0,l=o>this._minX&&o<this._maxX&&s>this._minY&&s<this._maxY;!l&&this._layoutManager.config.settings.constrainDragToContainer===!0||this._setDropPosition(o,s)}_setDropPosition(e,t){this.element.css({left:e,top:t}),this._area=this._layoutManager._$getArea(e,t),this._area!==null&&(this._lastValidArea=this._area,this._area.contentItem._$highlightDropZone(e,t,this._area))}_onDrop(){var e;(e=this._layoutManager.dropTargetIndicator)===null||e===void 0||e.hide(),this._area!==null?this._area.contentItem._$onDrop(this._contentItem,this._area):this._lastValidArea!==null?this._lastValidArea.contentItem._$onDrop(this._contentItem,this._lastValidArea):this._originalParent?this._originalParent.addChild(this._contentItem):this._contentItem._$destroy(),this._dragListener.off("drag",this._onDrag,this),this._dragListener.off("dragStop",this._onDrop,this),this.element.remove(),this._layoutManager.emit("itemDropped",this._contentItem)}_updateTree(){this._contentItem.parent&&this._contentItem.parent.removeChild(this._contentItem,!0),this._contentItem._$setParent(null)}_setDimensions(){var e=this._layoutManager.config.dimensions,t=e.dragProxyWidth,r=e.dragProxyHeight;this.element.width(t),this.element.height(r),t-=this._sided?e.headerHeight:0,r-=this._sided?0:e.headerHeight,this.childElementContainer.width(t),this.childElementContainer.height(r),this._contentItem.element.width(t),this._contentItem.element.height(r),this._contentItem.callDownwards("_$show"),this._contentItem.callDownwards("setSize")}}Mt(Ra,"_template",'<div class="lm_dragProxy"><div class="lm_header"><ul class="lm_tabs"><li class="lm_tab lm_active"><i class="lm_left"></i><span class="lm_title"></span><i class="lm_right"></i></li></ul></div><div class="lm_content"></div></div>');function Ws(n,e,t){return e=eO(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function eO(n){var e=tO(n,"string");return typeof e=="symbol"?e:String(e)}function tO(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{constructor(e,t,r){Ws(this,"_element",void 0),Ws(this,"_itemConfig",void 0),Ws(this,"_layoutManager",void 0),Ws(this,"_dragListener",void 0),this._element=e,this._itemConfig=t,this._layoutManager=r,this._dragListener=this._createDragListener()}_createDragListener(){return this._dragListener=new Ps(this._element,!0),this._dragListener.on("dragStart",this._onDragStart,this),this._dragListener.on("dragStop",this._createDragListener,this),this._dragListener}_onDragStart(e,t){var r=this._itemConfig;typeof r=="function"&&(r=r());var i=this._layoutManager._$normalizeContentItem(me.extend(!0,{},r));new Ra(e,t,this._dragListener,this._layoutManager,i,null)}}function zs(n,e,t){return e=rO(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function rO(n){var e=nO(n,"string");return typeof e=="symbol"?e:String(e)}function nO(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 fC{constructor(e,t,r){zs(this,"_element",me(window)),zs(this,"_itemConfig",void 0),zs(this,"_layoutManager",void 0),zs(this,"_dragListener",void 0),this._itemConfig=e,this._layoutManager=t,this._createDragListener(r)}_createDragListener(e){this._dragListener&&this._dragListener.destroy(),this._element&&(this._dragListener=new Ps(this._element,!0),this._dragListener.on("dragStart",this._onDragStart,this),this._dragListener.on("dragStop",this._destroy,this),this._dragListener.onMouseDown(e),this._dragListener._startDrag())}_destroy(){this._dragListener=void 0,this._element=void 0,this._itemConfig=void 0,this._layoutManager=void 0}_onDragStart(e,t){if(!(!this._dragListener||!this._layoutManager)){var r=this._itemConfig;typeof r=="function"&&(r=r());var i=this._layoutManager._$normalizeContentItem(me.extend(!0,{},r));new Ra(e,t,this._dragListener,this._layoutManager,i,null)}}}function gC(n,e,t){return e=iO(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function iO(n){var e=aO(n,"string");return typeof e=="symbol"?e:String(e)}function aO(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 Os{constructor(){gC(this,"element",me(Os._template)),me(document.body).append(this.element)}destroy(){this.element.remove()}highlightArea(e){this.element.css({left:e.x1,top:e.y1,width:Math.floor(e.x2-e.x1),height:Math.floor(e.y2-e.y1)}).show()}hide(){this.element.hide()}}gC(Os,"_template",'<div class="lm_dropTargetIndicator"><div class="lm_inner"></div></div>');function vu(n,e,t){return e=oO(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function oO(n){var e=sO(n,"string");return typeof e=="symbol"?e:String(e)}function sO(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 Yo{constructor(e,t,r,i){vu(this,"element",void 0),vu(this,"_header",void 0),vu(this,"_action",void 0),this._header=e,this.element=me('<li class="'+r+'" title="'+t+'"></li>'),this._header.on("destroy",this._$destroy,this),this._action=i,this.element.on("click",this._action),this._header.controlsContainer.append(this.element)}_$destroy(){this.element.off(),this.element.remove()}}function lO(n,e,t){return e=dO(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function dO(n){var e=uO(n,"string");return typeof e=="symbol"?e:String(e)}function uO(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 hO extends Error{constructor(e,t){super(),lO(this,"node",void 0),this.name="Configuration Error",this.message=e,this.node=t}}const pa=hO,cO=Object.freeze(Object.defineProperty({__proto__:null,ConfigurationError:pa},Symbol.toStringTag,{value:"Module"}));function Ft(n,e,t){return e=mO(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function mO(n){var e=vO(n,"string");return typeof e=="symbol"?e:String(e)}function vO(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 hs(n){return n.isStack}function Ir(n){return n.isComponent}function pC(n){return n.isRoot}class kt extends En{constructor(e,t,r,i){super(),Ft(this,"config",void 0),Ft(this,"type",void 0),Ft(this,"contentItems",void 0),Ft(this,"parent",void 0),Ft(this,"layoutManager",void 0),Ft(this,"element",void 0),Ft(this,"childElementContainer",void 0),Ft(this,"componentName",void 0),Ft(this,"isInitialised",!1),Ft(this,"isMaximised",!1),Ft(this,"isRoot",!1),Ft(this,"isRow",!1),Ft(this,"isColumn",!1),Ft(this,"isStack",!1),Ft(this,"isComponent",!1),Ft(this,"tab",void 0),Ft(this,"_pendingEventPropagations",void 0),Ft(this,"_throttledEvents",void 0),this.element=i,this.config=this._extendItemNode(t),this.type=t.type,this.contentItems=[],this.parent=r,this.layoutManager=e,this._pendingEventPropagations={},this._throttledEvents=["stateChanged"],this.on(En.ALL_EVENT,this._propagateEvent,this),t.content&&this._createContentItems(t)}callDownwards(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;r!==!0&&i!==!0&&this[e].apply(this,t);for(var a=0;a<this.contentItems.length;a++)this.contentItems[a].callDownwards(e,t,r);r===!0&&i!==!0&&this[e].apply(this,t)}removeChild(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,i=this.contentItems.indexOf(e);if(i===-1)throw new Error("Can't remove child item. Unknown content item");if(r!==!0&&this.contentItems[i]._$destroy(),this.contentItems.splice(i,1),(t=this.config.content)===null||t===void 0||t.splice(i,1),this.contentItems.length>0)this.callDownwards("setSize");else if(this.type!=="root"&&this.config.isClosable){var a;(a=this.parent)===null||a===void 0||a.removeChild(this)}}addChild(e,t){e=this.layoutManager._$normalizeContentItem(e,this),t===void 0&&(t=this.contentItems.length),this.contentItems.splice(t,0,e),this.config.content===void 0&&(this.config.content=[]),this.config.content.splice(t,0,e.config),e.parent=this,e.parent.isInitialised===!0&&e.isInitialised===!1&&e._$init()}replaceChild(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;t=this.layoutManager._$normalizeContentItem(t);var i=this.contentItems.indexOf(e),a=e.element[0].parentNode;if(i===-1)throw new Error("Can't replace child. oldChild is not child of this");a?.replaceChild(t.element[0],e.element[0]),r===!0&&(e.parent=null,e._$destroy()),this.contentItems[i]=t,t.parent=this,hs(this)&&(this.header.tabs[i].contentItem=t),t.parent.isInitialised===!0&&t.isInitialised===!1&&t._$init(),this.callDownwards("setSize")}remove(){var e;(e=this.parent)===null||e===void 0||e.removeChild(this)}popout(){var e=this.layoutManager.createPopout(this);return this.emitBubblingEvent("stateChanged"),e}toggleMaximise(e){e&&e.preventDefault(),this.isMaximised===!0?this.layoutManager._$minimiseItem(this):this.layoutManager._$maximiseItem(this),this.isMaximised=!this.isMaximised,this.emitBubblingEvent("stateChanged")}select(){this.layoutManager.selectedItem!==this&&(this.layoutManager.selectItem(this,!0),this.element.addClass("lm_selected"))}deselect(){this.layoutManager.selectedItem===this&&(this.layoutManager.selectedItem=null,this.element.removeClass("lm_selected"))}setTitle(e){this.config.title=e,this.emit("titleChanged",e),this.emitBubblingEvent("stateChanged")}hasId(e){if(this.config.id){if(typeof this.config.id=="string")return this.config.id===e;if(this.config.id instanceof Array)return this.config.id.indexOf(e)!==-1}else return!1}addId(e){this.hasId(e)||(this.config.id?typeof this.config.id=="string"?this.config.id=[this.config.id,e]:this.config.id instanceof Array&&this.config.id.push(e):this.config.id=e)}removeId(e){if(!this.hasId(e))throw new Error("Id not found");if(typeof this.config.id=="string")delete this.config.id;else if(this.config.id instanceof Array){var t=this.config.id.indexOf(e);this.config.id.splice(t,1)}}getItemsByFilter(e){var t=[],r=function i(a){for(var o=0;o<a.contentItems.length;o++)e(a.contentItems[o])===!0&&t.push(a.contentItems[o]),i(a.contentItems[o])};return r(this),t}getItemsById(e){return this.getItemsByFilter(function(t){return t.config.id instanceof Array?t.config.id.indexOf(e)!==-1:t.config.id===e})}getItemsByType(e){return this._$getItemsByProperty("type",e)}getComponentsByName(e){for(var t=this._$getItemsByProperty("componentName",e),r=[],i=0;i<t.length;i++)r.push(t[i].instance);return r}_$getItemsByProperty(e,t){return this.getItemsByFilter(function(r){return r[e]===t})}_$setParent(e){this.parent=e}_$highlightDropZone(e,t,r){var i;(i=this.layoutManager.dropTargetIndicator)===null||i===void 0||i.highlightArea(r)}_$onDrop(e,t){this.addChild(e)}_$hide(){this._callOnActiveComponents("hide"),this.element.hide(),this.layoutManager.updateSize()}_$show(){this._callOnActiveComponents("show"),this.element.show(),this.layoutManager.updateSize()}_callOnActiveComponents(e){for(var t=this.getItemsByType("stack"),r=null,i=0;i<t.length;i++)r=t[i].getActiveContentItem(),r&&Ir(r)&&r.container[e]()}_$destroy(){this.emitBubblingEvent("beforeItemDestroyed"),this.callDownwards("_$destroy",[],!0,!0),this.element.remove(),this.emitBubblingEvent("itemDestroyed")}_$getArea(e){var t,r,i;e=e||this.element;var a=(t=e.offset())!==null&&t!==void 0?t:{left:0,top:0},o=(r=e.width())!==null&&r!==void 0?r:0,s=(i=e.height())!==null&&i!==void 0?i:0;return{x1:a.left,y1:a.top,x2:a.left+o,y2:a.top+s,surface:o*s,contentItem:this,side:""}}_$init(){this.setSize();for(var e=0;e<this.contentItems.length;e++){var t;(t=this.childElementContainer)===null||t===void 0||t.append(this.contentItems[e].element)}this.isInitialised=!0,this.emitBubblingEvent("itemCreated"),this.emitBubblingEvent(this.type+"Created")}emitBubblingEvent(e){var t=new Xu(e,this);this.emit(e,t)}_createContentItems(e){var t;if(!(e.content instanceof Array))throw new pa("content must be an Array",e);for(var r=0;r<e.content.length;r++)t=this.layoutManager.createContentItem(e.content[r],this),this.contentItems.push(t)}_extendItemNode(e){for(var[t,r]of Object.entries(lC)){var i=t;e[i]===void 0&&(e[i]=r)}return e}_propagateEvent(e,t){t instanceof Xu&&t.isPropagationStopped===!1&&this.isInitialised===!0&&(this.isRoot===!1&&this.parent?this.parent.emit.apply(this.parent,[e,t]):this._scheduleEventPropagationToLayoutManager(e,t))}_scheduleEventPropagationToLayoutManager(e,t){this._throttledEvents.indexOf(e)===-1?this.layoutManager.emit(e,t.origin):this._pendingEventPropagations[e]!==!0&&(this._pendingEventPropagations[e]=!0,$h(this._propagateEventToLayoutManager.bind(this,e,t)))}_propagateEventToLayoutManager(e,t){this._pendingEventPropagations[e]=!1,this.layoutManager.emit(e,t)}}function Io(n,e,t){return e=fO(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function fO(n){var e=gO(n,"string");return typeof e=="symbol"?e:String(e)}function gO(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 CC extends kt{constructor(e,t,r){super(e,t,r,me()),Io(this,"config",void 0),Io(this,"componentName",void 0),Io(this,"container",void 0),Io(this,"parent",void 0),Io(this,"instance",void 0),this.config=t,this.parent=r;var i=e.getComponent(this.config.componentName)||e.getFallbackComponent(),a=me.extend(!0,{},this.config.componentState||{});if(i==null)throw new pa('Unknown component "'+this.config.componentName+'"');a.componentName=this.config.componentName,this.componentName=this.config.componentName,this.config.title===""&&(this.config.title=this.config.componentName),this.isComponent=!0,this.container=new Yu(this.config,this,e),this.instance=new i(this.container,a),this.element=this.container._element}close(){this.parent.removeChild(this)}setSize(){this.element.is(":visible")&&this.container._$setSize(this.element.width(),this.element.height())}_$init(){kt.prototype._$init.call(this),this.container.emit("open")}_$hide(){this.container.hide(),kt.prototype._$hide.call(this)}_$show(){this.container.show(),this.container._config.isFocusOnShow&&this.container._contentElement[0].focus({preventScroll:!0}),kt.prototype._$show.call(this)}_$destroy(){this.container.emit("destroy",this),kt.prototype._$destroy.call(this)}_$getArea(){return null}}function Gr(n,e,t){return e=pO(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function pO(n){var e=CO(n,"string");return typeof e=="symbol"?e:String(e)}function CO(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 Ul extends kt{constructor(e,t,r,i){super(t,r,i,me('<div class="lm_item lm_'+(e?"column":"row")+'"></div>')),Gr(this,"isRow",void 0),Gr(this,"isColumn",void 0),Gr(this,"childElementContainer",void 0),Gr(this,"parent",void 0),Gr(this,"_splitter",[]),Gr(this,"_splitterSize",void 0),Gr(this,"_splitterGrabSize",void 0),Gr(this,"_isColumn",void 0),Gr(this,"_dimension",void 0),Gr(this,"_splitterPosition",null),Gr(this,"_splitterMinPosition",null),Gr(this,"_splitterMaxPosition",null),this.parent=i,this.isRow=!e,this.isColumn=e,this.childElementContainer=this.element,this._splitterSize=t.config.dimensions.borderWidth,this._splitterGrabSize=t.config.dimensions.borderGrabWidth,this._isColumn=e,this._dimension=e?"height":"width",this._splitterPosition=null,this._splitterMinPosition=null,this._splitterMaxPosition=null}addChild(e,t,r){var i,a,o,s;if(e=this.layoutManager._$normalizeContentItem(e,this),t===void 0&&(t=this.contentItems.length),this.contentItems.length>0?(s=this._createSplitter(Math.max(0,t-1)).element,t>0?(this.contentItems[t-1].element.after(s),s.after(e.element)):(this.contentItems[0].element.before(s),s.before(e.element))):this.childElementContainer.append(e.element),kt.prototype.addChild.call(this,e,t),i=1/this.contentItems.length*100,r===!0){this.emitBubblingEvent("stateChanged");return}for(o=0;o<this.contentItems.length;o++)if(this.contentItems[o]===e)e.config[this._dimension]=i;else{var l;a=((l=this.contentItems[o].config[this._dimension])!==null&&l!==void 0?l:0)*(100-i)/100,this.contentItems[o].config[this._dimension]=a}this.callDownwards("setSize"),this.emitBubblingEvent("stateChanged")}removeChild(e,t){var r,i=(r=e.config[this._dimension])!==null&&r!==void 0?r:0,a=this.contentItems.indexOf(e),o=Math.max(a-1,0),s,l;if(a===-1)throw new Error("Can't remove child. ContentItem is not child of this Row or Column");for(this._splitter[o]&&(this._splitter[o]._$destroy(),this._splitter.splice(o,1)),s=0;s<this.contentItems.length;s++)if(this.contentItems[s]!==e){var d;this.contentItems[s].config[this._dimension]=((d=this.contentItems[s].config[this._dimension])!==null&&d!==void 0?d:0)+i/(this.contentItems.length-1)}kt.prototype.removeChild.call(this,e,t),this.contentItems.length===1&&this.config.isClosable===!0?(l=this.contentItems[0],this.contentItems=[],this.parent.replaceChild(this,l,!0)):(this.callDownwards("setSize"),this.emitBubblingEvent("stateChanged"))}replaceChild(e,t){var r=e.config[this._dimension];super.replaceChild(e,t),t.config[this._dimension]=r,this.callDownwards("setSize"),this.emitBubblingEvent("stateChanged")}setSize(){this.contentItems.length>0&&(this._calculateRelativeSizes(),this._setAbsoluteSizes()),this.emitBubblingEvent("stateChanged"),this.emit("resize")}_$init(){if(this.isInitialised!==!0){var e;for(kt.prototype._$init.call(this),e=0;e<this.contentItems.length-1;e++)this.contentItems[e].element.after(this._createSplitter(e).element)}}_setAbsoluteSizes(){var e,t=this._calculateAbsoluteSizes();for(e=0;e<this.contentItems.length;e++)t.additionalPixel-e>0&&t.itemSizes[e]++,this._isColumn?(this.contentItems[e].element.width(t.totalWidth),this.contentItems[e].element.height(t.itemSizes[e])):(this.contentItems[e].element.width(t.itemSizes[e]),this.contentItems[e].element.height(t.totalHeight))}_calculateAbsoluteSizes(){var e,t,r=(this.contentItems.length-1)*this._splitterSize,i=(e=this.element.width())!==null&&e!==void 0?e:0,a=(t=this.element.height())!==null&&t!==void 0?t:0,o=0,s=[];this._isColumn?a-=r:i-=r;for(var l=0;l<this.contentItems.length;l++){var d,h,c=this._isColumn?Math.floor(a*(((d=this.contentItems[l].config.height)!==null&&d!==void 0?d:0)/100)):Math.floor(i*(((h=this.contentItems[l].config.width)!==null&&h!==void 0?h:0)/100));o+=c,s.push(c)}var m=Math.floor((this._isColumn?a:i)-o);return{itemSizes:s,additionalPixel:m,totalWidth:i,totalHeight:a}}_calculateRelativeSizes(){for(var e=0,t=[],r=this._isColumn?"height":"width",i=0;i<this.contentItems.length;i++)if(this.contentItems[i].config[r]!==void 0){var a;e+=(a=this.contentItems[i].config[r])!==null&&a!==void 0?a:0}else t.push(this.contentItems[i]);if(Math.round(e)===100){this._respectMinItemWidth();return}if(Math.round(e)<100&&t.length>0){for(var o=0;o<t.length;o++)t[o].config[r]=(100-e)/t.length;this._respectMinItemWidth();return}if(Math.round(e)>100)for(var s=0;s<t.length;s++)t[s].config[r]=50,e+=50;for(var l=0;l<this.contentItems.length;l++){var d;this.contentItems[l].config[r]=((d=this.contentItems[l].config[r])!==null&&d!==void 0?d:0)/e*100}this._respectMinItemWidth()}_respectMinItemWidth(){var e,t=this.layoutManager.config.dimensions&&(e=this.layoutManager.config.dimensions.minItemWidth)!==null&&e!==void 0?e:0,r=[],i=0,a=0,o=0,s=[],l;if(!(this._isColumn||!t||this.contentItems.length<=1)){for(var d=this._calculateAbsoluteSizes(),h=0;h<this.contentItems.length;h++){this.contentItems[h];var c=d.itemSizes[h];c<t?(a+=t-c,l={width:t}):(i+=c-t,l={width:c},r.push(l)),s.push(l)}if(!(a===0||a>i)){var m=a/i;o=a;for(var v=0;v<r.length;v++){l=r[v];var f=Math.round((l.width-t)*m);o-=f,l.width-=f}o!==0&&(s[s.length-1].width-=o);for(var g=0;g<this.contentItems.length;g++)this.contentItems[g].config.width=s[g].width/d.totalWidth*100}}}_createSplitter(e){var t;return t=new bC(this._isColumn,this._splitterSize,this._splitterGrabSize),t.on("drag",this._onSplitterDrag.bind(this,t),this),t.on("dragStop",this._onSplitterDragStop.bind(this,t),this),t.on("dragStart",this._onSplitterDragStart.bind(this,t),this),this._splitter.splice(e,0,t),t}_getItemsForSplitter(e){var t=this._splitter.indexOf(e);if(t<0)throw new Error("Splitter not found in RowOrColumn");return{before:this.contentItems[t],after:this.contentItems[t+1]}}_getMinimumDimensions(e){for(var t=0,r=0,i=0;i<e.length;++i){var a,o;t=Math.max((a=e[i].minWidth)!==null&&a!==void 0?a:0,t),r=Math.max((o=e[i].minHeight)!==null&&o!==void 0?o:0,r)}return{horizontal:t,vertical:r}}_onSplitterDragStart(e){var t,r,i,a,o=this._getItemsForSplitter(e),s=this.layoutManager.config.dimensions[this._isColumn?"minItemHeight":"minItemWidth"],l=this._getMinimumDimensions((t=o.before.config.content)!==null&&t!==void 0?t:[]),d=this._isColumn?l.vertical:l.horizontal,h=this._getMinimumDimensions((r=o.after.config.content)!==null&&r!==void 0?r:[]),c=this._isColumn?h.vertical:h.horizontal;this._splitterPosition=0,this._splitterMinPosition=-1*(((i=o.before.element[this._dimension]())!==null&&i!==void 0?i:0)-(d||s)),this._splitterMaxPosition=((a=o.after.element[this._dimension]())!==null&&a!==void 0?a:0)-(c||s)}_onSplitterDrag(e,t,r){var i=this._isColumn?r:t;this._splitterMaxPosition==null||this._splitterMinPosition==null||i>this._splitterMinPosition&&i<this._splitterMaxPosition&&(this._splitterPosition=i,e.element.css(this._isColumn?"top":"left",i))}_onSplitterDragStop(e){var t,r,i,a,o,s=this._getItemsForSplitter(e),l=(t=s.before.element[this._dimension]())!==null&&t!==void 0?t:0,d=(r=s.after.element[this._dimension]())!==null&&r!==void 0?r:0,h=(((i=this._splitterPosition)!==null&&i!==void 0?i:0)+l)/(l+d),c=((a=s.before.config[this._dimension])!==null&&a!==void 0?a:0)+((o=s.after.config[this._dimension])!==null&&o!==void 0?o:0);s.before.config[this._dimension]=h*c,s.after.config[this._dimension]=(1-h)*c,e.element.css({top:0,left:0}),$h(this.callDownwards.bind(this,"setSize",void 0,void 0,void 0))}}function Wm(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 zm(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Wm(Object(t),!0).forEach(function(r){Qu(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Wm(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Qu(n,e,t){return e=bO(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function bO(n){var e=SO(n,"string");return typeof e=="symbol"?e:String(e)}function SO(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 Zu extends kt{constructor(e,t,r){super(e,zm(zm({},t),{},{type:"root"}),null,me('<div class="lm_goldenlayout lm_item lm_root"></div>')),Qu(this,"childElementContainer",void 0),Qu(this,"_containerElement",void 0),this.isRoot=!0,this.type="root",this.childElementContainer=this.element,this._containerElement=r,this._containerElement.append(this.element)}addChild(e,t){if(this.contentItems.length>0)throw new Error("Root node can only have a single child");e=this.layoutManager._$normalizeContentItem(e,this),this.childElementContainer.append(e.element),super.addChild(e,t),this.callDownwards("setSize"),this.emitBubblingEvent("stateChanged")}setSize(e,t){var r,i;e=typeof e>"u"?(r=this._containerElement.width())!==null&&r!==void 0?r:0:e,t=typeof t>"u"?(i=this._containerElement.height())!==null&&i!==void 0?i:0:t,this.element.width(e),this.element.height(t),this.contentItems[0]&&(this.contentItems[0].element.width(e),this.contentItems[0].element.height(t))}_$getArea(){var e=super._$getArea();if(e==null)throw new Error("Unable to get root area");return e}_$highlightDropZone(e,t,r){this.layoutManager.tabDropPlaceholder.remove(),super._$highlightDropZone(e,t,r)}_$onDrop(e,t){var r;if(Ir(e)&&(r=this.layoutManager.createContentItem({type:"stack",header:e.config.header||{}},this),r._$init(),r.addChild(e),e=r),!this.contentItems.length)this.addChild(e);else{var{side:i}=t,a=i==="left"||i==="right"?"row":"column",o=i==="left"||i==="right"?"width":"height",s=i==="left"||i==="top",l=this.contentItems[0];if(!(l instanceof Ul)||l.type!=a){var d=this.layoutManager.createContentItem({type:a},this);this.replaceChild(l,d),d.addChild(e,s?0:void 0,!0),d.addChild(l,s?void 0:0,!0),l.config[o]=50,e.config[o]=50,d.callDownwards("setSize")}else{var h,c=l.contentItems[s?0:l.contentItems.length-1];l.addChild(e,s?0:void 0,!0),c.config[o]=((h=c.config[o])!==null&&h!==void 0?h:0)*.5,e.config[o]=c.config[o],l.callDownwards("setSize")}}}}function Km(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 Ua(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Km(Object(t),!0).forEach(function(r){mr(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Km(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function mr(n,e,t){return e=wO(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function wO(n){var e=yO(n,"string");return typeof e=="symbol"?e:String(e)}function yO(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 Ju extends kt{constructor(e,t,r){var i,a,o,s,l,d,h,c,m;super(e,t,r,me('<div class="lm_item lm_stack"></div>')),mr(this,"_activeContentItem",null),mr(this,"_header",void 0),mr(this,"childElementContainer",me('<div class="lm_items"></div>')),mr(this,"header",void 0),mr(this,"parent",void 0),mr(this,"isStack",!0),mr(this,"_dropZones",{}),mr(this,"_dropSegment",null),mr(this,"_contentAreaDimensions",null),mr(this,"_dropIndex",void 0),mr(this,"_side",void 0),mr(this,"_sided",!1),mr(this,"config",void 0),this.parent=r,this.config=t;var v=e.config;this._side=!1,this._header={show:((i=v.settings)===null||i===void 0?void 0:i.hasHeaders)&&t.hasHeaders!==!1,popout:(a=v.settings)!==null&&a!==void 0&&a.showPopoutIcon?(o=v.labels)===null||o===void 0?void 0:o.popout:void 0,maximise:(s=v.settings)!==null&&s!==void 0&&s.showMaximiseIcon?(l=v.labels)===null||l===void 0?void 0:l.maximise:void 0,close:(d=v.settings)!==null&&d!==void 0&&d.showCloseIcon?(h=v.labels)===null||h===void 0?void 0:h.close:void 0,minimise:(c=(m=v.labels)===null||m===void 0?void 0:m.minimise)!==null&&c!==void 0?c:void 0},v.header&&(this._header=Ua(Ua({},this._header),v.header)),t.header&&(this._header=Ua(Ua({},this._header),t.header)),t.content&&t.content[0]&&t.content[0].header&&(this._header=Ua(Ua({},this._header),t.content[0].header)),this.header=new li(e,this),this.element.append(this.header.element),this.element.append(this.childElementContainer),this._setupHeaderPosition(),this._$validateClosability()}setSize(){var e,t,r,i,a,o=this._header.show&&(e=(t=this.layoutManager.config.dimensions)===null||t===void 0?void 0:t.headerHeight)!==null&&e!==void 0?e:0,s=((r=this.element.width())!==null&&r!==void 0?r:0)-(this._sided?o:0),l=((i=this.element.height())!==null&&i!==void 0?i:0)-(this._sided?0:o);for(this.childElementContainer.width(s),this.childElementContainer.height(l),a=0;a<this.contentItems.length;a++)this.contentItems[a].element.width(s).height(l);this.emit("resize"),this.emitBubblingEvent("stateChanged")}_$init(){if(this.isInitialised!==!0){this.header._attachWheelListener(),super._$init();for(var e=0;e<this.contentItems.length;e++)this.header.createTab(this.contentItems[e]),this.contentItems[e]._$hide();if(this.contentItems.length>0){var t=this.contentItems[this.config.activeItemIndex||0];if(!t)throw new Error("Configured activeItemIndex out of bounds");this.setActiveContentItem(t)}}}setActiveContentItem(e){if(this.contentItems.indexOf(e)===-1)throw new Error("contentItem is not a child of this stack");this._activeContentItem!==null&&this._activeContentItem._$hide(),this._activeContentItem=e,this.header.setActiveContentItem(e),e._$show(),this.emit("activeContentItemChanged",e),this.layoutManager.emit("activeContentItemChanged",e),this.emitBubblingEvent("stateChanged")}getActiveContentItem(){return this.header.activeContentItem}addChild(e,t){e=this.layoutManager._$normalizeContentItem(e,this),super.addChild(e,t),this.childElementContainer.append(e.element),this.header.createTab(e,t),this.setActiveContentItem(e),this.callDownwards("setSize"),this._$validateClosability(),this.emitBubblingEvent("stateChanged")}removeChild(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,r=this.contentItems.indexOf(e);super.removeChild(e,t),this.header.removeTab(e),this.header.activeContentItem===e&&(this.contentItems.length>0?this.setActiveContentItem(this.contentItems[Math.max(r-1,0)]):this._activeContentItem=null),this._$validateClosability(),this.emitBubblingEvent("stateChanged")}_$validateClosability(){for(var e=this.header._isClosable(),t=0,r=this.contentItems.length;t<r;t++){var i;if(!e)break;e=(i=this.contentItems[t].config.isClosable)!==null&&i!==void 0?i:!1}this.header._$setClosable(e)}_$destroy(){kt.prototype._$destroy.call(this),this.header._$destroy()}_$onDrop(e){if(this._dropSegment==="header"){this._resetHeaderDropZone(),this.addChild(e,this._dropIndex);return}if(this._dropSegment==="body"){this.addChild(e);return}var t=this._dropSegment==="top"||this._dropSegment==="bottom",r=this._dropSegment==="left"||this._dropSegment==="right",i=this._dropSegment==="top"||this._dropSegment==="left",a=t&&this.parent.isColumn||r&&this.parent.isRow,o=t?"column":"row",s=t?"height":"width";if(Ir(e)){var l=this.layoutManager.createContentItem({type:"stack",header:e.config.header||{}},this);l._$init(),l.addChild(e),e=l}if(a){var d,h=this.parent.contentItems.indexOf(this);this.parent.addChild(e,i?h:h+1,!0),this.config[s]=((d=this.config[s])!==null&&d!==void 0?d:0)*.5,e.config[s]=this.config[s],this.parent.callDownwards("setSize")}else{var c=this.layoutManager.createContentItem({type:o},this);this.parent.replaceChild(this,c),c.addChild(e,i?0:void 0,!0),c.addChild(this,i?void 0:0,!0),this.config[s]=50,e.config[s]=50,c.callDownwards("setSize")}}_$highlightDropZone(e,t){if(this._contentAreaDimensions)for(var[r,i]of Object.entries(this._contentAreaDimensions)){var a=i.hoverArea;if(a.x1<e&&a.x2>e&&a.y1<t&&a.y2>t){r==="header"?(this._dropSegment="header",this._highlightHeaderDropZone(e)):(this._resetHeaderDropZone(),this._highlightBodyDropZone(r));return}}}_$getArea(){if(this.element.is(":visible")===!1)return null;var e=super._$getArea(this.header.element),t=super._$getArea(this.childElementContainer);if(e==null||t==null)return null;var r=t.x2-t.x1,i=t.y2-t.y1;return this._contentAreaDimensions={header:{hoverArea:{x1:e.x1,y1:e.y1,x2:e.x2,y2:e.y2},highlightArea:{x1:e.x1,y1:e.y1,x2:e.x2,y2:e.y2}}},this._activeContentItem&&this._activeContentItem.isComponent===!1?e:this.contentItems.length===0?(this._contentAreaDimensions.body={hoverArea:{x1:t.x1,y1:t.y1,x2:t.x2,y2:t.y2},highlightArea:{x1:t.x1,y1:t.y1,x2:t.x2,y2:t.y2}},super._$getArea(this.element)):(this._contentAreaDimensions.left={hoverArea:{x1:t.x1,y1:t.y1,x2:t.x1+r*.25,y2:t.y2},highlightArea:{x1:t.x1,y1:t.y1,x2:t.x1+r*.5,y2:t.y2}},this._contentAreaDimensions.top={hoverArea:{x1:t.x1+r*.25,y1:t.y1,x2:t.x1+r*.75,y2:t.y1+i*.5},highlightArea:{x1:t.x1,y1:t.y1,x2:t.x2,y2:t.y1+i*.5}},this._contentAreaDimensions.right={hoverArea:{x1:t.x1+r*.75,y1:t.y1,x2:t.x2,y2:t.y2},highlightArea:{x1:t.x1+r*.5,y1:t.y1,x2:t.x2,y2:t.y2}},this._contentAreaDimensions.bottom={hoverArea:{x1:t.x1+r*.25,y1:t.y1+i*.5,x2:t.x1+r*.75,y2:t.y2},highlightArea:{x1:t.x1,y1:t.y1+i*.5,x2:t.x2,y2:t.y2}},super._$getArea(this.element))}_highlightHeaderDropZone(e){var t,r,i,a,o,s,l,d,h,c,m,v,f,g,p,C,b=this.header.tabs.length;if(b===0){var S,w,E,T,P,D,O,R,x=this.header.element.offset();(S=this.layoutManager.dropTargetIndicator)===null||S===void 0||S.highlightArea({x1:(w=x?.left)!==null&&w!==void 0?w:0,x2:((E=x?.left)!==null&&E!==void 0?E:0)+100,y1:(T=(P=this.header.element.offset())===null||P===void 0?void 0:P.top)!==null&&T!==void 0?T:0,y2:((D=(O=this.header.element.offset())===null||O===void 0?void 0:O.top)!==null&&D!==void 0?D:0)+((R=this.header.element.innerHeight())!==null&&R!==void 0?R:0)});return}var F=this.header.tabsContainer,_=(t=F.get(0))===null||t===void 0?void 0:t.getBoundingClientRect(),L=(r=this.layoutManager.tabDropPlaceholder.get(0))===null||r===void 0?void 0:r.getBoundingClientRect();if(!(!_||!L)){e<_.left?e=_.left+1:e>_.right&&(e=_.right-1);var M,U;if(!(L.left<e&&e<L.right)){for(var V=0;V<b;V++){var z;if(M=this.header.tabs[V].element,U=(z=M.get(0))===null||z===void 0?void 0:z.getBoundingClientRect(),U&&U.left<e&&e<U.right){this._dropIndex=V;break}}if(M&&U&&e<U.left+U.width*.5)M.before(this.layoutManager.tabDropPlaceholder);else if(M){var Q;this._dropIndex=Math.min(((Q=this._dropIndex)!==null&&Q!==void 0?Q:0)+1,b),M.after(this.layoutManager.tabDropPlaceholder)}}var Z=(i=(a=this.layoutManager.tabDropPlaceholder.offset())===null||a===void 0?void 0:a.left)!==null&&i!==void 0?i:0;Z=Math.max(Z,(o=(s=this.header.tabsContainer.offset())===null||s===void 0?void 0:s.left)!==null&&o!==void 0?o:0);var I=Z+((l=this.layoutManager.tabDropPlaceholder.width())!==null&&l!==void 0?l:0);I=Math.min(I,((d=(h=this.header.tabsContainer.offset())===null||h===void 0?void 0:h.left)!==null&&d!==void 0?d:0)+((c=this.header.tabsContainer.innerWidth())!==null&&c!==void 0?c:0)),(m=this.layoutManager.dropTargetIndicator)===null||m===void 0||m.highlightArea({x1:Z,x2:I,y1:(v=(f=this.header.element.offset())===null||f===void 0?void 0:f.top)!==null&&v!==void 0?v:0,y2:((g=(p=this.header.element.offset())===null||p===void 0?void 0:p.top)!==null&&g!==void 0?g:0)+((C=this.header.element.innerHeight())!==null&&C!==void 0?C:0)})}}_resetHeaderDropZone(){this.layoutManager.tabDropPlaceholder.remove()}_setupHeaderPosition(){var e=["right","left","bottom"].some(r=>r===this._header.show)?this._header.show:void 0;if(this.header.element.toggle(!!this._header.show),!!e&&(this._side=e,this._sided=["right","left"].indexOf(this._side.toString())>=0,this.element.removeClass("lm_left lm_right lm_bottom"),this._side&&this.element.addClass("lm_"+this._side),this.element.find(".lm_header").length&&this.childElementContainer)){var t=["right","bottom"].indexOf(this._side.toString())>=0?"before":"after";this.header.element[t](this.childElementContainer),this.callDownwards("setSize")}}_highlightBodyDropZone(e){var t,r,i=(t=this._contentAreaDimensions)===null||t===void 0||(r=t[e])===null||r===void 0?void 0:r.highlightArea;if(i){var a;(a=this.layoutManager.dropTargetIndicator)===null||a===void 0||a.highlightArea(i)}this._dropSegment=e}}const EO=Object.freeze(Object.defineProperty({__proto__:null,AbstractContentItem:kt,Component:CC,ContentItem:kt,Root:Zu,RowOrColumn:Ul,Stack:Ju,isComponent:Ir,isRoot:pC,isStack:hs},Symbol.toStringTag,{value:"Module"}));function Qn(n,e,t){return e=TO(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function TO(n){var e=PO(n,"string");return typeof e=="symbol"?e:String(e)}function PO(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{constructor(e,t){var r;Qn(this,"header",void 0),Qn(this,"contentItem",void 0),Qn(this,"element",me(Ds._template)),Qn(this,"titleElement",void 0),Qn(this,"closeElement",void 0),Qn(this,"isActive",!1),Qn(this,"_layoutManager",void 0),Qn(this,"_dragListener",void 0),this.header=e,this.contentItem=t,this.titleElement=this.element.find(".lm_title"),this.closeElement=this.element.find(".lm_close_tab"),this.closeElement[t.config.isClosable?"show":"hide"](),this.setTitle(t.config.title),this.contentItem.on("titleChanged",this.setTitle,this),this._layoutManager=this.contentItem.layoutManager,(r=this._layoutManager.config.settings)!==null&&r!==void 0&&r.reorderEnabled&&t.config.reorderEnabled&&(this._dragListener=new Ps(this.element),this._dragListener.on("dragStart",this._onDragStart,this),this.contentItem.on("destroy",this._dragListener.destroy,this._dragListener)),this._onTabClick=this._onTabClick.bind(this),this._onCloseClick=this._onCloseClick.bind(this),this._onTabContentFocusIn=this._onTabContentFocusIn.bind(this),this._onTabContentFocusOut=this._onTabContentFocusOut.bind(this),this.element.on("click",this._onTabClick),this.element.on("auxclick",this._onTabClick),this.contentItem.config.isClosable?(this.closeElement.on("click",this._onCloseClick),this.closeElement.on("mousedown",this._onCloseMousedown)):this.closeElement.remove(),this.contentItem.tab=this,this.contentItem.emit("tab",this),this.contentItem.layoutManager.emit("tabCreated",this),Ir(this.contentItem)&&(this.contentItem.container._contentElement.on("focusin",this._onTabContentFocusIn).on("focusout",this._onTabContentFocusOut),this.contentItem.container.tab=this,this.contentItem.container.emit("tab",this))}setTitle(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"";this.titleElement.html(e)}setActive(e){e!==this.isActive&&(this.isActive=e,e?this.element.addClass("lm_active"):this.element.removeClass("lm_active"))}_$destroy(){this.element.off("click",this._onTabClick),this.element.off("auxclick",this._onTabClick),this.closeElement.off("click",this._onCloseClick),Ir(this.contentItem)&&(this.contentItem.container._contentElement.off(),this.contentItem.container._contentElement[0].removeEventListener("click",this._onTabContentFocusIn,!0)),this._dragListener&&(this.contentItem.off("destroy",this._dragListener.destroy,this._dragListener),this._dragListener.off("dragStart",this._onDragStart),this._dragListener=void 0),this.element.remove()}_onDragStart(e,t){var r;(r=this.contentItem.parent)!==null&&r!==void 0&&r.isMaximised&&this.contentItem.parent.toggleMaximise(),this._dragListener&&new Ra(e,t,this._dragListener,this._layoutManager,this.contentItem,this.header.parent)}_onTabContentFocusIn(){me(".lm_focusin",this._layoutManager.root.element).removeClass("lm_focusin"),this.element.addClass("lm_focusin")}_onTabContentFocusOut(){Ir(this.contentItem)&&!this.contentItem.container._contentElement[0].contains(document.activeElement)&&this.element.removeClass("lm_focusin")}_onTabClick(e){if(!e||e.button===0){var t,r=this.header.parent.getActiveContentItem();this.contentItem!==r&&Ir(this.contentItem)?this.header.parent.setActiveContentItem(this.contentItem):Ir(this.contentItem)&&!this.contentItem.container._contentElement[0].contains(document.activeElement)&&this.contentItem.container._contentElement.focus(),Ir(this.contentItem)&&this.contentItem.container.emit("tabClicked",e),this.header._hideAdditionalTabsDropdown(),(t=this.element.get(0))===null||t===void 0||t.scrollIntoView({inline:"nearest"})}else e.button===1&&this.contentItem.config.isClosable&&this._onCloseClick(e)}_onCloseClick(e){e.stopPropagation(),Ir(this.contentItem)?this.contentItem.container.close():this.header.parent.removeChild(this.contentItem)}_onCloseMousedown(e){e.stopPropagation()}}Qn(Ds,"_template",['<li class="lm_tab">','<span class="lm_title_before"></span>','<span class="lm_title"></span>','<div class="lm_close_tab" aria-label="Close tab"></div>',"</li>"].join(""));function je(n,e,t){return e=OO(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function OO(n){var e=DO(n,"string");return typeof e=="symbol"?e:String(e)}function DO(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 li extends En{constructor(e,t){var r,i;super(),je(this,"layoutManager",void 0),je(this,"element",me(li._template)),je(this,"tabsContainer",void 0),je(this,"tabDropdownContainer",void 0),je(this,"tabDropdownSearch",void 0),je(this,"tabDropdownList",null),je(this,"controlsContainer",void 0),je(this,"parent",void 0),je(this,"tabs",[]),je(this,"activeContentItem",null),je(this,"closeButton",null),je(this,"tabDropdownButton",null),je(this,"tabNextButton",me(li._nextButtonTemplate)),je(this,"tabPreviousButton",me(li._previousButtonTemplate)),je(this,"holdTimer",null),je(this,"rAF",null),je(this,"CLICK_TIMEOUT",500),je(this,"START_SPEED",.01),je(this,"ACCELERATION",5e-4),je(this,"PADDING",10),je(this,"SCROLL_LEFT","left"),je(this,"SCROLL_RIGHT","right"),je(this,"isDraggingTab",!1),je(this,"isOverflowing",!1),je(this,"isDropdownShown",!1),je(this,"dropdownKeyIndex",0),je(this,"_lastVisibleTabIndex",-1),je(this,"_tabControlOffset",void 0),this.layoutManager=e,(r=this.layoutManager.config.settings)!==null&&r!==void 0&&r.selectionEnabled&&(this.element.addClass("lm_selectable"),this.element.on("click",this._onHeaderClick.bind(this))),this.tabsContainer=this.element.find(".lm_tabs"),this.tabDropdownContainer=this.element.find(".lm_tabdropdown_list"),this.tabDropdownContainer.hide(),this.tabDropdownSearch=this.element.find(".lm_tabdropdown_search input"),this._handleFilterInput=this._handleFilterInput.bind(this),this._handleFilterKeydown=this._handleFilterKeydown.bind(this),this.tabDropdownSearch.on("input",this._handleFilterInput),this.tabDropdownSearch.on("keydown",this._handleFilterKeydown),this.controlsContainer=this.element.find(".lm_controls"),this.parent=t,this.parent.on("resize",this._updateTabSizes,this),this._handleItemPickedUp=this._handleItemPickedUp.bind(this),this._handleItemDropped=this._handleItemDropped.bind(this),this._handleNextMouseEnter=this._handleNextMouseEnter.bind(this),this._handleNextMouseLeave=this._handleNextMouseLeave.bind(this),this._handlePreviousMouseEnter=this._handlePreviousMouseEnter.bind(this),this._handlePreviousMouseLeave=this._handlePreviousMouseLeave.bind(this),this._handleScrollRepeat=this._handleScrollRepeat.bind(this),this._handleNextButtonMouseDown=this._handleNextButtonMouseDown.bind(this),this._handlePreviousButtonMouseDown=this._handlePreviousButtonMouseDown.bind(this),this._handleScrollButtonMouseDown=this._handleScrollButtonMouseDown.bind(this),this._handleScrollButtonMouseUp=this._handleScrollButtonMouseUp.bind(this),this._handleScrollEvent=this._handleScrollEvent.bind(this),this.tabNextButton.on("mousedown",this._handleNextButtonMouseDown),this.tabPreviousButton.on("mousedown",this._handlePreviousButtonMouseDown),this.tabsContainer.on("scroll",this._handleScrollEvent),this.layoutManager.on("itemPickedUp",this._handleItemPickedUp),this.layoutManager.on("itemDropped",this._handleItemDropped),this.tabsContainer.before(this.tabPreviousButton),this.tabPreviousButton=this.tabPreviousButton.find(">:first-child"),this.tabPreviousButton.hide(),this._showAdditionalTabsDropdown=this._showAdditionalTabsDropdown.bind(this),this._hideAdditionalTabsDropdown=this._hideAdditionalTabsDropdown.bind(this),this._tabControlOffset=(i=this.layoutManager.config.settings)===null||i===void 0?void 0:i.tabControlOffset,this._createControls()}createTab(e,t){for(var r=0;r<this.tabs.length;r++)if(this.tabs[r].contentItem===e)return;var i=new Ds(this,e);if(this.tabs.length===0){this.tabs.push(i),this.tabsContainer.append(i.element);return}t===void 0&&(t=this.tabs.length),t>0?this.tabs[t-1].element.after(i.element):this.tabs[0].element.before(i.element),this.tabs.splice(t,0,i),this._updateTabSizes()}removeTab(e){for(var t=0;t<this.tabs.length;t++)if(this.tabs[t].contentItem===e){this.tabs[t]._$destroy(),this.tabs.splice(t,1);return}throw new Error("contentItem is not controlled by this header")}setActiveContentItem(e){for(var t,r,i,a=0;a<this.tabs.length;a++)i=this.tabs[a].contentItem===e,this.tabs[a].setActive(i),i===!0&&(this.activeContentItem=e,this.parent.config.activeItemIndex=a);(t=this.tabs[(r=this.parent.config.activeItemIndex)!==null&&r!==void 0?r:0].element.get(0))===null||t===void 0||t.scrollIntoView({inline:"nearest"}),this._hideAdditionalTabsDropdown(),this._updateTabSizes(),this.parent.emitBubblingEvent("stateChanged")}position(e){var t=this.parent._header.show;return t&&!this.parent._side&&(t="top"),e!==void 0&&this.parent._header.show!==e&&(this.parent._header.show=e,this.parent._setupHeaderPosition()),t}_attachWheelListener(){var e;(e=this.tabsContainer.get(0))===null||e===void 0||e.addEventListener("wheel",this._handleWheelEvent,{passive:!0})}_detachWheelListener(){var e;(e=this.tabsContainer.get(0))===null||e===void 0||e.removeEventListener("wheel",this._handleWheelEvent)}_handleWheelEvent(e){var t=e.currentTarget;if(t instanceof HTMLElement){var r=Math.abs(e.deltaY)>Math.abs(e.deltaX)?e.deltaY:e.deltaX;if(e.deltaMode===WheelEvent.DOM_DELTA_PAGE){var i;r*=(i=this.tabsContainer.innerWidth())!==null&&i!==void 0?i:1}else e.deltaMode===WheelEvent.DOM_DELTA_LINE&&(r*=100/3);t.scrollLeft+=Math.round(r)}}_handleScrollEvent(){this._checkScrollArrows()}_handleItemPickedUp(){this.isDraggingTab=!0,this.isDropdownShown&&this._hideAdditionalTabsDropdown(),this.controlsContainer.on("mouseenter",this._handleNextMouseEnter),this.tabPreviousButton.on("mouseenter",this._handlePreviousMouseEnter)}_handleItemDropped(){var e;this.isDraggingTab=!1,window.cancelAnimationFrame((e=this.rAF)!==null&&e!==void 0?e:-1),this.rAF=null,this.controlsContainer.off("mouseenter",this._handleNextMouseEnter),this.controlsContainer.off("mouseleave",this._handleNextMouseLeave),this.tabPreviousButton.off("mouseenter",this._handlePreviousMouseEnter),this.tabPreviousButton.off("mouseleave",this._handlePreviousMouseLeave)}_handleNextMouseEnter(){var e;this.controlsContainer.on("mouseleave",this._handleNextMouseLeave),this._handleScrollRepeat(this.SCROLL_RIGHT,(e=this.tabsContainer.scrollLeft())!==null&&e!==void 0?e:0)}_handlePreviousMouseEnter(){var e;this.tabPreviousButton.on("mouseleave",this._handlePreviousMouseLeave),this._handleScrollRepeat(this.SCROLL_LEFT,(e=this.tabsContainer.scrollLeft())!==null&&e!==void 0?e:0)}_handleNextMouseLeave(){var e;window.cancelAnimationFrame((e=this.rAF)!==null&&e!==void 0?e:-1),this.rAF=null,this.controlsContainer.off("mouseleave",this._handleNextMouseLeave)}_handlePreviousMouseLeave(){var e;window.cancelAnimationFrame((e=this.rAF)!==null&&e!==void 0?e:-1),this.rAF=null,this.tabPreviousButton.off("mouseleave",this._handlePreviousMouseLeave)}_handleNextButtonMouseDown(){for(var e,t=0;t<this.tabs.length;t+=1){var r,i,a,o,s;if(((r=(i=this.tabs[t].element.get(0))===null||i===void 0?void 0:i.offsetLeft)!==null&&r!==void 0?r:0)>((a=(o=this.tabsContainer.get(0))===null||o===void 0?void 0:o.offsetWidth)!==null&&a!==void 0?a:0)+((s=this.tabsContainer.scrollLeft())!==null&&s!==void 0?s:0)){e=this.tabs[t].element.get(0);break}}if(e)e.scrollIntoView({behavior:"smooth",inline:"nearest"}),this._handleScrollButtonMouseDown(this.SCROLL_RIGHT);else{var l=this.tabsContainer.get(0);if(l){var d,h;l.scrollLeft=(d=(h=this.tabsContainer.get(0))===null||h===void 0?void 0:h.scrollWidth)!==null&&d!==void 0?d:0}}}_handlePreviousButtonMouseDown(){for(var e,t=this.tabs.length-1;t>=0;t-=1){var r,i,a;if(((r=(i=this.tabs[t].element.get(0))===null||i===void 0?void 0:i.offsetLeft)!==null&&r!==void 0?r:0)<((a=this.tabsContainer.scrollLeft())!==null&&a!==void 0?a:0)){e=this.tabs[t].element.get(0);break}}if(e)e.scrollIntoView({behavior:"smooth",inline:"start"}),this._handleScrollButtonMouseDown(this.SCROLL_LEFT);else{var o=this.tabsContainer.get(0);o&&(o.scrollLeft=0)}}_handleScrollButtonMouseDown(e){this.holdTimer=window.setTimeout(()=>{var t;this._handleScrollRepeat(e,(t=this.tabsContainer.scrollLeft())!==null&&t!==void 0?t:0,100)},this.CLICK_TIMEOUT),window.addEventListener("mouseup",this._handleScrollButtonMouseUp)}_handleScrollButtonMouseUp(){var e,t;clearTimeout((e=this.holdTimer)!==null&&e!==void 0?e:-1),this.holdTimer=null,cancelAnimationFrame((t=this.rAF)!==null&&t!==void 0?t:-1),this.rAF=null,window.removeEventListener("mouseup",this._handleScrollButtonMouseUp)}_checkScrollArrows(){var e,t,r;this.tabsContainer.scrollLeft()===0?this.tabPreviousButton.first().prop("disabled",!0):((e=this.tabsContainer.scrollLeft())!==null&&e!==void 0?e:0)+((t=this.tabsContainer.innerWidth())!==null&&t!==void 0?t:0)===((r=this.tabsContainer.get(0))===null||r===void 0?void 0:r.scrollWidth)?this.tabNextButton.prop("disabled",!0):(this.tabNextButton.prop("disabled",!1),this.tabPreviousButton.first().prop("disabled",!1))}_handleScrollRepeat(e,t){var r,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,a=arguments.length>3?arguments[3]:void 0,o=this.tabsContainer.get(0);if(o){var s=o.getBoundingClientRect();if(e===this.SCROLL_LEFT){if(this.tabsContainer.scrollLeft(t-i),this.isDraggingTab&&this.parent._highlightHeaderDropZone(s.left-1),this.tabsContainer.scrollLeft()===0){this._checkScrollArrows();return}}else if(e===this.SCROLL_RIGHT){var l,d;if(this.tabsContainer.scrollLeft(t+i),this.isDraggingTab&&this.parent._highlightHeaderDropZone(s.right+1),((l=this.tabsContainer.scrollLeft())!==null&&l!==void 0?l:0)+((d=this.tabsContainer.innerWidth())!==null&&d!==void 0?d:0)===o.scrollWidth){this._checkScrollArrows();return}}window.cancelAnimationFrame((r=this.rAF)!==null&&r!==void 0?r:-1),this.rAF=window.requestAnimationFrame(h=>{var c,m,v=a||h,f=h-v,g=this.START_SPEED*f+.5*this.ACCELERATION*(f*f);g=Math.min(g,(c=(m=this.tabsContainer.get(0))===null||m===void 0?void 0:m.scrollWidth)!==null&&c!==void 0?c:1/0),this._handleScrollRepeat(e,t,g,v)})}}_$setClosable(e){return this.closeButton&&this._isClosable()?(this.closeButton.element[e?"show":"hide"](),!0):!1}_$destroy(){this.emit("destroy",this);for(var e=0;e<this.tabs.length;e++)this.tabs[e]._$destroy();this._detachWheelListener(),this._handleItemDropped(),me(document).off("mouseup",this._hideAdditionalTabsDropdown),this.tabDropdownSearch.off("input",this._handleFilterInput),this.tabDropdownSearch.off("keydown",this._handleFilterKeydown),this.element.remove()}_getHeaderSetting(e){if(e in this.parent._header)return this.parent._header[e]}_createControls(){var e,t,r,i,a;if(a=this.layoutManager.config.labels.tabDropdown,this.layoutManager.config.labels.tabNextLabel,this.layoutManager.config.labels.tabPreviousLabel,this.tabDropdownButton=new Yo(this,a,"lm_tabdropdown",this._showAdditionalTabsDropdown),this.tabDropdownButton.element.hide(),this.controlsContainer.prepend(this.tabNextButton),this.tabNextButton.hide(),this._getHeaderSetting("popout")&&(t=this._onPopoutClick.bind(this),r=this._getHeaderSetting("popout"),new Yo(this,r,"lm_popout",t)),this._getHeaderSetting("maximise")){i=this.parent.toggleMaximise.bind(this.parent);var o=this._getHeaderSetting("maximise"),s=this._getHeaderSetting("minimise"),l=new Yo(this,o,"lm_maximise",i);this.parent.on("maximised",function(){l.element.attr("title",s??"")}),this.parent.on("minimised",function(){l.element.attr("title",o??"")})}this._isClosable()&&(e=this.parent.remove.bind(this.parent),r=this._getHeaderSetting("close"),this.closeButton=new Yo(this,r,"lm_close",e))}_showAdditionalTabsDropdown(){if(this.isDropdownShown){this._hideAdditionalTabsDropdown();return}this.tabDropdownList=this.tabsContainer.clone(!0).appendTo(this.tabDropdownContainer).children().removeClass("lm_active"),me(document.body).append(this.tabDropdownContainer),this.tabDropdownContainer.show(),this.isDropdownShown=!0,this.element.addClass("lm_dropdown_open"),this.tabDropdownSearch.val("").focus(),this.dropdownKeyIndex=0,this.tabDropdownList.eq(this.dropdownKeyIndex).addClass("lm_keyboard_active"),me(document).on("mousedown",this._hideAdditionalTabsDropdown),this._updateAdditionalTabsDropdown()}_handleFilterKeydown(e){if(e.key==="Escape"){this._hideAdditionalTabsDropdown();return}if(this.dropdownKeyIndex===-1)return;if(e.key==="Enter"||e.key===" "){this._hideAdditionalTabsDropdown(),this.tabs[this.dropdownKeyIndex]._onTabClick();return}function t(s,l,d){if(d==null||d.length<2)return-1;for(var h=(s+l+d.length)%d.length;h!==s;){if(d.eq(h).css("display")!=="none")return h;h=(h+l+d.length)%d.length}return s}if(e.key==="ArrowDown"||e.key==="Tab"&&e.shiftKey===!1){var r,i;e.preventDefault(),(r=this.tabDropdownList)===null||r===void 0||r.eq(this.dropdownKeyIndex).removeClass("lm_keyboard_active"),this.dropdownKeyIndex=t(this.dropdownKeyIndex,1,this.tabDropdownList),(i=this.tabDropdownList)===null||i===void 0||i.eq(this.dropdownKeyIndex).addClass("lm_keyboard_active")}else if(e.key==="ArrowUp"||e.key==="Tab"){var a,o;e.preventDefault(),(a=this.tabDropdownList)===null||a===void 0||a.eq(this.dropdownKeyIndex).removeClass("lm_keyboard_active"),this.dropdownKeyIndex=t(this.dropdownKeyIndex,-1,this.tabDropdownList),(o=this.tabDropdownList)===null||o===void 0||o.eq(this.dropdownKeyIndex).addClass("lm_keyboard_active")}}_handleFilterInput(e){if(this.tabDropdownList!=null){this.tabDropdownList.eq(this.dropdownKeyIndex).removeClass("lm_keyboard_active"),this.dropdownKeyIndex=-1;for(var t=0;t<this.tabDropdownList.length;t++){var r,i;((r=(i=this.tabs[t].contentItem.config.title)===null||i===void 0?void 0:i.toLowerCase().indexOf(e.target.value.toLowerCase()))!==null&&r!==void 0?r:-1)!==-1?(this.tabDropdownList.eq(t).css("display",""),this.dropdownKeyIndex===-1&&(this.dropdownKeyIndex=t)):this.tabDropdownList.eq(t).css("display","none")}this.dropdownKeyIndex!==-1&&this.tabDropdownList.eq(this.dropdownKeyIndex).addClass("lm_keyboard_active")}}_hideAdditionalTabsDropdown(e){var t,r;this.isDropdownShown&&(e&&(t=this.tabDropdownContainer.get(0))!==null&&t!==void 0&&t.contains(e.target)||e&&((r=this.tabDropdownButton)===null||r===void 0?void 0:r.element.get(0))===e.target||(this.element.removeClass("lm_dropdown_open"),this.tabDropdownContainer.hide(),this.isDropdownShown=!1,this.element.append(this.tabDropdownContainer),this.tabDropdownContainer.find(".lm_tabs").remove(),me(document).off("mousedown",this._hideAdditionalTabsDropdown)))}_updateAdditionalTabsDropdown(){var e,t,r,i;if(this.isDropdownShown&&!(!this.tabDropdownList||this.tabDropdownList.length==0)){var a=(e=(t=this.tabDropdownContainer.get(0))===null||t===void 0?void 0:t.scrollHeight)!==null&&e!==void 0?e:0;if(a!==0){var o=this.tabDropdownContainer[0].getBoundingClientRect(),s=(r=me(window).height())!==null&&r!==void 0?r:0,l=(i=me(window).width())!==null&&i!==void 0?i:0;if(this.tabDropdownButton){var d=this.tabDropdownButton.element[0].getBoundingClientRect(),h=a<s-d.bottom,c=!h&&d.bottom>s*.6,m=Math.min(d.left+(c?d.width:0),l-o.width-this.PADDING),v=c?Math.max(d.top-a,this.PADDING):d.bottom,f=s-v-this.PADDING;this.tabDropdownContainer.css({"max-height":f,top:v,left:m})}}}}_isClosable(){return!!(this.parent.config.isClosable&&this.layoutManager.config.settings.showCloseIcon)}_onPopoutClick(){if(this.layoutManager.config.settings.popoutWholeStack===!0)this.parent.popout();else{var e;(e=this.activeContentItem)===null||e===void 0||e.popout()}}_onHeaderClick(e){e.target===this.element[0]&&this.parent.select()}_updateTabSizes(){if(this.tabs.length!==0){var e=this.tabsContainer.get(0);if(this.isDropdownShown&&this._updateAdditionalTabsDropdown(),!!e){if(!this.isOverflowing&&e.scrollWidth>e.clientWidth){var t;(t=this.tabDropdownButton)===null||t===void 0||t.element.show(),this.tabNextButton.show(),this.tabPreviousButton.show(),this.isOverflowing=!0}else if(this.isOverflowing&&e.scrollWidth<=e.clientWidth){var r;(r=this.tabDropdownButton)===null||r===void 0||r.element.hide(),this.tabNextButton.hide(),this.tabPreviousButton.hide(),this.isOverflowing=!1}this.isOverflowing&&this._checkScrollArrows()}}}}je(li,"_template",['<div class="lm_header">','<ul class="lm_tabs"></ul>','<ul class="lm_controls"></ul>','<ul class="lm_tabdropdown_list">','<li class="lm_tabdropdown_search"><input type="text" placeholder="Find tab..."></li>',"</ul>","</div>"].join(""));je(li,"_previousButtonTemplate",['<ul class="lm_controls">','<li class="lm_tabpreviousbutton"></li>',"</ul>"].join(""));je(li,"_nextButtonTemplate",['<li class="lm_tabnextbutton"></li>'].join(""));function _o(n,e,t){return e=RO(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function RO(n){var e=NO(n,"string");return typeof e=="symbol"?e:String(e)}function NO(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{constructor(e,t,r){_o(this,"_isVertical",void 0),_o(this,"_size",void 0),_o(this,"_grabSize",void 0),_o(this,"_dragListener",void 0),_o(this,"element",void 0),this._isVertical=e,this._size=t,this._grabSize=r<t?t:r,this.element=this._createElement(),this._dragListener=new Ps(this.element)}on(e,t,r){var i;(i=this._dragListener)===null||i===void 0||i.on(e,t,r)}_$destroy(){var e;(e=this._dragListener)===null||e===void 0||e.destroy(),this._dragListener=null,this.element.remove()}_createElement(){var e=me('<div class="lm_drag_handle"></div>'),t=me('<div class="lm_splitter"></div>');t.append(e);var r=this._grabSize-this._size,i=r/2;return this._isVertical?(e.css("top",-i),e.css("height",this._size+r),t.addClass("lm_vertical"),t.height(this._size)):(e.css("left",-i),e.css("width",this._size+r),t.addClass("lm_horizontal"),t.width(this._size)),t}}const FO=Object.freeze(Object.defineProperty({__proto__:null,BrowserPopout:mC,DragProxy:Ra,DragSource:vC,DragSourceFromEvent:fC,DropTargetIndicator:Os,Header:li,HeaderButton:Yo,Splitter:bC,Tab:Ds},Symbol.toStringTag,{value:"Module"}));var IO={config:RP,container:xP,controls:FO,errors:cO,items:EO,utils:qP};const _O=IO;function Ym(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 ur(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ym(Object(t),!0).forEach(function(r){Ve(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ym(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Ve(n,e,t){return e=xO(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function xO(n){var e=MO(n,"string");return typeof e=="symbol"?e:String(e)}function MO(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 SC extends En{static minifyConfig(e){return Vh(e)}static unminifyConfig(e){return qu(e)}constructor(e,t){super(),Ve(this,"isInitialised",!1),Ve(this,"_isFullPage",!1),Ve(this,"_resizeTimeoutId",void 0),Ve(this,"_components",{"lm-react-component":hC}),Ve(this,"_fallbackComponent",void 0),Ve(this,"_itemAreas",[]),Ve(this,"_maximisedItem",null),Ve(this,"_maximisePlaceholder",me('<div class="lm_maximise_place"></div>')),Ve(this,"_creationTimeoutPassed",!1),Ve(this,"_subWindowsCreated",!1),Ve(this,"_dragSources",[]),Ve(this,"_updatingColumnsResponsive",!1),Ve(this,"_firstLoad",!0),Ve(this,"_reactChildMap",new Map),Ve(this,"_reactChildren",null),Ve(this,"width",null),Ve(this,"height",null),Ve(this,"root",void 0),Ve(this,"openPopouts",[]),Ve(this,"selectedItem",null),Ve(this,"isSubWindow",!1),Ve(this,"eventHub",new cC(this)),Ve(this,"config",void 0),Ve(this,"container",void 0),Ve(this,"_originalContainer",void 0),Ve(this,"dropTargetIndicator",null),Ve(this,"tabDropPlaceholder",me('<div class="lm_drop_tab_placeholder"></div>')),Ve(this,"_typeToItem",void 0),this._onResize=this._onResize.bind(this),this._onUnload=this._onUnload.bind(this),this._windowBlur=this._windowBlur.bind(this),this._windowFocus=this._windowFocus.bind(this),this.config=this._createConfig(e),this._originalContainer=t,this.container=this._getContainer(),this.isSubWindow&&me("body").css("visibility","hidden"),this._typeToItem={column:Ul.bind(this,!0),row:Ul.bind(this,!1),stack:Ju,component:CC}}registerComponent(e,t){if(typeof t!="function"&&(t==null||t.render==null||typeof t.render!="function"))throw new Error("Please register a constructor function");if(this._components[e]!==void 0)throw new Error("Component "+e+" is already registered");this._components[e]=t;var r=()=>{if(this._components[e]===void 0)throw new Error("Component "+e+" is not registered");delete this._components[e]};return r}setFallbackComponent(e){this._fallbackComponent=e}toConfig(e){if(this.isInitialised===!1)throw new Error("Can't create config, layout not yet initialised");if(e&&!(e instanceof kt))throw new Error("Root must be a ContentItem");var t={settings:ur({},this.config.settings),dimensions:ur({},this.config.dimensions),labels:ur({},this.config.labels),content:[]},r=function a(o,s){for(var l in s.config)l!=="content"&&(o[l]=s.config[l]);if(o.componentName==="lm-react-component"&&(o.type="react-component"),s.contentItems.length){o.content=[];for(var d=0;d<s.contentItems.length;d++)o.content[d]={},a(o.content[d],s.contentItems[d])}};e?r(t,{contentItems:[e]}):r(t,this.root),this._$reconcilePopoutWindows(),t.openPopouts=[];for(var i=0;i<this.openPopouts.length;i++)t.openPopouts.push(this.openPopouts[i].toConfig());return t.maximisedItemId=this._maximisedItem?"__glMaximised":void 0,t}getComponent(e){return this._components[e]}getFallbackComponent(){return this._fallbackComponent}init(){if(this._subWindowsCreated===!1&&(this._createSubWindows(),this._subWindowsCreated=!0),document.readyState==="loading"||document.body===null){me(document).ready(this.init.bind(this));return}if(this.isSubWindow===!0&&this._creationTimeoutPassed===!1){setTimeout(this.init.bind(this),7),this._creationTimeoutPassed=!0;return}this.isSubWindow===!0&&this._adjustToWindowMode(),this._setContainer(),this.dropTargetIndicator=new Os,this.updateSize(),this._create(this.config),this._bindEvents(),this.isInitialised=!0,this._adjustColumnsResponsive(),this.emit("initialised")}addReactChild(e,t){this._reactChildMap.set(e,t),this._reactChildren=[...this._reactChildMap.values()],this.emit("reactChildrenChanged")}removeReactChild(e,t){var r=this._reactChildMap.get(e);r===t&&(this._reactChildMap.delete(e),this._reactChildren=[...this._reactChildMap.values()],this.emit("reactChildrenChanged"))}getReactChildren(){return this._reactChildren}updateSize(e,t){var r,i;if(this.width=(r=e??this.container.width())!==null&&r!==void 0?r:0,this.height=(i=t??this.container.height())!==null&&i!==void 0?i:0,this.isInitialised===!0){if(this.root.callDownwards("setSize",[this.width,this.height]),this._maximisedItem){var a,o;this._maximisedItem.element.width((a=this.container.width())!==null&&a!==void 0?a:0),this._maximisedItem.element.height((o=this.container.height())!==null&&o!==void 0?o:0),this._maximisedItem.callDownwards("setSize")}this._adjustColumnsResponsive()}}destroy(){var e;this.isInitialised===!1||!this.root||(this._onUnload(),me(window).off("resize",this._onResize),me(window).off("unload beforeunload",this._onUnload),me(window).off("blur.lm").off("focus.lm"),this.root.callDownwards("_$destroy",[],!0),this.root.contentItems=[],this.tabDropPlaceholder.remove(),(e=this.dropTargetIndicator)===null||e===void 0||e.destroy(),this.eventHub.destroy(),this._dragSources.forEach(function(t){t._dragListener.destroy()}),this._dragSources=[])}createContentItem(e,t){var r,i;if(typeof e.type!="string")throw new pa("Missing parameter 'type'",e);if(e.type==="react-component"&&(e.type="component",e.componentName="lm-react-component"),!this._typeToItem[e.type])throw r="Unknown type '"+e.type+"'. Valid types are "+Object.keys(this._typeToItem).join(","),new pa(r);return e.type==="component"&&!(t instanceof Ju)&&t&&!(this.isSubWindow===!0&&t instanceof Zu)&&(e={type:"stack",width:e.width,height:e.height,content:[e]}),i=new this._typeToItem[e.type](this,e,t),i}createPopout(e,t,r,i){var a=[],o=e instanceof kt,s=this;if(o){var l;a=this.toConfig(e).content,r=Uh();for(var d=e.parent,h=e;((c=d)===null||c===void 0?void 0:c.contentItems.length)===1&&!d.isRoot;){var c;h=d,d=d.parent}if((l=d)===null||l===void 0||l.addId(r),i==null||Number.isNaN(i)){var m;i=(m=d)===null||m===void 0?void 0:m.contentItems.indexOf(h)}}else e instanceof Array?a=e:a=[e];if(!t&&o){var v,f,g,p=window.screenX||window.screenLeft,C=window.screenY||window.screenTop,b=(v=e.element.offset())!==null&&v!==void 0?v:{left:0,top:0};t={left:p+b.left,top:C+b.top,width:(f=e.element.width())!==null&&f!==void 0?f:0,height:(g=e.element.height())!==null&&g!==void 0?g:0}}if(!t&&!o&&(t={left:window.screenX||window.screenLeft+20,top:window.screenY||window.screenTop+20,width:500,height:309}),o&&e.remove(),!(!t||!r||i===void 0)){var S=new mC(a,t,r,i,this);return S.on("initialised",function(){s.emit("windowOpened",S)}),S.on("closed",function(){s._$reconcilePopoutWindows()}),this.openPopouts.push(S),S}}createDragSource(e,t){this.config.settings.constrainDragToContainer=!1;var r=new vC(e,t,this);return this._dragSources.push(r),r}createDragSourceFromEvent(e,t){return this.config.settings.constrainDragToContainer=!1,new fC(e,this,t)}selectItem(e,t){if(this.config.settings.selectionEnabled!==!0)throw new Error("Please set selectionEnabled to true to use this feature");e!==this.selectedItem&&(this.selectedItem!==null&&this.selectedItem.deselect(),e&&t!==!0&&e.select(),this.selectedItem=e,this.emit("selectionChanged",e))}_$maximiseItem(e){var t,r;this._maximisedItem!==null&&this._$minimiseItem(this._maximisedItem),this._maximisedItem=e,this._maximisedItem.addId("__glMaximised"),e.element.addClass("lm_maximised"),e.element.after(this._maximisePlaceholder),this.root.element.prepend(e.element),e.element.width((t=this.container.width())!==null&&t!==void 0?t:0),e.element.height((r=this.container.height())!==null&&r!==void 0?r:0),e.callDownwards("setSize"),this._maximisedItem.emit("maximised"),this.emit("stateChanged")}_$minimiseItem(e){var t;e.element.removeClass("lm_maximised"),e.removeId("__glMaximised"),this._maximisePlaceholder.after(e.element),this._maximisePlaceholder.remove(),(t=e.parent)===null||t===void 0||t.callDownwards("setSize"),this._maximisedItem=null,e.emit("minimised"),this.emit("stateChanged")}_$closeWindow(){window.setTimeout(function(){window.close()},1)}_$getArea(e,t){for(var r=1/0,i=null,a=0;a<this._itemAreas.length;a++){var o=this._itemAreas[a];e>o.x1&&e<o.x2&&t>o.y1&&t<o.y2&&r>o.surface&&(r=o.surface,i=o)}return i}_$createRootItemAreas(){var e=50,t=ur({},this.root._$getArea()),r=[ur(ur({},t),{},{side:"left",x2:t.x1+e}),ur(ur({},t),{},{side:"right",x1:t.x2-e}),ur(ur({},t),{},{side:"top",y2:t.y1+e}),ur(ur({},t),{},{side:"bottom",y1:t.y2-e})];r.forEach(i=>{i.surface=(i.x2-i.x1)*(i.y2-i.y1)}),this._itemAreas.push(...r)}_$calculateItemAreas(){var e=this._getAllContentItems();if(this._itemAreas=[],e.length===1){this._itemAreas.push(this.root._$getArea());return}this._$createRootItemAreas();for(var t=0;t<e.length;t++){var r=e[t];if(hs(r)){var i=r._$getArea();if(i!==null)if(i instanceof Array)this._itemAreas=this._itemAreas.concat(i);else{var a;this._itemAreas.push(i);var o=ur(ur({},i),(a=i.contentItem._contentAreaDimensions)===null||a===void 0?void 0:a.header.highlightArea);o.surface=(o.x2-o.x1)*(o.y2-o.y1),this._itemAreas.push(o)}}}}_$normalizeContentItem(e,t){if(!e)throw new Error("No content item defined");if(typeof e=="function"&&(e=e()),e instanceof kt)return e;if(me.isPlainObject(e)&&e.type){var r=this.createContentItem(e,t);return r.callDownwards("_$init"),r}else throw new Error("Invalid contentItem")}_$reconcilePopoutWindows(){for(var e=[],t=0;t<this.openPopouts.length;t++){var r;((r=this.openPopouts[t].getWindow())===null||r===void 0?void 0:r.closed)===!1?e.push(this.openPopouts[t]):this.emit("windowClosed",this.openPopouts[t])}this.openPopouts.length!==e.length&&(this.emit("stateChanged"),this.openPopouts=e)}_getAllContentItems(){var e=[],t=r=>{if(e.push(r),r.contentItems instanceof Array)for(var i=0;i<r.contentItems.length;i++)t(r.contentItems[i])};return t(this.root),e}_bindEvents(){this._isFullPage&&me(window).resize(this._onResize),me(window).on("unload beforeunload",this._onUnload).on("blur.lm",this._windowBlur).on("focus.lm",this._windowFocus)}_windowBlur(){this.root.element.addClass("lm_window_blur")}_windowFocus(){this.root.element.removeClass("lm_window_blur")}_onResize(){clearTimeout(this._resizeTimeoutId),this._resizeTimeoutId=window.setTimeout(this.updateSize.bind(this),100)}_createConfig(e){var t,r=uC("gl-window");r&&(this.isSubWindow=!0,e=JSON.parse(localStorage.getItem(r)||"{}"),e=qu(e),localStorage.removeItem(r)),e=me.extend(!0,{},oC,e);var i=function a(o){for(var s in o){var l=o[s];s!=="props"&&typeof l=="object"&&l!=null?a(l):s==="type"&&l==="react-component"&&(o.type="component",o.componentName="lm-react-component")}};return i(e),((t=e.settings)===null||t===void 0?void 0:t.hasHeaders)===!1&&(e.dimensions.headerHeight=0),e}_adjustToWindowMode(){var e,t=me('<div class="lm_popin" title="'+this.config.labels.popin+'"><div class="lm_icon"></div><div class="lm_bg"></div></div>');t.click(()=>{this.emit("popIn")}),document.title=Bh((e=this.config.content[0].title)!==null&&e!==void 0?e:""),me("head").append(me("body link, body style, template, .gl_keep")),this.container=me("body").html("").css("visibility","visible").append(t),document.body.offsetHeight,window.__glInstance=this}_createSubWindows(){if(this.config.openPopouts)for(var e=0;e<this.config.openPopouts.length;e++){var t=this.config.openPopouts[e];this.createPopout(t.content,t.dimensions,t.parentId,t.indexInParent)}}_getContainer(){var e=this._originalContainer?me(this._originalContainer):me("body");if(e.length===0)throw new Error("GoldenLayout container not found");if(e.length>1)throw new Error("GoldenLayout more than one container element specified");return e}_setContainer(){var e=this._getContainer();e[0]===document.body&&(this._isFullPage=!0,me("html, body").css({height:"100%",margin:0,padding:0,overflow:"hidden"})),this.container=e}_create(e){var t;if(!(e.content instanceof Array))throw e.content===void 0?t="Missing setting 'content' on top level of configuration":t="Configuration parameter 'content' must be an array",new pa(t,e);if(e.content.length>1)throw t="Top level content can't contain more then one element.",new pa(t,e);this.root=new Zu(this,{content:e.content},this.container),this.root.callDownwards("_$init"),e.maximisedItemId==="__glMaximised"&&this.root.getItemsById(e.maximisedItemId)[0].toggleMaximise()}_onUnload(){if(this.config.settings.closePopoutsOnUnload===!0)for(var e=0;e<this.openPopouts.length;e++)this.openPopouts[e].close()}_adjustColumnsResponsive(){if(!this._useResponsiveLayout()||this._updatingColumnsResponsive||!this.config.dimensions||!this.config.dimensions.minItemWidth||this.root.contentItems.length===0||!this.root.contentItems[0].isRow){this._firstLoad=!1;return}this._firstLoad=!1;var e=this.root.contentItems[0].contentItems.length;if(!(e<=1)){var t=this.config.dimensions.minItemWidth,r=e*t;if(!(this.width==null||r<=this.width)){this._updatingColumnsResponsive=!0;for(var i=Math.max(Math.floor(this.width/t),1),a=e-i,o=this.root.contentItems[0],s=this._findAllStackContainers()[0],l=0;l<a;l++){var d=o.contentItems[o.contentItems.length-1];this._addChildContentItemsToContainer(s,d)}this._updatingColumnsResponsive=!1}}}_useResponsiveLayout(){return this.config.settings&&(this.config.settings.responsiveMode=="always"||this.config.settings.responsiveMode=="onload"&&this._firstLoad)}_addChildContentItemsToContainer(e,t){t.type==="stack"?t.contentItems.forEach(function(r){e.addChild(r),t.removeChild(r,!0)}):t.contentItems.forEach(r=>{this._addChildContentItemsToContainer(e,r)})}_findAllStackContainers(){var e=[];return this._findAllStackContainersRecursive(e,this.root),e}_findAllStackContainersRecursive(e,t){t.contentItems.forEach(r=>{hs(r)?e.push(r):r.isComponent||this._findAllStackContainersRecursive(e,r)})}}Ve(SC,"__lm",_O);const wC=SC,AO="_lm_dragging_1q18t_1",LO="_lm_goldenlayout_1q18t_1",kO="_lm_header_1q18t_1",jO="_lm_controls_1q18t_1",HO="_lm_tabpreviousbutton_1q18t_1",$O="_lm_tabnextbutton_1q18t_1",UO="_lm_tab_1q18t_1",BO="_lm_active_1q18t_1",VO="_lm_close_tab_1q18t_1",GO="_lm_content_1q18t_1",WO="_lm_dragProxy_1q18t_1",zO="_lm_dropTargetIndicator_1q18t_1",KO="_march_1q18t_1",YO="_lm_inner_1q18t_1",qO="_lm_splitter_1q18t_1",XO="_lm_selectable_1q18t_1",QO="_lm_tabdropdown_list_1q18t_1",ZO="_lm_title_1q18t_1",JO="_lm_title_before_1q18t_1",eD="_lm_selected_1q18t_1",tD="_lm_focusin_1q18t_1",rD="_lm_window_blur_1q18t_1",nD="_lm_popout_1q18t_1",iD="_lm_maximise_1q18t_1",aD="_lm_tabdropdown_1q18t_1",oD="_lm_close_1q18t_1",sD="_lm_tabdropdown_search_1q18t_1",lD="_lm_tabs_1q18t_1",dD="_lm_keyboard_active_1q18t_1",uD="_lm_maximised_1q18t_1",hD="_lm_items_1q18t_1",qm={"tab-height":"28px","drag-border-width":"5px",lm_dragging:AO,lm_goldenlayout:LO,lm_header:kO,lm_controls:jO,lm_tabpreviousbutton:HO,lm_tabnextbutton:$O,lm_tab:UO,lm_active:BO,lm_close_tab:VO,lm_content:GO,lm_dragProxy:WO,lm_dropTargetIndicator:zO,march:KO,lm_inner:YO,lm_splitter:qO,lm_selectable:XO,lm_tabdropdown_list:QO,lm_title:ZO,lm_title_before:JO,lm_selected:eD,lm_focusin:tD,lm_window_blur:rD,lm_popout:nD,lm_maximise:iD,lm_tabdropdown:aD,lm_close:oD,lm_tabdropdown_search:sD,lm_tabs:lD,lm_keyboard_active:dD,lm_maximised:uD,lm_items:hD},Xm=Object.freeze({tabHeight:parseInt(qm["tab-height"],10),dragBorderWidth:parseInt(qm["drag-border-width"],10)});function Qm(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 zn(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Qm(Object(t),!0).forEach(function(r){yC(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Qm(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function yC(n,e,t){return e=cD(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function cD(n){var e=mD(n,"string");return typeof e=="symbol"?e:String(e)}function mD(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 Ei=ae.module("LayoutUtils");function EC(n){return n.componentName!==void 0}function Ka(n){var e=n;return(EC(n)&&n.componentName==="lm-react-component"||n.type==="react-component")&&e.component!==void 0}function Ks(n){return n.focus!==void 0}function Zm(n){return n.type==="stack"}class X{static activateTab(e,t){var r=X.getStackForRoot(e,t,!1);if(!r){Ei.error("Could not find stack for config",t);return}var i=X.getContentItemInStack(r,t);i&&r.setActiveContentItem(i)}static isActiveTab(e,t){var r=X.getStackForRoot(e,t,!1);if(!r)return Ei.error("Could not find stack for config",t),!1;var i=X.getContentItemInStack(r,t),a=r.getActiveContentItem();return a===i}static addStack(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,r=t?"column":"row";if(pC(e)){(e.contentItems==null||e.contentItems.length===0)&&e.addChild({type:r});var i=e.contentItems[0],a=t?i.isColumn:i.isRow;if(!a){e.removeChild(i,!0),e.addChild({type:r});var o=document.activeElement;e.contentItems[0].addChild(i),o&&o.focus!=null&&o.focus()}return this.addStack(e.contentItems[0],t)}if(e.contentItems.length<2)return e.addChild({type:"stack"}),e.contentItems[e.contentItems.length-1];var s=e.contentItems[e.contentItems.length-1],l=t?s.isRow:s.isColumn;return l||(e.addChild({type:t?"row":"column"}),e.removeChild(s,!0),e.contentItems[e.contentItems.length-1].addChild(s),s=e.contentItems[e.contentItems.length-1]),this.addStack(s,!t)}static getStackForConfig(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;if(r&&hs(e)&&e.contentItems.length===0)return e;if(e.contentItems==null)return null;for(var i=0;i<e.contentItems.length;i+=1){var a=e.contentItems[i];if(a.isComponent&&a.config!=null&&Bc(a.config,t))return e;var o=this.getStackForConfig(a,t,r);if(o)return o}return null}static getStackForRoot(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,o=this.getStackForConfig(e,t);return!o&&i&&(o=this.getStackForConfig(e,{component:t.component},a)),!o&&r&&(o=this.addStack(e)),o}static getStackForComponentTypes(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]:!0,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,o=0;o<t.length;o+=1){var s=t[o],l=o===t.length-1,d=X.getStackForRoot(e,{component:s},r&&l,i,a);if(d)return d}return null}static getContentItemInStack(e,t){if(!e)return null;for(var r=0;r<e.contentItems.length;r+=1){var i=e.contentItems[r];if(i.isComponent&&i.config!=null&&Bc(i.config,t))return i}return null}static dehydrateLayoutConfig(e,t){if(e==null||!e.length)return[];for(var r=[],i=0;i<e.length;i+=1){var a=e[i],{component:o,content:s}=a;if(o){var l=t(o,a);l!=null?r.push(l):Ei.debug2('dehydrateLayoutConfig: skipping unmapped component "'.concat(o,'"'))}else if(s){var d=zn(zn({},a),{},{content:X.dehydrateLayoutConfig(s,t)});r.push(d)}else r.push(a)}return r}static getTabPoint(e){var{tab:t}=e;if(t==null)throw new Error("Cannot get tab for panel container ".concat(e));var r=t.element[0].getBoundingClientRect();return[r.left+r.width*.5,r.bottom-8]}static dropLayoutMinorChange(e){for(var t=0;t<e.length;t+=1){var r=e[t],{content:i}=r;i!==void 0?(Zm(r)&&delete r.activeItemIndex,X.dropLayoutMinorChange(i)):Ka(r)&&r.component==="IrisGridPanel"&&r.props.panelState!=null&&(delete r.id,r.props.panelState.irisGridState.sorts=[],r.props.panelState.irisGridState.quickFilters=[])}}static isEqual(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;if(r){var i=X.cloneLayout(e),a=X.cloneLayout(t);return X.dropLayoutMinorChange(i),X.dropLayoutMinorChange(a),ct(i,a)}return ct(e,t)}static cloneLayout(e){return JSON.parse(JSON.stringify(e))}static hydrateLayoutConfig(e,t){if(e==null||!e.length)return[];for(var r=[],i=0;i<e.length;i+=1){var a=e[i];if(Ka(a)){var o,{component:s,props:l={}}=a;r.push(zn(zn({},a),{},{id:(o=a?.id)!==null&&o!==void 0?o:et(),props:t(s,l)}))}else if(a.content!==void 0){var d=X.hydrateLayoutConfig(a.content,t);Zm(a)&&a.activeItemIndex!=null&&a.activeItemIndex>=d.length&&(Ei.warn("Fixing bad activeItemIndex!",a.activeItemIndex,a),a.activeItemIndex=0),r.push(zn(zn({},a),{},{content:d}))}else r.push(a)}return r}static openComponent(){var{root:e,config:t,replaceExisting:r=!0,replaceConfig:i=void 0,createNewStack:a=!1,focusElement:o=void 0,dragEvent:s=void 0}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},l=document.activeElement,d=zn({},t);if(d.id==null&&(d.id=et.generate()),s!=null){e?.layoutManager.createDragSourceFromEvent(d,s);return}var h=i||{id:d.id,component:d.component};A(e);var c=a?X.addStack(e):X.getStackForRoot(e,h);A(c);var m=X.getContentItemInStack(c,h);if(o!=null){var v=g=>{Ei.debug("Component created, focusing element",o),c.off("componentCreated",v);var{element:p}=g.origin;requestAnimationFrame(()=>{X.focusElement(p[0],o)})};c.on("componentCreated",v)}if(r&&m){var f=c.contentItems.indexOf(m);c.addChild(d,f+1),c.removeChild(m),c.setActiveContentItem(c.contentItems[f])}else c.addChild(d);o==null&&l&&Ks(l)&&l.focus()}static openComponentInStack(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,i=document.activeElement,a={id:t.id},o=X.getContentItemInStack(e,a);if(r&&o&&e){var s=e?.contentItems.indexOf(o);e.addChild(t,s+1),e.removeChild(o),e.setActiveContentItem(e.contentItems[s])}else e?.addChild(t);i&&Ks(i)&&i.focus()}static closeComponent(e,t,r){var i=X.getStackForRoot(e,t,!1,!1,!1);if(!i){Ei.warn("Cannot find stack for component, ignoring close",t);return}var a=X.getContentItemInStack(i,t),o=document.activeElement;a&&(Ir(a)?a.container.close(r):i.removeChild(a)),o&&document.contains(o)&&Ks(o)&&o.focus()}static renameComponent(e,t,r){var i=X.getStackForRoot(e,t,!1);if(!i){Ei.error("Could not find stack for config",t);return}var a=X.getContentItemInStack(i,t);a&&a.setTitle(r)}static cloneComponent(e,t){var r=X.getStackForRoot(e,t,!1);if(!r)return Ei.error("Could not find stack for config",t),null;var{props:i={}}=t,a=X.getPanelComponentState(t),o={type:"react-component",component:t.component,props:zn(zn({},i),{},{panelState:a}),title:"".concat(t.title," Copy"),id:et.generate()};return X.openComponentInStack(r,o),o}static getPanelComponentState(e){if(EC(e)){var t;return(t=e.componentState)===null||t===void 0?void 0:t.panelState}if(Ka(e)){var r;return(r=e.props)===null||r===void 0?void 0:r.panelState}return null}static makeDefaultLayout(){return{dimensions:{headerHeight:Xm.tabHeight,borderWidth:Xm.dragBorderWidth,borderGrabWidth:10},settings:{showPopoutIcon:!1,showCloseIcon:!1,constrainDragToContainer:!1}}}static getRootFromContainer(e){return e.layoutManager.root}static getComponentConfigFromContainer(e){return e?e.tab!=null&&e.tab.contentItem!=null?e.tab.contentItem.config:e._config:null}static getTitleFromContainer(e){return e!=null&&e.tab!=null&&e.tab.contentItem!=null?e.tab.contentItem.config.title:null}static getTitleFromTab(e){return e!=null&&e.contentItem!=null?e.contentItem.config.title:null}static getIdFromContainer(e){var t=X.getComponentConfigFromContainer(e);return t?t.id:null}static getIdFromPanel(e){var{glContainer:t}=e.props;return X.getIdFromContainer(t)}static getComponentNameFromPanel(e){var{glContainer:t}=e.props,r=X.getComponentConfigFromContainer(t);if(r&&Ka(r)){var i;return(i=r.component)!==null&&i!==void 0?i:null}return null}static getComponentName(e){var t,r,i=(t=(r=e.WrappedComponent)===null||r===void 0?void 0:r.displayName)!==null&&t!==void 0?t:e.displayName;if(i==null)throw new Error("Component displayName not defined ".concat(e));return i}static focusElement(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:X.DEFAULT_FOCUS_SELECTOR;if(e==null)return null;var r=e.querySelector(t);return r==null?null:(Ks(r)&&r.focus(),r)}static onInitialized(e){return new Promise(t=>{if(e.isInitialised){t();return}var r=()=>{e.off("initialised",r),t()};e.on("initialised",r)})}}yC(X,"DEFAULT_FOCUS_SELECTOR","input, select, textarea, button");var TC=he.forwardRef((n,e)=>{var t=X.getComponentNameFromPanel({props:n});return u.jsx("div",{ref:e,className:"panel-placeholder",children:u.jsxs("div",{children:['Component "',t,'" is not registered.']})})});TC.displayName="PanelPlaceholder";const Ee=Object.freeze({FOCUS:"PanelEvent.FOCUS",MOUNT:"PanelEvent.MOUNT",UNMOUNT:"PanelEvent.UNMOUNT",TITLE_CHANGED:"PanelEvent.TITLE_CHANGED",REOPEN:"PanelEvent.REOPEN",DELETE:"PanelEvent.DELETE",CLONED:"PanelEvent.CLONED",CLOSED:"PanelEvent.CLOSED",OPEN:"PanelEvent.OPEN",CLOSE:"PanelEvent.CLOSE",DRAGGING:"PanelEvent.DRAGGING",DROPPED:"PanelEvent.DROPPED"});function Jm(n){return n?.WrappedComponent!==void 0}function vD(n){return typeof n.id=="string"&&n.layout instanceof wC&&n.panelManager instanceof Wh&&typeof n.registerComponent=="function"}function ea(n){if(!vD(n))throw new Error("Expected dashboard plugin props, but instead received ".concat(n))}function ev(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 tv(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ev(Object(t),!0).forEach(function(r){ki(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ev(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function ki(n,e,t){return e=fD(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function fD(n){var e=gD(n,"string");return typeof e=="symbol"?e:String(e)}function gD(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 Wr=ae.module("PanelManager");class Wh{constructor(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:(s,l)=>l,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:(s,l)=>l,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:new Map,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:[],o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:()=>{};ki(this,"layout",void 0),ki(this,"hydrateComponent",void 0),ki(this,"dehydrateComponent",void 0),ki(this,"onPanelsUpdated",void 0),ki(this,"closed",void 0),ki(this,"openedMap",void 0),this.handleFocus=this.handleFocus.bind(this),this.handleMount=this.handleMount.bind(this),this.handleUnmount=this.handleUnmount.bind(this),this.handleReopen=this.handleReopen.bind(this),this.handleDeleted=this.handleDeleted.bind(this),this.handleClosed=this.handleClosed.bind(this),this.handleControlClose=this.handleControlClose.bind(this),this.layout=e,this.hydrateComponent=t,this.dehydrateComponent=r,this.onPanelsUpdated=o,this.openedMap=new Map(i),this.closed=[...a],this.startListening()}startListening(){var{eventHub:e}=this.layout;e.on(Ee.FOCUS,this.handleFocus),e.on(Ee.MOUNT,this.handleMount),e.on(Ee.UNMOUNT,this.handleUnmount),e.on(Ee.REOPEN,this.handleReopen),e.on(Ee.DELETE,this.handleDeleted),e.on(Ee.CLOSED,this.handleClosed),e.on(Ee.CLOSE,this.handleControlClose)}stopListening(){var{eventHub:e}=this.layout;e.off(Ee.FOCUS,this.handleFocus),e.off(Ee.MOUNT,this.handleMount),e.off(Ee.UNMOUNT,this.handleUnmount),e.off(Ee.REOPEN,this.handleReopen),e.off(Ee.DELETE,this.handleDeleted),e.off(Ee.CLOSED,this.handleClosed),e.off(Ee.CLOSE,this.handleControlClose)}getClosedPanelConfigsOfType(e){return this.closed.filter(t=>t.component===e)}getOpenedPanels(){return Array.from(this.openedMap.values())}getOpenedPanelConfigs(){return this.getOpenedPanels().map(e=>{var{glContainer:t}=e.props;return X.getComponentConfigFromContainer(t)})}getOpenedPanelConfigsOfType(e){return this.getOpenedPanelConfigs().filter(t=>t!=null&&Ka(t)&&t.component===e)}getOpenedPanelById(e){return this.openedMap.get(e)}getContainerByPanelId(e){var t,r=X.getStackForConfig(this.layout.root,{id:e});return(t=r&&X.getContentItemInStack(r,{id:e}))!==null&&t!==void 0?t:null}getLastUsedPanel(e){for(var t=this.getOpenedPanels(),r=t.length-1;r>=0;r-=1){var i=t[r];if(e==null||e(i))return i}}getLastUsedPanelOfType(e){return this.getLastUsedPanelOfTypes([e])}getLastUsedPanelOfTypes(e){return this.getLastUsedPanel(t=>e.some(r=>Jm(r)&&t instanceof r.WrappedComponent||!Jm(r)&&t instanceof r))}updatePanel(e){var t=X.getIdFromPanel(e);if(t==null){Wr.error("updatePanel Panel did not have an ID",e);return}Wr.debug2("Updating panel ID ".concat(t," in open panels map")),this.openedMap.delete(t),this.openedMap.set(t,e)}removePanel(e){var t=X.getIdFromPanel(e);if(t==null){Wr.error("removePanel Panel did not have an ID",e);return}if(!this.openedMap.has(t)){Wr.error("Missing panel ID ".concat(t," in open panels map"));return}if(this.openedMap.get(t)!==e){Wr.debug("Panel argument doesn't match the open panels map entry for ".concat(t,", removePanel ignored"));return}Wr.debug2("Removing panel ID ".concat(t," from open panels map")),this.openedMap.delete(t)}removeClosedPanelConfig(e){var t=this.closed.findIndex(r=>r===e||r.id!=null&&e.id!=null&&r.id===e.id);t>=0&&this.closed.splice(t,1)}handleFocus(e){Wr.debug2("Focus: ",e),this.updatePanel(e)}handleMount(e){Wr.debug2("Mount: ",e),this.updatePanel(e),this.sendUpdate()}handleUnmount(e){Wr.debug2("Unmount: ",e),this.removePanel(e),this.sendUpdate()}handleReopen(e,t){Wr.debug2("Reopen:",e,t),this.removeClosedPanelConfig(e);var{component:r}=e,{props:i}=e;i=this.hydrateComponent(r,i);var a=tv(tv({},e),{},{props:i}),{root:o}=this.layout;X.openComponent({root:o,config:a,replaceConfig:t})}handleDeleted(e){Wr.debug2("Deleted:",e),this.removeClosedPanelConfig(e),this.sendUpdate()}handleClosed(e,t){Wr.debug2("Closed: ",e),this.addClosedPanel(t),this.sendUpdate()}handleControlClose(e){var t={id:e},{root:r}=this.layout;X.closeComponent(r,t)}addClosedPanel(e){var t=X.getComponentConfigFromContainer(e);if(t&&Ka(t)){var r=this.dehydrateComponent(t.component,t);r!=null&&this.closed.push(r)}}sendUpdate(){var{closed:e,openedMap:t}=this;this.onPanelsUpdated({closed:[...e],openedMap:new Map(t)})}}ki(Wh,"MAX_CLOSED_PANEL_COUNT",100);var pD=ae.module("PanelErrorBoundary");class CD extends y.Component{constructor(e){super(e),this.state={error:null}}componentDidCatch(e){this.setState({error:e})}componentWillUnmount(){var{glContainer:e,glEventHub:t}=this.props,r=X.getIdFromContainer(e);pD.debug("componentWillUnmount",r),t.emit(Ee.CLOSED,r,e)}render(){var{children:e}=this.props,{error:t}=this.state;return t!=null?u.jsx("div",{className:"panel-error-boundary",children:u.jsx(td,{errorMessage:"".concat(t),isLoading:!1,isLoaded:!1})}):e}}function rv(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 Bl(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?rv(Object(t),!0).forEach(function(r){bD(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):rv(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function bD(n,e,t){return e=SD(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function SD(n){var e=wD(n,"string");return typeof e=="symbol"?e:String(e)}function wD(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 zh(n){var{props:e,componentState:t}=n,{metadata:r}=e,{panelState:i=null}=e;t&&({panelState:i}=t);var a={};return r!=null&&(a.metadata=r),i!=null&&(a.panelState=i),Bl(Bl({},n),{},{componentState:null,props:a,type:"react-component"})}function Kh(n){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"";return Bl(Bl({metadata:{}},n),{},{localDashboardId:e})}const eh={dehydrate:zh,hydrate:Kh};var yD=Y.shape({on:Y.func,off:Y.func,isHidden:Y.bool,tab:Y.shape({header:Y.shape({tabs:Y.arrayOf(Y.shape({contentItem:Y.shape({})}))})}),title:Y.string,setTitle:Y.func,close:Y.func}),PC=Y.shape({on:Y.func,off:Y.func,emit:Y.func}),ED=Y.shape({registerComponent:Y.func,root:Y.shape({addChild:Y.func}),on:Y.func,off:Y.func,eventHub:PC}),Yh=Object.freeze({Container:yD,EventHub:PC,Layout:ED});function Ye(n,e,t){y.useEffect(function(){return n.on(e,t),()=>{n.off(e,t)}},[n,e,t])}function za(n,e,t,r){var i,a=(i=e.COMPONENT)!==null&&i!==void 0?i:e.displayName;if(a==null)throw new Error("ComponentType must have a `COMPONENT` or `displayName` attribute.");he.useEffect(()=>{var o=n(a,e,t,r);return()=>{o()}},[e,r,t,a,n])}function qh(n){var{dashboardProps:e,componentName:t,component:r,supportedTypes:i,hydrate:a,dehydrate:o}=n,{id:s,layout:l,registerComponent:d}=e,h=y.useCallback(c=>{var m,{dragEvent:v,fetch:f,panelId:g=et.generate(),widget:p}=c,{id:C,type:b}=p,S=(m=p.title)!==null&&m!==void 0?m:p.name,w=Array.isArray(i)&&i.includes(b)||b===i;if(w){var E={id:C,name:S,type:b},T={localDashboardId:s,metadata:E,fetch:f};a!=null&&(T=a(T,s));var P={type:"react-component",component:t,props:T,title:S,id:g},{root:D}=l;X.openComponent({root:D,config:P,dragEvent:v})}},[t,a,s,l,i]);za(d,r,a,o),Ye(l.eventHub,Ee.OPEN,h)}var OC="SET_DASHBOARD_DATA";const TD=nP(OC,{},!1),PD={dashboardData:TD};var OD=new Map,DD=Object.freeze({}),RD=Object.freeze([]),ND=n=>n.dashboardData,yr=(n,e)=>{var t;return(t=ND(n)[e])!==null&&t!==void 0?t:DD},FD=(n,e)=>{var t;return(t=yr(n,e).closed)!==null&&t!==void 0?t:RD},DC=(n,e)=>{var t;return(t=yr(n,e).openedMap)!==null&&t!==void 0?t:OD};function nv(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 iv(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?nv(Object(t),!0).forEach(function(r){ID(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):nv(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function ID(n,e,t){return e=_D(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function _D(n){var e=xD(n,"string");return typeof e=="symbol"?e:String(e)}function xD(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 RC=(n,e)=>({type:OC,id:n,payload:e}),jn=(n,e)=>(t,r)=>t(RC(n,iv(iv({},yr(r(),n)),e)));Object.entries(PD).map(n=>{var[e,t]=n;return Ts.register(e,t)});function MD(n){var{children:e}=n;return u.jsx(u.Fragment,{children:e})}function av(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?av(Object(t),!0).forEach(function(r){AD(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):av(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function AD(n,e,t){return e=LD(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function LD(n){var e=kD(n,"string");return typeof e=="symbol"?e:String(e)}function kD(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 Ys=ae.module("DashboardLayout"),jD=Object.freeze({}),HD=[],ov=()=>{},sv=n=>n;function NC(n){var e,t,{id:r,children:i,emptyDashboard:a=u.jsx("div",{children:"Dashboard is empty."}),layout:o,layoutConfig:s=HD,onLayoutChange:l=ov,onLayoutInitialized:d=ov,hydrate:h=Kh,dehydrate:c=zh,panelWrapper:m=MD}=n,v=yh(),f=(e=yS(N=>yr(N,r)))!==null&&e!==void 0?e:jD,[g,p]=y.useState(!1),[C,b]=y.useState(!1),[S,w]=y.useState(),[E]=y.useState((t=f?.closed)!==null&&t!==void 0?t:[]),[T,P]=y.useState(!1),[D,O]=y.useState(o.getReactChildren()),R=y.useMemo(()=>new Map,[]),x=y.useMemo(()=>new Map,[]),F=y.useCallback(function(N,H){var k=arguments.length>2&&arguments[2]!==void 0?arguments[2]:h,K=arguments.length>3&&arguments[3]!==void 0?arguments[3]:c;Ys.debug2("registerComponent",N,H,k,K);function re(ee){var ne=H,se=m,{glContainer:le,glEventHub:Ge}=ee;return u.jsx(CD,{glContainer:le,glEventHub:Ge,children:u.jsx(se,fu(fu({},ee),{},{children:u.jsx(ne,fu({},ee))}))})}var W=o.registerComponent(N,re);return R.set(N,k),x.set(N,K),W},[h,c,R,x,o,m]),_=y.useCallback((N,H)=>{var k;return((k=R.get(N))!==null&&k!==void 0?k:sv)(H,r)},[R,r]),L=y.useCallback((N,H)=>{var k;return((k=x.get(N))!==null&&k!==void 0?k:sv)(H,r)},[x,r]),M=y.useMemo(()=>new Wh(o,_,L,new Map,E,N=>{var{closed:H,openedMap:k}=N;v(jn(r,{closed:H,openedMap:k}))}),[L,v,_,r,E,o]),U=y.useCallback(()=>{if(!C){T||(d(),P(!0));var N=o.toConfig(),H=N.content,k=X.dehydrateLayoutConfig(H,L),K=S==null||!X.isEqual(S,k);Ys.debug("handleLayoutStateChanged",K,H,k),K&&(p(o.root.contentItems.length===0),w(k),l(k),O(o.getReactChildren()))}},[L,T,C,S,o,l,d]),V=y.useCallback(N=>{var H=X.getIdFromContainer(N);o.eventHub.emit(Ee.DRAGGING,H),b(!0)},[o.eventHub]),z=y.useCallback(N=>{var H=X.getIdFromContainer(N);o.eventHub.emit(Ee.DROPPED,H),b(!1)},[o.eventHub]),Q=y.useCallback(N=>{if(Ys.debug2("handleComponentCreated",N),!(N==null||N.config==null||N.config.component==null||N.element==null)){var H=N.config.component.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase(),k="".concat(H,"-component");N.element.addClass(k)}},[]),Z=y.useCallback(()=>{O(o.getReactChildren())},[o]);Ye(o,"stateChanged",U),Ye(o,"itemPickedUp",V),Ye(o,"itemDropped",z),Ye(o,"componentCreated",Q),Ye(o.eventHub,Ee.TITLE_CHANGED,U),Ye(o,"reactChildrenChanged",Z);var I=Ih(s);return y.useEffect(function(){if(I!==s&&s!==S){Ys.debug("Setting new layout content...");for(var H=X.hydrateLayoutConfig(s,_);o.root.contentItems.length>0;)o.root.contentItems[0].remove();for(var k=0;k<H.length;k+=1)o.root.addChild(H[k]);p(o.root.contentItems.length===0)}},[_,o,s,S,M,I]),u.jsxs(u.Fragment,{children:[g&&a,D,he.Children.map(i,N=>N!=null?he.cloneElement(N,{id:r,layout:o,panelManager:M,registerComponent:F}):null)]})}NC.propTypes={id:Y.string.isRequired,children:Y.node,data:Y.shape({}),emptyDashboard:Y.node,layout:Yh.Layout.isRequired,layoutConfig:Y.arrayOf(Y.shape({})),onLayoutChange:Y.func,onLayoutInitialized:Y.func};function lv(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 $D(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?lv(Object(t),!0).forEach(function(r){UD(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):lv(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function UD(n,e,t){return e=BD(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function BD(n){var e=VD(n,"string");return typeof e=="symbol"?e:String(e)}function VD(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 GD=100,gu=()=>{},WD=Object.freeze({});function zD(n){var{id:e="default",children:t,emptyDashboard:r,layoutConfig:i,layoutSettings:a=WD,onLayoutConfigChange:o=gu,onGoldenLayoutChange:s=gu,onLayoutInitialized:l=gu,fallbackComponent:d=TC,hydrate:h,dehydrate:c,panelWrapper:m}=n,v=y.useRef(null),[f,g]=y.useState(!1),[p,C]=y.useState();y.useEffect(function(){if(!v.current){C(void 0);return}var w=$D({},X.makeDefaultLayout());w.settings===void 0&&(w.settings={}),Object.assign(w.settings,a),w.content=[];var E=new wC(w,v.current),T=()=>{E.off("initialised",T),g(!0)};return E.on("initialised",T),d!=null&&E.setFallbackComponent(d),E.init(),C(E),s(E),()=>{E.destroy()}},[a,d,s,g,C]);var b=y.useMemo(()=>qi(()=>{p!=null&&p.isInitialised&&p?.updateSize()},GD),[p]);return y.useEffect(function(){return window.addEventListener("resize",b),()=>{window.removeEventListener("resize",b)}},[b]),u.jsxs("div",{className:"dashboard-container w-100 h-100",children:[u.jsx("div",{className:"w-100 h-100",ref:v}),f&&p&&u.jsx(NC,{emptyDashboard:r,id:e,layout:p,layoutConfig:i,onLayoutChange:o,onLayoutInitialized:l,hydrate:h,dehydrate:c,panelWrapper:m,children:t})]})}var bn="default";function KD(n,e,t){return e=YD(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function YD(n){var e=qD(n,"string");return typeof e=="symbol"?e:String(e)}function qD(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 XD extends Error{constructor(){super(...arguments),KD(this,"isAssertionFailed",!0)}}const FC=XD;function dv(n){if(n==null)throw new FC("Expected 'val' to be defined, but received ".concat(n))}function QD(n,e,t){return e=ZD(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ZD(n){var e=JD(n,"string");return typeof e=="symbol"?e:String(e)}function JD(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 extends Error{constructor(){super(...arguments),QD(this,"isPasteError",!0)}}const pu=eR;function it(n){return n?.isEditable!==void 0}function uv(n){if(!it(n))throw new FC("Expected 'model' to be editable, but received ".concat(n))}function ze(n){return n?.hasExpandableRows!==void 0}function qo(n,e,t){return e=tR(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function tR(n){var e=rR(n,"string");return typeof e=="symbol"?e:String(e)}function rR(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 en;(function(n){n.DOWN="DOWN",n.UP="UP",n.LEFT="LEFT",n.RIGHT="RIGHT"})(en||(en={}));class ie{static normalize(e,t,r,i){var a=e,o=t,s=r,l=i;return a!=null&&s!=null&&s<a&&(a=s,s=e),o!=null&&l!=null&&l<o&&(o=l,l=t),[a,o,s,l]}static makeNormalized(e,t,r,i){return new ie(...ie.normalize(e,t,r,i))}static makeCell(e,t){return new ie(e,t,e,t)}static makeColumn(e){return new ie(e,null,e,null)}static makeRow(e){return new ie(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],o=t.length-1;o>i;o-=1){var s=t[o];if(a.contains(s))t.splice(o,1);else if(s.contains(a)){r=!0,t[i]=s,t.splice(o,1);break}else if(a.startRow===s.startRow&&a.endRow===s.endRow){if(a.touches(s)){var{startRow:l,endRow:d}=a,h=ie.minOrNull(a.startColumn,s.startColumn),c=ie.maxOrNull(a.endColumn,s.endColumn);r=!0,t[i]=new ie(h,l,c,d),t.splice(o,1);break}}else if(a.startColumn===s.startColumn&&a.endColumn===s.endColumn&&a.touches(s)){var{startColumn:m,endColumn:v}=a,f=ie.minOrNull(a.startRow,s.startRow),g=ie.maxOrNull(a.endRow,s.endRow);r=!0,t[i]=new ie(m,f,v,g),t.splice(o,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,o,s,l;if(e.equals(t))return e;var{startColumn:d,startRow:h,endColumn:c,endRow:m}=e;return d=d!=null&&t.startColumn!=null?Math.max(d,t.startColumn):(r=d)!==null&&r!==void 0?r:t.startColumn,c=c!=null&&t.endColumn!=null?Math.min(c,t.endColumn):(i=c)!==null&&i!==void 0?i:t.endColumn,h=h!=null&&t.startRow!=null?Math.max(h,t.startRow):(a=h)!==null&&a!==void 0?a:t.startRow,m=m!=null&&t.endRow!=null?Math.min(m,t.endRow):(o=m)!==null&&o!==void 0?o:t.endRow,d!=null&&d>((s=c)!==null&&s!==void 0?s:-1)||h!=null&&h>((l=m)!==null&&l!==void 0?l:-1)?null:new ie(d,h,c,m)}static subtractFromRange(e,t){var r=[],i=ie.intersection(e,t);return i==null?[e]:(i.startRow!=null&&(e.startRow==null||e.startRow<i.startRow)&&r.push(new ie(e.startColumn,e.startRow,e.endColumn,i.startRow-1)),i.startColumn!=null&&(e.startColumn==null||e.startColumn<i.startColumn)&&r.push(new ie(e.startColumn,i.startRow,i.startColumn-1,i.endRow)),i.endColumn!=null&&(e.endColumn==null||e.endColumn>i.endColumn)&&r.push(new ie(i.endColumn+1,i.startRow,e.endColumn,i.endRow)),i.endRow!=null&&(e.endRow==null||e.endRow>i.endRow)&&r.push(new ie(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(...ie.subtractFromRange(e[i],t));return r}static subtractRangesFromRanges(e,t){for(var r=[...e],i=0;i<t.length;i+=1)r=ie.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,o,s;return ie.isBounded(e)?e:new ie((i=e.startColumn)!==null&&i!==void 0?i:0,(a=e.startRow)!==null&&a!==void 0?a:0,(o=e.endColumn)!==null&&o!==void 0?o:t-1,(s=e.endRow)!==null&&s!==void 0?s:r-1)}static boundedRanges(e,t,r){return e.map(i=>ie.boundedRange(i,t,r))}static offset(e,t,r){return new ie(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]:ie.SELECTION_DIRECTION.DOWN;if(e.length===0)return null;var a=-1;if(t!=null&&r!=null&&(a=e.findIndex(m=>m.containsCell(t,r)),a>=0)){var o=e[a],s=o.nextCell(t,r,i);if(s!=null)return s}switch(i){case ie.SELECTION_DIRECTION.DOWN:case ie.SELECTION_DIRECTION.RIGHT:{var l=a<e.length-1?a+1:0,d=e[l];return d.startCell(i)}case ie.SELECTION_DIRECTION.LEFT:case ie.SELECTION_DIRECTION.UP:{var h=a>0?a-1:e.length-1,c=e[h];return c.startCell(i)}default:throw new Error("Invalid direction: ".concat(i))}}static cellCount(e){return e.reduce((t,r)=>{var i,a,o,s;return t+(((i=r.endRow)!==null&&i!==void 0?i:NaN)-((a=r.startRow)!==null&&a!==void 0?a:NaN)+1)*(((o=r.endColumn)!==null&&o!==void 0?o: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]:ie.SELECTION_DIRECTION.RIGHT,i=0;i<e.length;i+=1)e[i].forEach(t,r)}constructor(e,t,r,i){qo(this,"startColumn",void 0),qo(this,"startRow",void 0),qo(this,"endColumn",void 0),qo(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 ie.isAxisRangeTouching(this.startRow,this.endRow,e.startRow,e.endRow)&&ie.isAxisRangeTouching(this.startColumn,this.endColumn,e.startColumn,e.endColumn)}subtract(e){return ie.subtractFromRange(this,e)}startCell(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:ie.SELECTION_DIRECTION.DOWN;if(!ie.isBounded(this))throw new Error("Cannot get the startCell of an unbounded range");switch(e){case ie.SELECTION_DIRECTION.DOWN:case ie.SELECTION_DIRECTION.RIGHT:return{column:this.startColumn,row:this.startRow};case ie.SELECTION_DIRECTION.LEFT:case ie.SELECTION_DIRECTION.UP:return{column:this.endColumn,row:this.endRow};default:throw new Error("Invalid direction: ".concat(e))}}nextCell(e,t,r){if(!ie.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:o,endRow:s}=this;switch(r){case ie.SELECTION_DIRECTION.DOWN:if(t<s)return{column:e,row:Math.max(t+1,o)};if(e<a)return{column:Math.max(e+1,i),row:o};break;case ie.SELECTION_DIRECTION.UP:if(t>o)return{column:e,row:Math.min(t-1,s)};if(e>i)return{column:Math.min(e-1,a),row:s};break;case ie.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,o)};break;case ie.SELECTION_DIRECTION.LEFT:if(e>i)return{column:Math.min(e-1,a),row:t};if(t>o)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]:ie.SELECTION_DIRECTION.RIGHT,r=0,{column:i,row:a}=this.startCell(t);i!=null&&a!=null;){var o;e(i,a,r),r+=1,{column:i,row:a}=(o=this.nextCell(i,a,t))!==null&&o!==void 0?o:{}}}}qo(ie,"SELECTION_DIRECTION",en);const xe=ie;function nR(n){return Array.isArray(n)&&n.length===2&&(n[0]===null||typeof n[0]=="number")&&(n[1]===null||typeof n[1]=="number")}function qs(n){return nR(n)&&n[0]!=null&&n[1]!=null}function hv(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 Xs(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?hv(Object(t),!0).forEach(function(r){IC(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):hv(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function IC(n,e,t){return e=iR(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function iR(n){var e=aR(n,"string");return typeof e=="symbol"?e:String(e)}function aR(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 Vl(n){return n?.href!==void 0}class B{static getGridPointFromXY(e,t,r){var i=B.getColumnAtX(e,r),a=B.getRowAtY(t,r),o=B.getColumnHeaderDepthAtY(t,r);return{x:e,y:t,row:a,column:i,columnHeaderDepth:o}}static getCellInfoFromXY(e,t,r){var{row:i,column:a}=B.getGridPointFromXY(e,t,r),{allColumnWidths:o,allRowHeights:s,allColumnXs:l,allRowYs:d,modelColumns:h,modelRows:c}=r,m=i!==null?c.get(i):null,v=a!==null?h.get(a):null,f=a!==null?l.get(a):null,g=i!==null?d.get(i):null,p=a!==null?o.get(a):null,C=i!==null?s.get(i):null;return{row:i,column:a,modelRow:m??null,modelColumn:v??null,left:f??null,top:g??null,columnWidth:p??null,rowHeight:C??null}}static getColumnHeaderDepthAtY(e,t){var r=B.getRowAtY(e,t),{columnHeaderHeight:i,columnHeaderMaxDepth:a}=t;if(r===null&&e<=i*a)return Ue(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=B.iterateFloatingStart(e,r,i);return a!==void 0?a:B.iterateFloatingEnd(t,r,i)}static iterateAllItems(e,t,r,i,a,o){var s=Math.max(e,r),l=Math.min(t,a-i-1),d=B.iterateFloating(r,i,a,o);if(d!==void 0)return d;for(var h=s;h<=l;h+=1)if(d=o(h),d!==void 0)return d}static isInItem(e,t,r,i){var a,o,s=(a=t.get(e))!==null&&a!==void 0?a:0,l=(o=r.get(e))!==null&&o!==void 0?o:0;return s<=i&&i<=s+l}static getItemAtOffset(e,t,r,i,a,o,s){var l=arguments.length>7&&arguments[7]!==void 0?arguments[7]:!1,d=l?void 0:B.iterateFloating(r,i,t,m=>{if(B.isInItem(m,o,s,e))return m});if(!l&&d!==void 0)return d;for(var h=0;h<a.length;h+=1){var c=a[h];if(B.isInItem(c,o,s,e))return c}return null}static getColumnAtX(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{columnCount:i,floatingLeftColumnCount:a,floatingRightColumnCount:o,visibleColumns:s,allColumnXs:l,allColumnWidths:d,gridX:h}=t;return e<h?null:this.getItemAtOffset(e-h,i,a,o,s,l,d,r)}static getRowAtY(e,t){var{floatingTopRowCount:r,floatingBottomRowCount:i,rowCount:a,visibleRows:o,allRowYs:s,allRowHeights:l,gridY:d}=t;return e<d?null:this.getItemAtOffset(e-d,a,r,i,o,s,l)}static getNextShownItem(e,t,r,i){var a=r.findIndex(l=>l===e)||0;for(a-=1;a!=null&&a>=0;){var o=r[a],s=t.get(o);if(s!=null&&i.get(s)!==0)return o;a-=1}return null}static getNextShownColumn(e,t){var{modelColumns:r,visibleColumns:i,userColumnWidths:a}=t;return B.getNextShownItem(e,r,i,a)}static getNextShownRow(e,t){var{modelRows:r,visibleRows:i,userRowHeights:a}=t;return B.getNextShownItem(e,r,i,a)}static getColumnSeparatorIndex(e,t,r,i){var{rowHeaderWidth:a,columnHeaderHeight:o,floatingColumns:s,floatingLeftWidth:l,visibleColumns:d,allColumnXs:h,allColumnWidths:c,columnHeaderMaxDepth:m}=r,{allowColumnResize:v,headerSeparatorHandleSize:f}=i;if(m*o<t||!v||f<=0)return null;for(var g=e-a,p=f*.5,C=!1,b=s.length-1;b>=0;b-=1){var S,w,E=s[b],T=(S=h.get(E))!==null&&S!==void 0?S:0,P=(w=c.get(E))!==null&&w!==void 0?w:0,D=P===0;if(!C||!D){var O=T+P;D?O+=p:C&&(O-=p);var R=O-p,x=O+p;if(R<=g&&g<=x)return E;C=D}}C=!1;for(var F=d.length-1;F>=0;F-=1){var _,L,M=d[F],U=(_=h.get(M))!==null&&_!==void 0?_:0,V=(L=c.get(M))!==null&&L!==void 0?L:0,z=V===0;if(U<l-V)return null;if(!C||!z){var Q=U+V;z?Q+=p:C&&(Q-=p);var Z=Q-p,I=Q+p;if(Z<=g&&g<=I)return M;C=z}}return null}static isItemHidden(e,t){return t.get(e)===0}static isColumnHidden(e,t){var{allColumnWidths:r}=t;return B.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(!B.isItemHidden(e,t))return[];for(var i=[e],a=r.findIndex(l=>l===e),o=a-1;o>=0;o-=1){var s=r[o];if(!B.isItemHidden(s,t))break;i.push(s)}return i}static getHiddenColumns(e,t){var{visibleColumns:r,allColumnWidths:i}=t;return B.getHiddenItems(e,i,r)}static getRowSeparatorIndex(e,t,r,i){var{rowHeaderWidth:a,columnHeaderHeight:o,visibleRows:s,allRowYs:l,allRowHeights:d}=r,{allowRowResize:h,headerSeparatorHandleSize:c}=i;if(a<e||!h||c<=0)return null;for(var m=t-o,v=c*.5,f=!1,g=s.length-1;g>=0;g-=1){var p,C,b=s[g],S=(p=l.get(b))!==null&&p!==void 0?p:0,w=(C=d.get(b))!==null&&C!==void 0?C:0,E=w===0;if(!f||!E){var T=S+w;E?T+=v:f&&(T-=v);var P=T-v,D=T+v;if(P<=m&&m<=D)return b;f=E}}return null}static isRowHidden(e,t){var{allRowHeights:r}=t;return B.isItemHidden(e,r)}static getHiddenRows(e,t){var{visibleRows:r,allRowHeights:i}=t;return B.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&&!qs(a.from)&&a.to===e?a.from===t?i.pop():i[i.length-1]=Xs(Xs({},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 B.moveItem(e[0],t,r);var a=t;if(i&&e[0]<t&&(a-=e[1]-e[0]),e[0]===a)return[...r];var o=[...r],s=o[o.length-1];s!=null&&qs(s.from)&&s.from[1]-s.from[0]===e[1]-e[0]&&s.to===e[0]?o[o.length-1]=Xs(Xs({},s),{},{to:a}):o.push({from:e,to:a});var l=o[o.length-1];return qs(l.from)&&l.from[0]===l.to&&o.pop(),o}static moveItemOrRange(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;return Array.isArray(e)?B.moveRange(e,t,r,i):B.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]],o=function(){var{from:d,to:h}=r[s],c=1,m;qs(d)?(c=d[1]-d[0]+1,[m]=d):m=d;for(var v=i?h:m,f=v+c-1,g=i?m:h,p=g-v,C=[],b=function(){var E,T,P=(E=a[S][0])!==null&&E!==void 0?E:Number.NEGATIVE_INFINITY,D=(T=a[S][1])!==null&&T!==void 0?T:Number.POSITIVE_INFINITY,O,R=[[P,v-1],[v,f],[f+1,D]].map(x=>{var[F,_]=x;return[Math.max(F,P),Math.min(_,D)]}).filter(x=>{var[F,_]=x;return F<=_}).map(x=>{var[F,_]=x;return v<=F&&f>=_?(O=[F+p,_+p],O):f<F?[F-c,_-c]:x}).map(x=>{var[F,_]=x;return g>F&&g<=_?[[F,g-1],[g+c,_+c]]:x===O?[x]:g<=F?[[F+c,_+c]]:[x]}).flat();C.push(...R)},S=0;S<a.length;S+=1)b();a=C.map(w=>{var[E,T]=w;return[Number.isFinite(E)?E:null,Number.isFinite(T)?T:null]})},s=i?r.length-1:0;i?s>=0:s<r.length;i?s-=1:s+=1)o();return a}static translateRange(e,t,r,i){for(var a=B.applyItemMoves(e.startColumn,e.endColumn,t,i),o=B.applyItemMoves(e.startRow,e.endRow,r,i),s=[],l=0;l<a.length;l+=1)for(var d=a[l],h=0;h<o.length;h+=1){var c=o[h];s.push(new xe(d[0],c[0],d[1],c[1]))}return s}static getModelIndex(e,t){var r=B.applyItemMoves(e,e,t,!0)[0][0];return r}static getModelIndexes(e,t){return e.map(r=>B.getModelIndex(r,t))}static getModelRangeIndexes(e,t,r){return B.applyItemMoves(e,t,r,!0)}static getModelRange(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:ke,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:ke;return B.translateRange(e,t,r,!0)}static getModelRanges(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:ke,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:ke,i=[],a=0;a<e.length;a+=1)i.push(...B.getModelRange(e[a],t,r));return i}static getVisibleRangeIndexes(e,t,r){return B.applyItemMoves(e,t,r,!1)}static getVisibleRange(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:ke,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:ke;return this.translateRange(e,t,r,!1)}static getVisibleRanges(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:ke,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:ke,i=[],a=0;a<e.length;a+=1)i.push(...B.getVisibleRange(e[a],t,r));return i}static getVisibleIndex(e,t){var r=B.applyItemMoves(e,e,t)[0][0];return r}static getVisibleIndexes(e,t){return e.map(r=>B.getVisibleIndex(r,t))}static isMacPlatform(){var{platform:e}=window.navigator;return e.startsWith("Mac")}static getModifierKey(){return B.isMacPlatform()?"metaKey":"ctrlKey"}static isModifierKeyDown(e){var t=B.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:o,height:s,floatingTopRowCount:l,floatingBottomRowCount:d,floatingLeftColumnCount:h,floatingRightColumnCount:c,floatingLeftWidth:m,floatingRightWidth:v,floatingTopHeight:f,floatingBottomHeight:g,columnCount:p,rowCount:C}=e,b=i,S=a,w=o,E=s;return r!=null&&(r>h&&(b+=m),r<p-c&&(w-=v)),t!=null&&(t>l&&(S+=f),t<C-d&&(E-=g)),{x1:b,y1:S,x2:w,y2:E}}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:o,deltaY:s}=e;return!B.isMacPlatform()&&e.shiftKey&&e.deltaX===0&&e.deltaY!==0&&(o=e.deltaY,s=e.deltaX),e?.deltaMode===WheelEvent.DOM_DELTA_PAGE?(o*=t,s*=r):e?.deltaMode===WheelEvent.DOM_DELTA_LINE&&(B.isMacPlatform()?(o=Math.round(o*i),s=Math.round(s*a)):(o=Math.round(o*this.PIXELS_PER_LINE),s=Math.round(s*this.PIXELS_PER_LINE))),{deltaX:o,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],o=i[1];r===0?t.push([a,o]):a-1<=t[t.length-1][1]?t[t.length-1][1]=Math.max(t[t.length-1][1],o):t.push([a,o])}return t}static translateTokenBox(e,t){var{x1:r,y1:i,x2:a,y2:o}=e,{gridX:s,gridY:l,width:d,height:h,verticalBarWidth:c,horizontalBarHeight:m}=t,v=Ue(s+r,s,d-c),f=Ue(s+a,s,d-c),g=Ue(l+i,l,h-m),p=Ue(l+o,l,h-m);return{x1:v,y1:g,x2:f,y2:p,token:e.token}}static getTextRenderMetrics(e,t,r){var{metrics:i,model:a,theme:o}=e,{firstColumn:s,allColumnXs:l,allColumnWidths:d,allRowYs:h,allRowHeights:c,modelRows:m,modelColumns:v}=i,{cellHorizontalPadding:f,treeDepthIndent:g,treeHorizontalPadding:p}=o,C=$(m,r),b=$(v,t),S=a.textAlignForCell(b,C),w=$(l,t),E=$(h,r),T=$(d,t),P=$(c,r),D=t===s,O=0;ze(a)&&a.hasExpandableRows&&D&&(O=g*(a.depthForRow(r)+1)+p);var R=T-O,x=w+f,F=E+P*.5;return S==="right"?x=w+R-f:S==="center"&&(x=w+R*.5),x+=O,{width:R-f*2,x,y:F}}static findTokensWithProtocolInText(e){var t=qg(e);return t.filter(r=>r.type==="url"?/^https?:\/\//.test(r.value):!0)}}IC(B,"PIXELS_PER_LINE",100/3);function Rr(n,e,t){return e=oR(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function oR(n){var e=sR(n,"string");return typeof e=="symbol"?e:String(e)}function sR(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){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Na.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 cv(n,e,t,r,i){for(var a=new Map,o=0,s=0;s<n&&s<t;s+=1)a.set(s,o),o+=$(i,s);o=r;for(var l=0;l<e&&t-l-1>=0;l+=1)o-=$(i,t-l-1),a.set(t-l-1,o);return a}class Na{constructor(){var{userColumnWidths:e=new Map,userRowHeights:t=new Map,calculatedColumnWidths:r=new Map,calculatedRowHeights:i=new Map,fontWidths:a=new Map,modelRows:o=new Map,modelColumns:s=new Map,movedRows:l=[],movedColumns:d=[],initialRowHeights:h=new Map,initialColumnWidths:c=new Map}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Rr(this,"initialRowHeights",void 0),Rr(this,"initialColumnWidths",void 0),Rr(this,"userColumnWidths",void 0),Rr(this,"userRowHeights",void 0),Rr(this,"calculatedColumnWidths",void 0),Rr(this,"calculatedRowHeights",void 0),Rr(this,"fontWidths",void 0),Rr(this,"modelRows",void 0),Rr(this,"modelColumns",void 0),Rr(this,"movedRows",void 0),Rr(this,"movedColumns",void 0),this.userColumnWidths=e,this.userRowHeights=t,this.calculatedRowHeights=i,this.calculatedColumnWidths=r,this.fontWidths=a,this.modelRows=o,this.modelColumns=s,this.movedRows=l,this.movedColumns=d,this.initialRowHeights=h,this.initialColumnWidths=c}getMetrics(e){var{left:t,top:r,leftOffset:i,topOffset:a,width:o,height:s,theme:l,model:d,movedRows:h,movedColumns:c,draggingColumn:m}=e,{rowHeight:v,rowHeaderWidth:f,rowFooterWidth:g,columnWidth:p,columnHeaderHeight:C,minScrollHandleSize:b,scrollBarSize:S}=l;h!==this.movedRows&&(this.movedRows=h,this.modelRows.clear()),c!==this.movedColumns&&(this.movedColumns=c,this.modelColumns.clear());var{columnCount:w,rowCount:E,floatingTopRowCount:T,floatingBottomRowCount:P,floatingLeftColumnCount:D,floatingRightColumnCount:O,columnHeaderMaxDepth:R}=d,x=this.getFirstRow(e),F=this.getFirstColumn(e),_=this.getGridX(e),L=this.getGridY(e),M=ze(d)&&d.hasExpandableRows?this.calculateTreePaddingX(e):0,U=0,V=this.getVisibleRowHeights(e),z=this.getVisibleColumnWidths(e,F,M),Q=Array.from(V.keys()),Z=Array.from(z.keys()),I=new Map([...V,...this.getFloatingRowHeights(e)]),N=new Map([...z,...this.getFloatingColumnWidths(e)]),H=this.getVisibleColumnXs(N,Z,i),k=this.getVisibleRowYs(I,Q,a),K=Q.length>0?Q[Q.length-1]:r,re=Z.length>0?Z[Z.length-1]:t,W=this.getBottomViewport(e,Q,k,I),ee=this.getRightViewport(e,Z,H,N),ne=this.getFloatingTopHeight(e,I),se=this.getFloatingBottomHeight(e,I),le=this.getFloatingLeftWidth(e,N),Ge=this.getFloatingRightWidth(e,N),lt=Array.from(N.values()),mt=Array.from(I.values()),rt=lt.reduce((Bn,Oo)=>Bn+Oo,0)-i,ot=mt.reduce((Bn,Oo)=>Bn+Oo,0)-a,Ot=i+rt+g,Ae=a+ot,Nt=o-_,Ut=s-L,Hr=this.getLastLeft(e,null,Nt-g),sr=this.getLastLeft(e,null,Nt-g-S),$n=this.getLastTop(e,null,Ut-se),nn=this.getLastTop(e,null,Ut-se-S),Er=sr,_t=nn;Hr===0&&$n===0&&(Er=0,_t=0);var an=Er>0,$r=an?S:0,Kt=_t>0,Tr=Kt?S:0,lr=_,Yt=R*C,Ur=o-lr-Tr,dr=s-Yt-$r,fi=w===1?Ur/Ot:(w-Er)/w,Un=E===1?dr/Ae:(E-_t)/E,Tn=an?Ue(Ur*fi,b,Ur-1):0,Br=Kt?Ue(dr*Un,b,dr-1):0,Pn=$(N,t,0),gi=$(I,r,0),Ma=Pn>0?i/Pn:0,Eo=gi>0?a/gi:0,Aa=w===1?i/(Ot-Nt):(t+Ma)/Er,La=E===1?a/(Ae-Ut):(r+Eo)/_t,ka=an?Aa*(Ur-Tn):0,nt=Kt?La*(dr-Br):0,_s=[...Array(T).keys(),...[...Array(P).keys()].map(Bn=>E-Bn-1)],To=new Map([...k,...this.getFloatingRowYs(e,I,Math.floor(s-L-$r))]),xs=[...Array(D).keys(),...[...Array(O).keys()].map(Bn=>w-Bn-1)],ra=new Map([...H,...this.getFloatingColumnXs(e,N,Math.floor(o-_-Tr))]),Ms=[];if(m)for(var On=m.range[0];On<=m.range[1];On+=1)Ms.push(On),N.has(On)||N.set(On,this.getVisibleColumnWidth(On,e)),ra.has(On)||ra.set(On,0);var pi=Q.concat(_s),As=Z.concat(xs).concat(Ms),Po=this.getModelRows(pi,e),Ld=this.getModelColumns(As,e),kd=this.getVisibleRowTreeBoxes(I,Po,e),jd=this.getTopVisible(e,To,I,Q),Ls=this.getLeftVisible(e,ra,N,Z),ks=_t>0?this.getBottomVisible(e,To,I,Q,L):K,Hd=Er>0?this.getRightVisible(e,ra,N,Z,_):re,{fontWidths:js,userColumnWidths:Hs,userRowHeights:$d,calculatedRowHeights:Ud,calculatedColumnWidths:Bd}=this;return{rowHeight:v,rowHeaderWidth:f,rowFooterWidth:g,rowCount:E,columnWidth:p,columnCount:w,columnHeaderHeight:C,floatingTopRowCount:T,floatingBottomRowCount:P,floatingLeftColumnCount:D,floatingRightColumnCount:O,gridX:_,gridY:L,firstRow:x,firstColumn:F,treePaddingX:M,treePaddingY:U,left:t,top:r,bottom:K,right:re,topOffset:a,leftOffset:i,topVisible:jd,leftVisible:Ls,bottomVisible:ks,rightVisible:Hd,bottomViewport:W,rightViewport:ee,width:o,height:s,maxX:rt,maxY:ot,lastLeft:Er,lastTop:_t,barHeight:dr,barTop:Yt,barWidth:Ur,barLeft:lr,handleHeight:Br,handleWidth:Tn,hasHorizontalBar:an,hasVerticalBar:Kt,verticalBarWidth:Tr,horizontalBarHeight:$r,scrollX:ka,scrollY:nt,scrollableContentWidth:Ot,scrollableContentHeight:Ae,scrollableViewportWidth:Nt,scrollableViewportHeight:Ut,visibleRows:Q,visibleColumns:Z,visibleRowHeights:V,visibleColumnWidths:z,floatingRows:_s,floatingColumns:xs,allRows:pi,allColumns:As,allRowHeights:I,allColumnWidths:N,floatingTopHeight:ne,floatingBottomHeight:se,floatingLeftWidth:le,floatingRightWidth:Ge,visibleRowYs:k,visibleColumnXs:H,allRowYs:To,allColumnXs:ra,visibleRowTreeBoxes:kd,modelRows:Po,modelColumns:Ld,movedRows:h,movedColumns:c,fontWidths:js,userColumnWidths:Hs,userRowHeights:$d,calculatedRowHeights:Ud,calculatedColumnWidths:Bd,columnHeaderMaxDepth:R}}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,o=this.getGridY(e),s=this.getFloatingBottomHeight(e,t),l=this.getFloatingTopHeight(e,t);return r-s-l-o-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:o}=i,s=this.getGridX(e),l=this.getFloatingRightWidth(e,t),d=this.getFloatingLeftWidth(e,t);return r-d-l-s-a-o}getFirstIndex(e,t,r){for(var i=e.size+1,a=0;a<i;a+=1){var o=t(a,r);if(e.get(o)!==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:o}=i,s=Math.max(0,a-o-1);t!=null&&(s=t);for(var l=0;s>=0;){var d=this.getVisibleColumnWidth(s,e);if(l+=d,l>=r)return Ue(s+1,0,t??a-1);s-=1}return 0}getLastTop(e,t,r){var{model:i}=e,{rowCount:a,floatingBottomRowCount:o}=i,s=Math.max(0,a-o-1);t!=null&&(s=t);for(var l=0;s>=0;){var d=this.getVisibleRowHeight(s,e);if(l+=d,l>=r)return Ue(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),o=r-i-a;return this.getLastTop(e,t,o)}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),o=r-i-a;return this.getLastLeft(e,t,o)}getFloatingRowHeights(e){for(var{model:t}=e,{floatingTopRowCount:r,floatingBottomRowCount:i,rowCount:a}=t,o=new Map,s=0;s<r&&s<a;s+=1)o.set(s,this.getVisibleRowHeight(s,e));for(var l=0;l<i&&a-l-1>=0;l+=1){var d=a-l-1;o.set(d,this.getVisibleRowHeight(d,e))}return o}getVisibleRowHeights(e){for(var{top:t,topOffset:r,height:i,model:a}=e,o=0,s=t,l=new Map,{rowCount:d}=a;o<i+r&&s<d;){var h=this.getVisibleRowHeight(s,e);l.set(s,h),o+=h,s+=1}return l}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:o,floatingRightColumnCount:s}=i,l=new Map,d=0;d<o&&d<a;d+=1)l.set(d,this.getVisibleColumnWidth(d,e,t,r));for(var h=0;h<s&&a-h-1>=0;h+=1){var c=a-h-1;l.set(c,this.getVisibleColumnWidth(c,e,t,r))}return l}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:o,model:s}=e,l=0,d=i,h=new Map,{columnCount:c}=s;l<o+a&&d<c;){var m=this.getVisibleColumnWidth(d,e,t,r);h.set(d,m),l+=m,d+=1}return h}getFloatingColumnXs(e,t,r){var{model:i}=e,{columnCount:a,floatingLeftColumnCount:o,floatingRightColumnCount:s}=i;return cv(o,s,a,r,t)}getVisibleColumnXs(e,t,r){for(var i=new Map,a=-r,o=0;o<t.length;o+=1){var s=t[o],l=$(e,s);i.set(s,a),a+=l}return i}getFloatingRowYs(e,t,r){var{model:i}=e,{floatingTopRowCount:a,floatingBottomRowCount:o,rowCount:s}=i;return cv(a,o,s,r,t)}getVisibleRowYs(e,t,r){for(var i=new Map,a=-r,o=0;o<t.length;o+=1){var s=t[o],l=$(e,s);i.set(s,a),a+=l}return i}getVisibleRowTreeBoxes(e,t,r){var i=new Map,{model:a,theme:o}=r,{treeDepthIndent:s,treeHorizontalPadding:l}=o;return ze(a)&&a.hasExpandableRows&&e.forEach((d,h)=>{var c=$(t,h);if(a.isRowExpandable(c)){var m=a.depthForRow(c),v=m*s+l,f=(m+1)*s+l,g=0,p=d;i.set(h,{x1:v,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,o=0;o<i;o+=1)a+=$(t,o);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,o=0,s=0;s<i;s+=1)o+=$(t,a-s-1);return o}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,o=0;o<i;o+=1)a+=$(t,o);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,o=0,s=0;s<i;s+=1)o+=$(t,a-s-1);return o}getTopVisible(e,t,r,i){for(var a=this.getFloatingTopHeight(e,r),o=0;o<i.length;o+=1){var s=i[o],l=$(t,s);if(l>=a)return s}return 0}getLeftVisible(e,t,r,i){for(var a=this.getFloatingLeftWidth(e,r),o=0;o<i.length;o+=1){var s=i[o],l=$(t,s);if(l>=a)return s}return 0}getBottomVisible(e,t,r,i,a){for(var{height:o,theme:s}=e,{scrollBarSize:l}=s,d=this.getFloatingBottomHeight(e,r),h=o-a-l-d,c=i.length-1;c>=0;c-=1){var m=i[c],v=$(t,m),f=$(r,m);if(v+f<=h)return m}return 0}getRightVisible(e,t,r,i,a){for(var{width:o,theme:s}=e,{scrollBarSize:l}=s,d=this.getFloatingRightWidth(e,r),h=o-a-l-d,c=i.length-1;c>=0;c-=1){var m=i[c],v=$(t,m),f=$(r,m);if(v+f<=h)return m}return 0}getBottomViewport(e,t,r,i){var{height:a,theme:o}=e,{rowHeight:s}=o;return this.getLastIndexViewport(t,r,i,a,s)}getRightViewport(e,t,r,i){var{width:a,theme:o}=e,{columnWidth:s}=o;return this.getLastIndexViewport(t,r,i,a,s)}getLastIndexViewport(e,t,r,i,a){var o=0,s=0;return e.length>0&&(o=e[e.length-1],s=$(t,o)+$(r,o)),s<i&&(o+=Math.ceil((i-s)/a)),o}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),o=this.calculateColumnWidth(e,a,t,r,i);return this.getVisibleItemSize(a,this.userColumnWidths,()=>{var s=this.initialColumnWidths.get(a);return s!==void 0?s:o})}getModelRows(e,t){for(var r=new Map,i=0;i<e.length;i+=1){var a=e[i],o=this.getModelRow(a,t);r.set(a,o)}return r}getModelRow(e,t){if(this.modelRows.has(e))return $(this.modelRows,e);var{movedRows:r}=t,i=B.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],o=this.getModelColumn(a,t);r.set(a,o)}return r}getModelColumn(e,t){var r=this.modelColumns.has(e);if(r)return $(this.modelColumns,e);var{movedColumns:i}=t,a=B.getModelIndex(e,i);return this.modelColumns.set(e,a),a}calculateRowHeight(e,t,r){var{theme:i}=r,{autoSizeRows:a,rowHeight:o}=i;if(!a)return o;var s=this.calculatedRowHeights.get(t);return s??(this.calculatedRowHeights.set(t,Math.ceil(o)),Qs(this.calculatedRowHeights),o)}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:o}=r,{autoSizeColumns:s,minColumnWidth:l}=o;if(!s){var{columnWidth:d}=o;return d}var h=this.calculateColumnHeaderWidth(t,r),c=this.calculateColumnDataWidth(t,r),m=this.calculatedColumnWidths.get(t),v=Math.ceil(Math.max(h,c));return v=Math.max(l,v),m!=null&&m>v?v=m:(this.calculatedColumnWidths.set(t,v),Qs(this.calculatedColumnWidths)),e===i&&(v+=a),v}calculateColumnHeaderWidth(e,t){var{model:r,theme:i}=t,{headerFont:a,headerHorizontalPadding:o}=i,s=r.textForColumnHeader(e,0);if(s!==void 0&&s!==""){var l=this.getWidthForFont(a,t);return s.length*l+o*2}return o*2}calculateColumnDataWidth(e,t){var{top:r,height:i,width:a,model:o,theme:s}=t,{floatingTopRowCount:l,floatingBottomRowCount:d,rowCount:h}=o,{font:c,cellHorizontalPadding:m,rowHeight:v,rowHeaderWidth:f,rowFooterWidth:g,scrollBarSize:p,dataBarHorizontalPadding:C}=s,b=0,S=this.getWidthForFont(c,t),w=i/v,E=Math.ceil(r+w);return B.iterateAllItems(r,E,l,d,h,T=>{var P=this.getModelRow(T,t),D=o.textForCell(e,P),O=o.renderTypeForCell(e,P),R=0;if(D){var x=m*2;R=D.length*S+x}O==="dataBar"&&(R+=C),b=Math.max(b,R)}),b=Math.max(Math.min(b,(a-f-p-g)*Na.MAX_COLUMN_WIDTH),m*2),b}calculateTreePaddingX(e){var{top:t,height:r,model:i,theme:a}=e,{rowHeight:o,treeDepthIndent:s}=a;if(!ze(i)||!i.hasExpandableRows)return 0;for(var l=0,d=r/o,h=Math.ceil(t+d),c=t;c<=h;c+=1){var m=this.getModelRow(c,e),v=i.depthForRow(m);l=Math.max(l,s*(v+1))}return l}getWidthForFont(e,t){if(this.fontWidths.has(e))return $(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)),Qs(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)),Qs(r),this.userRowHeights=r}resetRowHeight(e){var t=new Map(this.userRowHeights);t.delete(e),this.userRowHeights=t,this.calculatedRowHeights.delete(e)}}Rr(Na,"CACHE_SIZE",1e4);Rr(Na,"MAX_COLUMN_WIDTH",.8);const lR=Na;var dR=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 uR=dR;function mv(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 vv(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?mv(Object(t),!0).forEach(function(r){hR(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):mv(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function hR(n,e,t){return e=cR(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function cR(n){var e=mR(n,"string");return typeof e=="symbol"?e:String(e)}function mR(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 vR=(n,e)=>{var t=!1,r=Pe(n,vv(vv({},e),{},{dispose:()=>{t||(t=!0,r.clear(),t=!1)}}));return r};const wn=vR;function fR(n,e){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:6,r=ju.hex.lab.raw(n);return r[0]=Math.max(r[0]-r[0]/t*e,0),"#".concat(ju.lab.hex(r))}function gR(n,e){var[t,r,i]=ju.hex.rgb(n);return"rgba(".concat(t,", ").concat(r,", ").concat(i,", ").concat(e,")")}var pR=n=>{var{r:e,g:t,b:r}=n,i=.4122214708*e+.5363325363*t+.0514459929*r,a=.2119034982*e+.6806995451*t+.1073969566*r,o=.0883024619*e+.2817188376*t+.6299787005*r,s=Math.cbrt(i),l=Math.cbrt(a),d=Math.cbrt(o);return{L:.2104542553*s+.793617785*l-.0040720468*d,a:1.9779984951*s-2.428592205*l+.4505937099*d,b:.0259040371*s+.7827717662*l-.808675766*d}},CR=n=>{var{L:e,a:t,b:r}=n,i=e+.3963377774*t+.2158037573*r,a=e-.1055613458*t-.0638541728*r,o=e-.0894841775*t-1.291485548*r,s=i*i*i,l=a*a*a,d=o*o*o;return{r:Ue(4.0767416621*s-3.3077115913*l+.2309699292*d,0,255),g:Ue(-1.2684380046*s+2.6097574011*l-.3413193965*d,0,255),b:Ue(-.0041960863*s-.7034186147*l+1.707614701*d,0,255)}},bR=n=>{var e,t,r=(e=(t=n.replace(/^#?([a-f\d])([a-f\d])([a-f\d])$/i,(i,a,o,s)=>"#".concat(a).concat(a).concat(o).concat(o).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]}},SR=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(""))},wR=(n,e,t)=>{var{L:r,a:i,b:a}=n,{L:o,a:s,b:l}=e,d=r+(o-r)*t,h=i+(s-i)*t,c=a+(l-a)*t;return{L:d,a:h,b:c}};const ca={colorWithAlpha:gR,darkenForDepth:fR,linearSRGBToOklab:pR,OklabToLinearSRGB:CR,hexToRgb:bR,rgbToHex:SR,lerpColor:wR};function fv(n,e,t){return e=yR(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function yR(n){var e=ER(n,"string");return typeof e=="symbol"?e:String(e)}function ER(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 Pt{constructor(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:5e3;fv(this,"order",void 0),fv(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 xo(n,e,t){return e=TR(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function TR(n){var e=PR(n,"string");return typeof e=="symbol"?e:String(e)}function PR(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 OR extends Pt{constructor(){super(...arguments),xo(this,"draggingIndex",void 0),xo(this,"resizingItems",[]),xo(this,"hiddenItems",[]),xo(this,"targetSizes",new Map),xo(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 o=this.getSeparator(e,r,i,a);if(o!=null){var s=o.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,o),!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 o=this.getSeparator(e,r,i,a);return o!=null?(this.updateCursor(r,o.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 o=t.getTheme(),s=a[this.visibleOffsetProperty],l=a[this.marginProperty],d=a[this.calculatedSizesProperty],h=a[this.modelIndexesProperty],c=a[this.firstIndexProperty],m=a[this.treePaddingProperty],v=new Map,f=this.resizingItems[this.resizingItems.length-1];f!=null;){var g=$(s,f),p=r-l-g-this.dragOffset,C=$(h,f),b=this.targetSizes.get(C),S=this.resizingItems.length>1,w=this.hiddenItems.indexOf(f),E=$(d,C);f===c&&(E+=m);var T=p;if(Math.abs(p-E)<=o.headerResizeSnapThreshold?T=E:b!==void 0&&p>b&&(S&&w!==0||w>0)?T=b:p<=o.headerResizeHiddenSnapThreshold&&(T=0),v.set(C,T),p<-o.headerResizeSnapThreshold&&T===0)if(w>=0&&S){var P;this.resizingItems.pop(),this.removeTargetSize(a,f),f=this.resizingItems[this.resizingItems.length-1],this.dragOffset-=(P=this.targetSizes.get($(h,f)))!==null&&P!==void 0?P:0}else f=this.getNextShownItem(f,a),f!==null&&(this.resizingItems.push(f),this.addTargetSize(a,f));else b!==void 0&&p>b+o.headerResizeSnapThreshold&&T===b?w>0?(this.dragOffset+=T,f=this.hiddenItems[w-1],this.resizingItems.push(f),this.addTargetSize(a,f)):S?(this.resizingItems.pop(),this.removeTargetSize(a,f),f=this.resizingItems[this.resizingItems.length-1]):f=null:f=null}return v.forEach((D,O)=>{var R,x=(R=i[this.initialSizesProperty].get(O))!==null&&R!==void 0?R:d.get(O);D===x?this.resetSize(i,O):this.setSize(i,O,D)}),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,o=t.getTheme();if(!r)throw new Error("metrics not set");var s=this.getSeparator(e,r,a,o);if(s!=null){var l=r[this.modelIndexesProperty],d=$(l,s.index),h=$(r[this.calculatedSizesProperty],d),c=i[this.initialSizesProperty].get(d);return h===c?this.resetSize(i,d):this.setSize(i,d,h),t.forceUpdate(),!0}return!1}updateCursor(e,t){var r=e[this.visibleSizesProperty],i=$(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],o=t===0?e[this.treePaddingProperty]:0,s=$(r,t),l=i.get(s);(l==null||l===0)&&(l=$(a,s)+o),this.targetSizes.set(s,l)}removeTargetSize(e,t){var r=e[this.modelIndexesProperty],i=$(r,t);this.targetSizes.delete(i)}}const _C=OR;function Xt(n,e,t){return e=DR(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function DR(n){var e=RR(n,"string");return typeof e=="symbol"?e:String(e)}function RR(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 _C{constructor(){super(...arguments),Xt(this,"hiddenCursor","e-resize"),Xt(this,"defaultCursor","col-resize"),Xt(this,"pointProperty","x"),Xt(this,"userSizesProperty","userColumnWidths"),Xt(this,"visibleOffsetProperty","visibleColumnXs"),Xt(this,"visibleSizesProperty","visibleColumnWidths"),Xt(this,"marginProperty","rowHeaderWidth"),Xt(this,"calculatedSizesProperty","calculatedColumnWidths"),Xt(this,"initialSizesProperty","initialColumnWidths"),Xt(this,"modelIndexesProperty","modelColumns"),Xt(this,"firstIndexProperty","firstColumn"),Xt(this,"treePaddingProperty","treePaddingX"),Xt(this,"getHiddenItems",B.getHiddenColumns),Xt(this,"getNextShownItem",B.getNextShownColumn),Xt(this,"getSeparator",Xh.getColumnSeparator)}static getColumnSeparator(e,t,r,i){if(!i.allowColumnResize)return null;var{x:a,y:o,columnHeaderDepth:s}=e,{modelColumns:l}=t,d=B.getColumnSeparatorIndex(a,o,t,i);if(d==null||s==null||s>0)return null;var h=l.get(d);return h!=null?{index:d,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 xC=Xh;var Ta=10;function NR(n,e,t){return e=FR(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function FR(n){var e=IR(n,"string");return typeof e=="symbol"?e:String(e)}function IR(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 _R{constructor(){NR(this,"getCachedTruncatedString",wn((e,t,r,i,a)=>kC.truncateToWidth(e,t,r,i,a),{max:1e4}))}drawCellRowTreeMarker(e,t,r){var{metrics:i,model:a,mouseX:o,mouseY:s,theme:l}=t,{firstColumn:d,gridX:h,gridY:c,allColumnXs:m,allColumnWidths:v,allRowYs:f,allRowHeights:g,visibleRowTreeBoxes:p}=i,{treeMarkerColor:C,treeMarkerHoverColor:b}=l,S=$(m,d),w=$(v,d),E=$(f,r),T=$(g,r);if(!(!ze(a)||!a.isRowExpandable(r))){var P=$(p,r),D=o!=null&&s!=null&&o>=h+S&&o<=h+S+w&&s>=c+E&&s<=c+E+T?b:C;this.drawTreeMarker(e,t,S,E,P,D,a.isRowExpanded(r))}}drawTreeMarker(e,t,r,i,a,o,s){var{x1:l,y1:d,x2:h,y2:c}=a,m=s?"⊟":"⊞",v=r+(l+h)*.5+.5,f=i+(d+c)*.5+.5;e.fillStyle=o,e.textAlign="center",e.fillText(m,v,f)}}const MC=_R;function gv(n){return n?.dataBarOptionsForCell!==void 0}function pv(n,e,t){return e=xR(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function xR(n){var e=MR(n,"string");return typeof e=="symbol"?e:String(e)}function MR(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 AR extends MC{constructor(){super(...arguments),pv(this,"heightOfDigits",void 0),pv(this,"getCachedWidestValueForColumn",wn((e,t,r,i,a)=>{for(var o=0,s=0;s<t.length;s+=1){var l=t[s],d=$(r,l),h=i.textForCell(a,d);o=Math.max(o,e.measureText(h).width)}return o},{max:1e3}))}drawCellContent(e,t,r,i){var a,{metrics:o,model:s,theme:l}=t;if(gv(s)){var{modelColumns:d,modelRows:h,allRowHeights:c,allRowYs:m,firstColumn:v,fontWidths:f}=o,g=r===v,p=$(c,i),C=$(h,i),b=$(d,r),S=$(m,i),w=s.textAlignForCell(b,C),E=s.textForCell(b,C),{x:T,width:P}=B.getTextRenderMetrics(t,r,i),D=(a=f?.get(e.font))!==null&&a!==void 0?a:Ta,O=s.truncationCharForCell(b,C),R=this.getCachedTruncatedString(e,E,P,D,O),{columnMin:x,columnMax:F,axis:_,color:L,valuePlacement:M,opacity:U,markers:V,direction:z,value:Q}=s.dataBarOptionsForCell(b,C),Z=Array.isArray(L);if(!(x==null||F==null)){var{maxWidth:I,x:N,y:H,zeroPosition:k,leftmostPosition:K,markerXs:re,totalValueRange:W,dataBarWidth:ee}=this.getDataBarRenderMetrics(e,t,r,i);if(this.heightOfDigits===void 0){var{actualBoundingBoxAscent:ne,actualBoundingBoxDescent:se}=e.measureText("1234567890");this.heightOfDigits=ne+se}if(e.save(),e.textAlign=w,Z){var le=Q>=0?L[L.length-1]:L[0];e.fillStyle=le}else e.fillStyle=L;if(e.textBaseline="top",e.font=l.font,M!=="hide"&&e.fillText(R,T,S+(p-this.heightOfDigits)/2),Z){var Ge=L.map(Br=>ca.linearSRGBToOklab(ca.hexToRgb(Br)));if(e.save(),e.beginPath(),e.roundRect(N,H,ee,p-2,1),e.clip(),Q<0){if(z==="LTR")for(var lt=Math.round(Math.abs(x)/W*I),mt=lt/(L.length-1),rt=Math.round(K),ot=0;ot<L.length-1;ot+=1){var Ot=Ge[ot],Ae=Ge[ot+1];this.drawGradient(e,Ot,Ae,rt,S+1,mt,p),rt+=mt}else if(z==="RTL")for(var Nt=Math.round(I-Math.abs(F)/W*I),Ut=Nt/(L.length-1),Hr=Math.round(k),sr=L.length-1;sr>0;sr-=1){var $n=Ge[sr],nn=Ge[sr-1];this.drawGradient(e,$n,nn,Hr,S+1,Ut,p),Hr+=Ut}}else if(z==="LTR")for(var Er=Math.round(I-Math.abs(x)/W*I)-1,_t=Er/(L.length-1),an=Math.round(k),$r=0;$r<L.length-1;$r+=1){var Kt=Ge[$r],Tr=Ge[$r+1];this.drawGradient(e,Kt,Tr,an,S+1,_t,p-2),an+=_t}else if(z==="RTL")for(var lr=Math.round(Math.abs(F)/W*I),Yt=lr/(L.length-1),Ur=Math.round(K),dr=L.length-1;dr>0;dr-=1){var fi=Ge[dr],Un=Ge[dr-1];this.drawGradient(e,fi,Un,Ur,S+1,Yt,p-2),Ur+=Yt}e.restore()}else e.save(),e.globalAlpha=U,e.beginPath(),e.roundRect(N,H,ee,p-2,1),e.fill(),e.restore();I>0&&re.forEach((Br,Pn)=>{e.fillStyle=V[Pn].color,e.fillRect(Br,H,1,p-2)});var Tn=!(_==="directional"&&(M==="beside"&&w==="right"&&z==="LTR"||M==="beside"&&w==="left"&&z==="RTL"||M!=="beside"));Tn&&(e.strokeStyle=l.zeroLineColor,e.beginPath(),e.setLineDash([2,1]),e.moveTo(k,S),e.lineTo(k,S+p),e.stroke()),e.restore(),g&&ze(s)&&s.hasExpandableRows&&this.drawCellRowTreeMarker(e,t,i)}}}getDataBarRenderMetrics(e,t,r,i){var{metrics:a,model:o,theme:s}=t;if(!gv(o))throw new Error("Grid model is not a data bar grid model");var{firstColumn:l,allColumnXs:d,allColumnWidths:h,allRowYs:c,modelColumns:m,modelRows:v,visibleRows:f}=a,{cellHorizontalPadding:g,treeDepthIndent:p,treeHorizontalPadding:C}=s,b=$(m,r),S=$(v,i),w=$(d,r),E=$(c,i),T=$(h,r),P=r===l,D=0;ze(o)&&o.hasExpandableRows&&P&&(D=p*(o.depthForRow(i)+1)+C);var O=o.textAlignForCell(b,S),{columnMin:R,columnMax:x,axis:F,valuePlacement:_,markers:L,direction:M,value:U}=o.dataBarOptionsForCell(b,S),V=this.getCachedWidestValueForColumn(e,f,v,o,b),z=2,Q=_==="beside"&&O==="right"?2:1,Z=x-R;x>=0&&R>=0||R===x?Z=x:x<=0&&R<=0&&(Z=Math.abs(R));var I=T-D-Q-z;_==="beside"&&(I=I-g-V),I<0&&(I=0);var N=Math.max(Math.abs(R),Math.abs(x)),H=Math.abs(U)/Z*I;I===0?H=0:F==="middle"?H=Math.abs(U)/N*(I/2):F==="directional"&&(H=Math.abs(U)/N*I);var k=R>=0?0:Math.abs(R)/Z*I,K=U>=0?k:k-Math.abs(U)/Z*I,re=L.map(ne=>{var{column:se}=ne,le=Number(o.textForCell(se,S));return le>=0?k+Math.abs(le)/Z*I:k-Math.abs(le)/Z*I}),W=_==="beside"&&O==="left"?g+V+z:z,ee=_==="beside"&&O==="right"?T-g-V-Q:Q;return M==="RTL"&&(k=R>=0?T:T-Math.abs(R)/Z*I,K=U>=0?k-U/Z*I:k,re=L.map(ne=>{var{column:se}=ne,le=Number(o.textForCell(se,S));return le>=0?k-Math.abs(le)/Z*I:k+Math.abs(le)/Z*I})),F==="middle"?(k=I/2,M==="LTR"?(K=U>=0?k:k-Math.abs(U)/N*(I/2),re=L.map(ne=>{var{column:se}=ne,le=Number(o.textForCell(se,S));return le>=0?k+Math.abs(le)/N*(I/2):k-Math.abs(le)/N*(I/2)})):M==="RTL"&&(K=U<=0?k:k-Math.abs(U)/N*(I/2),re=L.map(ne=>{var{column:se}=ne,le=Number(o.textForCell(se,S));return le<=0?k+Math.abs(le)/N*(I/2):k-Math.abs(le)/N*(I/2)}))):F==="directional"&&(M==="LTR"?(k=0,K=k,re=L.map(ne=>{var{column:se}=ne,le=Number(o.textForCell(se,S));return k+Math.abs(le)/N*I})):M==="RTL"&&(k=T,K=k-Math.abs(U)/N*I,re=L.map(ne=>{var{column:se}=ne,le=Number(o.textForCell(se,S));return k-Math.abs(le)/N*I}))),M==="LTR"?(k+=w+z+D,K+=w+z+D,re=re.map(ne=>ne+w+z+D),_==="beside"&&O==="left"&&(k+=V+g,K+=V+g,re=re.map(ne=>ne+V+g))):M==="RTL"&&(k=k+w-Q,K=K+w-Q,re=re.map(ne=>ne+w-Q),_==="beside"&&O==="right"&&(k=k-g-V,K=K-g-V,re=re.map(ne=>ne-g-V))),W+=w+D,ee+=w,{maxWidth:I,x:K,y:E+1.5,zeroPosition:k,leftmostPosition:W,rightmostPosition:ee,totalValueRange:Z,dataBarWidth:H,markerXs:re}}drawGradient(e,t,r,i,a,o,s){for(var l=t,d=i;d<=i+o;d+=.5)this.drawGradientPart(e,d,a,1,s,ca.rgbToHex(ca.OklabToLinearSRGB(l))),l=ca.lerpColor(t,r,(d-i)/o)}drawGradientPart(e,t,r,i,a,o){e.fillStyle=o,e.fillRect(t,r,i,a)}}const AC=AR;function LR(n,e,t){return e=kR(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function kR(n){var e=jR(n,"string");return typeof e=="symbol"?e:String(e)}function jR(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 HR extends MC{constructor(){super(...arguments),LR(this,"getCachedTokenBoxesForVisibleCell",wn((e,t,r,i,a,o)=>{for(var s=0,l=a,d=[],h=0,c=0,m=0;m<t.length;m+=1){var v=t[m],{start:f,end:g}=v,p=g>e.length?e.substring(f):v.value;c+=o.measureText(e.substring(h,f)).width;var C=o.measureText(p).width,b=c,S=b+C,w={x1:b,y1:s,x2:S,y2:l,token:v};d.push(w),h=g,c+=C}return d},{max:1e4}))}drawCellContent(e,t,r,i){var{metrics:a,model:o,theme:s}=t,{fontWidths:l,modelColumns:d,modelRows:h,allRowHeights:c,firstColumn:m}=a,v=r===m,{textColor:f}=s,g=$(c,i),p=$(h,i),C=$(d,r),b=o.textForCell(C,p),S=o.truncationCharForCell(C,p);if(b&&g>0){var w,E=o.textAlignForCell(C,p)||"left";e.textAlign=E;var T=o.colorForCell(C,p,s)||f;e.fillStyle=T,e.save();var{width:P,x:D,y:O}=B.getTextRenderMetrics(t,r,i),R=(w=l.get(e.font))!==null&&w!==void 0?w:Ta,x=this.getCachedTruncatedString(e,b,P,R,S),F=o.tokensForCell(C,p,x.length);if(x)for(var _=0,L=0,M=D,{actualBoundingBoxDescent:U}=e.measureText(x);L<x.length;){var V,z,Q=F[_],Z=L===Q?.start?Q:null,I=(V=(z=Z?.end)!==null&&z!==void 0?z:Q?.start)!==null&&V!==void 0?V:x.length,N=x.substring(L,I),{width:H}=e.measureText(N),k=N.endsWith("…")?e.measureText(N.substring(0,N.length-1)).width:H;Z!=null?(e.fillStyle=s.hyperlinkColor,e.fillText(N,M,O),e.fillRect(M,O+U,k,1)):(e.fillStyle=T,e.fillText(N,M,O)),M+=H,L=I,Z!=null&&(_+=1)}e.restore()}v&&ze(o)&&o.hasExpandableRows&&this.drawCellRowTreeMarker(e,t,i)}getTokenBoxesForVisibleCell(e,t,r){var i,{metrics:a,context:o,model:s,theme:l}=r;if(o==null||a==null)return ke;var{modelRows:d,modelColumns:h}=a,c=$(d,t),m=$(h,e),v=s.textForCell(m,c),{width:f,x:g,y:p}=B.getTextRenderMetrics(r,e,t),{fontWidths:C}=a;o.save(),this.configureContext(o,r);var b=(i=C?.get(o.font))!==null&&i!==void 0?i:Ta,S=s.truncationCharForCell(m,c),w=this.getCachedTruncatedString(o,v,f,b,S),{actualBoundingBoxAscent:E,actualBoundingBoxDescent:T}=o.measureText(w),P=E+T,D=s.tokensForCell(m,c,w.length);if(D.length===0)return o.restore(),ke;var O=this.getCachedTokenBoxesForVisibleCell(w,D,l.font,"middle",P,o).map(R=>({x1:R.x1+g,y1:R.y1+(p-E),x2:R.x2+g,y2:R.y2+(p-E),token:R.token}));return o.restore(),O}configureContext(e,t){var{theme:r}=t;e.font=r.font,e.textBaseline="middle",e.lineCap="butt"}}const LC=HR;function ma(n,e,t){return e=$R(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function $R(n){var e=UR(n,"string");return typeof e=="symbol"?e:String(e)}function UR(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{constructor(){ma(this,"textCellRenderer",new LC),ma(this,"dataBarCellRenderer",new AC),ma(this,"getCachedBackgroundColors",wn((e,t)=>e.split(" ").map(r=>{for(var i=[],a=0;a<t;a+=1)i.push(ca.darkenForDepth(r,a,t));return i}),{max:1e3})),ma(this,"getCachedColorWithAlpha",wn((e,t)=>ca.colorWithAlpha(e,t),{max:1e3})),ma(this,"getCachedColorIsDark",wn(e=>gp.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,o=arguments.length>5?arguments[5]:void 0;if(a>=t.length&&e.measureText(t).width<=r)return t;if(o!==void 0){var s=e.measureText(o).width;return o.repeat(Math.max(1,Math.floor(r/s)))}for(var l=i,d=Math.min(t.length-1,a),h=t;d>=l;){var c=Math.ceil((d+l)/2),m=An.truncate(t,c);if(e.measureText(m).width<=r){if(h=m,l===c)break;l=c}else if(c===0){h=m;break}else d=c-1}return h}static truncateToWidth(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:Ta,a=arguments.length>4?arguments[4]:void 0;if(r<=0||t.length<=0)return"";var o=Math.min(Math.max(0,Math.floor(r/i/2)-5),t.length),s=Math.min(Math.ceil(r/i*2),t.length);return An.binaryTruncateToWidth(e,t,r,o,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:o}=i;e.fillStyle=r.backgroundColor,e.fillRect(0,0,a,o)}drawGrid(e,t){var{metrics:r,draggingRow:i,draggingColumn:a}=t,{gridX:o,gridY:s}=r;e.translate(o,s),this.drawGridBackground(e,t,i==null&&a==null),this.drawCellContents(e,t),this.drawFloatingRows(e,t),this.drawFloatingColumns(e,t),e.translate(-o,-s)}drawFloatingRows(e,t){var{draggingRow:r,draggingColumn:i,metrics:a,theme:o}=t,{floatingTopRowCount:s,floatingBottomRowCount:l,floatingRows:d,rowCount:h,visibleColumns:c,allRowYs:m,allRowHeights:v}=a;if(d.length!==0){o.floatingRowBackgroundColors&&this.drawRowStripesForRows(e,t,d,o.floatingRowBackgroundColors),r==null&&i==null&&this.drawFloatingMouseRowHover(e,t),this.drawGridLinesForItems(e,t,c,d,o.floatingGridColumnColor,o.floatingGridRowColor),this.drawCellBackgroundsForItems(e,t,c,d),this.drawFloatingBorders(e,t),s>0&&this.drawSelectedRanges(e,t,{top:0,bottom:s-1,maxY:$(m,s-1)+$(v,s-1)-.5}),l>0&&this.drawSelectedRanges(e,t,{top:h-l-1,bottom:h-1,minY:$(m,h-l)+.5,maxY:$(m,h-1)+$(v,h-1)-.5});for(var f=0;f<c.length;f+=1)for(var g=c[f],p=0;p<d.length;p+=1){var C=d[p];this.drawCellContent(e,t,g,C)}}}drawFloatingColumns(e,t){var{draggingRow:r,draggingColumn:i,metrics:a,theme:o}=t,{floatingLeftColumnCount:s,floatingRightColumnCount:l,floatingLeftWidth:d,floatingRightWidth:h,floatingColumns:c,gridX:m,maxX:v,columnCount:f,visibleRows:g,allColumnXs:p,allColumnWidths:C,width:b,height:S}=a;if(c.length!==0){o.floatingRowBackgroundColors&&(this.drawRowStripesForRows(e,t,g,o.floatingRowBackgroundColors,0,d),this.drawRowStripesForRows(e,t,g,o.floatingRowBackgroundColors,b-m-h,v)),r==null&&i==null&&this.drawFloatingMouseRowHover(e,t),e.save(),e.beginPath(),e.rect(0,0,d,S),e.clip(),this.drawGridLinesForItems(e,t,c,g,o.floatingGridColumnColor,o.floatingGridRowColor),e.restore(),this.drawCellBackgroundsForItems(e,t,c,g),this.drawFloatingBorders(e,t),s>0&&this.drawSelectedRanges(e,t,{left:0,maxX:$(p,s-1)+$(C,s-1)}),l>0&&this.drawSelectedRanges(e,t,{left:f-l,right:f-1,minX:$(p,f-l)+.5,maxX:$(p,f-1)+$(C,f-1)});for(var w=0;w<c.length;w+=1)for(var E=c[w],T=0;T<g.length;T+=1){var P=g[T];this.drawCellContent(e,t,E,P)}}}drawFloatingBorders(e,t){var{metrics:r,theme:i}=t,{floatingTopRowCount:a,floatingBottomRowCount:o,floatingLeftColumnCount:s,floatingRightColumnCount:l,rowCount:d,columnCount:h,allRowYs:c,allColumnXs:m,allRowHeights:v,allColumnWidths:f,maxX:g,maxY:p}=r,{floatingDividerOuterColor:C,floatingDividerInnerColor:b}=i;if(e.lineWidth=3,e.beginPath(),e.strokeStyle=C,a>0){var S=$(c,a-1)+$(v,a-1)+.5;e.moveTo(0,S),e.lineTo(g,S)}if(o>0){var w=$(c,d-o)-.5;e.moveTo(0,w),e.lineTo(g,w)}if(s>0){var E=$(m,s-1)+$(f,s-1)+.5;e.moveTo(E,0),e.lineTo(E,p)}if(l>0){var T=$(m,h-l)-.5;e.moveTo(T,0),e.lineTo(T,p)}if(e.stroke(),e.beginPath(),e.lineWidth=1,e.strokeStyle=b,a>0){var P=$(c,a-1)+$(v,a-1)+.5;e.moveTo(0,P),e.lineTo(g,P)}if(o>0){var D=$(c,d-o)-.5;e.moveTo(0,D),e.lineTo(g,D)}if(s>0){var O=$(m,s-1)+$(f,s-1)+.5;e.moveTo(O,0),e.lineTo(O,p)}if(l>0){var R=$(m,h-l)-.5;e.moveTo(R,0),e.lineTo(R,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:o,floatingBottomRowCount:s,floatingLeftColumnCount:l,floatingRightColumnCount:d,floatingTopRowCount:h,columnCount:c,rowCount:m,allRowHeights:v,allRowYs:f,allColumnXs:g,allColumnWidths:p,width:C,height:b}=i;this.drawSelectedRanges(e,t,{bottom:Math.min(a,m-s-1),right:Math.min(o,c-d-1),minX:l>0&&g.has(l+1)?$(g,l+1):-10,minY:h>0&&f.has(h+1)?$(f,h+1):-10,maxX:d>0&&g.has(c-d-1)?$(g,c-d-1)+$(p,c-d-1)-.5:C+10,maxY:s>0&&f.has(m-s-1)?$(f,m-s-1)+$(v,m-s-1)-.5:b+10})}drawRowStripes(e,t){var{metrics:r,theme:i}=t,{visibleRows:a}=r,{rowBackgroundColors:o}=i;o&&this.drawRowStripesForRows(e,t,a,o)}drawRowStripesForRows(e,t,r,i){for(var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:t.metrics.maxX,{theme:s,metrics:l,model:d}=t,{maxDepth:h,shadowBlur:c,shadowColor:m}=s,v=this.getCachedBackgroundColors(i,h),{allRowYs:f,allRowHeights:g}=l,p=new Map,C=[],b=[],S=(I,N)=>{var H=ze(d)?d.depthForRow(I):0,k=v[I%v.length],K=k[Math.min(H,k.length-1)];if(p.has(K)||p.set(K,[]),p.get(K).push(I),N!=null){var re=ze(d)?d.depthForRow(N):0;re<H?C.push(I):re>H&&b.push(N)}},w=0;w<r.length;w+=1){var E=r[w],T=w>0?r[w-1]:void 0;S(E,T)}if(p.forEach((I,N)=>{e.fillStyle=N,e.beginPath();for(var H=0;H<I.length;H+=1){var k=I[H],K=$(f,k),re=$(g,k);e.rect(a,K,o,re)}e.fill()}),C.length>0){e.save();var P=this.getCachedColorWithAlpha(m,.15),D=this.getCachedColorWithAlpha(m,0),O=e.createLinearGradient(0,0,0,c);O.addColorStop(0,P),O.addColorStop(1,D),e.fillStyle=O;for(var R=0;R<C.length;R+=1){var x=C[R],F=$(f,x);e.translate(0,F),e.fillRect(a,0,o,c),e.translate(0,-F)}e.restore()}if(b.length>0){e.save();var _=this.getCachedColorWithAlpha(m,0),L=this.getCachedColorWithAlpha(m,.15),M=e.createLinearGradient(0,0,0,c);M.addColorStop(0,_),M.addColorStop(1,L),e.fillStyle=M;for(var U=0;U<b.length;U+=1){var V=b[U],z=$(f,V),Q=$(g,V),Z=z+Q-c;e.translate(0,Z),e.fillRect(a,0,o,c),e.translate(0,-Z)}e.restore()}}drawMouseColumnHover(e,t){var{mouseX:r,mouseY:i,theme:a,metrics:o}=t;if(!(r==null||i==null)){var s=B.getColumnAtX(r,o);if(!(s==null||a.columnHoverBackgroundColor==null)){var{allColumnWidths:l,allColumnXs:d,maxY:h}=o;if(!(i>h)){var c=$(d,s),m=$(l,s);e.fillStyle=a.columnHoverBackgroundColor,e.fillRect(c,0,m,h)}}}}drawMouseRowHover(e,t){var{mouseX:r,mouseY:i,theme:a,metrics:o}=t;if(!(r==null||i==null)){var{maxX:s}=o;if(!(r>s||a.rowHoverBackgroundColor==null)){var l=B.getRowAtY(i,o);l!=null&&this.drawMouseRowHoverForRow(e,t,l)}}}drawFloatingMouseRowHover(e,t){var{mouseX:r,mouseY:i,theme:a,metrics:o}=t,{maxX:s,floatingTopRowCount:l,floatingBottomRowCount:d,rowCount:h,rowFooterWidth:c}=o;if(!(r==null||i==null||r>s+c||a.rowHoverBackgroundColor==null)){var m=B.getRowAtY(i,o);m!=null&&(m<l||h-d<=m)&&this.drawMouseRowHoverForRow(e,t,m)}}drawMouseRowHoverForRow(e,t,r){var{metrics:i,selectedRanges:a,theme:o}=t,{allRowHeights:s,allRowYs:l,maxX:d}=i,h=$(l,r),c=$(s,r);o.rowHoverBackgroundColor!=null&&(e.fillStyle=o.rowHoverBackgroundColor);for(var m=0;m<a.length;m+=1){var{startRow:v,endRow:f}=a[m];if(v!=null&&f!=null&&v<=r&&f>=r){o.selectedRowHoverBackgroundColor!=null&&(e.fillStyle=o.selectedRowHoverBackgroundColor);break}}e.fillRect(0,h,d,c)}drawGridLines(e,t){var{metrics:r,theme:i}=t,{visibleColumns:a,visibleRows:o}=r;this.drawGridLinesForItems(e,t,a,o,i.gridColumnColor,i.gridRowColor)}drawGridLinesForItems(e,t,r,i,a,o){a==null&&o==null||(e.lineWidth=1,e.beginPath(),a!=null&&(e.strokeStyle=a,this.drawGridLinesForColumns(e,t,r)),o!=null&&(e.strokeStyle=o,this.drawGridLinesForRows(e,t,i)),e.stroke())}drawGridLinesForColumns(e,t,r){for(var{metrics:i}=t,{allColumnXs:a,maxY:o}=i,s=0;s<r.length;s+=1){var l=r[s],d=$(a,l)+.5;e.moveTo(d,0),e.lineTo(d,o)}}drawGridLinesForRows(e,t,r){for(var{metrics:i}=t,{allRowYs:a,maxX:o}=i,s=o,l=0;l<r.length;l+=1){var d=r[l],h=$(a,d)+.5;e.moveTo(.5,h),e.lineTo(s-.5,h)}}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 o=r[a],s=0;s<i.length;s+=1){var l=i[s],d=s+1<i.length?i[s+1]:void 0;this.drawCellBackground(e,t,o,l,d)}e.restore()}drawCellBackground(e,t,r,i,a){var{metrics:o,model:s,theme:l}=t,{firstColumn:d,modelColumns:h,modelRows:c,allColumnXs:m,allColumnWidths:v,allRowYs:f,allRowHeights:g}=o,p=$(c,i),C=$(h,r),b=s.backgroundColorForCell(C,p,l),S=r===d,w=ze(s)&&s.hasExpandableRows;if(b!=null){var E=$(m,r)+1,T=$(f,i)+1,P=$(v,r)-1,D=$(g,i)-1;e.fillStyle=b,e.fillRect(E,T,P,D)}S&&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 o=i[a];this.drawColumnCellContents(e,t,o)}}drawColumnCellContents(e,t,r){var{metrics:i}=t,{allColumnXs:a,allColumnWidths:o,visibleRows:s,height:l}=i,d=$(a,r),h=$(o,r);e.save(),e.beginPath(),e.rect(d,0,h,l),e.clip();for(var c=0;c<s.length;c+=1){var m=s[c];this.drawCellContent(e,t,r,m)}e.restore()}drawCellContent(e,t,r,i){var{metrics:a,model:o}=t,{modelColumns:s,modelRows:l}=a,d=$(l,i),h=$(s,r),c=o.renderTypeForCell(h,d),m=this.getCellRenderer(c);m.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:o,theme:s}=t;if(ze(o)){var l=o.depthForRow(r);if(l!==0){var{firstColumn:d,allColumnXs:h,allRowYs:c,allRowHeights:m}=a,{treeDepthIndent:v,treeHorizontalPadding:f,treeLineColor:g}=s,p=$(h,d),C=$(c,r),b=$(m,r),S=i!==void 0?o.depthForRow(i):0,w=l>S?l-S:0;if(e.strokeStyle=g,e.lineWidth=1,l-w>0){e.beginPath();for(var E=0;E<l-w;E+=1){var T=p+E*v+v*.5+f+.5;e.moveTo(T,C),e.lineTo(T,C+b)}e.stroke()}if(w>0){e.beginPath();for(var P=l-w;P<l;P+=1){var D=p+P*v+v*.5+f+.5;e.moveTo(D,C),e.lineTo(D,C+Math.ceil(b/2)),e.moveTo(D-.5,C+Math.ceil(b/2)+.5),e.lineTo(D+v-.5,C+Math.ceil(b/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:o,draggingColumnSeparator:s,isDragging:l,model:d}=t,{columnHeaderHeight:h,floatingColumns:c,gridX:m,width:v,visibleColumns:f,allColumnWidths:g,allColumnXs:p,floatingLeftColumnCount:C,floatingLeftWidth:b,floatingRightWidth:S,modelColumns:w,columnHeaderMaxDepth:E}=o;if(!(h<=0)){var{headerHiddenSeparatorSize:T,headerHiddenSeparatorHoverColor:P,headerSeparatorColor:D,headerSeparatorHoverColor:O}=a,R=h*.5,x=h*(E-1)+h*.5-R*.5,F=C>0;if(e.save(),this.drawColumnHeadersForRange(e,t,[f[0],f[f.length-1]],{minX:m+b,maxX:v-S}),F&&this.drawColumnHeadersForRange(e,t,[c[0],c[c.length-1]],{minX:m,maxX:m+b}),D){e.strokeStyle=D;var _=[...g.entries()].filter(lt=>{var[mt,rt]=lt;return rt===0}).map(lt=>{var[mt]=lt;return mt});e.beginPath(),e.fillStyle=D;for(var L=0;L<_.length;L+=1){var M=_[L],U=$(p,M),V=$(g,M),z=m+U+V+.5-T*.5;e.rect(z,x,T,R)}e.fill()}if(O){var{index:Q,depth:Z}=s??{};if(Q==null&&r!=null&&i!=null){var I=xC.getColumnSeparator(B.getGridPointFromXY(r,i,o),o,d,a);Q=I?.index,Z=I?.depth}var N;if(Q==null)N=!1;else{var H=w.get(Q),k=w.get(Q+1);H==null||k==null?N=!1:N=d.textForColumnHeader(H,Z)!==d.textForColumnHeader(k,Z)}if(N&&Q!=null&&Z!=null&&(!l||s!=null)){e.strokeStyle=O;var K=$(p,Q),re=$(g,Q),W=m+K+re+.5,ee=f.indexOf(Q),ne=ee<f.length-1?f[ee+1]:null,se=ne!=null?g.get(ne):null,le=re===0,Ge=se!=null&&se===0;le?(e.strokeStyle=P,e.fillStyle=P,e.fillRect(W,x,T*.5,R)):Ge&&(e.fillStyle=O,e.fillRect(W-T*.5,x,T*.5,R)),e.beginPath(),e.moveTo(W,(E-Z-1)*h),e.lineTo(W,(E-Z)*h-1),e.stroke()}}e.restore()}}drawColumnHeadersForRange(e,t,r,i){var{model:a}=t,{columnHeaderMaxDepth:o}=a;if(o!==0)for(var s=0;s<=o;s+=1)this.drawColumnHeadersAtDepth(e,t,r,i,s)}drawColumnHeadersAtDepth(e,t,r,i,a){var{metrics:o,model:s,theme:l}=t,{modelColumns:d,allColumnXs:h,gridX:c,userColumnWidths:m,allColumnWidths:v,movedColumns:f}=o,{columnHeaderHeight:g,columnWidth:p}=l,{columnHeaderMaxDepth:C}=s,{minX:b,maxX:S}=i,w=S-b;if(C!==0){var E=r[0],T=r[1];if(e.save(),e.translate(0,(C-a-1)*g),a===0){this.drawColumnHeader(e,t,"",b,S);for(var P=E;P<=T;P+=1)this.drawColumnHeaderAtIndex(e,t,P,i)}if(a>0)for(var D=E;D<=T;){var{columnCount:O}=o,R=$(d,D),x=s.textForColumnHeader(R,a),F=s.colorForColumnHeader(R,a),_=$(h,D)+c,L=_+$(v,D);if(x!=null){for(var M=D-1;M>=0&&(L-_<w||_>b);){var U,V,z,Q=(U=d.get(M))!==null&&U!==void 0?U:B.getModelIndex(M,f);if(Q==null||s.textForColumnHeader(Q,a)!==x)break;var Z=(V=(z=m.get(Q))!==null&&z!==void 0?z:v.get(M))!==null&&V!==void 0?V:p;_-=Z,M-=1}for(var I=D+1;I<O&&(L-_<w||L<S);){var N,H,k,K=(N=d.get(I))!==null&&N!==void 0?N:B.getModelIndex(I,f);if(s.textForColumnHeader(K,a)!==x)break;var re=(H=(k=m.get(K))!==null&&k!==void 0?k:v.get(I))!==null&&H!==void 0?H:p;L+=re,I+=1}D=I-1;var W=L-_>=w,ee=_;W&&(L<S?ee=L-w:_<b&&(ee=b)),this.drawColumnHeader(e,t,x,ee,Math.min(L-_,w),{backgroundColor:F??void 0},i)}D+=1}e.restore()}}drawColumnHeaderAtIndex(e,t,r,i){var a,{metrics:o,model:s}=t,{modelColumns:l,allColumnWidths:d,allColumnXs:h,gridX:c}=o,m=$(d,r),v=$(h,r)+c,f=$(l,r),g=s.textForColumnHeader(f);g!=null&&this.drawColumnHeader(e,t,g,v,m,{backgroundColor:(a=s.colorForColumnHeader(f))!==null&&a!==void 0?a:void 0},i)}drawColumnHeader(e,t,r,i,a,o,s){var l;if(!(a<=0)){var{metrics:d,theme:h}=t,{headerHorizontalPadding:c,columnHeaderHeight:m,headerBackgroundColor:v,headerColor:f,headerSeparatorColor:g,black:p,white:C}=h,{fontWidths:b,width:S}=d,w=(l=b.get(e.font))!==null&&l!==void 0?l:Ta,E=a-c*2,T=E/w,{backgroundColor:P=v,separatorColor:D=g}=o??{},{textColor:O=f}=o??{};try{var R=this.getCachedColorIsDark(P),x=this.getCachedColorIsDark(O);R&&x?O=C:!R&&!x&&(O=p)}catch{}var{minX:F=0,maxX:_=S}=s??{};e.save(),e.rect(F,0,_-F,m),e.clip(),P!=null&&(e.fillStyle=P,e.fillRect(i,0,a,m)),D!=null&&(e.strokeStyle=D,e.beginPath(),i>0&&(e.moveTo(i+.5,0),e.lineTo(i+.5,m)),e.moveTo(i+a+.5,0),e.lineTo(i+a+.5,m),e.moveTo(i,m-.5),e.lineTo(i+a,m-.5),e.stroke()),e.beginPath(),e.rect(i,0,a,m),e.clip(),e.fillStyle=O;var L=r;T<=0?L="":L.length>T&&(L="".concat(L.substring(0,T-1),"…"));var M=L.length*w,U=i+a*.5,V=m*.5;F+=c,_-=c;var z=i+c,Q=Ue(z,F,_),Z=i+a-c,I=Ue(Z,F,_),N=I-Q,H=U-M*.5<F,k=U+M*.5>_;H?M<N?U=F+M*.5:U=Z-M*.5:k&&(M<N?U=_-M*.5:U=z+M*.5),e.textAlign="center",e.fillText(L,U,V),e.restore()}}drawRowHeaders(e,t){var{mouseX:r,mouseY:i,metrics:a,theme:o,draggingRowSeparator:s}=t,{gridY:l,rowHeaderWidth:d,height:h,visibleRows:c,allRowHeights:m,allRowYs:v}=a;if(!(d<=0)){var{headerBackgroundColor:f,headerColor:g,headerHiddenSeparatorSize:p,headerHiddenSeparatorHoverColor:C,headerSeparatorColor:b,headerSeparatorHoverColor:S}=o,w=d*.5,E=d*.5-w*.5;if(e.save(),e.beginPath(),e.fillStyle=f,e.fillRect(0,0,d,h),b){e.strokeStyle=b,e.beginPath(),e.moveTo(0,l+.5),e.lineTo(d,l+.5);for(var T=[],P=!1,D=0;D<c.length;D+=1){var O=c[D],R=$(v,O),x=$(m,O);if(x>0){var F=l+R+x+.5;e.moveTo(0,F),e.lineTo(d,F),P=!1}else P||(P=!0,T.push(O))}e.moveTo(d-.5,0),e.lineTo(d-.5,h),e.stroke(),e.beginPath(),e.fillStyle=b;for(var _=0;_<T.length;_+=1){var L=T[_],M=$(v,L),U=$(m,L),V=l+M+U+.5-p*.5;e.rect(E,V,w,p)}e.fill()}if(S){var{index:z=null}=s??{};if(z==null&&r!=null&&i!=null&&(z=B.getRowSeparatorIndex(r,i,a,o)),z!=null){e.strokeStyle=S;var Q=$(v,z),Z=$(m,z),I=l+Q+Z+.5,N=c.indexOf(z),H=N<c.length-1?c[N+1]:null,k=H!=null?m.get(H):null,K=Z===0,re=k!=null&&k===0;K?(e.strokeStyle=C,e.fillStyle=C,e.fillRect(E,I,w,p*.5)):re&&(e.fillStyle=S,e.fillRect(E,I-p*.5,w,p*.5)),e.beginPath(),e.moveTo(.5,I),e.lineTo(d+.5,I),e.stroke()}}e.beginPath(),e.rect(0,l,d,h),e.clip(),e.fillStyle=g,e.textAlign="right";for(var W=0;W<c.length;W+=1){var ee=c[W],ne=$(m,ee),se=$(v,ee)+l;this.drawRowHeader(e,t,ee,se,ne)}e.restore()}}drawRowHeader(e,t,r,i,a){if(!(a<=0)){var{metrics:o,model:s,theme:l}=t,{modelRows:d,rowHeaderWidth:h}=o,c=$(d,r),m=h-l.cellHorizontalPadding,v=i+a*.5;e.fillText(s.textForRowHeader(c),m,v)}}drawRowFooters(e,t){var{mouseX:r,mouseY:i,metrics:a,model:o,theme:s,draggingRowSeparator:l}=t,{gridY:d,gridX:h,maxX:c,modelRows:m,rowFooterWidth:v,height:f,verticalBarWidth:g,visibleRows:p,allRowHeights:C,allRowYs:b,width:S}=a;if(!(v<=0)){var{cellHorizontalPadding:w,headerBackgroundColor:E,headerColor:T,headerHiddenSeparatorSize:P,headerHiddenSeparatorHoverColor:D,headerSeparatorColor:O,headerSeparatorHoverColor:R}=s,x=v*.5,F=v*.5-x*.5,_=Math.min(h+c,S-v-g);if(e.save(),e.beginPath(),e.fillStyle=E,e.fillRect(_,d,v,f),O){e.strokeStyle=O,e.beginPath(),e.moveTo(_,d+.5),e.lineTo(v,d+.5);for(var L=[],M=!1,U=0;U<p.length;U+=1){var V=p[U],z=$(b,V),Q=$(C,V);if(Q>0){var Z=d+z+Q+.5;e.moveTo(_+.5,Z),e.lineTo(_+v-.5,Z),M=!1}else M||(M=!0,L.push(V))}e.moveTo(_+.5,d),e.lineTo(_+.5,f),e.stroke(),e.beginPath(),e.fillStyle=O;for(var I=0;I<L.length;I+=1){var N=L[I],H=$(b,N),k=$(C,N),K=d+H+k+.5-P*.5;e.rect(_+F,K,x,P)}e.fill()}if(R){var{index:re=null}=l??{};if(re==null&&r!=null&&i!=null&&(re=B.getRowSeparatorIndex(r,i,a,s)),re!=null){e.strokeStyle=R;var W=$(b,re),ee=$(C,re),ne=d+W+ee+.5,se=p.indexOf(re),le=se<p.length-1?p[se+1]:null,Ge=le!=null?C.get(le):null,lt=ee===0,mt=Ge!=null&&Ge===0;lt?(e.strokeStyle=D,e.fillStyle=D,e.fillRect(F,ne,x,P*.5)):mt&&(e.fillStyle=R,e.fillRect(F,ne-P*.5,x,P*.5)),e.beginPath(),e.moveTo(_+.5,ne),e.lineTo(_+v+.5,ne),e.stroke()}}e.beginPath(),e.rect(_,d,v,f),e.clip(),e.fillStyle=T,e.textAlign="left";for(var rt=_+w,ot=0;ot<p.length;ot+=1){var Ot=p[ot],Ae=$(C,Ot);if(Ae>0){var Nt=$(b,Ot)+d,Ut=$(m,Ot),Hr=Nt+Ae*.5;e.fillText(o.textForRowFooter(Ut),rt,Hr)}}e.restore()}}drawSelectedRanges(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},{cursorColumn:i,cursorRow:a,draggingRow:o,draggingColumn:s,editingCell:l,metrics:d,model:h,selectedRanges:c,theme:m}=t,{allColumnWidths:v,allColumnXs:f,allRowHeights:g,allRowYs:p,width:C,height:b}=d,{left:S=d.left,top:w=d.top,right:E=d.right,bottom:T=d.bottom,minY:P=-10,maxY:D=b+10,minX:O=-10,maxX:R=C+10}=r;if(c.length!==0){var x=it(h)&&h.isEditable&&l==null&&o==null&&s==null&&i!=null&&a!=null&&f.has(i)&&p.has(a);if(x){var F=$(f,i),_=$(p,a),L=$(v,i),M=$(g,a);e.save(),e.beginPath(),e.rect(0,0,C,b),e.rect(F,_,L,M),e.clip("evenodd")}e.beginPath();for(var U=0;U<c.length;U+=1){var V=c[U],z=V.startColumn!==null?V.startColumn:S,Q=V.startRow!==null?V.startRow:w,Z=V.endColumn!==null?V.endColumn:E,I=V.endRow!==null?V.endRow:T;if(I>=w&&T>=Q&&Z>=S&&E>=z){var N=z>=S&&f.has(z)?Math.round($(f,z))+.5:O,H=Q>=w&&p.has(Q)?Math.max(Math.round($(p,Q))+.5,.5):P,k=Z<=E&&f.has(Z)?Math.round($(f,Z)+$(v,Z))-.5:R,K=I<=T&&p.has(I)?Math.round($(p,I)+$(g,I))-.5:D;e.rect(N,H,k-N,K-H)}e.fillStyle=m.selectionColor,e.fill(),e.save(),e.clip(),e.strokeStyle=m.selectionOutlineCasingColor,e.lineWidth=3,e.stroke(),e.restore(),e.strokeStyle=m.selectionOutlineColor,e.lineWidth=1,e.stroke()}x&&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]:An.ACTIVE_CELL_BORDER_WIDTH,{metrics:o,theme:s}=t,{allColumnWidths:l,allColumnXs:d,allRowHeights:h,allRowYs:c}=o,m=$(d,r),v=$(c,i),f=$(l,r),g=$(h,i),p=m-a*.5,C=v-a*.5,b=f+a,S=g+a;p<=0&&(b+=p-1,p=1),C<=0&&(S+=C-1,C=1);var{lineWidth:w}=e;e.beginPath(),e.lineWidth=a,e.strokeStyle=s.selectionOutlineColor,this.drawRoundedRect(e,p,C,b,S),e.stroke(),e.lineWidth=w}drawRoundedRect(e,t,r,i,a){var o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:An.DEFAULT_EDGE_RADIUS;e.beginPath(),e.moveTo(t+o,r),e.lineTo(t+i-o,r),e.quadraticCurveTo(t+i,r,t+i,r+o),e.lineTo(t+i,r+a-o),e.quadraticCurveTo(t+i,r+a,t+i-o,r+a),e.lineTo(t+o,r+a),e.quadraticCurveTo(t,r+a,t,r+a-o),e.lineTo(t,r+o),e.quadraticCurveTo(t,r,t+o,r),e.closePath()}drawDraggingColumn(e,t){var r,{draggingColumn:i,metrics:a,mouseX:o,theme:s,model:l}=t;if(!(i==null||o==null)){var{range:d,depth:h}=i,{gridX:c,gridY:m,allColumnXs:v,allColumnWidths:f,height:g,width:p,columnHeaderMaxDepth:C,columnHeaderHeight:b,movedColumns:S,modelColumns:w,floatingLeftWidth:E}=a,T=(r=w.get(d[0]))!==null&&r!==void 0?r:B.getModelIndex(d[0],S),P=l.getColumnHeaderGroup(T,h);if(!(h>0&&!P)){var[D,O]=d,R=$(v,D),x=$(v,O)+$(f,O),F=x-R,_=i.left,{backgroundColor:L,font:M,headerFont:U,reorderOffset:V,shadowBlur:z,shadowColor:Q}=s,Z=(C-h-1)*b;e.save(),e.translate(c,0),e.save(),e.beginPath(),e.rect(E,0,p,g),e.clip(),e.fillStyle=L,e.fillRect(R,Z,F,g),e.restore(),e.translate(0,V),e.save(),e.shadowColor=Q,e.shadowBlur=z,e.fillStyle=L,e.fillRect(i.left,Z+V,i.width,g),e.restore(),e.beginPath(),e.rect(i.left,Z,i.width+1,g),e.clip(),e.translate(_-R,0),e.font=U;for(var I=[],N=i.range[0];N<=i.range[1];N+=1)I.push(N);this.drawColumnHeaders(e,t),this.drawColumnHeadersForRange(e,t,[I[0],I[I.length-1]],{minX:R,maxX:p}),e.translate(0,m),e.font=M,this.drawGridBackground(e,t);for(var H=D;H<=O;H+=1)this.drawColumnCellContents(e,t,H);e.restore()}}}drawDraggingRow(e,t){var{draggingRow:r,draggingRowOffset:i,metrics:a,mouseY:o,theme:s}=t;if(!(r==null||o==null)){var{gridX:l,gridY:d,allRowYs:h,allRowHeights:c,width:m}=a,v=$(h,r),f=$(c,r)+1,{backgroundColor:g,font:p,headerFont:C,reorderOffset:b,shadowBlur:S,shadowColor:w}=s;e.save(),e.translate(0,d),e.fillStyle=g,e.fillRect(0,v,m,f),e.translate(l+b,o-v-d-(i??0)),e.save(),e.shadowColor=w,e.shadowBlur=S,e.fillStyle=g,e.fillRect(-l,v,m,f),e.restore(),e.beginPath(),e.rect(-l,v,m,f),e.clip(),e.font=p,this.drawGridBackground(e,t),this.drawCellContents(e,t),e.translate(-l,-d),e.font=C,this.drawRowHeaders(e,t),e.restore()}}drawScrollBars(e,t){var{isDraggingHorizontalScrollBar:r,isDraggingVerticalScrollBar:i,isDragging:a,metrics:o,mouseX:s,mouseY:l,theme:d}=t;if(!(d.scrollBarSize<=0)){var{width:h,height:c,handleHeight:m,handleWidth:v,scrollX:f,scrollY:g,hasHorizontalBar:p,hasVerticalBar:C,barWidth:b,barHeight:S,barLeft:w,barTop:E}=o,{scrollBarBackgroundColor:T,scrollBarHoverBackgroundColor:P,scrollBarCasingColor:D,scrollBarCornerColor:O,scrollBarColor:R,scrollBarHoverColor:x,scrollBarActiveColor:F,scrollBarSize:_,scrollBarHoverSize:L,scrollBarCasingWidth:M,scrollBarSelectionTick:U,scrollBarSelectionTickColor:V,scrollBarActiveSelectionTickColor:z,autoSelectRow:Q,autoSelectColumn:Z}=d,I=s!=null&&l!=null&&s<=h&&l<=c,N=i||C&&!r&&!a&&s!=null&&l!=null&&s>=h-L&&l>=E&&I,H=r||p&&!i&&!a&&!N&&s!=null&&l!=null&&l>=c-L&&s>=w&&I,k=H?L:_,K=N?L:_;if(e.translate(w,E),p&&C&&(e.fillStyle=D,e.fillRect(h-w-_,c-E-_,_,_),e.fillStyle=O,e.fillRect(h-w-_+M,c-E-_+M,_-M,_-M)),p){var re=f,W=c-E-k;if(e.fillStyle=D,e.fillRect(0,W,b,k-M),e.fillStyle=H?P:T,e.fillRect(0,W+M,b,k-M),r?e.fillStyle=F:H?e.fillStyle=x:e.fillStyle=R,e.fillRect(re,W+M,v,k-M),!Q&&U&&V!=null&&z!=null){e.fillStyle=V;for(var{selectedRanges:ee,cursorColumn:ne}=t,{lastLeft:se,columnCount:le}=o,Ge=[...ee].filter(nt=>nt.startColumn!=null&&nt.endColumn!=null),lt=Ge.map(nt=>[nt.startColumn,nt.endColumn]).sort(B.compareRanges),mt=B.mergeSortedRanges(lt),rt=nt=>nt<=se?nt/se*(b-v):b-v+(nt-se)/(le-se)*v,ot=0;ot<mt.length;ot+=1){var Ot=mt[ot],Ae=Ot[0],Nt=Ot[1];if(Ae!=null&&Nt!=null&&(Ae!==ne||Nt!==ne)){var Ut=rt(Ae),Hr=Math.max(1,Math.round(rt(Nt+1)-Ut)),sr=k-M;e.fillRect(Ut,W+M+Math.round(sr/3),Hr,Math.round(sr/3))}}if(ne!=null){var $n=rt(ne),nn=2,Er=k-M;e.fillStyle=z,e.fillRect($n,W+M,nn,Er)}}}if(C){var _t=h-w-K,an=g;if(e.fillStyle=D,e.fillRect(_t,0,K-M,S),e.fillStyle=N?P:T,e.fillRect(_t+M,0,K-M,S),i?e.fillStyle=F:N?e.fillStyle=x:e.fillStyle=R,e.fillRect(_t+M,an,K-M,m),!Z&&U&&V!=null&&z!=null){var{selectedRanges:$r,cursorRow:Kt}=t,{lastTop:Tr,rowCount:lr}=o,Yt=nt=>nt<=Tr?nt/Tr*(S-m):S-m+(nt-Tr)/(lr-Tr)*m;e.fillStyle=V;for(var Ur=[...$r].filter(nt=>nt.startRow!=null&&nt.endRow!=null),dr=Ur.map(nt=>[nt.startRow,nt.endRow]).sort(B.compareRanges),fi=B.mergeSortedRanges(dr),Un=0;Un<fi.length;Un+=1){var Tn=fi[Un],Br=Tn[0],Pn=Tn[1];if(Br!=null&&Pn!=null&&(Br!==Kt||Pn!==Kt)){var gi=Yt(Br),Ma=K-M,Eo=Math.max(1,Math.round(Yt(Pn+1)-gi));e.fillRect(_t+M+Math.round(Ma/3),gi,Math.round(Ma/3),Eo)}}if(Kt!=null){var Aa=Math.round(Yt(Kt)),La=K-M,ka=2;e.fillStyle=z,e.fillRect(_t+M,Aa,La,ka)}}}e.translate(-w,-E)}}}ma(An,"DEFAULT_EDGE_RADIUS",2);ma(An,"ACTIVE_CELL_BORDER_WIDTH",2);const kC=An;function Mo(n,e,t){return e=BR(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function BR(n){var e=VR(n,"string");return typeof e=="symbol"?e:String(e)}function VR(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 Cv=100;class GR extends Pt{constructor(){super(...arguments),Mo(this,"startPoint",void 0),Mo(this,"hasExtendedFloating",!1),Mo(this,"timer",void 0),Mo(this,"lastTriggerTime",void 0),Mo(this,"dragBounds",void 0)}onDown(e,t,r){var{x:i,y:a,column:o,row:s}=e,{metrics:l}=t;if(!l)throw new Error("metrics not set");var{gridX:d,gridY:h,maxX:c,maxY:m}=l,v=i-d,f=a-h;if(v<0||f<0||o==null&&v>c||s==null&&f>m)return!1;var g=B.isModifierKeyDown(r),p=r.shiftKey;g||(p?t.trimSelectedRanges():t.clearSelectedRanges());var C=t.getTheme(),{autoSelectRow:b,autoSelectColumn:S}=C;return(o!==null||!S)&&(s!==null||!b)&&(t.focus(),t.moveCursorToPosition(o,s,p,!1,p&&g)),this.startPoint=e,this.hasExtendedFloating=!1,this.dragBounds=B.getScrollDragBounds(l,s,o),!0}onDrag(e,t){if(this.startPoint===void 0)return!1;this.stopTimer();var{row:r,column:i}=this.startPoint,{x:a,y:o}=e,{row:s,column:l}=e,{metrics:d}=t;if(!d)throw new Error("metrics not set");var{left:h,lastLeft:c,top:m,lastTop:v,columnWidth:f,rowHeight:g}=d,p=B.getScrollDragBounds(d,r,i),C=0,b=0;if(h<c&&(a<p.x1?C=a-p.x1:a>p.x2&&(C=a-p.x2)),m<v&&(o<p.y1?b=o-p.y1:o>p.y2&&(b=o-p.y2)),C!==0||b!==0)this.startTimer(t,e,C>0?Math.ceil(C/f):Math.floor(C/f),b>0?Math.ceil(b/g):Math.floor(b/g));else if(s!=null&&l!=null){var{floatingTopRowCount:S,floatingBottomRowCount:w,floatingLeftColumnCount:E,floatingRightColumnCount:T,columnCount:P,rowCount:D,bottom:O,right:R,topVisible:x,bottomVisible:F,leftVisible:_,rightVisible:L}=d;this.hasExtendedFloating||(r!==null&&r<S&&s>=S?(s=S,this.hasExtendedFloating=!0):r!==null&&r>=D-w&&s<D-w&&(s=D-w-1,this.hasExtendedFloating=!0),i!==null&&i<E&&l>=E?(l=E,this.hasExtendedFloating=!0):i!==null&&i>=P-T&&l<P-T&&(l=P-T-1,this.hasExtendedFloating=!0)),r!==null&&!B.isFloatingRow(r,d)&&B.isFloatingRow(s,d)&&(r>s&&s<m?s=x-1:r<s&&s>O&&(s=F+1)),i!==null&&!B.isFloatingColumn(i,d)&&B.isFloatingColumn(l,d)&&(i>l&&l<h?l=_-1:i<l&&l>R&&(l=L+1)),t.moveCursorToPosition(l,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:o}=t,{metrics:s}=e;if(!s)throw new Error("metrics not set");var{selectionEndRow:l,selectionEndColumn:d}=e.state;if(l==null||d==null)throw new Error("selection not set");var{rowCount:h,columnCount:c}=s,m=r<0&&o!=null?o:0,v=r>0&&o!=null?o:c-1,f=i<0&&a!=null?a:0,g=i>0&&a!=null?a:h-1;e.moveCursorToPosition(Math.min(Math.max(m,d+r),v),Math.min(Math.max(f,l+i),g),!0),this.lastTriggerTime=Date.now()}startTimer(e,t,r,i){this.stopTimer();var a=this.lastTriggerTime!=null?Cv-Math.min(Cv,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 WR=GR;function bv(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 hr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?bv(Object(t),!0).forEach(function(r){Mi(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):bv(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Mi(n,e,t){return e=zR(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function zR(n){var e=KR(n,"string");return typeof e=="symbol"?e:String(e)}function KR(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 Sv=5,YR=1e3/60,Zs=10;function Ti(n,e,t,r){var i,{modelColumns:a,movedColumns:o,allColumnXs:s,columnCount:l,allColumnWidths:d,userColumnWidths:h,calculatedColumnWidths:c,floatingLeftWidth:m,maxX:v}=t;if(e==null||n==null||n>l||n<0)return null;var f=(i=a.get(n))!==null&&i!==void 0?i:B.getModelIndex(n,o),g=r.getColumnHeaderGroup(f,e),p=g!=null,C,b,S;if(g!=null){var w,E,T,[P,D]=g.getVisibleRange(o);C=(w=s.get(P))!==null&&w!==void 0?w:m,b=((E=s.get(D))!==null&&E!==void 0?E:v)+((T=d.get(D))!==null&&T!==void 0?T:0),S=[P,D]}else{var O,R,x,F=s.get(n);if(F==null)return null;C=F,b=C+((O=(R=(x=d.get(n))!==null&&x!==void 0?x:h.get(f))!==null&&R!==void 0?R:c.get(f))!==null&&O!==void 0?O:0),S=[n,n]}return{visibleIndex:n,modelIndex:f,left:C,right:b,width:b-C,isColumnGroup:p,range:S,depth:e}}class qR extends Pt{constructor(){super(...arguments),Mi(this,"cursor",null),Mi(this,"draggingOffset",void 0),Mi(this,"initialOffset",void 0),Mi(this,"initialGridPoint",void 0),Mi(this,"scrollingInterval",void 0),Mi(this,"scrollingDirection",void 0),Mi(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:o,userColumnWidths:s,calculatedColumnWidths:l,movedColumns:d,allColumnWidths:h}=r,c=i,m=o;if(t==="left")for(m-=Zs;m<0;){var v;c-=1;var f=B.getModelIndex(i-1,d),g=(v=s.get(f))!==null&&v!==void 0?v:l.get(f);g===void 0?m=0:m+=g,c<0&&(m=0,c=0)}else{m+=Zs;for(var p=h.get(i);p!==void 0&&m>p;){var C;c+=1,m-=p;var b=B.getModelIndex(i+1,d);p=(C=s.get(b))!==null&&C!==void 0?C:l.get(b),c>a&&(m=0,c=a)}}var{mouseX:S,mouseY:w}=e.state;r==null||S==null||w==null||(this.moveDraggingColumn(S,e,t==="left"?-Zs:Zs),e.setState({left:c,leftOffset:m}),(t==="left"&&c===0&&o===0||t==="right"&&c===a)&&this.clearScrollInterval())}},YR))}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:o}=e,{metrics:s}=t;if(!s)throw new Error("Metrics not set");var l=Ti(a,o,s,r);if(a==null||l==null||o==null||o>0&&!l.isColumnGroup)return!1;var{rowHeaderWidth:d}=s;return this.initialGridPoint=e,this.draggingColumn=null,this.cursor=null,l.modelIndex!=null&&o!=null&&r.isColumnMovable(l.modelIndex,o)&&(this.draggingOffset=i-l.left-d,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:o}=this.initialGridPoint,{model:s}=t.props,{draggingColumn:l}=this,{metrics:d}=t;if(!d)throw new Error("Metrics not set");if(!l&&Math.abs(this.initialGridPoint.x-i)<Sv&&Math.abs(this.initialGridPoint.y-a)<Sv)return!1;if(l==null){var h=Ti(this.initialGridPoint.column,o,d,s);if(!h||o==null||!s.isColumnMovable(h.modelIndex)||o>0&&!h.isColumnGroup||h.range[0]==null)return!1;l={range:h.range,depth:o,left:h.left,width:h.width};var c=Ti(l.range[0],0,d,s),m=Ti(l.range[1],0,d,s);if(!c||!m)return!1;this.draggingColumn=l,t.setState({draggingColumn:l,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=hr(hr({},this.draggingColumn),{},{left:e-this.draggingOffset}),t.setState({draggingColumn:this.draggingColumn});return}var{depth:a}=this.draggingColumn,{model:o}=t.props,{movedColumns:s}=t.state,{metrics:l}=t;if(!l)throw new Error("Metrics not set");var{floatingLeftWidth:d,width:h,columnHeaderMaxDepth:c,allColumnXs:m}=l,v=r<0,f=Ti(this.draggingColumn.range[0],a,l,o);if(f){var g=e-this.draggingOffset,p=g+f.width;this.draggingColumn=hr(hr({},this.draggingColumn),{},{left:g}),t.setState({draggingColumn:this.draggingColumn});var C=Ti(B.getColumnAtX(Ue(v?g:p,d,h),l,!0),a,l,o),b=o.getColumnHeaderParentGroup(f.modelIndex,f.depth);if(C){if(b!==void 0){var S=b.getVisibleRange(s);if(C.visibleIndex<S[0]){var w,E=this.moveColumn(f,S[0],s);this.draggingOffset=e-((w=m.get(S[0]))!==null&&w!==void 0?w:0),this.draggingColumn=hr(hr({},this.draggingColumn),{},{left:e-this.draggingOffset}),this.clearScrollInterval(),t.setState({draggingColumn:this.draggingColumn,movedColumns:E});return}if(C.visibleIndex>S[1]){var T,P=this.moveColumn(f,S[1]-(f.range[1]-f.range[0]),s),{right:D=0}=(T=Ti(S[1],0,l,o))!==null&&T!==void 0?T:{};this.draggingOffset=e-(D-f.width),this.draggingColumn=hr(hr({},this.draggingColumn),{},{left:e-this.draggingOffset}),this.clearScrollInterval(),t.setState({draggingColumn:this.draggingColumn,movedColumns:P});return}}if(!o.isColumnMovable(C.modelIndex)){var O=C.visibleIndex;if(v)for(O+=1;O<f.visibleIndex&&!o.isColumnMovable(B.getModelIndex(O,s));)O+=1;else for(O-=1;O>f.visibleIndex&&!o.isColumnMovable(B.getModelIndex(O,s));)O-=1;if(O!==f.visibleIndex){v||(O-=f.range[1]-f.range[0]);var R=this.moveColumn(f,O,s);t.setState({movedColumns:R,draggingColumn:this.draggingColumn})}var x=Ti(O,0,l,o);if(v){var F;this.draggingOffset=e-((F=x?.left)!==null&&F!==void 0?F:0)}else{var _;this.draggingOffset=e-(((_=x?.right)!==null&&_!==void 0?_:0)-f.width)}this.draggingColumn=hr(hr({},this.draggingColumn),{},{left:e-this.draggingOffset}),t.setState({draggingColumn:this.draggingColumn});return}if(g<=d?this.setScrollInterval(t,"left"):p>h?this.setScrollInterval(t,"right"):this.clearScrollInterval(),C.visibleIndex!==f.visibleIndex&&!(v&&f.visibleIndex<C.visibleIndex||!v&&f.visibleIndex>C.visibleIndex)){for(var L=C.left+C.width*.5,M=o.getColumnHeaderParentGroup(f.modelIndex,f.depth),U,V=((i=M?.depth)!==null&&i!==void 0?i:c)-1;V>=0&&U===void 0;)U=o.getColumnHeaderGroup(C.modelIndex,V),V-=1;var z;v&&g<L&&(!U||C.visibleIndex===U.getVisibleRange(s)[0])&&(z=this.moveColumn(f,C.range[0],s)),!v&&p>L&&(!U||C.visibleIndex===U.getVisibleRange(s)[1])&&(z=this.moveColumn(f,C.range[1]-(f.range[1]-f.range[0]),s)),z&&(this.draggingColumn=hr(hr({},this.draggingColumn),{},{left:g}),t.setState({movedColumns:z,draggingColumn:this.draggingColumn}))}}}}}moveColumn(e,t,r){var i=e.isColumnGroup?B.moveRange(e.range,t,r):B.moveItem(e.visibleIndex,t,r),a=t-e.range[0],o=[e.range[0]+a,e.range[1]+a];return this.draggingColumn&&(this.draggingColumn=hr(hr({},this.draggingColumn),{},{range:o})),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 XR=qR;function wv(n,e,t){return e=QR(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function QR(n){var e=ZR(n,"string");return typeof e=="symbol"?e:String(e)}function ZR(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 Qh extends Pt{constructor(){super(...arguments),wv(this,"dragOffset",void 0),wv(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 o=Math.round(t),s=0;return{left:o,leftOffset:s}}var l=Math.floor(t),d=t-l,h=i.allColumnWidths.get(l);if(h==null){var c=e.getMetricState();h=a.getVisibleColumnWidth(l,c)}var m=h*d;return{left:l,leftOffset:m}}isInScrollBar(e,t){var r=t.getTheme(),{scrollBarSize:i,scrollBarHoverSize:a}=r,{metrics:o}=t;if(!o)throw new Error("metrics not set");var{x:s,y:l}=e,{barLeft:d,barWidth:h,height:c,hasHorizontalBar:m}=o;return m&&i>0&&l>=c-a&&l<c&&s>d&&s<d+h}getLeftWithOffset(e,t){var r,{metrics:i}=t;if(!i)throw new Error("metrics not set");var{x:a}=e,{barWidth:o,handleWidth:s,lastLeft:l,barLeft:d,columnCount:h,scrollableContentWidth:c,scrollableViewportWidth:m}=i,v=a-d,f=Ue((v-((r=this.dragOffset)!==null&&r!==void 0?r:0))/(o-s),0,1);if(h===1)return{left:0,leftOffset:f*(c-m)};var g=f*l;return Qh.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:o,scrollX:s}=r;if(!this.isInScrollBar(e,t))return!1;var l=i-o;if(l>=s&&l<=s+a)this.dragOffset=l-s,t.setState({isDraggingHorizontalScrollBar:!0});else{this.dragOffset=0;var{left:d,leftOffset:h}=this.getLeftWithOffset(e,t);t.setViewState({left:d,leftOffset:h,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 JR=Qh;function yv(n,e,t){return e=eN(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function eN(n){var e=tN(n,"string");return typeof e=="symbol"?e:String(e)}function tN(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 rN extends Pt{constructor(){super(...arguments),yv(this,"cursor","move"),yv(this,"draggingOffset",void 0)}onDown(e,t){var{model:r}=t.props,{x:i,y:a,row:o}=e,{metrics:s}=t;if(!s)throw new Error("metrics not set");var{columnHeaderHeight:l,rowHeaderWidth:d,allRowYs:h}=s;if(i<=d&&o!==null&&r.isRowMovable(o)){var c=$(h,o);this.draggingOffset=a-c-l,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:o}=t.state;if(a==null||o==null)return!1;if(i==null){var{row:s}=t.getGridPointFromXY(a,o);if(s!=null&&!r.isRowMovable(s)||(i=s,t.setState({draggingRow:i,isDragging:!0}),i==null))return!1}var{metrics:l}=t;if(!l)throw new Error("metrics not set");var{top:d,lastTop:h,bottom:c,bottomVisible:m,rowCount:v,columnHeaderHeight:f,allRowHeights:g,allRowYs:p,height:C}=l,b=f;if(d<i){var S=i-1;b=$(p,S)+$(g,S)*.5+f}var w=C;if(i<c){var E=i+1;w=$(p,E)+$(g,E)*.5+f}var{movedRows:T}=t.state;o<b&&i>0&&r.isRowMovable(i-1)?(T=B.moveItem(i,i-1,T),i-=1):w<o&&i<v-1&&r.isRowMovable(i+1)&&(T=B.moveItem(i,i+1,T),i+=1),t.setState({movedRows:T,draggingRow:i});var P=f+$(g,d)*.5,D=f+$(p,m)+$(g,m)*.5;return o<P&&d>0?t.setState({top:d-1}):o>D&&d<h&&t.setState({top:d+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 nN=rN;function Qt(n,e,t){return e=iN(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function iN(n){var e=aN(n,"string");return typeof e=="symbol"?e:String(e)}function aN(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 Zh extends _C{constructor(){super(...arguments),Qt(this,"hiddenCursor","s-resize"),Qt(this,"defaultCursor","row-resize"),Qt(this,"pointProperty","y"),Qt(this,"userSizesProperty","userRowHeights"),Qt(this,"visibleOffsetProperty","visibleRowYs"),Qt(this,"visibleSizesProperty","visibleRowHeights"),Qt(this,"marginProperty","columnHeaderHeight"),Qt(this,"calculatedSizesProperty","calculatedRowHeights"),Qt(this,"initialSizesProperty","initialRowHeights"),Qt(this,"modelIndexesProperty","modelRows"),Qt(this,"firstIndexProperty","firstRow"),Qt(this,"treePaddingProperty","treePaddingY"),Qt(this,"getHiddenItems",B.getHiddenRows),Qt(this,"getNextShownItem",B.getNextShownRow),Qt(this,"getSeparator",Zh.getRowSeparator)}static getRowSeparator(e,t,r,i){if(!i.allowRowResize)return null;var{x:a,y:o}=e,s=B.getRowSeparatorIndex(a,o,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 oN=Zh;class Gl extends Pt{static isInTreeBox(e,t){var{column:r,row:i,x:a,y:o}=e,{metrics:s}=t;if(!s)throw new Error("metrics not set");var{gridX:l,gridY:d,firstColumn:h,allColumnXs:c,allColumnWidths:m,allRowHeights:v,allRowYs:f,visibleRowTreeBoxes:g}=s;if(r===h&&i!=null&&g.get(i)!=null&&a>l&&o>d){var p=$(c,r),C=$(m,r),b=$(f,i),S=$(v,i);if(a>=l+p&&a<=l+p+C&&o>=d+b&&o<=d+b+S)return!0}return!1}onDown(e,t){return Gl.isInTreeBox(e,t)}onClick(e,t,r){if(Gl.isInTreeBox(e,t)){var{row:i}=e;if(i!==null)return t.toggleRowExpanded(i,B.isModifierKeyDown(r)),!0}return!1}}const th=Gl;class sN extends Pt{isInCorner(e,t){var r=t.getTheme(),{scrollBarSize:i}=r,{metrics:a}=t;if(!a)throw new Error("metrics not set");var{x:o,y:s}=e,{width:l,height:d,hasVerticalBar:h,hasHorizontalBar:c}=a;return i>0&&h&&c&&o>=l-i&&s>=d-i&&o<=l&&s<=d}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 lN=sN;function Ev(n,e,t){return e=dN(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function dN(n){var e=uN(n,"string");return typeof e=="symbol"?e:String(e)}function uN(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 Jh extends Pt{constructor(){super(...arguments),Ev(this,"dragOffset",void 0),Ev(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 o=Math.round(t),s=0;return{top:o,topOffset:s}}var l=Math.floor(t),d=t-l,h=i.allRowHeights.get(l);if(h==null){var c=e.getMetricState();h=a.getVisibleRowHeight(l,c)}var m=h*d;return{top:l,topOffset:m}}isInScrollBar(e,t){var r=t.getTheme(),{scrollBarSize:i,scrollBarHoverSize:a}=r,{metrics:o}=t;if(!o)throw new Error("metrics not set");var{x:s,y:l}=e,{barTop:d,barHeight:h,width:c,hasVerticalBar:m}=o;return m&&i>0&&s>=c-a&&s<c&&l>d&&l<d+h}getTopWithOffset(e,t){var r,{metrics:i}=t;if(!i)throw new Error("metrics not set");var{y:a}=e,{barHeight:o,handleHeight:s,lastTop:l,barTop:d,rowCount:h,scrollableContentHeight:c,scrollableViewportHeight:m}=i,v=a-d,f=Ue((v-((r=this.dragOffset)!==null&&r!==void 0?r:0))/(o-s),0,1);if(h===1)return{top:0,topOffset:f*(c-m)};var g=f*l;return Jh.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:o,scrollY:s}=r;if(!this.isInScrollBar(e,t))return!1;var l=i-o;if(l>=s&&l<=s+a)this.dragOffset=l-s,t.setState({isDraggingVerticalScrollBar:!0});else{this.dragOffset=0;var{top:d,topOffset:h}=this.getTopWithOffset(e,t);t.setViewState({top:d,topOffset:h,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 hN=Jh;class cN extends Pt{onDoubleClick(e,t){var{column:r,row:i}=e,{model:a}=t.props;return it(a)&&r!=null&&i!=null&&a.isEditableRange(xe.makeCell(r,i))?(t.startEditing(r,i),!0):!1}}const mN=cN;function jC(n){return n?.getTokenBoxesForVisibleCell!==void 0}function Xo(n,e,t){return e=vN(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function vN(n){var e=fN(n,"string");return typeof e=="symbol"?e:String(e)}function fN(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 wd extends Pt{constructor(){super(...arguments),Xo(this,"timeoutId",void 0),Xo(this,"isHold",!1),Xo(this,"isDown",!1),Xo(this,"currentLinkBox",void 0)}isHoveringLink(e,t){var{column:r,row:i,x:a,y:o}=e,{renderer:s,metrics:l,props:d}=t,{model:h}=d;if(r==null||i==null||l==null)return this.currentLinkBox=void 0,!1;var{modelRows:c,modelColumns:m}=l,v=$(c,i),f=$(m,r),g=h.renderTypeForCell(f,v),p=s.getCellRenderer(g);if(!jC(p))return!1;if(this.currentLinkBox!=null){var{x1:C,y1:b,x2:S,y2:w}=this.currentLinkBox;if(a>=C&&a<=S&&o>=b&&o<=w)return!0}for(var E=t.updateRenderState(),T=p.getTokenBoxesForVisibleCell(r,i,E),P=0;P<T.length;P+=1)if(Vl(T[P].token)){var D=B.translateTokenBox(T[P],l),{x1:O,x2:R,y1:x,y2:F}=D;if(a>=O&&a<=R&&o>=x&&o<=F)return this.currentLinkBox=D,!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 B.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:o}=e,{model:s}=t.props;t.clearSelectedRanges(),t.focus(),t.moveCursorToPosition(a,o),it(s)&&a!=null&&o!=null&&s.isEditableRange(xe.makeCell(a,o))&&t.startEditing(a,o)},wd.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}}Xo(wd,"HOLD_LENGTH",1e3);const gN=wd;function pN(n,e,t){return e=CN(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function CN(n){var e=bN(n,"string");return typeof e=="symbol"?e:String(e)}function bN(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 SN{constructor(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:5e3;pN(this,"order",void 0),this.order=e}onDown(e,t){return!1}}const Fa=SN;class wN extends Fa{onDown(e,t){switch(e.key){case"a":if(B.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 B.isModifierKeyDown(e)?!1:this.handlePageUp(e,t);case"j":case"J":return B.isModifierKeyDown(e)?!1:this.handlePageDown(e,t);case"h":case"H":return B.isModifierKeyDown(e)?!1:(e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(0,t.state.cursorRow,e.shiftKey),!0);case"l":case"L":{if(B.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(B.isModifierKeyDown(e)?t.state.cursorColumn:0,B.isModifierKeyDown(e)?0:t.state.cursorRow,e.shiftKey,!0,!0),!0;case"End":{var{model:a}=t.props,{columnCount:o,rowCount:s}=a;return e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(B.isModifierKeyDown(e)?t.state.cursorColumn:o-1,B.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?xe.SELECTION_DIRECTION.UP:xe.SELECTION_DIRECTION.DOWN),!0;break;case"Tab":if(t.state.selectedRanges.length>0)return t.moveCursorInDirection(e.shiftKey?xe.SELECTION_DIRECTION.LEFT:xe.SELECTION_DIRECTION.RIGHT),!0;break}return!1}handleArrowMove(e,t,r,i){var a=r.shiftKey,o=B.isModifierKeyDown(r);a?i.trimSelectedRanges():i.clearSelectedRanges();var{cursorRow:s,cursorColumn:l,selectionEndColumn:d,selectionEndRow:h}=i.state,c=a?d:l,m=a?h:s;if(o){var{model:v}=i.props,{columnCount:f,rowCount:g}=v,p=o&&a,C=null,b=null;e<0?(C=0,b=m):e>0?(C=f-1,b=m):t<0?(C=c,b=0):t>0&&(C=c,b=g-1),C!=null&&b!=null&&i.moveCursorToPosition(C,b,a,!0,p)}else{if(!i.metrics)throw new Error("grid.metrics are not set");var{theme:S}=i.props,{autoSelectRow:w=!1,autoSelectColumn:E=!1}=S;if(w&&e!==0){var{lastLeft:T}=i.metrics,{left:P}=i.state;P=Ue(P+e,0,T),i.moveCursorToPosition(P,s,a,!1),i.setViewState({left:P})}else if(E&&t!==0){var{lastTop:D}=i.metrics,{top:O}=i.state;O=Ue(O+t,0,D),i.moveCursorToPosition(O,l,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,o=a,s=i;if(o==null)return!1;var l=t.getMetricState(),{metricCalculator:d}=t,{bottomVisible:h,topVisible:c,hasHorizontalBar:m}=d.getMetrics(l),v=o-(h-c);v-=m?0:1,v=Math.max(v,0);var f=Math.max(v-(o-c),0);return t.moveCursorToPosition(s,v,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,o=i,s=a;if(o===null)return!1;var l=t.getMetricState(),{metricCalculator:d}=t,{bottomVisible:h,topVisible:c,hasHorizontalBar:m,rowCount:v,lastTop:f}=d.getMetrics(l),g=v-1,p=h-c+o;p+=m?0:1,p=Math.min(p,g);var C=Math.min(f,p-(o-c));return t.moveCursorToPosition(s,p,r,!1),t.setViewState({top:C}),!0}}const yN=wN;class EN extends Fa{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:o,startColumn:s}=i;if(o!=null){var l=t.getModelRow(o);if((s===0||s==null)&&ze(a)&&a.isRowExpandable(l))return t.toggleRowExpanded(o),!0}}}return!1}}const TN=EN;class PN extends Fa{onDown(e,t){if(B.isModifierKeyDown(e))return!1;var{model:r}=t.props,{cursorColumn:i,cursorRow:a}=t.state;if(i==null||a==null||!it(r)||!r.isEditableRange(xe.makeCell(i,a)))return!1;var o=i,s=a;return o==null||s==null?!1:e.key.length===1?(t.startEditing(o,s,!0,[1,1],e.key),!0):e.key==="F2"?(t.startEditing(o,s),!0):e.key==="Backspace"?(t.startEditing(o,s,!0,void 0,""),!0):e.key==="Delete"?(t.setValueForCell(o,s,""),!0):!1}}const ON=PN;function DN(n){for(var e=[],t=n.querySelectorAll("tr"),r=0;r<t.length;r+=1){for(var i=t[r],a=i.querySelectorAll("td"),o=[],s=0;s<a.length;s+=1){var l,d,h=a[s];o.push((l=(d=h.textContent)===null||d===void 0?void 0:d.trim())!==null&&l!==void 0?l:"")}e.push(o)}return e}function RN(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 NN(n){var e,t,r=n.querySelector("table");if(r!=null)return DN(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,o=i.includes(" "),s=i.includes("    ");return o&&a.length!==0&&(a.length===1||a.length>1&&(a[0].textContent==null||!a[0].textContent.includes(" ")))?i.split(`
21
21
  `).map(l=>l.split(" ")):a.length>1||s?RN(n.childNodes):i}return null}class FN extends Fa{onDown(e,t){switch(e.key){case"v":if(B.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=NN(r);a!=null&&t.pasteValue(a)};return r.addEventListener("input",i),r.focus(),{preventDefault:!1,stopPropagation:!0}}break}return!1}}const IN=FN;var _N=n=>{switch(n){case"ArrowDown":return en.DOWN;case"ArrowUp":return en.UP;case"ArrowLeft":return en.LEFT;case"ArrowRight":return en.RIGHT;default:return}};function ec(n){var{selectionRange:e=void 0,className:t="",disabled:r=!1,value:i="",isQuickEdit:a=!0,onChange:o=()=>{},onCancel:s=()=>{},onDone:l=()=>{},onContextMenu:d=()=>{},style:h={}}=n,c=y.useRef(null),m=y.useRef(!1),[v]=y.useState(i),[f,g]=y.useState(!1),[p,C]=y.useState(a),[b,S]=y.useState(i);y.useEffect(function(){var{current:_}=c;_!=null&&(_.focus(),e?_.setSelectionRange(e[0],e[1]):_.setSelectionRange(_.value.length,_.value.length))},[e]);var w=y.useCallback(F=>{o(F)},[o]),E=y.useCallback(F=>{var{value:_}=F.target;S(_),g(!0),w(_)},[w,S,g]),T=y.useCallback(()=>{m.current=!0,f&&w(v),g(!1),s()},[v,f,s,w]),P=y.useCallback(()=>{C(!1)},[C]),D=y.useCallback(function(F){var _=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;l(b,{direction:F,fillRange:_})},[l,b]),O=y.useCallback(()=>{m.current||D(null)},[m,D]),R=y.useCallback(F=>{switch(F.stopPropagation(),F.key){case"Escape":F.preventDefault(),T();break;case"Enter":if(F.preventDefault(),B.isModifierKeyDown(F))D(void 0,!0);else if(F.altKey){var _="".concat(b,`
22
- `);S(_),g(!0),w(_)}else D(F.shiftKey?en.UP:en.DOWN);break;case"Tab":F.preventDefault(),D(F.shiftKey?en.LEFT:en.RIGHT);break;case"ArrowDown":case"ArrowUp":case"ArrowLeft":case"ArrowRight":p&&(F.preventDefault(),D(_N(F.key)));break}},[T,D,p,S,g,w,b]),x=y.useCallback(F=>{d(F)},[d]);return u.jsx("textarea",{ref:c,className:J("grid-cell-input-field",t),value:b,onBlur:O,onChange:E,onKeyDown:R,onContextMenu:x,onClick:P,autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",spellCheck:"false",disabled:r,style:h})}ec.propTypes={selectionRange:Y.arrayOf(Y.number),className:Y.string,disabled:Y.bool,isQuickEdit:Y.bool,value:Y.string,onChange:Y.func,onCancel:Y.func,onDone:Y.func,onContextMenu:Y.func,style:Y.shape({})};ec.defaultProps={selectionRange:null,className:"",disabled:!1,value:"",isQuickEdit:!0,onChange:()=>{},onCancel:()=>{},onDone:()=>{},onContextMenu:()=>{},style:{}};var xN=he.createContext({});const MN=xN;function Tv(n,e,t,r,i,a,o){try{var s=n[a](o),l=s.value}catch(d){t(d);return}s.done?e(l):Promise.resolve(l).then(r,i)}function AN(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){Tv(a,r,i,o,s,"next",l)}function s(l){Tv(a,r,i,o,s,"throw",l)}o(void 0)})}}function Pv(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 Ca(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Pv(Object(t),!0).forEach(function(r){yt(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Pv(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function yt(n,e,t){return e=LN(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function LN(n){var e=kN(n,"string");return typeof e=="symbol"?e:String(e)}function kN(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 _r extends y.PureComponent{static getScale(e){var t,r,i,a,o,s=window.devicePixelRatio||1,l=e,d=(t=(r=(i=(a=(o=l.webkitBackingStorePixelRatio)!==null&&o!==void 0?o:l.mozBackingStorePixelRatio)!==null&&a!==void 0?a:l.msBackingStorePixelRatio)!==null&&i!==void 0?i:l.oBackingStorePixelRatio)!==null&&r!==void 0?r:l.backingStorePixelRatio)!==null&&t!==void 0?t:1;return s/d}static getCursorClassName(e){return e!=null&&e!==""?"grid-cursor-".concat(e):null}constructor(e){super(e),yt(this,"renderer",void 0),yt(this,"metricCalculator",void 0),yt(this,"canvas",void 0),yt(this,"canvasContext",void 0),yt(this,"animationFrame",void 0),yt(this,"prevMetrics",void 0),yt(this,"metrics",void 0),yt(this,"renderState",void 0),yt(this,"documentCursor",void 0),yt(this,"dragTimer",void 0),yt(this,"keyHandlers",void 0),yt(this,"mouseHandlers",void 0),yt(this,"getCachedKeyHandlers",Ce(l=>[...l,...this.keyHandlers].sort((d,h)=>d.order-h.order))),yt(this,"getCachedMouseHandlers",Ce(l=>[...l,...this.mouseHandlers].sort((d,h)=>d.order-h.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:o,renderer:s}=e;this.renderer=s||new kC,this.metricCalculator=i||new lR,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 ON(400),new IN(450),new yN(500),new TN(900)],this.mouseHandlers=[new oN(100),new xC(200),new nN(300),new XR(400),new mN(450),new hN(500),new JR(600),new lN(700),new th(800),new gN(825),new WR(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:o,cursorRow:null,cursorColumn:null,selectionStartRow:null,selectionStartColumn:null,selectionEndRow:null,selectionEndColumn:null,selectedRanges:ke,lastSelectedRanges:ke,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:o,onMovedColumnsChanged:s,onMoveColumnComplete:l,onMovedRowsChanged:d,onMoveRowComplete:h}=this.props,{isStickyBottom:c,isStickyRight:m,movedColumns:v,movedRows:f}=e,{movedColumns:g,movedRows:p}=t,{draggingColumn:C,draggingRow:b,movedColumns:S,movedRows:w}=this.state;v!==a&&this.setState({movedColumns:a}),f!==o&&this.setState({movedRows:o}),g!==S&&s(S),t.draggingColumn!=null&&C==null&&l(S),p!==w&&d(w),t.draggingRow!=null&&b==null&&h(w),r!==c&&this.setState({isStuckToBottom:!1}),i!==m&&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 _r.getTheme(this.context,e)}getGridPointFromEvent(e){dv(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 B.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,o=this.canvas.clientWidth,s=this.canvas.clientHeight,{left:l,top:d,leftOffset:h,topOffset:c,movedColumns:m,movedRows:v,isDraggingHorizontalScrollBar:f,isDraggingVerticalScrollBar:g,draggingColumn:p}=e;return Ca({left:l,top:d,leftOffset:h,topOffset:c,width:o,height:s,context:a,theme:t,model:r,movedColumns:m,movedRows:v,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;ze(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:o,selectedRanges:s}=this.state;if(this.setState({selectedRanges:e,lastSelectedRanges:s}),e.length>0){var l=xe.boundedRange(e[0],r,i),d=a,h=o;l.containsCell(o,a)||({row:d,column:h}=l.startCell()),this.setState({selectionStartColumn:l.startColumn,selectionStartRow:l.startRow,selectionEndColumn:l.endColumn,selectionEndRow:l.endRow,cursorColumn:h,cursorRow:d})}}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;A(e),A(t),A(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=_r.getScale(t),i=e.parentElement.getBoundingClientRect(),a=Math.floor(i.width),o=Math.floor(i.height);e.style.width="".concat(a,"px"),e.style.height="".concat(o,"px"),e.width=a*r,e.height=o*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:o,height:s,width:l}=this.prevMetrics;if(a!==e||r!==s){var{isStuckToBottom:d}=this.state;d&&this.scrollToBottom()}if(o!==t||i!==l){var{isStuckToRight:h}=this.state;h&&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 o=t[a];if(o.endColumn!=null&&o.endColumn>=r||o.endRow!=null&&o.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:o,selectionStartRow:s,selectionStartColumn:l}=a,{theme:d}=this.props,{autoSelectRow:h,autoSelectColumn:c}=d;if(r&&o.length>0){var m=o[o.length-1],v=null,f=null,g=null,p=null;if(i){var C,b,S,w;v=h!==void 0&&h?null:Math.min(e??0,(C=m.startColumn)!==null&&C!==void 0?C:0),f=c!==void 0&&c?null:Math.min(t??0,(b=m.startRow)!==null&&b!==void 0?b:0),g=h!==void 0&&h?null:Math.max(e??0,(S=m.endColumn)!==null&&S!==void 0?S:0),p=c!==void 0&&c?null:Math.max(t??0,(w=m.endRow)!==null&&w!==void 0?w:0)}else v=m.startColumn,f=m.startRow,(l!=null||s!=null)&&((h===void 0||!h)&&(v=l),(c===void 0||!c)&&(f=s)),g=h!==void 0&&h?null:e,p=c!==void 0&&c?null:t;var E=xe.makeNormalized(v,f,g,p);if(m.equals(E))return null;var T=[...o];return T[T.length-1]=E,{selectedRanges:T,selectionEndColumn:e,selectionEndRow:t}}var P=[...o],D=h!==void 0&&h?null:e,O=c!==void 0&&c?null:t;return P.push(xe.makeNormalized(D,O,D,O)),{selectedRanges:P,selectionEndColumn:e,selectionEndRow:t}})}commitSelection(){this.setState(e=>{var{theme:t}=this.props,{autoSelectRow:r}=t,{selectedRanges:i,lastSelectedRanges:a,cursorRow:o,cursorColumn:s}=e;if(i.length===1&&(r!==void 0&&r?xe.rowCount(i)===1:xe.cellCount(i)===1)&&xe.rangeArraysEqual(i,a))return{selectedRanges:[],lastSelectedRanges:[],cursorColumn:null,cursorRow:null};var l=i.slice();if(l.length>1){for(var d=l[l.length-1],h=0;h<l.length-1;h+=1){var c=l[h];if(c.contains(d)){var m=c.subtract(d);l.pop(),l.splice(h,1),l=l.concat(m);break}}l=xe.consolidate(l)}var v=s,f=o;if(!xe.containsCell(l,s,o)){var{model:g}=this.props,{columnCount:p,rowCount:C}=g,b=xe.nextCell(xe.boundedRanges(i,p,C));b!=null?{column:v,row:f}=b:(v=null,f=null)}return l.length===0&&(v=null,f=null),{cursorRow:f,cursorColumn:v,selectedRanges:l,lastSelectedRanges:i}})}setFocusRow(e){var t;if(!(!this.metrics||!this.prevMetrics)){var{gridY:r,height:i,lastTop:a,userRowHeights:o,rowHeight:s}=this.metrics,l=i-r,d=Math.round(l/2)+((t=o.get(e))!==null&&t!==void 0?t:s),h=this.getMetricState(),c=this.metricCalculator.getLastTop(h,e+1,d);this.setState({top:Math.min(a,c),selectedRanges:[new xe(null,e,null,e)],isStuckToBottom:!1});var{cursorColumn:m}=this.state;this.moveCursorToPosition(m,e,!1,!1)}}selectAll(){var{model:e,theme:t}=this.props,{autoSelectRow:r,autoSelectColumn:i}=t,a=i!==void 0&&i?null:0,o=i!==void 0&&i?null:e.rowCount-1,s=r!==void 0&&r?null:0,l=r!==void 0&&r?null:e.columnCount-1;this.setSelectedRanges([new xe(s,a,l,o)])}moveCursor(e,t,r){var{cursorRow:i,cursorColumn:a,selectionEndColumn:o,selectionEndRow:s}=this.state,l=r?o:a,d=r?s:i;if(d===null||l===null){var{left:h,top:c}=this.state;this.moveCursorToPosition(h,c,r)}else{var{model:m}=this.props,{columnCount:v,rowCount:f}=m,g=Ue(l+e,0,v-1),p=Ue(d+t,0,f-1);this.moveCursorToPosition(g,p,r)}}moveCursorInDirection(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:xe.SELECTION_DIRECTION.DOWN,{model:t}=this.props,{columnCount:r,rowCount:i}=t,{cursorRow:a,cursorColumn:o,selectedRanges:s}=this.state,l=s.length>0?s:[xe.makeCell(o,a)],d=null;if(l.length===1&&xe.cellCount(l)===1){var h,c=new xe(0,0,r-1,i-1);d=(h=c.nextCell(o,a,e))!==null&&h!==void 0?h:c.startCell(e)}else d=xe.nextCell(xe.boundedRanges(l,r,i),o,a,e);if(d!=null){var{column:m,row:v}=d;this.setState({cursorColumn:m,cursorRow:v}),xe.containsCell(s,m,v)||this.setState({selectedRanges:[xe.makeCell(m,v)],selectionStartColumn:m,selectionStartRow:v,selectionEndColumn:m,selectionEndRow:v}),this.moveViewToCell(d.column,d.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:o,leftVisible:s}=this.metrics,l=this.getMetricState(this.state),{top:d,left:h,topOffset:c,leftOffset:m}=this.state;t!=null&&!B.isFloatingRow(t,this.metrics)&&(t<o?(d=r.getTopForTopVisible(l,t),c=0):t>i&&(d=r.getTopForBottomVisible(l,t),c=0)),e!=null&&!B.isFloatingColumn(e,this.metrics)&&(e<s?(h=r.getLeftForLeftVisible(l,e),m=0):e>a&&(h=r.getLeftForRightVisible(l,e),m=0)),this.setViewState({top:d,left:h,topOffset:c,leftOffset:m})}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:o}=e,{lastTop:s,lastLeft:l}=this.metrics;a!=null&&this.setState({isStuckToBottom:r&&a>=s}),o!=null&&this.setState({isStuckToRight:i&&o>=l}),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:o}=this.props;if(!it(o))throw new Error("model is not editable");var s=this.getModelColumn(e),l=this.getModelRow(t),d={column:e,row:t,selectionRange:i,value:a!==void 0?a:o.editValueForCell(s,l),isQuickEdit:r};this.setState({editingCell:d,cursorColumn:e,cursorRow:t}),this.moveViewToCell(e,t)}isValidForCell(e,t,r){var{model:i}=this.props,a=this.getModelColumn(e),o=this.getModelRow(t);return it(i)&&i.isValidForCell(a,o,r)}pasteValue(e){var t=this;return AN(function*(){var{model:r}=t.props,{movedColumns:i,movedRows:a,selectedRanges:o}=t.state;try{if(uv(r),!r.isEditable||!o.every(p=>r.isEditableRange(p)))throw new pu("Can't paste in to read-only area.");if(o.length<=0)throw new pu("Select an area to paste to.");if(typeof e=="string"){var s=[],l=B.getModelRanges(o,i,a);xe.forEachCell(l,(p,C)=>{s.push({column:p,row:C,text:e})}),yield r.setValues(s);return}var d=e.length,h=e[0].length,{columnCount:c,rowCount:m}=r,v=o;if(v.every(p=>{var C,b;return xe.cellCount([p])===1&&((C=p.startColumn)!==null&&C!==void 0?C:0)+h<=c&&((b=p.startRow)!==null&&b!==void 0?b:0)+d<=m})&&(v=v.map(p=>{var C,b;return new xe(p.startColumn,p.startRow,((C=p.startColumn)!==null&&C!==void 0?C:0)+h-1,((b=p.startRow)!==null&&b!==void 0?b:0)+d-1)}),t.setSelectedRanges(v)),!v.every(p=>xe.rowCount([p])===d&&xe.columnCount([p])===h))throw new pu("Copy and paste area are not same size.");var f=[];v.forEach(p=>{for(var C=0;C<h;C+=1)for(var b=0;b<d;b+=1){var S,w;f.push({column:((S=p.startColumn)!==null&&S!==void 0?S:0)+C,row:((w=p.startRow)!==null&&w!==void 0?w:0)+b,text:e[b][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;uv(i);var a=this.getModelColumn(e),o=this.getModelRow(t);return i.isValidForCell(a,o,r)?(i.setValueForCell(a,o,r),!0):!1}setValueForRanges(e,t){var{model:r}=this.props,{movedColumns:i,movedRows:a}=this.state,o=B.getModelRanges(e,i,a);it(r)&&r.setValueForRanges(o,t)}isSelected(e,t){for(var{selectedRanges:r}=this.state,i=0;i<r.length;i+=1){var a,o,s=r[i],l=s.startRow===null||s.startRow<=e&&e<=((a=s.endRow)!==null&&a!==void 0?a:0),d=s.startColumn===null||s.startColumn<=t&&t<=((o=s.endColumn)!==null&&o!==void 0?o:0);if(l&&d)return!0}return!1}addDocumentCursor(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:null;this.documentCursor!==_r.getCursorClassName(e)&&(this.documentCursor!=null&&document.documentElement.classList.remove(this.documentCursor),this.documentCursor=_r.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)},_r.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 o=i[a];if(o.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 o,s,l=a;(!((o=l?.stopPropagation)!==null&&o!==void 0)||o)&&e.stopPropagation(),(!((s=l?.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),o=this.getMouseHandlers(),s=null,l=0;l<o.length;l+=1){var d=o[l],h=d[e]!=null&&d[e](a,this,t);if(h!==!1){var c,m;d.cursor!=null&&({cursor:s}=d,i&&this.addDocumentCursor(s));var v=h;(!((c=v?.stopPropagation)!==null&&c!==void 0)||c)&&t.stopPropagation(),(!((m=v?.preventDefault)!==null&&m!==void 0)||m)&&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:o,columnCount:s,rowCount:l,scrollableContentWidth:d,scrollableViewportWidth:h,scrollableContentHeight:c,scrollableViewportHeight:m,hasHorizontalBar:v,hasVerticalBar:f}=r,{top:g,left:p,topOffset:C,leftOffset:b}=r,S=this.getTheme(),{deltaX:w,deltaY:E}=B.getScrollDelta(e,r.barWidth,r.barHeight,r.rowHeight,r.rowHeight);v&&w!==0;){if(b+=w,w=0,s>1){if(b>0&&p>=o||b<0&&p<=0){b=0;break}}else{if(b<=0){b=0;break}var T=d-h;if(b>=T){b=T;break}}if(b>0){var P,D=(P=r.allColumnWidths.get(p))!==null&&P!==void 0?P:t.getVisibleColumnWidth(p,i);b>=D?(w=b-D,b=0,p+=1):S.scrollSnapToColumn&&s>1&&(b=0,p+=1)}else if(b<0){var O,R=(O=r.allColumnWidths.get(p-1))!==null&&O!==void 0?O:t.getVisibleColumnWidth(p-1,i);Math.abs(b)<=R&&S.scrollSnapToColumn&&s>1?(b=0,p-=1):(w=b+R,b=0,p-=1)}}for(;f&&E!==0;){if(C+=E,E=0,l>1){if(C>0&&g>=a||C<0&&g<=0){C=0;break}}else{if(C<=0){C=0;break}var x=c-m;if(C>=x){C=x;break}}if(C>0){var F,_=(F=r.allRowHeights.get(g))!==null&&F!==void 0?F:t.getVisibleRowHeight(g,i);C>=_?(E=C-_,C=0,g+=1):S.scrollSnapToRow&&l>1&&(C=0,g+=1)}else if(C<0){var L,M=(L=r.allRowHeights.get(g-1))!==null&&L!==void 0?L:t.getVisibleRowHeight(g-1,i);Math.abs(C)<=M&&S.scrollSnapToRow&&l>1?(C=0,g-=1):(E=C+M,C=0,g-=1)}}this.setViewState({top:g,left:p,leftOffset:b,topOffset:C}),e.stopPropagation(),e.preventDefault()}}handleEditCellCancel(){this.setState({editingCell:null}),this.focus()}handleEditCellChange(e){this.setState(t=>{var{editingCell:r}=t;try{return dv(r),{editingCell:Ca(Ca({},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=en.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:o,row:s}=i;if(!this.isValidForCell(o,s,e)){t===null&&this.setState({editingCell:null});return}r?this.setValueForRanges(a,e):this.setValueForCell(o,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||!it(e))return null;var{selectionRange:i,value:a,isQuickEdit:o}=t,{column:s,row:l}=t,{gridX:d,gridY:h,allColumnXs:c,allRowYs:m,allColumnWidths:v,allRowHeights:f}=r,g=c.get(s),p=m.get(l),C=v.get(s),b=f.get(l),S=g!=null&&p!=null&&C!=null&&b!=null?{position:"absolute",left:d+g,top:h+p,width:C,height:b}:{opacity:0},w=this.getModelColumn(s),E=this.getModelRow(l),T=w!=null&&E!=null?{textAlign:e.textAlignForCell(w,E)}:void 0,P=e.isValidForCell(w,E,a);return u.jsx("div",{style:S,children:u.jsx(ec,{selectionRange:i,className:J({error:!P}),onCancel:this.handleEditCellCancel,onChange:this.handleEditCellChange,onDone:this.handleEditCellCommit,isQuickEdit:o,style:T,value:a},"".concat(s,",").concat(l))})}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:o,draggingRowSeparator:s,editingCell:l,isDraggingHorizontalScrollBar:d,isDraggingVerticalScrollBar:h,isDragging:c,mouseX:m,mouseY:v,selectedRanges:f}=this.state,{model:g,stateOverride:p}=this.props,{metrics:C}=this,b=this.canvasContext,S=this.getTheme(),w=this.canvas.clientWidth,E=this.canvas.clientHeight;return A(C),this.renderState=Ca({width:w,height:E,context:b,theme:S,model:g,metrics:C,mouseX:m,mouseY:v,selectedRanges:f,draggingColumn:r,draggingColumnSeparator:i,draggingRow:a,draggingRowOffset:o,draggingRowSeparator:s,editingCell:l,isDraggingHorizontalScrollBar:d,isDraggingVerticalScrollBar:h,isDragging:c,cursorColumn:e,cursorRow:t},p),this.renderState}render(){var{cursor:e}=this.state;return u.jsxs(u.Fragment,{children:[u.jsx("canvas",{className:J("grid-canvas",_r.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()]})}}yt(_r,"contextType",MN);yt(_r,"defaultProps",{canvasOptions:{alpha:!1},isStickyBottom:!1,isStickyRight:!1,isStuckToBottom:!1,isStuckToRight:!1,keyHandlers:ke,mouseHandlers:ke,movedColumns:ke,movedRows:ke,onError:()=>{},onSelectionChanged:()=>{},onMovedColumnsChanged:n=>{},onMoveColumnComplete:()=>{},onMovedRowsChanged:()=>{},onMoveRowComplete:()=>{},onViewChanged:n=>{},onTokenClicked:n=>{Vl(n)&&window.open(n.href,"_blank","noopener,noreferrer")},stateOverride:{},theme:{autoSelectColumn:!1,autoSelectRow:!1}});yt(_r,"pixelsPerLine",100/3);yt(_r,"dragTimeout",1e3);yt(_r,"getTheme",Ce((n,e)=>Ca(Ca(Ca({},uR),n),e)));const jN=_r;function HN(n,e,t){return e=$N(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function $N(n){var e=UN(n,"string");return typeof e=="symbol"?e:String(e)}function UN(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 Cu=5e3;class BN extends ES{constructor(){super(...arguments),HN(this,"getCachedTokensInText",wn((e,t)=>{if(t>=e.length)return B.findTokensWithProtocolInText(e);var r=e.slice(t-1,Cu).search(/\s/),i=t+r;r===-1&&(i=Math.min(Cu,e.length));var a=e.substring(0,i);return B.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]:Cu,i=this.textForCell(e,t);return this.getCachedTokensInText(i,r)}renderTypeForCell(e,t){return"text"}}const VN=BN;function GN(n,e){var t=KN(n);if(t!==void 0){var r=JN(n);return"".concat(r," ? ").concat(t," : ").concat(e)}}function WN(n,e){return n.Column.formatRowColor(e)}function zN(n,e){return n.formatColor(e)}var es=ae.module("ConditionalFormattingUtils"),wr;(function(n){n.CONDITIONAL="conditional",n.ROWS="rows"})(wr||(wr={}));var ve;(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"})(ve||(ve={}));var Ne;(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"})(Ne||(Ne={}));var De;(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"})(De||(De={}));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 Ct;(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"})(Ct||(Ct={}));var Fe;(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"})(Fe||(Fe={}));function Ov(n){switch(n){case Fe.NO_FORMATTING:return"No formatting";case Fe.POSITIVE:return"Positive";case Fe.NEGATIVE:return"Negative";case Fe.WARN:return"Warn";case Fe.NEUTRAL:return"Neutral";case Fe.ACCENT_1:return"Accent 1";case Fe.ACCENT_2:return"Accent 2";case Fe.CUSTOM:return"Custom..."}}function Wl(n){var{type:e,customConfig:t}=n;switch(e){case Fe.NO_FORMATTING:return;case Fe.POSITIVE:return"#9fde6f";case Fe.NEGATIVE:return"#ff6087";case Fe.WARN:return"#f67f40";case Fe.NEUTRAL:return"#ffd95c";case Fe.ACCENT_1:return"#78dce8";case Fe.ACCENT_2:return"#ab9bf5";case Fe.CUSTOM:return t?.background;default:return}}function zl(n){var{type:e,customConfig:t}=n;switch(e){case Fe.NO_FORMATTING:return;case Fe.POSITIVE:return"#526a3f";case Fe.NEGATIVE:return"#802f44";case Fe.WARN:return"#663318";case Fe.NEUTRAL:return"#63562b";case Fe.ACCENT_1:return"#3f6469";case Fe.ACCENT_2:return"#554d72";case Fe.CUSTOM:return t?.color;default:return}}function KN(n){var e=zl(n.style),t=Wl(n.style);if(!(e===void 0||t===void 0))return"bgfg(`".concat(t,"`, `").concat(e,"`)")}function YN(n){var{column:e,value:t,start:r,end:i}=n;return uF(e.name,n.condition,t,r,i)}function qN(n){var{column:e,value:t}=n;return hF(e.name,n.condition,t)}function XN(n){var{column:e,value:t}=n;return cF(e.name,n.condition,t)}function QN(n){var{column:e}=n;return mF(e.name,n.condition)}function ZN(n){var{column:e,value:t}=n;return vF(e.name,n.condition,t)}function JN(n){var{column:e}=n;if(j.isNumberType(e.type))return YN(n);if(j.isCharType(e.type))return ZN(n);if(j.isStringType(e.type))return qN(n);if(j.isDateType(e.type))return XN(n);if(j.isBooleanType(e.type))return QN(n);throw new Error("Invalid column type")}function eF(n){switch(n){case ve.IS_EQUAL:return"is equal to";case ve.IS_NOT_EQUAL:return"is not equal to";case ve.IS_BETWEEN:return"is between";case ve.GREATER_THAN:return"greater than";case ve.GREATER_THAN_OR_EQUAL:return"greater than or equal to";case ve.LESS_THAN:return"less than";case ve.LESS_THAN_OR_EQUAL:return"less than or equal to";case ve.IS_NULL:return"is null";case ve.IS_NOT_NULL:return"is not null"}}function tF(n){switch(n){case Ne.IS_EXACTLY:return"is exactly";case Ne.IS_NOT_EXACTLY:return"is not exactly";case Ne.CONTAINS:return"contains";case Ne.DOES_NOT_CONTAIN:return"does not contain";case Ne.STARTS_WITH:return"starts with";case Ne.ENDS_WITH:return"ends with";case Ne.IS_NULL:return"is null";case Ne.IS_NOT_NULL:return"is not null"}}function rF(n){switch(n){case De.IS_EXACTLY:return"is";case De.IS_NOT_EXACTLY:return"is not";case De.IS_BEFORE:return"is before";case De.IS_BEFORE_OR_EQUAL:return"is before or equal";case De.IS_AFTER:return"is after";case De.IS_AFTER_OR_EQUAL:return"is after or equal";case De.IS_NULL:return"is null";case De.IS_NOT_NULL:return"is not null"}}function nF(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 iF(n){switch(n){case Ct.IS_EQUAL:return"is";case Ct.IS_NOT_EQUAL:return"is not";case Ct.IS_NULL:return"is null";case Ct.IS_NOT_NULL:return"is not null"}}function HC(n){if(j.isNumberType(n))return ve.IS_EQUAL;if(j.isCharType(n))return Ct.IS_EQUAL;if(j.isStringType(n))return Ne.IS_EXACTLY;if(j.isDateType(n))return De.IS_EXACTLY;if(j.isBooleanType(n))return Rt.IS_TRUE;throw new Error("Invalid column type")}function $C(n){if(j.isCharType(n)||j.isStringType(n))return""}function UC(n){var{condition:e,value:t,start:r,end:i}=n;return{condition:e,value:t,start:r,end:i}}function yd(n){return{condition:HC(n),value:$C(n),start:void 0,end:void 0}}function BC(){return{type:Fe.NO_FORMATTING}}function aF(n){switch(n){case Ne.IS_EXACTLY:return"==";case Ne.IS_NOT_EXACTLY:return"!=";case Ne.CONTAINS:return"contains";case Ne.DOES_NOT_CONTAIN:return"does not contain";case Ne.STARTS_WITH:return"starts with";case Ne.ENDS_WITH:return"ends with";case Ne.IS_NULL:return"is null";case Ne.IS_NOT_NULL:return"is not null"}}function oF(n){switch(n){case De.IS_EXACTLY:return"==";case De.IS_NOT_EXACTLY:return"!=";case De.IS_BEFORE:return"<";case De.IS_BEFORE_OR_EQUAL:return"<=";case De.IS_AFTER:return">";case De.IS_AFTER_OR_EQUAL:return">=";case De.IS_NULL:return"is null";case De.IS_NOT_NULL:return"is not null"}}function sF(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 lF(n){switch(n){case Ct.IS_EQUAL:return"==";case Ct.IS_NOT_EQUAL:return"!=";case Ct.IS_NULL:return"is null";case Ct.IS_NOT_NULL:return"is not null"}}function dF(n){switch(n){case ve.IS_EQUAL:return"==";case ve.IS_NOT_EQUAL:return"!=";case ve.IS_BETWEEN:return"==";case ve.GREATER_THAN:return">";case ve.GREATER_THAN_OR_EQUAL:return">=";case ve.LESS_THAN:return"<";case ve.LESS_THAN_OR_EQUAL:return"<=";case ve.IS_NULL:return"is null";case ve.IS_NOT_NULL:return"is not null"}}function uF(n,e,t,r,i){switch(e){case ve.IS_EQUAL:return"".concat(n," == ").concat(t);case ve.IS_NOT_EQUAL:return"".concat(n," != ").concat(t);case ve.IS_BETWEEN:return"".concat(n," > ").concat(r," && ").concat(n," < ").concat(i);case ve.GREATER_THAN:return"".concat(n," > ").concat(t);case ve.GREATER_THAN_OR_EQUAL:return"".concat(n," >= ").concat(t);case ve.LESS_THAN:return"".concat(n," < ").concat(t);case ve.LESS_THAN_OR_EQUAL:return"".concat(n," <= ").concat(t);case ve.IS_NULL:return"".concat(n," == null");case ve.IS_NOT_NULL:return"".concat(n," != null")}}function hF(n,e,t){switch(e){case Ne.IS_EXACTLY:return"".concat(n,' == "').concat(t,'"');case Ne.IS_NOT_EXACTLY:return"".concat(n,' != "').concat(t,'"');case Ne.CONTAINS:return"".concat(n," != null && ").concat(n,'.contains("').concat(t,'")');case Ne.DOES_NOT_CONTAIN:return"".concat(n," != null && !").concat(n,'.contains("').concat(t,'")');case Ne.STARTS_WITH:return"".concat(n," != null && ").concat(n,'.startsWith("').concat(t,'")');case Ne.ENDS_WITH:return"".concat(n," != null && ").concat(n,'.endsWith("').concat(t,'")');case Ne.IS_NULL:return"".concat(n," == null");case Ne.IS_NOT_NULL:return"".concat(n," != null")}}function cF(n,e,t){switch(e){case De.IS_EXACTLY:return"".concat(n,' == convertDateTime("').concat(t,'")');case De.IS_NOT_EXACTLY:return"".concat(n," != convertDateTime(`").concat(t,"`)");case De.IS_BEFORE:return"".concat(n," < convertDateTime(`").concat(t,"`)");case De.IS_BEFORE_OR_EQUAL:return"".concat(n,' <= convertDateTime("').concat(t,'")');case De.IS_AFTER:return"".concat(n," > convertDateTime(`").concat(t,"`)");case De.IS_AFTER_OR_EQUAL:return"".concat(n," >= convertDateTime(`").concat(t,"`)");case De.IS_NULL:return"".concat(n," == null");case De.IS_NOT_NULL:return"".concat(n," != null")}}function mF(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 vF(n,e,t){switch(e){case Ct.IS_EQUAL:return"".concat(n," == '").concat(t,"'");case Ct.IS_NOT_EQUAL:return"".concat(n," != '").concat(t,"'");case Ct.IS_NULL:return"isNull(".concat(n,")");case Ct.IS_NOT_NULL:return"!isNull(".concat(n,")")}}function fF(n,e){if(j.isNumberType(n))return dF(e);if(j.isCharType(n))return lF(e);if(j.isStringType(n))return aF(e);if(j.isDateType(n))return oF(e);if(j.isBooleanType(n))return sF(e);throw new Error("Invalid column type")}function gF(n,e,t){if(t===void 0)return es.debug("no rules passed."),[];var r=[],i,a=new Map;return t.forEach(o=>{var s,{config:l,type:d}=o,{column:h}=l,c=e.find(C=>{var{name:b,type:S}=C;return b===h.name&&S===h.type});if(c===void 0){es.debug("Column ".concat(h.name,":").concat(h.type," not found. Ignoring format rule."),l);return}var[m,v]=(s=d===wr.CONDITIONAL?a.get(c.name):i)!==null&&s!==void 0?s:["null",void 0],f=GN(l,m);if(f===void 0){es.debug("Ignoring format rule.",l);return}var g=v===void 0?-1:r.indexOf(v);g>-1&&r.splice(g,1);var p=d===wr.CONDITIONAL?zN(c,f):WN(n,f);r.push(p),d===wr.CONDITIONAL?a.set(c.name,[f,p]):i=[f,p]}),r}function pF(n,e,t){switch(e){case De.IS_NULL:case De.IS_NOT_NULL:return!0;default:{var[r,...i]=(t??"").split(" "),a=i.join(" ");try{Ea.parseDateTimeString(r)}catch{return es.debug("Invalid datetime string",r),!1}try{n.i18n.TimeZone.getTimeZone(a)}catch{return es.debug("Invalid timezone string",a),!1}return!0}}}function CF(n){var{type:e}=n;return j.isNumberType(e)||j.isCharType(e)||j.isStringType(e)||j.isDateType(e)||j.isBooleanType(e)}function Ed(n){var{animation:e="iris-grid-bottom-bar-slide-up",children:t,className:r,isShown:i,onClick:a,onEntering:o,onEntered:s,onExiting:l,onExited:d}=n;return u.jsx(Lr,{in:i,timeout:Ze.transitionMs,classNames:e,onEntering:o,onEntered:s,onExiting:l,onExited:d,mountOnEnter:!0,unmountOnExit:!0,children:u.jsx("div",{className:J("iris-grid-bottom-bar",r),role:"presentation",onClick:a,onKeyPress:a,children:t})})}var bF=3e3,SF=5;function wF(n){var{isSaving:e=!1,onSave:t,onDiscard:r,discardTooltip:i,saveTooltip:a,error:o,pendingDataErrors:s,pendingDataMap:l,onEntering:d,onEntered:h,onExiting:c,onExited:m}=n,[v,f]=y.useState(!1),[g,p]=y.useState(!1),C=y.useRef(),b=Ih(e),S=y.useMemo(()=>s.size===0?o:s.size<=SF?"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)"),[o,s]);y.useEffect(function(){b!=null&&b&&!e&&S==null&&(f(!0),p(!0),C.current=setTimeout(()=>{f(!1)},bF))},[S,e,b]),y.useEffect(function(){C.current&&l.size>0&&(clearTimeout(C.current),f(!1),p(!1))},[l]),y.useEffect(function(){return()=>C.current?clearTimeout(C.current):void 0},[]);var w=l.size,E;return e?E=u.jsx(kn,{}):g&&(E=Ph),u.jsxs(Ed,{className:"pending-data-bottom-bar",isShown:w>0||v||S!=null,onEntering:d,onEntered:h,onExiting:c,onExited:()=>{p(!1),m&&m()},children:[S!=null&&S!==""&&u.jsxs("div",{className:"error-message",children:[u.jsx(te,{icon:Ki}),u.jsx("span",{children:"".concat(S)})]}),(S==null||S==="")&&u.jsx("div",{className:"status-message",children:w>0&&u.jsx("span",{children:"".concat(w," row").concat(w>1?"s":""," pending")})}),u.jsxs("div",{className:"buttons-container",children:[!e&&!g&&u.jsx(G,{kind:"secondary",onClick:r,tooltip:i,children:"Discard"}),u.jsxs(G,{kind:g?"success":"primary",onClick:t,icon:E,disabled:e||g||S!=null,tooltip:a,children:[e&&"Committing...",!e&&g&&"Success",!e&&!g&&"Commit"]})]})]})}var rh;(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"})(rh||(rh={}));const $e=rh;var yF=[$e.SUM,$e.ABS_SUM,$e.MIN,$e.MAX,$e.VAR,$e.AVG,$e.STD,$e.FIRST,$e.LAST,$e.COUNT_DISTINCT,$e.DISTINCT,$e.COUNT,$e.UNIQUE],EF=n=>{switch(n){default:return!1}},TF=(n,e)=>{switch(n){case $e.COUNT:case $e.FIRST:case $e.LAST:case $e.COUNT_DISTINCT:case $e.DISTINCT:case $e.UNIQUE:return!0;case $e.MIN:case $e.MAX:return j.isNumberType(e)||j.isDateType(e)||j.isTextType(e);case $e.SUM:case $e.ABS_SUM:case $e.VAR:case $e.AVG:case $e.STD:return j.isNumberType(e);case $e.SKIP:return!1}},tc=(n,e)=>n.filter(t=>TF(e,t.type)),PF=(n,e,t,r)=>tc(n,e).map(i=>{var{name:a}=i;return a}).filter(i=>t.includes(i)?!r:r);const Gi={isRollupOperation:EF,filterValidColumns:tc,getOperationColumnNames:PF};var nh;(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"})(nh||(nh={}));const oo=nh;var OF=Object.freeze([[oo.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS,!1],[oo.LINK_CHANGE_CLEARS_ALL_FILTERS,!1]]);const VC={DEFAULTS:OF};function Ai(n,e,t){return e=DF(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function DF(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)}var NF=ae.module("ColumnHeaderGroup");function bu(n){return n instanceof Jr}class Jr{constructor(e){var{name:t,children:r,color:i,depth:a,childIndexes:o,parent:s}=e;Ai(this,"name",void 0),Ai(this,"children",void 0),Ai(this,"depth",void 0),Ai(this,"parent",void 0),Ai(this,"color",void 0),Ai(this,"childIndexes",void 0),Ai(this,"getVisibleRange",Ce(l=>{var d=this.childIndexes.flat(),h=B.getVisibleIndexes(d,l),c=Math.min(...h),m=Math.max(...h);return m-c!==d.length-1&&NF.warn("Column header group ".concat(this.name," is not contiguous")),[c,m]})),this.name=t,this.children=r,this.color=i,this.depth=a,this.childIndexes=o,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(Jr.NEW_GROUP_PREFIX)}}Ai(Jr,"NEW_GROUP_PREFIX",":newGroup");var FF=["selectedValues"],IF=["selectedValues"];function Dv(n,e){if(n==null)return{};var t=_F(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 _F(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 Rv(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 Kn(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Rv(Object(t),!0).forEach(function(r){ih(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Rv(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function ih(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=MF(n,"string");return typeof e=="symbol"?e:String(e)}function MF(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 Ao=ae.module("IrisGridUtils");function Pi(n,e){return n>=0&&n<e.length}function AF(n){return n.asDate!=null}class Xe{static dehydrateGridState(e,t){var{isStuckToBottom:r,isStuckToRight:i,movedColumns:a,movedRows:o}=t,{columns:s}=e;return{isStuckToBottom:r,isStuckToRight:i,movedColumns:[...a].filter(l=>{var{to:d,from:h}=l;return Pi(d,s)&&(typeof h=="number"&&Pi(h,s)||Array.isArray(h)&&Pi(h[0],s)&&Pi(h[1],s))}).map(l=>{var{to:d,from:h}=l;return{to:s[d].name,from:Array.isArray(h)?[s[h[0]].name,s[h[1]].name]:s[h].name}}),movedRows:[...o]}}static hydrateGridState(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[],{isStuckToBottom:i,isStuckToRight:a,movedColumns:o,movedRows:s}=t,{columns:l}=e,d=Xe.parseCustomColumnNames(r),h=l.map(c=>{var{name:m}=c;return m}).concat(d);return{isStuckToBottom:i,isStuckToRight:a,movedColumns:[...o].map(c=>{var{to:m,from:v}=c,f=g=>typeof g=="string"?h.findIndex(p=>p===g):g;return{to:f(m),from:Array.isArray(v)?[f(v[0]),f(v[1])]:f(v)}}).filter(c=>{var{to:m,from:v}=c;return Pi(m,h)&&(typeof v=="number"&&Pi(v,h)||Array.isArray(v)&&Pi(v[0],h)&&Pi(v[1],h))}),movedRows:[...s]}}static dehydrateIrisGridPanelState(e,t){var{isSelectingPartition:r,partition:i,partitionColumn:a,advancedSettings:o}=t;return{isSelectingPartition:r,partition:i,partitionColumn:a!=null?a.name:null,advancedSettings:[...o]}}static hydrateIrisGridPanelState(e,t){var r,{isSelectingPartition:i,partition:a,partitionColumn:o,advancedSettings:s}=t,{columns:l}=e;return{isSelectingPartition:i,partition:a??null,partitionColumn:o!=null&&(r=Xe.getColumnByName(l,o))!==null&&r!==void 0?r:null,advancedSettings:new Map([...VC.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:o}=r,{advancedFilters:s,quickFilters:l,sorts:d}=i;return{advancedFilters:s,inputFilters:t,partition:o,partitionColumn:a,quickFilters:l,sorts:d}}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(o=>{var{name:s,type:l}=o;return s===i&&l===a})})}static getFiltersFromFilterMap(e){for(var t=[],r=Array.from(e.keys()),i=0;i<r.length;i+=1){var a=r[i],o=e.get(a);o?.filter!=null&&t.push(o.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=Xe.parseCustomColumnNames(e),i=Xe.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(o=>{var{name:s}=o;return s}),a=new Map(t);return r.forEach(o=>a.delete(i.indexOf(o))),a}static removeColumnFromMovedColumns(e,t,r){for(var i=e.map(l=>{var{name:d}=l;return d}),a=[...t],o=function(){for(var d=r[s],h=i.findIndex(C=>C===d),c=[],m=0;m<a.length;m+=1){var v=a[m],f=Kn({},v),[g,p]=Array.isArray(v.from)?v.from:[v.from,v.from];h<=v.to&&(f.to-=1),h<g&&(g-=1),h<=p&&(p-=1),g<=p&&g!==f.to&&(g===p?c.push(Kn(Kn({},f),{},{from:g})):c.push(Kn(Kn({},f),{},{from:[g,p]}))),h=B.applyItemMoves(h,h,[v])[0][0]}a=c,i.splice(i.findIndex(C=>C===d),1)},s=0;s<r.length;s+=1)o();return a}static removeColumnsFromSelectDistinctColumns(e,t){return e.filter(r=>!t.includes(r))}static getVisibleColumnsInRange(e,t,r,i,a){for(var o=[],s=t;s<=r;s+=1){var l=B.getModelIndex(s,i);l>=0&&l<e.length&&!a.includes(l)&&o.push(e[l])}return o}static getPrevVisibleColumns(e,t,r,i,a){for(var o=[],s=t;s>=0&&o.length<r;){var l=B.getModelIndex(s,i);l>=0&&l<e.length&&!a.includes(l)&&o.unshift(e[l]),s-=1}return o}static getNextVisibleColumns(e,t,r,i,a){for(var o=[],s=t;s<e.length&&o.length<r;){var l=B.getModelIndex(s,i);l>=0&&l<e.length&&!a.includes(l)&&o.push(e[l]),s+=1}return o}static getColumnsToFetch(e,t,r){var i=[...t];return r.forEach(a=>{var o=e.find(s=>{var{name:l}=s;return l===a});o!=null&&!t.includes(o)&&i.push(o)}),i}static getModelViewportColumns(e,t,r,i){var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:[],o=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 l=Xe.getVisibleColumnsInRange(e,t,r,i,a),d=l.length*s,h=Xe.getPrevVisibleColumns(e,t-1,d,i,a),c=Xe.getNextVisibleColumns(e,r+1,d,i,a),m=[...h,...l,...c];return Xe.getColumnsToFetch(e,m,o)}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),o="".concat(i.startColumn,":").concat(i.endColumn);t.has(a)||t.set(a,[]),t.get(a).push(o)}for(var s=[...t.keys()],l=t.get(s[0]).sort().join(","),d=1;d<s.length;d+=1)if(t.get(s[d]).sort().join(",")!==l)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];A(a.startColumn),A(a.endColumn);for(var o=(s=a.startColumn)!==null&&s!==void 0?s:0;o<=((l=a.endColumn)!==null&&l!==void 0?l:t.length-1);o+=1){var s,l;r.add(o)}}return[...r].map(d=>t[d])}static snapshotDataToMatrix(e){for(var{columns:t,rows:r}=e,i=[],a=0;a<r.length;a+=1){for(var o=r[a],s=[],l=0;l<t.length;l+=1){var d=t[l],h=o.get(d);s.push(h)}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:o=[],showConstituents:s=!0,showNonAggregatedColumns:l=!0,includeDescriptions:d=!0}=t??{},{aggregations:h=[]}=r??{},c=h.map(C=>{var{operation:b,selected:S,invert:w}=C;return Gi.isRollupOperation(b)?[]:Gi.getOperationColumnNames(e,b,S,w)}),m={},v=0;v<h.length;v+=1)m[h[v].operation]=c[v];if(l){var f=new Set(e.map(C=>C.name).filter(C=>!o.includes(C)));if(c.forEach(C=>{C.forEach(b=>f.delete(b))}),f.size>0){var g,p=(g=m[$e.FIRST])!==null&&g!==void 0?g:[];m[$e.FIRST]=[...p,...f]}}return{groupingColumns:o,includeConstituents:s,includeDescriptions:d,aggregations:m}}static getPendingErrors(e){e.forEach((t,r)=>{if(!Xe.isValidIndex(r))throw new Error("Invalid rowIndex ".concat(r));var{data:i}=t;i.forEach((a,o)=>{if(!Xe.isValidIndex(o))throw new Error("Invalid columnIndex ".concat(o))})})}static getColumn(e,t){return t<e.length?e[t]:(Ao.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&&Ao.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,o=e.findIndex(s=>s.name===i);return o<0?null:[o,a]}).filter(r=>r!=null)}static combineFiltersFromList(e,t){t.sort((h,c)=>h.operator==="eq"&&c.operator!=="eq"?1:h.operator!=="eq"&&c.operator==="eq"?-1:h.startColumnIndex-c.startColumnIndex);for(var r="",i=0;i<t.length;i+=1){var{text:a,value:o,operator:s}=t[i];if(o!==void 0){var l="";s!==void 0&&(o==null&&s==="eq"?l="=":s!=="eq"&&(s==="startsWith"||s==="endsWith"?l="*":l=j.getFilterOperatorString(s)));var d="".concat(l).concat(a);s==="startsWith"&&(d="".concat(a).concat(l)),e!=null&&o!==null&&j.isCharType(e)&&(d="".concat(l).concat(String.fromCharCode(parseInt(a,10)))),i!==0&&(r+=s==="eq"?" || ":" && "),r+=d}}return r}static parseColumnHeaderGroups(e,t){var r=1,i=new Map,a=new Map,o=t?.filter(c=>{var{children:m}=c;return m.length>0});if(o.length===0)return{groups:[],maxDepth:r,parentMap:i,groupMap:a};var s=new Map(o.map(c=>[c.name,c])),l=new Set,d=c=>{var{name:m}=c;if(e.getColumnIndexByName(m)!=null)throw new Error("Column header group has same name as column: ".concat(m));var v=a.get(m);if(v)return v;var f=[],g=1;c.children.forEach(C=>{if(l.has(C))throw new Error("Column group child ".concat(C," specified in multiple groups"));l.add(C);var b=s.get(C),S=e.getColumnIndexByName(C);if(b){var w=d(b);f.push(...w.childIndexes),g=Math.max(g,w.depth+1)}else if(S!=null)f.push(S),g=Math.max(g,1);else throw new Error("Unknown child ".concat(C," in group ").concat(m))});var p=new Jr(Kn(Kn({},c),{},{depth:g,childIndexes:f.flat()}));return a.set(m,p),c.children.forEach(C=>i.set(C,p)),r=Math.max(r,p.depth+1),p},h=new Set;return o.forEach(c=>{var{name:m}=c;if(h.has(m))throw new Error("Duplicate column group name: ".concat(m));h.add(m),d(c)}),a.forEach(c=>{var m;c.setParent((m=i.get(c.name))===null||m===void 0?void 0:m.name)}),{groups:[...a.values()],maxDepth:r,groupMap:a,parentMap:i}}static convertValueToText(e,t){if(t!=null&&j.isCharType(t)&&e!=null&&typeof e=="number")return String.fromCharCode(e);if(j.isDateType(t)&&AF(e)){var r=new Date(e.asDate()),i=r.getTimezoneOffset(),a=new Date(r.getTime()-i*60*1e3),o=a.toISOString(),s=o.replace("T"," ").substring(0,23);return s}return e==null?"":"".concat(e)}constructor(e){ih(this,"dh",void 0),ih(this,"tableUtils",void 0),this.dh=e,this.tableUtils=new j(e)}dehydrateIrisGridState(e,t){var{aggregationSettings:r={aggregations:ke,showOnTop:!1},advancedFilters:i,customColumnFormatMap:a,isFilterBarShown:o,metrics:s,quickFilters:l,customColumns:d,conditionalFormats:h=ke,reverseType:c,rollupConfig:m=void 0,showSearchBar:v,searchValue:f,selectDistinctColumns:g=ke,selectedSearchColumns:p,sorts:C,invertSearchColumns:b,pendingDataMap:S=Zn,frozenColumns:w,columnHeaderGroups:E}=t;A(s);var{userColumnWidths:T,userRowHeights:P}=s,{columns:D}=e;return{advancedFilters:this.dehydrateAdvancedFilters(D,i),aggregationSettings:r,customColumnFormatMap:[...a],isFilterBarShown:o,quickFilters:Xe.dehydrateQuickFilters(l),sorts:Xe.dehydrateSort(C),userColumnWidths:[...T].filter(O=>{var[R]=O;return R!=null&&R>=0&&R<D.length}).map(O=>{var[R,x]=O;return[D[R].name,x]}),userRowHeights:[...P],customColumns:[...d],conditionalFormats:[...h],reverseType:c,rollupConfig:m,showSearchBar:v,searchValue:f,selectDistinctColumns:[...g],selectedSearchColumns:p,invertSearchColumns:b,pendingDataMap:this.dehydratePendingDataMap(D,S),frozenColumns:w,columnHeaderGroups:E?.map(O=>({name:O.name,children:O.children,color:O.color}))}}hydrateIrisGridState(e,t){var r,i,{advancedFilters:a,aggregationSettings:o={aggregations:[],showOnTop:!1},customColumnFormatMap:s,isFilterBarShown:l,quickFilters:d,sorts:h,customColumns:c,conditionalFormats:m,userColumnWidths:v,userRowHeights:f,reverseType:g,rollupConfig:p=void 0,showSearchBar:C,searchValue:b,selectDistinctColumns:S,selectedSearchColumns:w,invertSearchColumns:E=!0,pendingDataMap:T=[],frozenColumns:P,columnHeaderGroups:D}=t,{columns:O,formatter:R}=e;return{advancedFilters:this.hydrateAdvancedFilters(O,a,R.timeZone),aggregationSettings:o,customColumnFormatMap:new Map(s),isFilterBarShown:l,quickFilters:this.hydrateQuickFilters(O,d,R.timeZone),sorts:this.hydrateSort(O,h),userColumnWidths:new Map(v.map(x=>{var[F,_]=x;return typeof F=="string"||F instanceof String?[O.findIndex(L=>{var{name:M}=L;return M===F}),_]:[F,_]}).filter(x=>{var[F]=x;return F!=null&&F>=0&&F<O.length})),customColumns:c,conditionalFormats:m,userRowHeights:new Map(f),reverseType:g,rollupConfig:p,showSearchBar:C,searchValue:b,selectDistinctColumns:S,selectedSearchColumns:w,invertSearchColumns:E,pendingDataMap:this.hydratePendingDataMap(O,T),frozenColumns:P,columnHeaderGroups:Xe.parseColumnHeaderGroups(e,(r=D??((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[o,s]=a,{text:l}=s,d=null;try{var h=Xe.getColumn(e,o);h!=null&&(d=this.tableUtils.makeQuickFilter(h,l,r))}catch(c){Ao.error("hydrateQuickFilters error with",l,c)}return[o,{text:l,filter:d}]});return new Map(i)}dehydrateAdvancedFilters(e,t){return[...t].map(r=>{var[i,a]=r,o=Xe.getColumn(e,i);A(o);var s=this.dehydrateAdvancedFilterOptions(o,a.options);return[i,{options:s}]})}hydrateAdvancedFilters(e,t,r){var i=t.map(a=>{var[o,s]=a,l=Xe.getColumn(e,o);A(l);var d=this.hydrateAdvancedFilterOptions(l,s.options),h=null;try{var c=Xe.getColumn(e,o);c!=null&&(h=this.tableUtils.makeAdvancedFilter(l,d,r))}catch(m){Ao.error("hydrateAdvancedFilters error with",d,m)}return[o,{options:d,filter:h}]});return new Map(i)}dehydrateAdvancedFilterOptions(e,t){var{selectedValues:r}=t,i=Dv(t,FF);return Kn({selectedValues:r?.map(a=>this.dehydrateValue(a,e?.type))},i)}hydrateAdvancedFilterOptions(e,t){var{selectedValues:r}=t,i=Dv(t,IF);return Kn({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(o=>{var[s,l]=o;return[e[s].name,this.dehydrateValue(l,e[s].type)]})}]})}hydratePendingDataMap(e,t){var r=new Map,i=a=>(r.has(a)||r.set(a,e.findIndex(o=>{var{name:s}=o;return s===a})),r.get(a));return new Map(t.map(a=>{var[o,{data:s}]=a;return[o,{data:new Map(s.map(l=>{var d,[h,c]=l,m=i(h);return A(m),[(d=i(h))!==null&&d!==void 0?d:null,this.hydrateValue(c,e[m].type)]}))}]}))}dehydrateValue(e,t){return j.isDateType(t)?this.dehydrateDateTime(e):j.isLongType(t)?Xe.dehydrateLong(e):e}hydrateValue(e,t){return j.isDateType(t)?this.hydrateDateTime(e):j.isLongType(t)?this.hydrateLong(e):e}dehydrateDateTime(e){return e!=null?this.dh.i18n.DateTimeFormat.format(Ea.FULL_DATE_FORMAT,e):null}hydrateDateTime(e){return e!=null?this.dh.i18n.DateTimeFormat.parse(Ea.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:o,direction:s}=i;if(s===j.sortDirection.reverse)return r.Table.reverse();var l=typeof a=="string"?Xe.getColumnByName(e,a):Xe.getColumn(e,a);if(l!=null){var d=l.sort();return o&&(d=d.abs()),s===j.sortDirection.descending?d=d.desc():d=d.asc(),d}return null}).filter(i=>i!=null&&i.direction!==j.sortDirection.reverse)}applyTableSettings(e,t,r){var{columns:i}=e,a=[];t.quickFilters&&(a=Xe.getFiltersFromFilterMap(this.hydrateQuickFilters(i,t.quickFilters,r)));var o=[];t.advancedFilters&&(o=Xe.getFiltersFromFilterMap(this.hydrateAdvancedFilters(i,t.advancedFilters,r)));var s=this.getFiltersFromInputFilters(i,t.inputFilters,r),l=[];t.sorts&&(l=this.hydrateSort(i,t.sorts));var d=[...a,...o],{partition:h,partitionColumn:c}=t;if(h!=null&&c!=null){var m=Xe.getColumnByName(i,c);if(m){var v=m.filter().eq(this.dh.FilterValue.ofString(h));d=[v,...d]}}d=[...s,...d],e.applyFilter(d),e.applySort(l)}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:o,value:s}=i,l=e.find(d=>{var{name:h,type:c}=d;return h===a&&c===o});if(l)try{return this.tableUtils.makeQuickFilter(l,s,r)}catch(d){Ao.debug("Unable to create input filter",d)}return null}).filter(i=>i!=null)}rangeSetFromRanges(e){var{dh:t}=this,r=e.slice().sort((i,a)=>(A(i.startRow),A(a.startRow),i.startRow-a.startRow)).map(i=>{var{startRow:a,endRow:o}=i;return A(a),A(o),t.RangeSet.ofRange(a,o)});return t.RangeSet.ofRanges(r)}}const ye=Xe;function Yi(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 Or=ae.module("IrisGridCopyHandler");class Ie extends y.Component{static getStatusMessageText(e,t){switch(e){case Ie.COPY_STATES.CONFIRMATION_REQUIRED:return"Are you sure you want to copy ".concat(t.toLocaleString()," rows to your clipboard?");case Ie.COPY_STATES.CLICK_REQUIRED:return"Fetched ".concat(t.toLocaleString()," rows!");case Ie.COPY_STATES.FETCH_ERROR:return"Unable to copy data.";case Ie.COPY_STATES.FETCH_IN_PROGRESS:return"Fetching ".concat(t.toLocaleString()," rows for clipboard...");case Ie.COPY_STATES.DONE:return"Copied to Clipboard!";default:return""}}static getCopyButtonText(e){switch(e){case Ie.BUTTON_STATES.FETCH_IN_PROGRESS:return"Fetching";case Ie.BUTTON_STATES.CLICK_TO_COPY:return"Click to Copy";case Ie.BUTTON_STATES.RETRY:return"Retry";default:return"Copy"}}constructor(e){super(e),Yi(this,"textData",void 0),Yi(this,"hideTimer",void 0),Yi(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:Ie.COPY_STATES.IDLE,buttonState:Ie.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(){Or.debug2("startCopy"),this.stopCopy();var{copyOperation:e}=this.props;if(e==null){Or.debug2("No copy operation set, cancelling out"),this.setState({isShown:!1});return}var{ranges:t,error:r}=e;if(r!=null){Or.debug("Showing copy error",r),this.setState({isShown:!0,copyState:Ie.COPY_STATES.DONE,error:r}),this.startHideTimer();return}var i=ie.rowCount(t);this.setState({rowCount:i,isShown:!0,error:void 0}),i>Ie.NO_PROMPT_THRESHOLD?this.setState({buttonState:Ie.BUTTON_STATES.COPY,copyState:Ie.COPY_STATES.CONFIRMATION_REQUIRED}):this.startFetch()}stopCopy(){this.textData=void 0,this.stopFetch(),this.stopHideTimer()}handleBackgroundClick(){Or.debug2("handleBackgroundClick");var{copyState:e}=this.state;e===Ie.COPY_STATES.DONE&&this.setState({isShown:!1})}handleCancelClick(){Or.debug2("handleCancelClick"),this.stopFetch(),this.setState({isShown:!1})}handleCopyClick(){Or.debug2("handleCopyClick"),this.textData!=null?this.copyText(this.textData):this.startFetch()}handleHideTimeout(){Or.debug2("handleHideTimeout"),this.stopHideTimer(),this.setState({isShown:!1})}copyText(e){Or.debug2("copyText",e),this.textData=e,ws(e).then(()=>{this.setState({copyState:Ie.COPY_STATES.DONE}),this.startHideTimer()},t=>{Or.error("copyText error",t),this.setState({buttonState:Ie.BUTTON_STATES.CLICK_TO_COPY,copyState:Ie.COPY_STATES.CLICK_REQUIRED})})}startFetch(){this.stopFetch(),this.setState({buttonState:Ie.BUTTON_STATES.FETCH_IN_PROGRESS,copyState:Ie.COPY_STATES.FETCH_IN_PROGRESS});var{model:e,copyOperation:t}=this.props,{ranges:r,includeHeaders:i,userColumnWidths:a,movedColumns:o,formatValues:s}=t;Or.debug("startFetch",r);var l=ye.getHiddenColumns(a),d=B.getModelRanges(r,o);if(l.length>0){var h=l.map(ie.makeColumn);d=ie.subtractRangesFromRanges(d,h)}var c=s!=null&&s?(m,v)=>e.displayString(m,v.type,v.name):m=>"".concat(m);this.fetchPromise=Te.makeCancelable(e.textSnapshot(d,i,c)),this.fetchPromise.then(m=>{this.fetchPromise=void 0,this.copyText(m)}).catch(m=>{m instanceof sd?Or.debug("User cancelled copy."):(Or.error("Error fetching contents",m),this.fetchPromise=void 0,this.setState({buttonState:Ie.BUTTON_STATES.RETRY,copyState:Ie.COPY_STATES.FETCH_ERROR}))})}stopFetch(){this.fetchPromise&&(Or.debug2("stopFetch"),this.fetchPromise.cancel(),this.fetchPromise=void 0)}startHideTimer(){this.stopHideTimer(),this.hideTimer=setTimeout(this.handleHideTimeout,Ie.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:o,isShown:s,rowCount:l,error:d}=this.state,h=o===Ie.COPY_STATES.DONE?"fade":"copy-slide-up",c=Ie.getCopyButtonText(a),m=d??Ie.getStatusMessageText(o,l),v=o!==Ie.COPY_STATES.DONE,f=a===Ie.BUTTON_STATES.FETCH_IN_PROGRESS,g=o===Ie.COPY_STATES.DONE;return u.jsxs(Ed,{animation:h,isShown:s,className:J("iris-grid-copy-handler",{"copy-done":g}),onClick:this.handleBackgroundClick,onEntering:e,onEntered:t,onExiting:r,onExited:i,children:[u.jsx("div",{className:"status-message",children:u.jsx("span",{children:m})}),u.jsx(Lr,{in:v,timeout:Ze.transitionMs,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0,children:u.jsxs("div",{className:"buttons-container",children:[u.jsx("button",{type:"button",className:"btn btn-outline-secondary btn-cancel",onClick:this.handleCancelClick,children:"Cancel"}),u.jsxs(G,{kind:f?"tertiary":"primary",className:J("btn-copy",{"btn-spinner":f}),onClick:this.handleCopyClick,disabled:f,children:[f&&u.jsx(kn,{}),c]})]})})]})}}Yi(Ie,"NO_PROMPT_THRESHOLD",1e4);Yi(Ie,"HIDE_TIMEOUT",3e3);Yi(Ie,"COPY_STATES",{IDLE:"IDLE",CONFIRMATION_REQUIRED:"CONFIRMATION_REQUIRED",FETCH_IN_PROGRESS:"FETCH_IN_PROGRESS",FETCH_ERROR:"FETCH_ERROR",CLICK_REQUIRED:"CLICK_REQUIRED",DONE:"DONE"});Yi(Ie,"BUTTON_STATES",{COPY:"COPY",FETCH_IN_PROGRESS:"FETCH_IN_PROGRESS",CLICK_TO_COPY:"CLICK_TO_COPY",RETRY:"RETRY"});Yi(Ie,"defaultProps",{copyOperation:null,onEntering:()=>{},onEntered:()=>{},onExiting:()=>{},onExited:()=>{}});const jF=Ie;function Ol(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=$F(n,"string");return typeof e=="symbol"?e:String(e)}function $F(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 GC extends y.PureComponent{constructor(e){super(e),Ol(this,"inputField",void 0),Ol(this,"initialValue",void 0),Ol(this,"debouncedSendUpdate",void 0);var{debounceMs:t}=e;this.debouncedSendUpdate=tt(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=tt(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 u.jsxs("div",{style:t,className:"iris-grid-input-autosized-wrapper","data-value":a,children:[u.jsx("input",{ref:o=>{this.inputField=o},className:J("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"}),u.jsx("div",{className:"advanced-filter-button-container",children:u.jsx(G,{kind:"ghost",className:J("btn-link-icon advanced-filter-button",{"filter-set":r}),onClick:i,onContextMenu:this.handleContextMenu,children:u.jsxs("div",{className:"fa-layers ",children:[u.jsx(te,{icon:Oh,className:"filter-solid"}),u.jsx(te,{icon:xl,className:"filter-light"})]})})})]})}}Ol(GC,"defaultProps",{style:{},className:"",value:"",isAdvancedFilterSet:!1,onAdvancedFiltersTriggered:()=>{},onChange:()=>{},onDone:()=>{},onTab:()=>{},onContextMenu:()=>{},debounceMs:150});const UF=GC;function BF(n,e,t){return e=VF(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function VF(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 WF extends Fa{constructor(e){super(),BF(this,"irisGrid",void 0),this.irisGrid=e}onDown(e){var{selectedRanges:t}=this.irisGrid.state;return e.key==="c"&&Xi.isModifierKeyDown(e)?(ye.isValidSnapshotRanges(t)?this.irisGrid.copyRanges(t):this.irisGrid.copyRanges(t,!1,!1,"Invalid copy ranges"),!0):!1}}const zF=WF;var KF={TOGGLE_QUICK_FILTER:qe.createAndAdd({id:"TABLE.TOGGLE_QUICK_FILTER",name:"Toggle Quick Filter",shortcut:[we.CTRL,Oe.F],macShortcut:[we.CMD,Oe.F]}),CLEAR_ALL_FILTERS:qe.createAndAdd({id:"TABLE.CLEAR_ALL_FILTERS",name:"Clear All Table Filters",shortcut:[we.CTRL,Oe.E],macShortcut:[we.CMD,Oe.E]}),CLEAR_FILTERS:qe.createAndAdd({id:"TABLE.CLEAR_FILTERS",name:"Clear Active Table Filters",shortcut:[we.CTRL,we.SHIFT,Oe.E],macShortcut:[we.CMD,we.SHIFT,Oe.E]}),REVERSE:qe.createAndAdd({id:"TABLE.REVERSE",name:"Reverse",shortcut:[we.CTRL,Oe.I],macShortcut:[we.CMD,Oe.I]}),TOGGLE_SEARCH:qe.createAndAdd({id:"TABLE.TOGGLE_SEARCH",name:"Toggle Search",shortcut:[we.CTRL,we.SHIFT,Oe.F],macShortcut:[we.CMD,we.SHIFT,Oe.F]}),GOTO_ROW:qe.createAndAdd({id:"TABLE.GOTO_ROW",name:"Go to Row",shortcut:[we.CTRL,Oe.G],macShortcut:[we.CMD,Oe.G]})},YF={COMMIT:qe.createAndAdd({id:"INPUT_TABLE.COMMIT",name:"Commit",shortcut:[we.CTRL,Oe.S],macShortcut:[we.CMD,Oe.S]}),DISCARD:qe.createAndAdd({id:"INPUT_TABLE.DISCARD",name:"Discard",shortcut:[we.CTRL,we.ALT,Oe.S],macShortcut:[we.CMD,we.OPTION,Oe.S]})},qF={TABLE:KF,INPUT_TABLE:YF};const xr=qF;function XF(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 JF extends Fa{constructor(e){super(),XF(this,"irisGrid",void 0),this.irisGrid=e}onDown(e){if(xr.TABLE.REVERSE.matchesEvent(e)){if(!this.irisGrid.isReversible())return!1;var{reverseType:t}=this.irisGrid.state;return t===j.REVERSE_TYPE.NONE?this.irisGrid.reverse(j.REVERSE_TYPE.POST_SORT):this.irisGrid.reverse(j.REVERSE_TYPE.NONE),!0}return!1}}const eI=JF;function tI(n,e,t){return e=rI(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function rI(n){var e=nI(n,"string");return typeof e=="symbol"?e:String(e)}function nI(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 iI extends Fa{constructor(e){super(),tI(this,"irisGrid",void 0),this.irisGrid=e}onDown(e){return xr.TABLE.CLEAR_FILTERS.matchesEvent(e)?(this.irisGrid.clearAllFilters(),!0):!1}}const aI=iI;function oI(n,e,t){return e=sI(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function sI(n){var e=lI(n,"string");return typeof e=="symbol"?e:String(e)}function lI(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 dI extends Pt{constructor(e){super(850),oI(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:o,grid:s,state:l,props:d}=this.irisGrid;if(!s)return null;var{metrics:h}=l,{model:c}=d,{canvasContext:m}=s,v=s.getTheme(),f={context:m,mouseX:t,mouseY:r,metrics:h,model:c,theme:v},{left:g,top:p,width:C,height:b}=o.getCellOverflowButtonPosition(f);return g==null||C==null||p==null||b==null?null:{left:g,top:p,width:C,height:b}}isHoveringOverflowButton(e){var t,{x:r,y:i}=e,{left:a,top:o,width:s,height:l}=(t=this.getButtonPosition(e))!==null&&t!==void 0?t:{};if(a==null||s==null||o==null||l==null)return!1;var{renderer:d,grid:h,state:c,props:m}=this.irisGrid;if(!h)return!1;var{metrics:v}=c,{model:f}=m,{canvasContext:g}=h,p=h.getTheme(),C={context:g,mouseX:r,mouseY:i,metrics:v,model:f,theme:p};return d.shouldRenderOverflowButton(C)&&r>=a&&r<=a+s&&i>=o&&i<=o+l}onMove(e){if(this.isHoveringOverflowButton(e)){var{overflowButtonTooltipProps:t}=this.irisGrid.state,r=this.getButtonPosition(e);ct(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 uI=dI;function hI(n,e,t){return e=cI(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function cI(n){var e=mI(n,"string");return typeof e=="symbol"?e:String(e)}function mI(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 vI extends Pt{constructor(e){super(),hI(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 fI=vI;function gI(n,e,t){return e=pI(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function pI(n){var e=CI(n,"string");return typeof e=="symbol"?e:String(e)}function CI(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 bI extends Pt{constructor(e){super(),gI(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 o=a.popper.current;return o&&i instanceof Element&&o.element.contains(i)||this.hideColumnTooltip(),!1}onMove(e){var{column:t,row:r,columnHeaderDepth:i}=e,{shownColumnTooltip:a}=this.irisGrid.state,o=null;return t!==null&&r===null&&i===0&&(o=t),o!==a&&this.irisGrid.setState({shownColumnTooltip:o}),!1}}const SI=bI;function WC(n,e,t){return e=wI(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function wI(n){var e=yI(n,"string");return typeof e=="symbol"?e:String(e)}function yI(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 Td extends y.Component{constructor(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:Td.defaultProps;super(e),WC(this,"inputRef",void 0),this.handleInputChange=this.handleInputChange.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.inputRef=he.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=ay.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:o}=t;return u.jsxs("div",{className:"form-group flex-grow mb-0",children:[u.jsxs("div",{className:"custom-format-title",children:[u.jsx("span",{className:"icon",children:o}),u.jsxs("label",{className:"title mb-0",htmlFor:"custom-format-input",children:[i,a!=null&&u.jsx(pt,{children:a})]})]}),u.jsx("div",{className:"pl-2 pr-2 pb-2",children:u.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"})})]})}}WC(Td,"defaultProps",{formatString:"",forwardedProps:{menuItem:{},closeMenu(n){},iconElement:null},placeholder:"",title:"",onChange(n){}});const EI=Td;class TI{static isDefaultSelected(e){return!e||![El.TYPE_CONTEXT_CUSTOM,El.TYPE_CONTEXT_PRESET].includes(e.type)}static isCustomSelected(e){return e!=null&&e.type===El.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:u.jsx(EI,{formatString:e.formatString,title:e.label,placeholder:r,onChange:a})}}}const Mr=TI;function rc(n,e,t){return e=PI(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function PI(n){var e=OI(n,"string");return typeof e=="symbol"?e:String(e)}function OI(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 fr{static getOptions(e,t){var r=new Date,i=[{group:fr.dateGroup,formatString:"yyyy-MM-dd"},{group:fr.dateGroup,formatString:"MM-dd-yyyy"},{group:fr.timeGroup,formatString:"HH:mm:ss"},{group:fr.timeGroup,formatString:"HH:mm:ss.SSS"},{group:fr.timeGroup,formatString:"HH:mm:ss.SSSSSSSSS"},{group:fr.dateTimeGroup,formatString:"yyyy-MM-dd HH:mm:ss"},{group:fr.dateTimeGroup,formatString:"yyyy-MM-dd HH:mm:ss.SSS"},{group:fr.dateTimeGroup,formatString:"yyyy-MM-dd HH:mm:ss.SSSSSSSSS"}],a=i.map(s=>{var l=Tt.makeFormat("",s.formatString,Tt.TYPE_CONTEXT_PRESET),d=e.getFormattedString(r,j.dataType.DATETIME,"",l);return Mr.makeOption(d,l,s.group,Tt.isSameFormat(l,t))}),o=Mr.makeOption("Default",null,fr.dateGroup,Mr.isDefaultSelected(t));return[o,...a]}}rc(fr,"dateGroup",10);rc(fr,"timeGroup",20);rc(fr,"dateTimeGroup",30);const DI=fr;function Pd(n,e,t){return e=RI(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function RI(n){var e=NI(n,"string");return typeof e=="symbol"?e:String(e)}function NI(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 ir{static getOptions(e,t,r){var i=[{format:Je.FORMAT_PERCENT,group:ir.presetGroup},{format:Je.FORMAT_BASIS_POINTS,group:ir.presetGroup},{format:Je.FORMAT_MILLIONS,group:ir.presetGroup},{format:Je.FORMAT_SCIENTIFIC_NOTATION,group:ir.presetGroup},{format:Je.FORMAT_ROUND,group:ir.presetRoundGroup},{format:Je.FORMAT_ROUND_TWO_DECIMALS,group:ir.presetRoundGroup},{format:Je.FORMAT_ROUND_FOUR_DECIMALS,group:ir.presetRoundGroup}],a=Mr.makeOption("Default",null,ir.defaultGroup,Mr.isDefaultSelected(t)),o=i.map(h=>Mr.makeOption(h.format.label,h.format,h.group,Je.isSameFormat(h.format,t))),s=Mr.isCustomSelected(t),l=s?t:Je.makeCustomFormat(),d=Mr.makeCustomFormatOption(l,ir.customGroup,Je.DEFAULT_FORMAT_STRING,s,h=>{if(h!=null){var c=Je.makeCustomFormat(h);Je.isValid(e,c)&&r(c)}else r(null)});return[a,...o,d]}}Pd(ir,"defaultGroup",10);Pd(ir,"presetGroup",20);Pd(ir,"presetRoundGroup",30);Pd(ir,"customGroup",40);const FI=ir;function nc(n,e,t){return e=II(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function II(n){var e=_I(n,"string");return typeof e=="symbol"?e:String(e)}function _I(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 ri{static getOptions(e,t,r){var i=[{format:Et.FORMAT_MILLIONS,group:ri.presetGroup},{format:Et.FORMAT_SCIENTIFIC_NOTATION,group:ri.presetGroup}],a=Mr.makeOption("Default",null,ri.defaultGroup,Mr.isDefaultSelected(t)),o=i.map(h=>Mr.makeOption(h.format.label,h.format,h.group,Et.isSameFormat(h.format,t))),s=Mr.isCustomSelected(t),l=s?t:Et.makeCustomFormat(),d=Mr.makeCustomFormatOption(l,ri.customGroup,Et.DEFAULT_FORMAT_STRING,s,h=>{if(h!=null){var c=Et.makeCustomFormat(h);Et.isValid(e,c)&&r(c)}else r(null)});return[a,...o,d]}}nc(ri,"defaultGroup",10);nc(ri,"presetGroup",20);nc(ri,"customGroup",30);const xI=ri;function Nv(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 Fv(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Nv(Object(t),!0).forEach(function(r){kr(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Nv(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function kr(n,e,t){return e=MI(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function MI(n){var e=AI(n,"string");return typeof e=="symbol"?e:String(e)}function AI(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 Iv=ae.module("IrisGridContextMenuHandler"),LI=150,_v="yyyy-MM-dd HH:mm:ss.SSSSSSSSS";class q extends Pt{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(An.truncate(t,r-e.length-3),'"')}constructor(e,t){super(),kr(this,"irisGrid",void 0),kr(this,"debouncedUpdateCustomFormat",void 0),kr(this,"dh",void 0),this.debouncedUpdateCustomFormat=tt(e.handleFormatSelection,LI),this.dh=t,this.irisGrid=e}componentWillUnmount(){this.debouncedUpdateCustomFormat.flush()}getHeaderActions(e,t){var{irisGrid:r}=this,{column:i}=t;A(i);var{model:a}=r.props,{columns:o}=a,s=o[e],l=[],{metrics:d,reverseType:h,quickFilters:c,advancedFilters:m,searchFilter:v}=r.state,f=r.getTheme();A(d);var{filterIconColor:g,filterBarActiveColor:p,contextMenuSortIconColor:C,contextMenuReverseIconColor:b}=f,S=a.sort,w=j.getSortForColumn(S,s.name),E=h!==j.REVERSE_TYPE.NONE,{userColumnWidths:T}=d,P=[...T.values()].some(F=>F===0),D=a.getColumnHeaderParentGroup(e,0)===void 0&&!(ze(a)&&a.hasExpandableRows),O=a.isColumnFrozen(e),R=a.isColumnSortable(e);if(l.push({title:"Hide Column",group:q.GROUP_HIDE_COLUMNS,action:()=>{this.irisGrid.hideColumnByVisibleIndex(i)}}),l.push({title:O?"Unfreeze Column":"Freeze Column",group:q.GROUP_HIDE_COLUMNS,disabled:!D,action:()=>{O?this.irisGrid.unFreezeColumnByColumnName(s.name):this.irisGrid.freezeColumnByColumnName(s.name)},order:10}),l.push({title:"Show All Columns",group:q.GROUP_HIDE_COLUMNS,action:()=>{this.irisGrid.showAllColumns()},disabled:!P}),l.push({title:"Quick Filters",icon:Vn,iconColor:p,shortcut:xr.TABLE.TOGGLE_QUICK_FILTER,group:q.GROUP_FILTER,order:10,action:()=>{this.irisGrid.toggleFilterBar(i)}}),l.push({title:"Advanced Filters",icon:m.get(e)?Oh:xl,iconColor:g,group:q.GROUP_FILTER,order:20,action:()=>{this.irisGrid.handleAdvancedMenuOpened(i)}}),l.push({title:"Clear Table Filters",group:q.GROUP_FILTER,order:40,shortcut:xr.TABLE.CLEAR_FILTERS,action:()=>{this.irisGrid.clearAllFilters()},disabled:!(c.size>0||m.size>0||v!=null)}),l.push({title:"Sort by",icon:Vn,iconColor:C,group:q.GROUP_SORT,order:10,actions:this.sortByActions(s,e,w),disabled:!R}),l.push({title:"Add Additional Sort",disabled:w&&S.length===1||E&&S.length===1||w&&E&&S.length===2||S.length===0||!R,group:q.GROUP_SORT,order:20,actions:this.additionalSortActions(s,e)}),l.push({title:"Clear Table Sorting",disabled:S.length===0||E&&S.length===1,group:q.GROUP_SORT,action:()=>{this.irisGrid.sortColumn(i,q.COLUMN_SORT_DIRECTION.none)},order:30}),l.push({title:h===j.REVERSE_TYPE.NONE?"Reverse Table":"Clear Reverse Table",icon:Vn,iconColor:b,group:q.GROUP_SORT,order:40,disabled:!a.isReversible,shortcut:xr.TABLE.REVERSE,action:()=>{h===j.REVERSE_TYPE.NONE?this.irisGrid.reverse(j.REVERSE_TYPE.POST_SORT):this.irisGrid.reverse(j.REVERSE_TYPE.NONE)}}),l.push({title:"Copy Column Name",group:q.GROUP_COPY,action:()=>{var F;ws((F=a.textForColumnHeader(e))!==null&&F!==void 0?F:"").catch(_=>Iv.error("Unable to copy header",_))}}),j.isDateType(s.type))l.push({title:"Date/Time Format",group:q.GROUP_FORMAT,actions:this.dateFormatActions(s)});else if(j.isNumberType(s.type)){var x;l.push({title:"Number Format",group:q.GROUP_FORMAT,actions:(x=this.numberFormatActions(s))!==null&&x!==void 0?x:void 0})}return l}getCellActions(e,t,r){A(e);var{dh:i,irisGrid:a}=this,{column:o,row:s}=r,{model:l,canCopy:d}=a.props,{columns:h}=l,c=a.getModelRow(s);A(c);var m=l.valueForCell(e,c),v=l.textForCell(e,c),f=h[e],g=[],{quickFilters:p}=a.state,C=a.getTheme(),{filterIconColor:b}=C,{settings:S}=a.props,w=new Tt(i,{timeZone:S?.timeZone,showTimeZone:!1,showTSeparator:!0,defaultDateTimeFormatString:_v}),E=new Tt(i,{timeZone:S?.timeZone,showTimeZone:S?.showTimeZone,showTSeparator:S?.showTSeparator,defaultDateTimeFormatString:_v});if(f==null||s==null)return g;if(l.isFilterable(e)){var T={title:"Filter by Value",icon:Vn,iconColor:b,group:q.GROUP_FILTER,order:10,actions:[]};if(m==null)p.get(e)&&T.actions.push({title:"And",actions:this.nullFilterActions(f,p.get(e),"&&"),order:2,group:oe.groups.high}),T.actions.push(...this.nullFilterActions(f));else if(m==="")p.get(e)&&T.actions.push({title:"And",actions:this.emptyStringFilterActions(f,p.get(e),"&&"),order:2,group:oe.groups.high}),T.actions.push(...this.emptyStringFilterActions(f));else if(j.isBooleanType(f.type))p.get(e)&&T.actions.push({title:"Or",actions:this.booleanFilterActions(f,v,p.get(e),"||"),order:2,group:oe.groups.high}),T.actions.push(...this.booleanFilterActions(f,v));else if(j.isNumberType(f.type)||j.isCharType(f.type)){A(e);var P=j.isCharType(f.type)?String.fromCharCode(m):"".concat(m);p.get(e)&&T.actions.push({title:"And",actions:this.numberFilterActions(f,P,m,p.get(e),"&&"),order:2,group:oe.groups.high}),T.actions.push(...this.numberFilterActions(f,P,m,p.get(e)))}else if(j.isDateType(f.type)){var D=w.format(m),O=E.format(m);p.get(e)&&T.actions.push({title:"And",actions:this.dateFilterActions(f,D,O,m,p.get(e),"&&"),order:2,group:oe.groups.high}),T.actions.push(...this.dateFilterActions(f,D,O,m,p.get(e)))}else p.get(e)&&T.actions.push({title:"And",actions:this.stringFilterActions(f,v,m,p.get(e),"&&"),order:2,group:oe.groups.high}),T.actions.push(...this.stringFilterActions(f,v,m));T.actions!=null&&T.actions.length>0&&g.push(T)}if(ze(l)&&l.isRowExpandable(c)){var R=l.groupedColumns.length>0?l.depthForRow(c)-1:0,x=l.valueForCell(R,c),F=x==null?"null":l.textForCell(R,c);g.push({title:q.getRowOptionFormatted(l.isRowExpanded(c)?"Collapse":"Expand",F),group:q.GROUP_EXPAND_COLLAPSE,order:10,action:()=>{l.setRowExpanded(c,!l.isRowExpanded(c))}}),l.isExpandAllAvailable===!0&&g.push({title:q.getRowOptionFormatted("Expand All in",F),group:q.GROUP_EXPAND_COLLAPSE,order:20,action:()=>{l.setRowExpanded(c,!0,!0)}})}ze(l)&&l.hasExpandableRows&&l.isExpandAllAvailable===!0&&(g.push({title:"Expand Entire Table",group:q.GROUP_EXPAND_COLLAPSE,order:30,action:()=>{l.expandAll()}}),g.push({title:"Collapse Entire Table",group:q.GROUP_EXPAND_COLLAPSE,order:40,action:()=>{l.collapseAll()}}));var _={title:"Go to",iconColor:b,shortcut:xr.TABLE.GOTO_ROW,group:q.GROUP_GOTO,order:10,action:()=>this.irisGrid.toggleGotoRow("".concat(s+1),"".concat(m),f.name)};return g.push(_),d&&(g.push({title:"Copy Cell",group:q.GROUP_COPY,order:10,action:()=>{a.copyCell(o,s)}}),g.push({title:"Copy Cell Unformatted",group:q.GROUP_COPY,order:20,action:()=>{a.copyCell(o,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 j.isCharType(e)?r.FilterValue.ofString(String.fromCharCode(t)):r.FilterValue.ofNumber(t)}onContextMenu(e,t,r){var{irisGrid:i}=this,{y:a,column:o,row:s,columnHeaderDepth:l}=e,d=i.getModelColumn(o),h=i.getModelRow(s),{model:c,canCopy:m}=i.props,{columns:v}=c,{metrics:f,isFilterBarShown:g,quickFilters:p,advancedFilters:C,selectedRanges:b}=i.state;A(f);var{columnHeaderHeight:S,gridY:w,columnHeaderMaxDepth:E}=f,T=[];if(d!=null&&h!=null){var P=c.valueForCell(d,h),D=c.textForCell(d,h),O=v[d],{onContextMenu:R}=i.props;O!=null&&T.push(...R({model:c,value:P,valueText:D,column:O,rowIndex:s,columnIndex:o,modelRow:h,modelColumn:d}))}return d!=null&&c.isFilterable(d)&&T.push({title:"Clear Column Filter",group:q.GROUP_FILTER,order:30,action:()=>{this.irisGrid.removeColumnFilter(d)},disabled:!(p.has(d)||C.has(d))}),(g?a<=w:a<=S*E&&l===0)?d!=null&&T.push(...this.getHeaderActions(d,e)):(d!=null&&h!=null&&T.push(...this.getCellActions(d,t,e)),m&&b.length>0&&(T.push({title:"Copy Selection",shortcut:ui.COPY,group:q.GROUP_COPY,order:30,action:()=>{i.copyRanges(b)}}),T.push({title:"Copy Selection w/ Headers",group:q.GROUP_COPY,order:40,action:()=>{i.copyRanges(b,!0)}})),it(c)&&c.isEditable&&b.length>0&&T.push({title:"Delete Selected Rows",group:q.GROUP_EDIT,order:50,action:()=>{this.irisGrid.deleteRanges(b)}})),T.length===0?!1:(A(i.gridWrapper),oe.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),o=DI.getOptions(i,a),s=[],l=function(){var{description:c,format:m,group:v,isSelected:f,title:g}=o[d];s.push({title:g,description:c,icon:f?ii:void 0,group:v,order:d,action:()=>{var p=r.getColumnIndexByName(e.name);A(p),t.irisGrid.handleFormatSelection(p,m)}})},d=0;d<o.length;d+=1)l();return s}numberFormatActions(e){var t=this,{model:r}=this.irisGrid.props,{formatter:i}=r,{dh:a}=this,o=i.getColumnFormat(e.type,e.name),s,l=r.getColumnIndexByName(e.name);if(j.isDecimalType(e.type))s=FI.getOptions(a,o,m=>{A(l),this.debouncedUpdateCustomFormat(l,m)});else if(j.isIntegerType(e.type))s=xI.getOptions(a,o,m=>{A(l),this.debouncedUpdateCustomFormat(l,m)});else return Iv.error("Invalid column type in numberFormatActions"),null;for(var d=[],h=function(){var{format:v,isSelected:f}=s[c];d.push(Fv(Fv({},s[c]),{},{icon:f?ii:void 0,order:c,action:()=>{l===void 0&&v&&v.type===El.TYPE_CONTEXT_CUSTOM||(A(l),t.irisGrid.handleFormatSelection(l,v))}}))},c=0;c<s.length;c+=1)h();return d}stringFilterActions(e,t,r,i,a){var{dh:o}=this,s=o.FilterValue.ofString(r),l=i;l||(l={filter:null,text:null});var{filter:d,text:h}=l,c=[],{model:m}=this.irisGrid.props,v=m.getColumnIndexByName(e.name),f=j.escapeQuickTextFilter(t);return A(v),c.push({menuElement:u.jsxs("div",{className:"iris-grid-filter-menu-item-value",children:[a?q.getOperatorAsText(a):""," ",'"',t,'"']}),order:1,group:oe.groups.high}),c.push({title:"text is exactly",description:"Show only rows where ".concat(e.name," is ").concat(r," (case sensitive)"),action:()=>{this.irisGrid.setQuickFilter(v,q.getQuickFilterCondition(d,e.filter().eq(s),a),q.getQuickFilterText(h,"".concat(f),a))},order:10,group:oe.groups.low}),c.push({title:"text is not exactly",description:"Show only rows where ".concat(e.name," is not ").concat(t," (case sensitive)"),action:()=>{this.irisGrid.setQuickFilter(v,q.getQuickFilterCondition(d,e.filter().notEq(s),a),q.getQuickFilterText(h,"!=".concat(f),a))},order:20,group:oe.groups.low}),c.push({title:"text contains",description:"Show only rows where ".concat(e.name," contains ").concat(t),action:()=>{this.irisGrid.setQuickFilter(v,q.getQuickFilterCondition(d,e.filter().isNull().not().and(e.filter().contains(s)),a),q.getQuickFilterText(h,"~".concat(f),a))},order:30,group:oe.groups.low}),c.push({title:"text does not contain",description:"Show only rows where ".concat(e.name," does not contain ").concat(r),action:()=>{this.irisGrid.setQuickFilter(v,q.getQuickFilterCondition(d,e.filter().isNull().or(e.filter().contains(s).not()),a),q.getQuickFilterText(h,"!~".concat(f),a))},order:40,group:oe.groups.low}),c.push({title:"text starts with",description:"Show only rows where ".concat(e.name," starts with ").concat(t),action:()=>{this.irisGrid.setQuickFilter(v,q.getQuickFilterCondition(d,e.filter().isNull().not().and(e.filter().invoke("startsWith",s)),a),q.getQuickFilterText(h,"".concat(f,"*"),a))},order:50,group:oe.groups.low}),c.push({title:"text ends with",description:"Show only rows where ".concat(e.name," ends with ").concat(t),action:()=>{this.irisGrid.setQuickFilter(v,q.getQuickFilterCondition(d,e.filter().isNull().not().and(e.filter().invoke("endsWith",s)),a),q.getQuickFilterText(h,"*".concat(f),a))},order:60,group:oe.groups.low}),c}numberFilterActions(e,t,r,i,a){var o=this.getFilterValueForNumberOrChar(e.type,r),s=null,l=null;i&&(s=i.filter,l=i.text);var d=[],h=r!==Number.POSITIVE_INFINITY&&r!==Number.NEGATIVE_INFINITY&&!Number.isNaN(r),{model:c}=this.irisGrid.props,m=c.getColumnIndexByName(e.name);return A(m),d.push({menuElement:u.jsxs("div",{className:"iris-grid-filter-menu-item-value",children:[a?q.getOperatorAsText(a):""," ",'"',t,'"']}),order:1,group:oe.groups.high}),d.push({title:"is equal to",description:"Show only rows where ".concat(e.name," is ").concat(t),action:()=>{var v=this.getNumberValueEqualsFilter(e,r);this.irisGrid.setQuickFilter(m,q.getQuickFilterCondition(s,v,a),q.getQuickFilterText(l,"=".concat(t),a))},order:10,group:oe.groups.low}),d.push({title:"is not equal to",description:"Show only rows where ".concat(e.name," is not ").concat(t),action:()=>{var v=this.getNumberValueEqualsFilter(e,r).not();this.irisGrid.setQuickFilter(m,q.getQuickFilterCondition(s,v,a),q.getQuickFilterText(l,"!=".concat(t),a))},order:20,group:oe.groups.low}),h&&!j.isCharType(e.type)&&(d.push({title:"greater than",description:"Show only rows where ".concat(e.name," is greater than ").concat(t),action:()=>{this.irisGrid.setQuickFilter(m,q.getQuickFilterCondition(s,e.filter().greaterThan(o),a),q.getQuickFilterText(l,">".concat(t),a))},order:30,group:oe.groups.low}),d.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(m,q.getQuickFilterCondition(s,e.filter().greaterThanOrEqualTo(o),a),q.getQuickFilterText(l,">=".concat(t),a))},order:40,group:oe.groups.low}),d.push({title:"less than",description:"Show only rows where ".concat(e.name," is less than ").concat(t),action:()=>{this.irisGrid.setQuickFilter(m,q.getQuickFilterCondition(s,e.filter().lessThan(o),a),q.getQuickFilterText(l,"<".concat(t),a))},order:50,group:oe.groups.low}),d.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(m,q.getQuickFilterCondition(s,e.filter().lessThanOrEqualTo(o),a),q.getQuickFilterText(l,"<=".concat(t),a))},order:60,group:oe.groups.low})),d}booleanFilterActions(e,t,r,i){var a=[],{model:o}=this.irisGrid.props,{filter:s,text:l}=r||{},d=o.getColumnIndexByName(e.name);return A(d),a.push({menuElement:u.jsxs("div",{className:"iris-grid-filter-menu-item-value",children:[i?q.getOperatorAsText(i):""," ",'"',t??"null",'"']}),order:1,group:oe.groups.high}),a.push({title:"true",description:"Show only rows where ".concat(e.name," is true"),action:()=>{this.irisGrid.setQuickFilter(d,q.getQuickFilterCondition(s,e.filter().isTrue(),i),q.getQuickFilterText(l,"true",i))},order:10,group:oe.groups.low}),a.push({title:"false",description:"Show only rows where ".concat(e.name," is false"),action:()=>{this.irisGrid.setQuickFilter(d,q.getQuickFilterCondition(s,e.filter().isFalse(),i),q.getQuickFilterText(l,"false",i))},order:20,group:oe.groups.low}),a.push({title:"is null",description:"Show only rows where ".concat(e.name," is null"),action:()=>{this.irisGrid.setQuickFilter(d,q.getQuickFilterCondition(s,e.filter().isNull(),i),q.getQuickFilterText(l,"null",i))},order:30,group:oe.groups.low}),a.push({title:"is not null",description:"Show only rows where ".concat(e.name," is not null"),action:()=>{this.irisGrid.setQuickFilter(d,q.getQuickFilterCondition(s,e.filter().isNull().not(),i),q.getQuickFilterText(l,"!null",i))},order:40,group:oe.groups.low}),a}dateFilterActions(e,t,r,i,a,o){var{dh:s}=this,l=s.FilterValue.ofNumber(i),d=null,h=null;a&&(d=a.filter,h=a.text);var{model:c}=this.irisGrid.props,m=c.getColumnIndexByName(e.name);A(m);var v=[];return v.push({menuElement:u.jsxs("div",{className:"iris-grid-filter-menu-item-value",children:[o?q.getOperatorAsText(o):""," ",'"',r,'"']}),order:1,group:oe.groups.high}),v.push({title:"date is",description:"Show only rows where ".concat(e.name," is ").concat(r),action:()=>{this.irisGrid.setQuickFilter(m,q.getQuickFilterCondition(d,e.filter().eq(l),o),q.getQuickFilterText(h,"=".concat(t),o))},order:10,group:oe.groups.low}),v.push({title:"date is not",description:"Show only rows where ".concat(e.name," is not ").concat(r),action:()=>{this.irisGrid.setQuickFilter(m,q.getQuickFilterCondition(d,e.filter().notEq(l),o),q.getQuickFilterText(h,"!=".concat(t),o))},order:20,group:oe.groups.low}),v.push({title:"date is before",description:"Show only rows where ".concat(e.name," is before ").concat(r),action:()=>{this.irisGrid.setQuickFilter(m,q.getQuickFilterCondition(d,e.filter().lessThan(l),o),q.getQuickFilterText(h,"<".concat(t),o))},order:30,group:oe.groups.low}),v.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(m,q.getQuickFilterCondition(d,e.filter().lessThanOrEqualTo(l),o),q.getQuickFilterText(h,"<=".concat(t),o))},order:40,group:oe.groups.low}),v.push({title:"date is after",description:"Show only rows where ".concat(e.name," is greater than ").concat(r),action:()=>{this.irisGrid.setQuickFilter(m,q.getQuickFilterCondition(d,e.filter().greaterThan(l),o),q.getQuickFilterText(h,">".concat(t),o))},order:50,group:oe.groups.low}),v.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(m,q.getQuickFilterCondition(d,e.filter().greaterThanOrEqualTo(l),o),q.getQuickFilterText(h,">=".concat(t),o))},order:60,group:oe.groups.low}),v}emptyStringFilterActions(e,t,r){var{dh:i}=this,a=i.FilterValue.ofString(""),o=t;o||(o={filter:null,text:null});var{filter:s,text:l}=o,d=[],{model:h}=this.irisGrid.props,c=h.getColumnIndexByName(e.name);return A(c),d.push({menuElement:u.jsxs("div",{className:"iris-grid-filter-menu-item-value",children:[r?q.getOperatorAsText(r):""," ",u.jsx("i",{className:"text-muted",children:"empty"})]}),order:1,group:oe.groups.high}),d.push({title:"is empty string",description:"Show only rows where ".concat(e.name," is empty"),action:()=>{this.irisGrid.setQuickFilter(c,q.getQuickFilterCondition(s,e.filter().eq(a),r),q.getQuickFilterText(l,"=",r))},order:10,group:oe.groups.low}),d.push({title:"is not empty string",description:"Show only rows where ".concat(e.name," is not empty"),action:()=>{this.irisGrid.setQuickFilter(c,q.getQuickFilterCondition(s,e.filter().notEq(a),r),q.getQuickFilterText(l,"!=",r))},order:20,group:oe.groups.low}),d}nullFilterActions(e,t,r){var i=null,a=null;t&&(i=t.filter,a=t.text);var o=[],{model:s}=this.irisGrid.props,l=s.getColumnIndexByName(e.name);return A(l),o.push({menuElement:u.jsxs("div",{className:"iris-grid-filter-menu-item-value",children:[r?q.getOperatorAsText(r):""," ",u.jsx("i",{className:"text-muted",children:"null"})]}),order:1,group:oe.groups.high}),o.push({title:"is null",description:"Show only rows where ".concat(e.name," is null"),action:()=>{this.irisGrid.setQuickFilter(l,q.getQuickFilterCondition(i,e.filter().isNull(),r),q.getQuickFilterText(a,"null",r))},order:10,group:oe.groups.low}),o.push({title:"is not null",description:"Show only rows where ".concat(e.name," is not null"),action:()=>{this.irisGrid.setQuickFilter(l,q.getQuickFilterCondition(i,e.filter().isNull().not(),r),q.getQuickFilterText(a,"!null",r))},order:20,group:oe.groups.low}),o}sortByActions(e,t,r){var i=this.irisGrid.getTheme(),{contextMenuSortIconColor:a}=i,o=[{title:"".concat(e.name," Ascending"),order:10,action:()=>{this.irisGrid.sortColumn(t,q.COLUMN_SORT_DIRECTION.ascending)},icon:this.checkColumnSort(r,q.COLUMN_SORT_DIRECTION.ascending)?Vn:void 0,iconColor:a},{title:"".concat(e.name," Descending"),order:20,action:()=>{this.irisGrid.sortColumn(t,q.COLUMN_SORT_DIRECTION.descending)},icon:this.checkColumnSort(r,q.COLUMN_SORT_DIRECTION.descending)?Vn:void 0,iconColor:a},{title:"Remove Sort",order:50,action:()=>{this.irisGrid.sortColumn(t,q.COLUMN_SORT_DIRECTION.none,!1,!0)},disabled:!r}];return j.isNumberType(e.type)&&(o.push({title:"ABS(".concat(e.name,") Ascending"),order:30,action:()=>{this.irisGrid.sortColumn(t,q.COLUMN_SORT_DIRECTION.ascending,!0)},icon:this.checkColumnSort(r,q.COLUMN_SORT_DIRECTION.ascending,!0)?Vn:void 0,iconColor:a}),o.push({title:"ABS(".concat(e.name,") Descending"),order:40,action:()=>{this.irisGrid.sortColumn(t,q.COLUMN_SORT_DIRECTION.descending,!0)},icon:this.checkColumnSort(r,q.COLUMN_SORT_DIRECTION.descending,!0)?Vn:void 0,iconColor:a})),o}additionalSortActions(e,t){var r=this.irisGrid.getTheme(),{contextMenuSortIconColor:i}=r,a=[{title:"Add Sort By",menuElement:u.jsxs("div",{className:"btn-context-menu menu-title",children:[u.jsx("span",{className:"icon",children:u.jsx(te,{icon:Vn,style:{color:i??void 0}})}),u.jsx("span",{className:"title",children:"Add Additional Sort"}),u.jsx("span",{className:"shortcut",children:Xi.isMacPlatform()?"⌘Click":"Ctrl+Click"})]}),order:1},{title:"".concat(e.name," Ascending"),order:10,action:()=>{this.irisGrid.sortColumn(t,q.COLUMN_SORT_DIRECTION.ascending,!1,!0)}},{title:"".concat(e.name," Descending"),order:20,action:()=>{this.irisGrid.sortColumn(t,q.COLUMN_SORT_DIRECTION.descending,!1,!0)}}];return j.isNumberType(e.type)&&(a.push({title:"ABS(".concat(e.name,") Ascending"),order:30,action:()=>{this.irisGrid.sortColumn(t,q.COLUMN_SORT_DIRECTION.ascending,!0,!0)}}),a.push({title:"ABS(".concat(e.name,") Descending"),order:40,action:()=>{this.irisGrid.sortColumn(t,q.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}}kr(q,"GROUP_EDIT",oe.groups.high+10);kr(q,"GROUP_HIDE_COLUMNS",oe.groups.high+25);kr(q,"GROUP_FILTER",oe.groups.high+50);kr(q,"GROUP_EXPAND_COLLAPSE",oe.groups.high+55);kr(q,"GROUP_GOTO",oe.groups.high+60);kr(q,"GROUP_SORT",oe.groups.high+75);kr(q,"GROUP_COPY",oe.groups.high+100);kr(q,"GROUP_FORMAT",oe.groups.high+150);kr(q,"COLUMN_SORT_DIRECTION",{ascending:"ASC",descending:"DESC",none:null});const kI=q;function jI(n,e,t){return e=HI(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function HI(n){var e=$I(n,"string");return typeof e=="symbol"?e:String(e)}function $I(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 Pt{constructor(e){super(),jI(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 BI=UI;function VI(n,e,t){return e=GI(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function GI(n){var e=WI(n,"string");return typeof e=="symbol"?e:String(e)}function WI(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 zI extends Pt{constructor(e){super(),VI(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:o}=this.irisGrid.state;if(!o)throw new Error("Metrics not set");var{columnHeaderMaxDepth:s}=o,l=this.irisGrid.getTheme();if(a&&l.columnHeaderHeight!=null&&l.filterBarHeight!=null&&t>l.columnHeaderHeight*s&&t<=l.columnHeaderHeight*s+l.filterBarHeight)return this.irisGrid.focusFilterBar(r),!0}return!1}onMove(e){var{y:t,column:r}=e,{isFilterBarShown:i,hoverAdvancedFilter:a,metrics:o}=this.irisGrid.state;if(!o)throw new Error("Metrics not set");var{columnHeaderMaxDepth:s}=o,l=this.irisGrid.getTheme(),d=null;return i&&l.columnHeaderHeight!=null&&l.filterBarHeight!=null&&r!==null&&t>=l.columnHeaderHeight*s&&t<=l.columnHeaderHeight*s+l.filterBarHeight&&(d=r),d!==a&&this.irisGrid.setState({hoverAdvancedFilter:d}),!1}onLeave(e){var{column:t}=e,{hoverAdvancedFilter:r}=this.irisGrid.state;return r!==null&&t!==r&&this.irisGrid.setState({hoverAdvancedFilter:null}),!1}}const KI=zI;function YI(n,e,t){return e=qI(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function qI(n){var e=XI(n,"string");return typeof e=="symbol"?e:String(e)}function XI(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 QI extends Pt{constructor(e){super(750),YI(this,"irisGrid",void 0),this.irisGrid=e}destroyTooltip(){this.irisGrid.setState({expandCellTooltipProps:null})}setCursor(e,t){return th.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:o,grid:s,state:l,props:d}=this.irisGrid;if(!s)return null;var{metrics:h}=l,{model:c}=d,{canvasContext:m}=s,v=s.getTheme(),f={context:m,mouseX:t,mouseY:r,metrics:h,model:c,theme:v},g=ze(c)?c.depthForRow(a):null,{left:p,top:C,width:b,height:S}=o.getExpandButtonPosition(f,g);return p==null||b==null||C==null||S==null?null:{left:p,top:C,width:b,height:S}}onMove(e,t){if(th.isInTreeBox(e,t)){var{expandCellTooltipProps:r}=this.irisGrid.state,{model:i}=this.irisGrid.props,a=this.getButtonPosition(e),{row:o}=e;A(o);var s=ze(i)&&i.isRowExpanded(o);ct(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 ZI=QI;function xv(n,e,t){return e=JI(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function JI(n){var e=e_(n,"string");return typeof e=="symbol"?e:String(e)}function e_(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 t_ extends Pt{constructor(e){super(),xv(this,"irisGrid",void 0),xv(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=Xi.isModifierKeyDown(r);return this.irisGrid.toggleSort(i,a),!0}return!1}}const r_=t_;class n_ extends Pt{constructor(e){super(),this.irisGrid=e}onWheel(e,t,r){var{irisGrid:i}=this,{model:a}=i.props,{metrics:o,pendingRowCount:s}=i.state;A(o);var{bottom:l,rowCount:d,rowHeight:h}=o,{deltaY:c}=B.getScrollDelta(r);return it(a)&&a.isEditable&&l>=d-1&&c>0&&i.setState({pendingRowCount:s+Math.ceil(c/h)}),!1}}const i_=n_;function Mv(n,e,t){return e=a_(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function a_(n){var e=o_(n,"string");return typeof e=="symbol"?e:String(e)}function o_(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 Pt{constructor(e){super(),Mv(this,"irisGrid",void 0),Mv(this,"currentLinkBox",void 0),this.irisGrid=e}destroyTooltip(){this.irisGrid.setState({linkHoverTooltipProps:null})}isHoveringLink(e,t){var{column:r,row:i,x:a,y:o}=e,{renderer:s,metrics:l,props:d}=t,{model:h}=d;if(r==null||i==null||l==null)return this.currentLinkBox=void 0,!1;var{modelRows:c,modelColumns:m}=l,v=$(c,i),f=$(m,r),g=h.renderTypeForCell(f,v),p=s.getCellRenderer(g);if(!jC(p))return!1;if(this.currentLinkBox!=null){var{x1:C,y1:b,x2:S,y2:w}=this.currentLinkBox;if(a>=C&&a<=S&&o>=b&&o<=w)return!0}for(var E=t.updateRenderState(),T=p.getTokenBoxesForVisibleCell(r,i,E),P=0;P<T.length;P+=1)if(Vl(T[P].token)){var D=B.translateTokenBox(T[P],l),{x1:O,x2:R,y1:x,y2:F}=D;if(a>=O&&a<=R&&o>=x&&o<=F)return this.currentLinkBox=D,!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&&Vl(this.currentLinkBox.token)){var{linkHoverTooltipProps:i}=this.irisGrid.state;if(this.currentLinkBox==null)return!1;var{x1:a,y1:o,x2:s,y2:l}=this.currentLinkBox,{href:d}=this.currentLinkBox.token,h=s-a,c=l-o,m={left:a,top:o+1,width:h,height:c};ct(i,m)||this.irisGrid.setState({linkHoverTooltipProps:m,linkHoverDisplayValue:d})}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 l_=s_;var d_=3e3;function u_(n){var{children:e=null,onEntering:t,onEntered:r,onExiting:i,onExited:a}=n,[o,s]=y.useState(!1),l=y.useRef(),d=Ih(e),h=y.useCallback(()=>{s(!0),l.current&&clearTimeout(l.current),l.current=setTimeout(()=>{s(!1)},d_)},[s,l]);return y.useEffect(()=>{d!==e&&e!=null&&h()},[e,d,s,h]),y.useEffect(()=>()=>l.current?clearTimeout(l.current):void 0,[]),u.jsx(Ed,{className:"toast-bottom-bar",isShown:o,onEntering:t,onEntered:r,onExiting:i,onExited:a,children:e})}class h_ extends Na{getGridY(e){var t=super.getGridY(e),{isFilterBarShown:r,theme:i,advancedFilters:a,quickFilters:o,sorts:s,reverseType:l}=e;return r?t+=i.filterBarHeight:(o!=null&&o.size>0||a!=null&&a.size>0)&&(t+=i.filterBarCollapsedHeight),l!==j.REVERSE_TYPE.NONE&&s!=null&&s.length>0&&(t+=i.reverseHeaderBarHeight),t}getUserColumnWidths(){return this.userColumnWidths}}const c_=h_;var m_=1,zC=he.memo(n=>{var{model:e,modelColumns:t,top:r,bottom:i,left:a,right:o,filter:s,formatter:l,reverseType:d=j.REVERSE_TYPE.NONE,sorts:h,customColumns:c,movedColumns:m,hiddenColumns:v,alwaysFetchColumns:f,rollupConfig:g=null,totalsConfig:p=null,selectDistinctColumns:C=ke,pendingRowCount:b=0,pendingDataMap:S=Zn,frozenColumns:w,formatColumns:E,columnHeaderGroups:T}=n,P=y.useMemo(()=>ye.getModelViewportColumns(t,a,o,m,v,f,m_),[t,a,o,m,v,f]);return y.useEffect(function(){e.filter=s},[e,s]),y.useEffect(function(){var O=[...h];d!==j.REVERSE_TYPE.NONE&&O.push(e.dh.Table.reverse()),e.sort=O},[e,h,d]),y.useEffect(function(){e.formatter=l},[e,l]),y.useEffect(function(){e.isCustomColumnsAvailable&&(e.customColumns=c)},[e,c]),y.useEffect(function(){e.isFormatColumnsAvailable&&(e.formatColumns=E)},[e,E]),y.useEffect(function(){e.setViewport(r,i,P)},[e,r,i,P]),y.useEffect(function(){e.isRollupAvailable&&(e.rollupConfig=g)},[e,e.isRollupAvailable,g]),y.useEffect(function(){e.isSelectDistinctAvailable&&(e.selectDistinctColumns=C)},[e,C]),y.useEffect(function(){e.isTotalsAvailable&&(e.totalsConfig=p)},[e,e.isTotalsAvailable,p]),y.useEffect(function(){e.pendingRowCount=b},[e,b]),y.useEffect(function(){e.pendingDataMap=S},[e,S]),y.useEffect(function(){w&&e.updateFrozenColumns(w)},[e,w]),y.useEffect(function(){e.columnHeaderGroups=T},[e,T]),null});zC.displayName="IrisGridModelUpdater";const v_=zC;var ah=16,f_=new Map([["sortUp",aw],["sortDown",ow],["caretDown",ti],["caretRight",rp],["cellOverflow",sw]]),g_=wn(n=>{var e=f_.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:ah/e.icon[0],d:ah/e.icon[1]};return i.addPath(r,a),i},{max:1e3});function ts(n){return g_(n)}class p_{static drawTreeMarker(e,t,r,i,a,o,s){e.save();var{x1:l,y1:d}=a,h=ts(s?"caretDown":"caretRight"),c=r+l-2,m=i+d+2.5;e.fillStyle=o,e.textAlign="center",e.translate(c,m),e.fill(h),e.restore()}}const KC=p_;class C_ extends LC{drawCellContent(e,t,r,i){var a,{metrics:o,model:s}=t,{modelColumns:l,modelRows:d}=o,h=$(d,i),c=l.get(r);if(c!==void 0){var m=s.valueForCell(c,h);if(j.isTextType((a=s.columns[c])===null||a===void 0?void 0:a.type)&&(m===null||m==="")){var v=e.font;e.font="italic ".concat(v),super.drawCellContent(e,t,r,i),e.font=v;return}super.drawCellContent(e,t,r,i)}}getTextRenderMetrics(e,t,r){var i=B.getTextRenderMetrics(e,t,r),{mouseX:a,mouseY:o,metrics:s,theme:l}=e;if(a==null||o==null)return i;var{column:d,row:h}=B.getGridPointFromXY(a,o,s);if(t===d&&r===h){var{left:c}=this.getCellOverflowButtonPosition(a,o,s,l);this.shouldRenderOverflowButton(e)&&c!=null&&(i.width=c-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:o,columnWidth:s,left:l,top:d}=B.getCellInfoFromXY(e,t,r);if(l==null||s==null||d==null)return a;var{width:h,verticalBarWidth:c}=r,{cellHorizontalPadding:m}=i,v=ah+2*m,f=o,g=Math.min(r.gridX+l+s,h-c),p=g-v,C=r.gridY+d;return{left:p,top:C,width:v,height:f}}shouldRenderOverflowButton(e){var t,r,{context:i,mouseX:a,mouseY:o,metrics:s,model:l,theme:d}=e;if(a==null||o==null)return!1;var{row:h,column:c,modelRow:m,modelColumn:v}=B.getCellInfoFromXY(a,o,s);if(h==null||c==null||m==null||v==null||!j.isStringType(l.columns[v].type))return!1;var f=(t=l.textForCell(v,m))!==null&&t!==void 0?t:"",{width:g}=B.getTextRenderMetrics(e,c,h),p=(r=s.fontWidths.get(d.font))!==null&&r!==void 0?r:Ta;i.save(),i.font=d.font;var C=this.getCachedTruncatedString(i,f,g,p,l.truncationCharForCell(v,m));return i.restore(),f!==""&&C!==f}drawTreeMarker(e,t,r,i,a,o,s){KC.drawTreeMarker(e,t,r,i,a,o,s)}}const b_=C_;class S_ extends AC{drawTreeMarker(e,t,r,i,a,o,s){KC.drawTreeMarker(e,t,r,i,a,o,s)}}const w_=S_;function Av(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 Lv(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Av(Object(t),!0).forEach(function(r){oh(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Av(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function oh(n,e,t){return e=y_(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function y_(n){var e=E_(n,"string");return typeof e=="symbol"?e:String(e)}function E_(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 Su=Object.freeze({SORT_UP:"sortUp",SORT_DOWN:"sortDown",CARET_DOWN:"caretDown",CARET_RIGHT:"caretRight",CELL_OVERFLOW:"cellOverflow"}),kv=10;class Kl extends An{constructor(){super(...arguments),oh(this,"textCellRenderer",new b_),oh(this,"dataBarCellRenderer",new w_)}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===j.sortDirection.ascending?ts(Su.SORT_UP):e.direction===j.sortDirection.descending?ts(Su.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:o}=t,{modelColumns:s,modelRows:l}=a,d=s.get(r),h=$(l,i);if(d!==void 0){var c=o.renderTypeForCell(d,h),m=this.getCellRenderer(c);m.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:o,top:s,width:l,height:d}=this.getCellOverflowButtonPosition(e),{cellHorizontalPadding:h,overflowButtonColor:c,overflowButtonHoverColor:m}=a;t.save(),m!=null&&o!=null&&l!=null&&s!=null&&d!=null&&r>=o&&r<=o+l&&i>=s&&i<=s+d?t.fillStyle=m:c!=null&&(t.fillStyle=c);var v=ts(Su.CELL_OVERFLOW);o!=null&&s!=null&&t.translate(o+h,s+2),t.fill(v),t.restore()}}drawGroupedColumnLine(e,t){var{metrics:r,model:i,theme:a}=t,{groupedColumns:o}=i,{maxY:s,allColumnWidths:l,allColumnXs:d}=r;if(!(o.length===0||a.groupedColumnDividerColor==null)){var h=o.length-1,c=d.get(h),m=l.get(h);if(!(c==null||m==null)){var v=c+m+.5;e.strokeStyle=a.groupedColumnDividerColor,e.lineWidth=1,e.beginPath(),e.moveTo(v,0),e.lineTo(v,s),e.stroke()}}}drawPendingRowLine(e,t){var{metrics:r,model:i,theme:a}=t,{allRowYs:o,maxX:s}=r,{pendingRowCount:l}=i;if(!(l<=0)){var d=i.rowCount-i.pendingRowCount-i.floatingBottomRowCount,h=o.get(d);h!=null&&(h-=.5,e.save(),e.setLineDash([4,2]),e.strokeStyle=a.pendingTextColor,e.lineWidth=1,e.beginPath(),e.moveTo(0,h),e.lineTo(s,h),e.stroke(),e.restore())}}drawMouseColumnHover(e,t){var{theme:r,metrics:i,hoverSelectColumn:a}=t;if(!(a==null||r.linkerColumnHoverBackgroundColor==null)){var{allColumnWidths:o,allColumnXs:s,maxY:l}=i,d=$(s,a),h=$(o,a);e.fillStyle=r.linkerColumnHoverBackgroundColor,e.fillRect(d,0,h,l)}}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:o,height:s,gridY:l}=i,{scrimBlurSize:d,scrimColor:h}=a;t.save(),t.globalCompositeOperation="color",t.filter="blur(".concat(d,"px)"),h!=null&&(t.fillStyle=h),t.beginPath(),t.rect(0,l,o,s-l),t.clip(),t.fillRect(-d,-d+l,d*2+o,(d*2+(s-l))*r),t.globalCompositeOperation="overlay",t.filter="blur(".concat(d,"px) opacity(15%)"),t.fillRect(-d,-d+l,d*2+o,(d*2+(s-l))*r),t.restore()}}drawColumnHeaders(e,t){super.drawColumnHeaders(e,t);var{theme:r,metrics:i,model:a,reverseType:o}=t,{columnHeaderHeight:s}=i;if(this.drawFilterHeaders(e,t),!(s<=0)){var{sort:l}=a;if(l.length===1){var d=o!==j.REVERSE_TYPE.NONE,h;d?h=r.headerReverseBarColor:h=r.headerSortBarColor,this.drawHeaderBar(e,t,h,d?r.reverseHeaderBarHeight:r.sortHeaderBarHeight)}else l.length>1&&(o!==j.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:o,metrics:s,model:l}=t,{columnHeaderHeight:d,width:h}=s,c=0;a||(c=i),e.fillStyle=o.headerBarCasingColor,e.fillRect(0,l.columnHeaderMaxDepth*d-i-2+c,h,i+2),e.fillStyle=r,e.fillRect(0,l.columnHeaderMaxDepth*d-i-1+c,h,i)}drawColumnHeadersAtDepth(e,t,r,i,a){var{metrics:o,model:s,isMenuShown:l}=t,{columnHeaderMaxDepth:d}=s,{width:h}=o,c=Lv(Lv({},i),{},{maxX:a===d-1&&i.maxX===h?h-(l?0:30):i.maxX});super.drawColumnHeadersAtDepth(e,t,r,c,a)}drawColumnHeaderAtIndex(e,t,r,i){var a,o;super.drawColumnHeaderAtIndex(e,t,r,i);var{metrics:s,model:l,theme:d}=t,{modelColumns:h,allColumnWidths:c,allColumnXs:m,gridX:v,columnHeaderHeight:f,fontWidths:g}=s,{headerHorizontalPadding:p}=d,C=$(c,r,0),b=$(m,r)+v,S=h.get(r);if(S!=null){var w=(a=l.columns[S])===null||a===void 0?void 0:a.name;if(w!=null){var E=j.getSortForColumn(l.sort,w);if(E){var T=this.getSortIcon(E);if(T){var P=l.textForColumnHeader(S);if(P!==void 0){var D=(o=g.get(e.font))!==null&&o!==void 0?o:Ta;A(D);var O=P.length*D,R=v+b+O+p,{maxX:x}=i;x-=p;var F=v+b+C-p-1,_=R>x?R+1:Math.min(x,F),L=E.direction===j.sortDirection.ascending?-6:-12,M=f*.5+L;e.save(),e.beginPath(),e.rect(b,0,C,f),e.clip(),e.fillStyle=d.headerSortBarColor,e.translate(_,M),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:o,advancedFilters:s}=t,{filterBarHeight:l}=a;if(!(l<=0)){var{gridX:d,gridY:h,maxX:c,modelColumns:m,visibleColumns:v,allColumnWidths:f,allColumnXs:g}=r,p=h-l;e.save(),e.font=a.font,e.textAlign="left",o!=null&&o.size>0||s!=null&&s.size>0?e.fillStyle=a.filterBarExpandedActiveBackgroundColor:e.fillStyle=a.filterBarExpandedBackgroundColor,e.fillRect(d,p,c,l-1),e.fillStyle=a.headerBarCasingColor,e.fillRect(d,p+l-1,c,1);var C=p;e.strokeStyle=a.filterBarSeparatorColor,e.beginPath();for(var b=0;b<v.length;b+=1){var S=v[b],w=$(m,S),E=$(g,S),T=$(f,S);if(i.isFilterable(w)&&T>0){var P=d+(E??0);e.rect(P+.5,C+.5,T,l-2)}}e.stroke();for(var D=0;D<v.length;D+=1){var O=v[D],R=$(f,O),x=$(g,O),F=x+d;this.drawExpandedFilterHeader(e,t,O,F,R)}e.restore()}}drawExpandedFilterHeader(e,t,r,i,a){if(!(a<=0)){var{metrics:o,theme:s,quickFilters:l,advancedFilters:d}=t,{modelColumns:h,gridY:c}=o,{filterBarHeight:m,filterBarExpandedActiveCellBackgroundColor:v,filterBarErrorColor:f,filterBarHorizontalPadding:g,headerColor:p}=s,C=c-m,b=h.get(r);if(b!==void 0){var S=l.get(b),w=d.get(b);if(!(S==null&&w==null)){var E=null;if(S!=null){var{text:T}=S;if(E=T,E||(E=j.getFilterText(S.filter)),E!=null){var{fontWidths:P}=o,D=P.get(e.font);(D==null||D===0)&&(D=e.measureText("8").width,D||(D=10));var O=(a-g*2)/D;O<=0?E="":E.length>O&&(E="".concat(E.substring(0,O-1),"…"))}}e.save();var R=Kl.isFilterValid(w,S);if(R&&v!=null)e.fillStyle=v,e.fillRect(i+1,C+1,a-1,m-3);else if(f!=null){e.fillStyle=f,e.lineWidth=2,e.strokeStyle=f;var x=i+2,F=C+2,_=a-3,L=m-5;e.strokeRect(x,F,_,L)}if(E!=null&&E!==""){var M=i+g,U=C+m*.5+1;e.fillStyle=p,e.fillText(E,M,U)}e.restore()}}}}drawCollapsedFilterHeaders(e,t){var{metrics:r,theme:i}=t,{headerSeparatorColor:a,filterBarCollapsedHeight:o}=i;if(!(o<=0)){var{gridX:s,gridY:l,maxX:d,visibleColumns:h,allColumnWidths:c,allColumnXs:m}=r,v=l-o;e.save(),e.fillStyle=a,e.fillRect(s,v,d,o);for(var f=0;f<h.length;f+=1){var g=h[f],p=c.get(g),C=m.get(g);if(C!=null&&p!=null){var b=C+s;this.drawCollapsedFilterHeader(e,t,g,b,p)}}e.restore()}}drawCollapsedFilterHeader(e,t,r,i,a){if(!(a<=0)){var{metrics:o,theme:s,quickFilters:l,advancedFilters:d}=t,{modelColumns:h,gridY:c}=o,m=h.get(r);if(m!==void 0){var v=l.get(m),f=d.get(m),{filterBarCollapsedHeight:g,filterBarActiveColor:p,filterBarActiveBackgroundColor:C,filterBarErrorColor:b}=s;e.save();var S=Kl.isFilterValid(f,v);C!=null&&v==null&&f==null?e.fillStyle=C:p!=null&&S?e.fillStyle=p:b!=null&&(e.fillStyle=b);var w=i+1,E=c-g,T=a-1,P=g-1;e.fillRect(w,E,T,P),e.restore()}}}drawRowFooters(e,t){var{metrics:r,model:i,mouseX:a,mouseY:o,theme:s}=t,{gridY:l,gridX:d,maxX:h,modelRows:c,floatingTopHeight:m,floatingBottomHeight:v,floatingRows:f,rowFooterWidth:g,height:p,horizontalBarHeight:C,verticalBarWidth:b,allRowHeights:S,allRowYs:w,width:E}=r;if(!(g<=0||f.length===0)){var{cellHorizontalPadding:T,floatingGridRowColor:P,floatingRowBackgroundColors:D,headerColor:O,rowHoverBackgroundColor:R}=s;e.translate(d,l),e.beginPath();var x=Math.min(h,E-g-b-d);e.fillStyle=D,m>0&&e.rect(x,0,g,m),v>0&&e.rect(x,p-l-C-v,g,v),e.fill();var F=a!=null&&o!=null&&a>=d&&a<=h+g?B.getRowAtY(o,r):null;if(R!=null&&F!==null&&f.includes(F)){e.fillStyle=R;var _=w.get(F),L=S.get(F);A(_),A(L),e.fillRect(x,_,g,L)}if(e.beginPath(),P!=null&&(e.strokeStyle=P),m>0&&(e.moveTo(x+.5,.5),e.lineTo(x+.5,m-.5)),v>0){var M=p-l-C-v;e.moveTo(x-.5,M+.5),e.lineTo(x-.5,M+v-.5)}e.stroke(),e.fillStyle=O,e.textAlign="left";for(var U=x+T,V=0;V<f.length;V+=1){var z=f[V],Q=S.get(z),Z=w.get(z),I=c.get(z);if(Z!=null&&Q!=null&&I!=null){var N=Z+Q*.5;e.fillText(i.textForRowFooter(I),U,N)}}e.translate(-d,-l)}}getExpandButtonPosition(e,t){var{mouseX:r,mouseY:i,metrics:a,theme:o}=e,s={left:null,top:null,width:null,height:null};if(r==null||i==null||t==null||!a)return s;var{rowHeight:l,left:d,top:h}=B.getCellInfoFromXY(r,i,a);A(d),A(l),A(h);var{cellHorizontalPadding:c}=o,m=kv+2*c,v=Math.max(d+kv*t,a.gridX),f=a.gridY+h;return{left:v,top:f,width:m,height:l}}}const T_=Kl,P_="12px Fira Sans, sans-serif",O_="#f0f0ee",D_="#1a171a",ue={"grid-bg":"#211f22",font:P_,white:O_,black:D_,"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 R_=Object.freeze({backgroundColor:ue["grid-bg"],white:ue.white,black:ue.black,font:ue.font,headerBackgroundColor:ue["header-bg"],headerColor:ue["header-color"],headerSeparatorColor:ue["header-separator-color"],headerSeparatorHoverColor:ue["header-separator-hover-color"],headerHiddenSeparatorHoverColor:ue["header-hidden-separator-hover-color"],headerSortBarColor:ue["header-sort-bar-color"],headerReverseBarColor:ue["header-reverse-bar-color"],headerBarCasingColor:ue["header-bar-casing-color"],headerFont:ue["header-font"],rowBackgroundColors:ue["row-background-colors"],rowHoverBackgroundColor:ue["row-hover-bg"],selectionColor:ue["selection-color"],selectionOutlineColor:ue["selection-outline-color"],selectionOutlineCasingColor:ue["selection-outline-casing-color"],selectedRowHoverBackgroundColor:ue["selected-row-hover-bg"],scrollBarBackgroundColor:ue["scroll-bar-bg"],scrollBarHoverBackgroundColor:ue["scroll-bar-hover-bg"],scrollBarCasingColor:ue["scroll-bar-casing-color"],scrollBarCornerColor:ue["scroll-bar-corner-color"],scrollBarColor:ue["scroll-bar-color"],scrollBarHoverColor:ue["scroll-bar-hover-color"],scrollBarActiveColor:ue["scroll-bar-active-color"],scrollBarSelectionTickColor:ue["selected-row-hover-bg"],scrollBarActiveSelectionTickColor:ue["scroll-bar-active-selection-tick-color"],textColor:ue["text-color"],hyperlinkColor:ue["hyperlink-color"],positiveNumberColor:ue["positive-number-color"],negativeNumberColor:ue["negative-number-color"],zeroNumberColor:ue["zero-number-color"],dateColor:ue["date-color"],pendingTextColor:ue["pending-text-color"],errorTextColor:ue["error-text-color"],nullStringColor:ue["null-string-color"],filterBarActiveBackgroundColor:ue["filter-bar-active-bg"],filterBarExpandedBackgroundColor:ue["filter-bar-expanded-bg"],filterBarExpandedActiveBackgroundColor:ue["filter-bar-expanded-active-bg"],filterBarExpandedActiveCellBackgroundColor:ue["filter-bar-expanded-active-cell-bg"],filterBarSeparatorColor:ue["filter-bar-separator-color"],filterBarActiveColor:ue["filter-bar-active-color"],filterBarErrorColor:ue["filter-bar-error-color"],filterIconColor:ue["filter-icon-color"],scrimColor:ue["scrim-color"],contextMenuSortIconColor:ue["context-menu-sort-icon-color"],contextMenuReverseIconColor:ue["context-menu-reverse-icon-color"],allowRowResize:!1,autoSelectRow:!0,gridColumnColor:null,gridRowColor:null,groupedColumnDividerColor:ue["grouped-column-divider-color"],columnHoverBackgroundColor:null,headerHorizontalPadding:12,scrollBarSize:13,scrollBarHoverSize:16,minScrollHandleSize:24,rowHeight:parseInt(ue["row-height"],10)||19,columnWidth:100,rowHeaderWidth:0,rowFooterWidth:60,columnHeaderHeight:parseInt(ue["header-height"],10)||30,filterBarHeight:30,filterBarCollapsedHeight:5,sortHeaderBarHeight:2,reverseHeaderBarHeight:4,filterBarHorizontalPadding:4,scrimBlurSize:25,minScrimTransitionTime:150,maxScrimTransitionTime:350,scrollSnapToRow:!0,linkerColumnHoverBackgroundColor:ue["linker-column-hover-bg"],treeLineColor:ue["tree-line-color"],treeMarkerColor:ue["tree-marker-color"],treeMarkerHoverColor:ue["tree-marker-hover-color"],floatingGridColumnColor:null,floatingGridRowColor:ue["floating-grid-row-color"],floatingRowBackgroundColors:ue["floating-row-background-colors"],floatingDividerInnerColor:ue["floating-divider-inner-color"],floatingDividerOuterColor:ue["floating-divider-outer-color"],overflowButtonColor:ue["overflow-button-color"],overflowButtonHoverColor:ue["overflow-button-hover-color"],zeroLineColor:ue["zero-line-color"],positiveBarColor:ue["positive-bar-color"],negativeBarColor:ue["negative-bar-color"]});const YC=R_;function qC(n,e,t){return e=N_(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function N_(n){var e=F_(n,"string");return typeof e=="symbol"?e:String(e)}function F_(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=ae.module("ColumnStatistics"),I_={SIZE:"Number of Rows"};class cs extends y.Component{static getStatsLabel(e){var t;return(t=I_[e])!==null&&t!==void 0?t:e.split(" ").map(r=>r[0].toUpperCase()+r.substr(1).toLowerCase()).join(" ")}constructor(e){super(e),qC(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<cs.AUTO_GENERATE_LIMIT&&this.handleGenerateStatistics():this.setState({loading:!1})}handleGenerateStatistics(){this.setState({loading:!0});var{column:e,model:t}=this.props;this.cancelablePromise=Te.makeCancelable(t.columnStatistics(e)),this.cancelablePromise.then(this.handleStatistics).catch(this.handleError)}handleStatistics(e){wu.debug("Received statistics",e);var{model:t,onStatistics:r}=this.props,i=[];e.statisticsMap.forEach((a,o)=>{i.push({operation:cs.getStatsLabel(o),value:a,type:e.getType(o)})}),e.uniqueValues.forEach((a,o)=>{i.push({operation:o,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&&Te.isCanceled(e)){wu.debug("Called handleError on a cancelled promise result");return}wu.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:o}=this.state,s=!i&&r==null&&a==null&&t.isColumnStatisticsAvailable,l=[],d=e.type.substring(e.type.lastIndexOf(".")+1),h=e.description===null?null:e.description;if(a!=null)for(var c=0;c<a.length;c+=1){var{operation:m,className:v,value:f,type:g}=a[c],p=g?t.displayString(f,g):t.displayString(f,e.type,e.name),C=u.jsxs(he.Fragment,{children:[u.jsx("div",{className:J("column-statistic-operation",v),children:m}),u.jsx("div",{className:"column-statistic-value",children:p})]},m);l.push(C)}var b=ze(t)&&t.hasExpandableRows?"Expanded Rows":"Number of Rows",S=t.displayString(o,"long"),w=t.getColumnIndexByName(e.name);return u.jsxs("div",{className:"column-statistics",children:[u.jsxs("div",{className:"column-statistics-title",children:[e.name,u.jsxs("span",{className:"column-statistics-type",children:[" (",d,")"]}),u.jsx(ld,{className:"column-statistics-copy",tooltip:"Copy column name",copy:e.name})]}),h!=null&&u.jsx("div",{className:"column-statistics-description",children:h}),w!=null&&!t.isColumnSortable(w)&&u.jsxs("div",{className:"column-statistics-status",children:[u.jsx(te,{icon:lw,className:"mr-1"}),"Not sortable"]}),w!=null&&!t.isColumnMovable(w)&&u.jsxs("div",{className:"column-statistics-status",children:[u.jsx(te,{icon:t.isColumnFrozen(w)?dw:uw,className:"mr-1"}),t.isColumnFrozen(w)?"Frozen":"Not movable"]}),u.jsxs("div",{className:"column-statistics-grid",children:[a==null&&u.jsxs(u.Fragment,{children:[u.jsx("div",{className:"column-statistic-operation",children:b}),u.jsx("div",{className:"column-statistic-value",children:S})]}),l]}),s&&u.jsx(G,{kind:"ghost",className:"px-0",onClick:this.handleGenerateStatistics,children:"Generate Stats"}),r!=null&&u.jsx("div",{className:"error-message",children:"".concat(r)}),a&&!i&&u.jsx(G,{kind:"ghost",className:"px-0",onClick:this.handleGenerateStatistics,icon:u.jsx(te,{icon:Dh,className:"mr-1"}),children:"Refresh"}),i&&u.jsxs("div",{className:"column-statistics-loading",children:[u.jsx(kn,{className:"mr-2"}),"Calculating Stats..."]})]})}}qC(cs,"AUTO_GENERATE_LIMIT",1e5);const __=cs;function jv(n,e,t){return e=x_(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function x_(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 Js=ae.module("AdvancedFilterCreatorFilterItem");class ic extends y.PureComponent{static getLabelForFilter(e,t){try{if(j.isNumberType(e)||j.isCharType(e))return Ap(t);if(j.isTextType(e))return Mp(t);if(j.isDateType(e))return Lp(t);if(j.isBooleanType(e))return uT(t);throw new Error("Unrecognized column type: ".concat(e))}catch(r){return Js.warn(r),""}}constructor(e){super(e),jv(this,"typeDropdown",void 0),jv(this,"getCachedIsValid",Ce((a,o,s,l,d)=>{try{return!s||d.makeAdvancedValueFilter(a,o,s,l)!=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;Js.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){Js.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(){Js.debug("delete");var{onDelete:e}=this.props;e()}render(){for(var{column:e,filterTypes:t,formatter:r,tableUtils:i}=this.props,{selectedType:a,value:o}=this.state,s=!j.isBooleanType(e.type),l=[],d=this.getCachedIsValid(e,a,o,r.timeZone,i),h=0;h<t.length;h+=1){var c=t[h],m=ic.getLabelForFilter(e.type,c),v=u.jsx("option",{value:c,children:m},c);l.push(v)}return u.jsx("div",{className:"advanced-filter-creator-filter-item",children:u.jsxs("div",{className:"form-row",children:[u.jsx("div",{className:"form-group col",children:u.jsx("select",{className:"form-control custom-select",value:a,onChange:this.handleTypeChange,ref:f=>{this.typeDropdown=f},children:l})}),s&&u.jsx("div",{className:"form-group col",children:u.jsx("div",{className:"input-group",children:u.jsx("input",{type:"text",className:J("form-control",{error:!d}),placeholder:"Enter value",value:o,onChange:this.handleValueChange})})}),u.jsx("div",{className:"form-group col-1 px-0",children:u.jsx(G,{kind:"ghost",className:"w-100 h-100 p-0 m-0",onClick:this.handleDelete,icon:jr,tooltip:"Remove Filter"})})]})})}}const A_=ic;function sh(n,e,t){return e=L_(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function L_(n){var e=k_(n,"string");return typeof e=="symbol"?e:String(e)}function k_(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 Hv=ae.module("AdvancedFilterCreatorSelectValueList");class ms extends y.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),sh(this,"dh",void 0),sh(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=ms.indexOf(t,i);a>=0?i.splice(a,1):i.push(t);var o=a<0;r&&(o=!o);var{offset:s}=this.state,{items:l}=this.state;l=[...l];var d=e-s;d>=0&&d<l.length&&(l[d].isSelected=o),this.setState({items:l,selectedValues:i});var{onChange:h}=this.props;h(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,o=[],s=t.columns[0],l=0;l<i.rows.length;l+=1){var d=i.rows[l],h=d.get(s),c=void 0;h==null?c=u.jsx("i",{className:"text-muted",children:"null"}):h===""?c=u.jsx("i",{className:"text-muted",children:"empty"}):c=r.getFormattedString(h,s.type,s.name);var m=this.isValueSelected(h);o.push({displayValue:c,value:h,isSelected:m})}Hv.debug2("Received table update:",a,o.length);var v=t.size;this.setState({itemCount:v,items:o,offset:a,isLoading:!1})}}isValueSelected(e){var{invertSelection:t}=this.props,{selectedValues:r}=this.state,i=ms.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,o=Math.max(0,e-a*3),s=Math.max(o,t+a*3);Hv.debug2("Setting viewport",o,",",s),i.setViewport(o,s)}}render(){var{offset:e,isLoading:t,items:r,itemCount:i}=this.state;return u.jsxs("div",{className:"select-value-list-wrapper",children:[u.jsx(oy,{itemCount:i,items:r,offset:e,onSelect:this.handleSelect,onViewportChange:this.handleViewportChange,ref:a=>{this.list=a}}),u.jsx(Lr,{in:t,timeout:250,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0,children:u.jsx("div",{className:"loading-list",children:u.jsx(kn,{className:"loading-spinner-large"})})})]})}}sh(ms,"defaultProps",{invertSelection:!0,selectedValues:[],onChange:()=>{}});const j_=ms;function rs(n,e,t){return e=H_(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function H_(n){var e=$_(n,"string");return typeof e=="symbol"?e:String(e)}function $_(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 y.PureComponent{constructor(e){super(e),rs(this,"searchTablePromise",void 0),rs(this,"tableUtils",void 0),rs(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 j(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:o,searchText:s}=this.state;o!==t.table&&(t.table!=null&&t.table.close(),o!=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"),o="";return e<1e6&&(o="Displaying "),"".concat(o).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,Rs.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],o=[];if(a!=null){var s;if(t.length>0){var l=null;j.isCharType(a.type)?l=i.makeQuickFilter(a,t):j.isTextType(a.type)?l=i.makeQuickFilter(a,"~".concat(t),r):l=i.makeQuickFilter(a,">=".concat(t),r),l!=null?o.push(l):s="Invalid search text"}this.setState({filters:o,error:s})}}render(){var{error:e,filters:t,invertSelection:r,selectedValues:i,searchText:a,table:o}=this.state,{dh:s,formatter:l,showSearch:d}=this.props,h=this.getColumnName(),c=this.getDisplayedValueText(),m=h?"Find ".concat(h,"..."):"";return u.jsxs("div",{className:"advanced-filter-creator-select-value",children:[u.jsxs("div",{className:d?"form-group":"",children:[u.jsx("label",{htmlFor:"advanced-filter-creator-select-value-input",children:"Select Values"}),d&&u.jsx("input",{type:"text",className:J("form-control",{"is-invalid":e!=null}),id:"advanced-filter-creator-select-value-input",placeholder:m,value:a,onChange:this.handleSearchChange})]}),u.jsx(j_,{dh:s,table:o,filters:t,invertSelection:r,selectedValues:i,formatter:l,onChange:this.handleListChange}),u.jsxs("div",{className:"advanced-filter-creator-select-meta-row",children:[u.jsxs("div",{children:[u.jsx(G,{kind:"ghost",onClick:this.handleSelectAllClick,children:"Select All"}),u.jsx(G,{kind:"ghost",onClick:this.handleClearAllClick,children:"Clear"})]}),u.jsx(Lr,{in:c!=null,timeout:250,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0,children:u.jsx("div",{className:"row-count-info",children:c})})]})]})}}rs(Rs,"searchDebounceTime",250);rs(Rs,"defaultProps",{invertSelection:!0,selectedValues:[],onChange:()=>{},showSearch:!0});const U_=Rs;function Ya(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=V_(n,"string");return typeof e=="symbol"?e:String(e)}function V_(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=ae.module("AdvancedFilterCreator");class In extends y.PureComponent{static makeFilterItem(){return{key:et()}}constructor(e){var t,r;super(e),Ya(this,"focusTrapContainer",void 0),Ya(this,"debounceTimeout",void 0),Ya(this,"valuesTablePromise",void 0),Ya(this,"getFilterTypes",Ce(v=>j.getFilterTypes(v))),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=he.createRef();var{model:i,column:a,options:o}=e,{filterOperators:s,invertSelection:l,selectedValues:d}=o,h=(t=(r=o.filterItems)===null||r===void 0?void 0:r.map(v=>{var{selectedType:f,value:g}=v;return{selectedType:f,value:g,key:et()}}))!==null&&t!==void 0?t:[];h.length===0&&h.push(In.makeFilterItem()),s==null&&(s=[]),l==null&&(l=!0),d==null&&(d=[]);var c=i.getColumnIndexByName(a.name);A(c);var m=i.isColumnSortable(c);this.state={filterItems:h,filterOperators:s,invertSelection:l,selectedValues:d,valuesTableError:null,valuesTable:void 0,isSortable:m}}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){Lo.debug("No values table for this model, just ignore");return}this.valuesTablePromise=j.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=>{Te.isCanceled(r)||(Lo.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(In.makeFilterItem()),t=t.concat(ei.and),this.setState({filterItems:e,filterOperators:t})}handleAddOr(){var{filterItems:e,filterOperators:t}=this.state;e=e.concat(In.makeFilterItem()),t=t.concat(ei.or),this.setState({filterItems:e,filterOperators:t})}handleChangeFilterOperator(e,t){var{filterOperators:r}=this.state;r=[...r],sy(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(In.makeFilterItem()),this.setState({filterItems:t,filterOperators:r}),this.startUpdateTimer()}handleSelectValueChange(e,t){this.setState({selectedValues:e,invertSelection:t}),this.startUpdateTimer()}handleReset(){Lo.debug("Resetting Advanced Filter"),this.setState({filterItems:[In.makeFilterItem()],filterOperators:[],selectedValues:[],invertSelection:!0}),this.startUpdateTimer()}handleSortDown(e){var t=Xi.isModifierKeyDown(e);this.sortTable(j.sortDirection.descending,t)}handleSortUp(e){var t=Xi.isModifierKeyDown(e);this.sortTable(j.sortDirection.ascending,t)}handleSubmit(e){Lo.debug("Submitting Advanced Filter"),this.stopUpdateTimer(),this.sendUpdate(),e.preventDefault()}handleDone(e){Lo.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,In.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:o,model:s,tableUtils:l}=this.props,{formatter:d}=s,h=e.filter(f=>{var{selectedType:g,value:p}=f;return g!=null&&p!=null&&p!==""}),c=t.filter((f,g)=>f!=null&&e[g].selectedType!=null&&e[g].value!=null&&e[g].value!=="").slice(0,h.length-1),m={filterItems:h,filterOperators:c,invertSelection:r,selectedValues:i},v=l.makeAdvancedFilter(a,m,d.timeZone);o(a,v,m)}render(){var e=this,{column:t,model:r,sortDirection:i,formatter:a,tableUtils:o}=this.props,{filterItems:s,filterOperators:l,invertSelection:d,selectedValues:h,valuesTable:c,valuesTableError:m,isSortable:v}=this.state,{dh:f,isValuesTableAvailable:g}=r,p=j.isBooleanType(t.type),C=j.isDateType(t.type),b=this.getFilterTypes(t.type),S=t.type.substring(t.type.lastIndexOf(".")+1),w=[];if(!p&&b.length)for(var E=function(R){var x=s[R],{key:F,selectedType:_,value:L}=x,M=u.jsx(A_,{column:t,filterTypes:b,onChange:e.getFilterChangeHandler(R),onDelete:e.getFilterDeleteHandler(R),selectedType:_,value:L,formatter:a,tableUtils:o},F);if(w.push(M),R<l.length){var U=l[R],V=U===ei.and,z=u.jsxs("div",{className:"form-row justify-content-end advanced-filter-creator-filter-operator",children:[u.jsx(G,{kind:"ghost",className:J("filter-operator",{active:V}),onClick:()=>e.handleChangeFilterOperator(R,ei.and),children:"AND"}),u.jsx(G,{kind:"ghost",className:J("filter-operator",{active:!V}),onClick:()=>e.handleChangeFilterOperator(R,ei.or),children:"OR"})]},"filterOperator".concat(F));w.push(z)}},T=0;T<s.length;T+=1)E(T);var P=this.shouldShowAddFilter(),D=u.jsxs("div",{className:J("form-row justify-content-end add-filter-item",{hidden:!P}),children:[u.jsx("span",{className:"text-muted",children:u.jsx(te,{icon:Qi})}),u.jsx(G,{kind:"ghost",className:"btn-filter-item",onClick:this.handleAddAnd,disabled:!P,tooltip:"Add filter with AND",children:"AND"}),u.jsx(G,{kind:"ghost",className:"btn-filter-item",onClick:this.handleAddOr,disabled:!P,tooltip:"Add filter with OR",children:"OR"})]},"addFilterItem");return w.push(D),u.jsxs("div",{className:"advanced-filter-creator",role:"presentation",children:[u.jsx("div",{tabIndex:0,onFocus:this.handleFocusTrapStart}),u.jsxs("form",{onSubmit:this.handleSubmit,ref:this.focusTrapContainer,children:[u.jsxs("div",{className:"title-bar",children:[u.jsx("h6",{className:"advanced-filter-title",children:"Advanced Filters"}),u.jsxs("div",{className:"advanced-filter-menu-buttons",children:[u.jsx(G,{kind:"ghost",className:J("sort-operator",{active:i===j.sortDirection.descending}),onClick:this.handleSortDown,icon:Xc,tooltip:v?"Sort ".concat(t.name," Descending"):"Not sortable",disabled:!v}),u.jsx(G,{kind:"ghost",className:J("sort-operator",{active:i===j.sortDirection.ascending}),onClick:this.handleSortUp,icon:u.jsx(te,{icon:Xc,rotation:180}),tooltip:v?"Sort ".concat(t.name," Ascending"):"Not sortable",disabled:!v})]})]}),u.jsx("hr",{}),u.jsxs("div",{className:"advanced-filter-column-name",children:[t.name," ",u.jsxs("span",{className:"column-type",children:["(",S,")"]})]}),w,g&&m==null&&u.jsxs(u.Fragment,{children:[!p&&u.jsx("hr",{}),u.jsx("div",{className:"form-group",children:u.jsx(U_,{dh:f,table:c,onChange:this.handleSelectValueChange,invertSelection:d,selectedValues:h,formatter:a,showSearch:!C,timeZone:a.timeZone})})]}),u.jsxs("div",{className:"form-row justify-content-end",children:[u.jsx(G,{kind:"secondary",className:"mr-2",onClick:this.handleReset,children:"Reset"}),u.jsx(G,{kind:"primary",onClick:this.handleDone,children:"Done"})]})]}),u.jsx("div",{tabIndex:0,onFocus:this.handleFocusTrapEnd})]})}}Ya(In,"debounceFilterUpdate",250);Ya(In,"defaultProps",{options:{filterItems:null,filterOperators:null,invertSelection:!0,selectedValues:[]},sortDirection:null});const G_=In;function $v(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 Uv(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?$v(Object(t),!0).forEach(function(r){W_(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):$v(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function W_(n,e,t){return e=z_(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function z_(n){var e=K_(n,"string");return typeof e=="symbol"?e:String(e)}function K_(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 Bv=ae.module("Aggregations");function Y_(n){var{isRollup:e,settings:t,onChange:r,onEdit:i}=n,{aggregations:a,showOnTop:o}=t,s=y.useMemo(()=>yF.filter(R=>!a.some(x=>x.operation===R)),[a]),[l,d]=y.useState(s[0]),[h,c]=y.useState([]),m=y.useCallback(R=>{r(Uv(Uv({},t),R))},[r,t]),v=y.useCallback(R=>{m({aggregations:R})},[m]),f=y.useCallback(R=>{m({showOnTop:R})},[m]),g=y.useCallback(()=>{Bv.debug("handleDragStart"),Cn.startDragging()},[]),p=y.useCallback(R=>{var{destination:x,source:F}=R;if(Bv.debug("handleDragEnd",x,F),Cn.stopDragging(),x!==null){var _=x.index;F.index<x.index&&(_+=1);var L=[...a],M=Cn.reorder(L,h,L,_),U=Cn.adjustDestinationIndex(_,h),V=[[U,U+M.length-1]];v(L),c(V)}},[v,a,h,c]),C=y.useCallback(R=>{d(R)},[d]),b=y.useCallback(()=>{v([...a,{operation:l,selected:[],invert:!0}])},[a,l,v]),S=y.useCallback(R=>{v(a.filter((x,F)=>F!==R))},[a,v]),w=y.useCallback(R=>{c(R)},[c]),E=y.useCallback(R=>{var x=a[R];Gi.isRollupOperation(x.operation)||i(x)},[a,i]),T=y.useCallback(R=>{f(R.target.value==="true")},[f]);y.useEffect(function(){s.length>0&&!s.includes(l)&&d(s[0])},[s,l]);var P=y.useCallback(R=>{var{item:x,itemIndex:F,isClone:_=!1,selectedCount:L}=R,M=x.operation,U=_?"".concat(L):void 0,V=_?"item-list-item-clone":void 0,z=Gi.isRollupOperation(x.operation),Q=!_&&!z;return u.jsxs(u.Fragment,{children:[u.jsxs("div",{className:J("item-list-item-content","draggable-item-list-item-content",V),children:[u.jsxs("span",{className:"title",children:[M,!e&&z&&u.jsxs("span",{className:"small text-warning",children:[u.jsx(te,{icon:ap})," Requires rollup"]})]}),cn.renderBadge({text:U}),cn.renderHandle()]}),!_&&u.jsxs(u.Fragment,{children:[u.jsx(G,{kind:"ghost",className:"btn-edit",icon:Ss,tooltip:"Edit Columns",onClick:()=>i(x),disabled:!Q}),u.jsx(G,{kind:"ghost",className:"btn-delete",icon:jr,tooltip:"Delete Aggregation",onClick:()=>S(F)})]})]})},[S,i,e]),D=s.length>0,O=a.length>0;return u.jsxs("div",{className:"aggregations",children:[D&&u.jsxs("div",{className:"form-inline",children:[u.jsx(ly,{onChange:C,value:l,children:s.map(R=>u.jsx(dy,{value:R,children:R},R))}),u.jsxs("button",{type:"button",className:"btn btn-link btn-add",onClick:b,children:[u.jsx(te,{icon:Qi}),"Add Aggregation"]})]}),D&&O&&u.jsx("hr",{}),O&&u.jsxs(u.Fragment,{children:[!e&&u.jsxs("div",{className:"form-inline",children:[u.jsx("label",{children:"Placement: "}),u.jsxs(dd,{onChange:T,value:"".concat(o),children:[u.jsx(si,{value:"true",children:"Top"}),u.jsx(si,{value:"false",children:"Bottom"})]})]}),u.jsx(ed,{onDragStart:g,onDragEnd:p,children:u.jsx(cn,{className:"selected-aggregations",itemCount:a.length,items:a,renderItem:P,offset:0,onSelectionChange:w,onSelect:E,selectedRanges:h,isMultiSelect:!0})})]})]})}function Vv(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 Oi(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Vv(Object(t),!0).forEach(function(r){q_(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Vv(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function q_(n,e,t){return e=X_(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function X_(n){var e=Q_(n,"string");return typeof e=="symbol"?e:String(e)}function Q_(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;(function(n){n[n.NONE=0]="NONE",n[n.ASCENDING=1]="ASCENDING",n[n.DESCENDING=2]="DESCENDING"})(un||(un={}));var Z_=30;function J_(n){var{aggregation:e,columns:t,onChange:r}=n,[i,a]=y.useState(-1),[o,s]=y.useState(-1),[l,d]=y.useState(un.NONE),{invert:h,selected:c}=e,m=y.useRef(null),v=y.useCallback(T=>c.includes(T)?!h:h,[h,c]),f=y.useMemo(()=>{var T=tc(t,e.operation);return l!==un.NONE&&(T=j.sortColumns(T,l===un.ASCENDING)),T},[t,e.operation,l]),g=y.useMemo(()=>i>=0?f.slice(i,o+1).map(T=>({value:T.name,displayValue:T.name,isSelected:v(T.name)})):[],[f,v,o,i]),p=y.useCallback(T=>{var{name:P}=f[T],D=c.indexOf(P),O=[...c],R=h;D>=0?O.splice(D,1):(O.push(P),O.length===f.length&&(O=[],R=!h)),r(Oi(Oi({},e),{},{selected:O,invert:R}))},[e,h,f,c,r]),C=y.useCallback(()=>{d(un.NONE),r(Oi(Oi({},e),{},{selected:[],invert:!0}))},[e,r]),b=y.useCallback((T,P)=>{a(T),s(P)},[a,s]),S=y.useCallback(()=>{c.length===0?r(Oi(Oi({},e),{},{invert:!h})):r(Oi(Oi({},e),{},{selected:[],invert:!0}))},[e,h,r,c]),w=c.length===0?h:null,E=c.length!==0||!h||l!==un.NONE;return u.jsxs("div",{role:"menu",className:"aggregation-edit",children:[u.jsx("div",{className:"top-menu",children:u.jsxs("div",{className:"form-inline",children:[u.jsx(tn,{checked:w,onChange:S,children:"Toggle All"}),u.jsx("div",{className:"spacer"}),u.jsx(Lr,{in:E,timeout:Ze.transitionSlowMs,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0,children:u.jsx(G,{kind:"ghost",className:"btn-reset",onClick:C,children:"Reset"})}),u.jsx(G,{kind:"ghost",className:J({active:l===un.ASCENDING}),icon:Rh,tooltip:"Sort ascending",onClick:()=>d(un.ASCENDING)}),u.jsx(G,{kind:"ghost",className:J({active:l===un.DESCENDING}),icon:Nh,tooltip:"Sort descending",onClick:()=>d(un.DESCENDING)})]})}),u.jsx("div",{className:"aggregation-edit-item-list",children:u.jsx(no,{itemCount:f.length,items:g,offset:i,renderItem:T=>{var{item:P}=T;return u.jsx(tn,{checked:v(P.value),children:P.displayValue})},onSelect:p,onViewportChange:b,rowHeight:Z_,focusSelector:"input",ref:m})})]})}function Gv(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 Wv(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Gv(Object(t),!0).forEach(function(r){ex(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Gv(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function ex(n,e,t){return e=tx(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function tx(n){var e=rx(n,"string");return typeof e=="symbol"?e:String(e)}function rx(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 nx(n){return u.jsx("svg",Wv(Wv({width:48,height:48,xmlns:"http://www.w3.org/2000/svg"},n),{},{children:u.jsxs("g",{fill:"none",fillRule:"evenodd",children:[u.jsx("path",{fill:"#C1C0C0",d:"M44 43v1H4v-1z"}),u.jsx("path",{fill:"#7DA4FF",d:"M8 26h4v15H8zM15 17h4v24h-4zM22 21h4v20h-4zM29 17h4v24h-4zM36 11h4v30h-4z"})]})}))}function zv(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 Kv(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?zv(Object(t),!0).forEach(function(r){ix(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):zv(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function ix(n,e,t){return e=ax(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ax(n){var e=ox(n,"string");return typeof e=="symbol"?e:String(e)}function ox(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 sx(n){return u.jsx("svg",Kv(Kv({width:48,height:48,xmlns:"http://www.w3.org/2000/svg"},n),{},{children:u.jsxs("g",{fill:"none",fillRule:"evenodd",children:[u.jsx("path",{fill:"#C1C0C0",d:"M44 43v1H4v-1z"}),u.jsx("path",{fill:"#7DA4FF",d:"M7 34h4v8H7zM12 31h4v11h-4zM17 27h4v15h-4zM22 22h4v20h-4zM27 27h4v15h-4zM32 29h4v13h-4zM37 31h4v11h-4z"})]})}))}function Yv(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 qv(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Yv(Object(t),!0).forEach(function(r){lx(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Yv(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function lx(n,e,t){return e=dx(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function dx(n){var e=ux(n,"string");return typeof e=="symbol"?e:String(e)}function ux(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 hx(n){return u.jsx("svg",qv(qv({width:48,height:48,xmlns:"http://www.w3.org/2000/svg"},n),{},{children:u.jsxs("g",{fill:"none",fillRule:"evenodd",children:[u.jsx("path",{fill:"#C1C0C0",d:"M4 4h1v40H4zM44 43v1H5v-1z"}),u.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"}),u.jsx("path",{stroke:"#BECDEF",d:"M8.244 37.926L17 33.496l5 .87 10.637-10.35 10.615-1.381"})]})}))}function Xv(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 Qv(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Xv(Object(t),!0).forEach(function(r){cx(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Xv(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function cx(n,e,t){return e=mx(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function mx(n){var e=vx(n,"string");return typeof e=="symbol"?e:String(e)}function vx(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 fx(n){return u.jsx("svg",Qv(Qv({width:48,height:48,xmlns:"http://www.w3.org/2000/svg"},n),{},{children:u.jsxs("g",{fill:"none",fillRule:"evenodd",children:[u.jsx("path",{d:"M24 10c7.732 0 14 6.268 14 14s-6.268 14-14 14-14-6.268-14-14h14V10z",fill:"#80A6FF"}),u.jsx("path",{d:"M10 24c0-7.732 6.268-14 14-14v14H10z",fill:"#C1C0C0"})]})}))}function Zv(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 Jv(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Zv(Object(t),!0).forEach(function(r){gx(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Zv(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function gx(n,e,t){return e=px(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function px(n){var e=Cx(n,"string");return typeof e=="symbol"?e:String(e)}function Cx(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 bx(n){return u.jsx("svg",Jv(Jv({width:48,height:48,xmlns:"http://www.w3.org/2000/svg"},n),{},{children:u.jsxs("g",{fill:"none",fillRule:"evenodd",children:[u.jsx("path",{fill:"#C1C0C0",d:"M44 43v1H4v-1z"}),u.jsx("path",{fill:"#939293",d:"M44 34v1H4v-1zM44 25v1H4v-1zM44 16v1H4v-1z"}),u.jsx("circle",{fill:"#7DA4FF",cx:9.5,cy:37.5,r:1.5}),u.jsx("circle",{fill:"#7DA4FF",cx:16.5,cy:30.5,r:1.5}),u.jsx("circle",{fill:"#7DA4FF",cx:22.5,cy:36.5,r:1.5}),u.jsx("circle",{fill:"#7DA4FF",cx:28.5,cy:30.5,r:1.5}),u.jsx("circle",{fill:"#7DA4FF",cx:15.5,cy:38.5,r:1.5}),u.jsx("circle",{fill:"#7DA4FF",cx:23.5,cy:25.5,r:1.5}),u.jsx("circle",{fill:"#7DA4FF",cx:19.5,cy:19.5,r:1.5}),u.jsx("circle",{fill:"#7DA4FF",cx:29.5,cy:19.5,r:1.5}),u.jsx("circle",{fill:"#7DA4FF",cx:32.5,cy:26.5,r:1.5}),u.jsx("circle",{fill:"#7DA4FF",cx:36.5,cy:13.5,r:1.5})]})}))}function ef(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 tf(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ef(Object(t),!0).forEach(function(r){Sx(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ef(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Sx(n,e,t){return e=wx(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function wx(n){var e=yx(n,"string");return typeof e=="symbol"?e:String(e)}function yx(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 Ex(n){return u.jsxs("svg",tf(tf({width:"48",height:"48",viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg"},n),{},{children:[u.jsx("rect",{width:"48",height:"48",fill:"none"}),u.jsx("rect",{x:"26",y:"10",width:"15",height:"4",fill:"#9FDE70"}),u.jsx("rect",{x:"26",y:"22",width:"15",height:"4",fill:"#9FDE70"}),u.jsx("rect",{x:"26",y:"28",width:"15",height:"4",fill:"#FFD95C"}),u.jsx("rect",{x:"26",y:"34",width:"15",height:"4",fill:"#9FDE70"})]}))}function rf(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 nf(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?rf(Object(t),!0).forEach(function(r){Tx(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):rf(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Tx(n,e,t){return e=Px(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Px(n){var e=Ox(n,"string");return typeof e=="symbol"?e:String(e)}function Ox(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 Dx(n){return u.jsxs("svg",nf(nf({width:"48",height:"48",viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg"},n),{},{children:[u.jsx("rect",{width:"48",height:"48",fill:"none"}),u.jsx("rect",{x:"4",y:"16",width:"40",height:"4",fill:"#FFD95C"}),u.jsx("rect",{x:"4",y:"10",width:"40",height:"4",fill:"#78DCE8"}),u.jsx("rect",{x:"4",y:"34",width:"40",height:"4",fill:"#78DCE8"})]}))}var af=ae.module("ChartBuilder");class hn extends y.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:et.generate(),value:e}}static makeDefaultSeriesItems(e,t,r){var i=hn.getMaxSeriesCount(e,t);if(i===0||r==null||r.length===0)return[];var a=r.length>1?r[1].name:r[0].name;return[hn.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],o=hn.getDefaultXAxis(a,r),s=hn.makeDefaultSeriesItems(i,a,r);this.state={type:a,seriesItems:s,xAxis:o,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 u.jsx(hx,{});case r.plot.SeriesPlotStyle.BAR:return u.jsx(nx,{});case r.plot.SeriesPlotStyle.SCATTER:return u.jsx(bx,{});case r.plot.SeriesPlotStyle.PIE:return u.jsx(fx,{});case r.plot.SeriesPlotStyle.HISTOGRAM:return u.jsx(sx,{});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:et.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=hn.getDefaultXAxis(i,t),o=hn.makeDefaultSeriesItems(r,i,t),s=!0;this.setState({type:i,seriesItems:o,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:o}=a;return o=[...o],o[i].value=t,{seriesItems:o}},this.sendChange)}handleSeriesDeleteClick(e){var t=e,r=t.target.getAttribute("data-index"),i=parseInt(r,10);this.setState(a=>{var{seriesItems:o}=a,s=[...o];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:o}=this.state,s=i.map(l=>l.value);t({type:r,series:s,xAxis:a,isLinked:o})}handleTypeClick(e){var t=e,r=t.target.getAttribute("data-index"),i=parseInt(r,10),a=this.getTypes()[i];af.debug2("handleTypeSelect",a),this.setState(o=>{var{model:s}=this.props,{dh:l}=s,d=hn.getMaxSeriesCount(l,a),{seriesItems:h}=o;if(h=h.slice(0,d),h.length===0&&d>0){var{columns:c}=s;h=hn.makeDefaultSeriesItems(l,a,c)}return{type:a,seriesItems:h}},this.sendChange)}handleXAxisChange(e){var t=e.target.value;af.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,o=i.map(s=>s.value);e({type:r,series:o,xAxis:a,isLinked:t})}render(){var{model:e}=this.props,{columns:t,dh:r}=e,{seriesItems:i,type:a,xAxis:o,isLinked:s}=this.state,l=hn.getMaxSeriesCount(r,a),d=this.getXAxisLabel(a),h=this.getSeriesLabel(a),c=i.length>0,m=i.length<l;return u.jsx("div",{className:"chart-builder",children:u.jsxs("form",{onSubmit:this.handleSubmit,children:[u.jsxs("div",{className:"form-row",children:[u.jsx("label",{children:"Select Chart Type"}),u.jsx("div",{className:"form-row",children:this.getTypes().map((v,f)=>{var g=v;return u.jsx("div",{className:"col col-chart-type",children:u.jsxs("button",{type:"button",className:J("btn","btn-icon","btn-chart-type",{active:v===a}),"data-index":f,onClick:this.handleTypeClick,children:[this.getTypeIcon(v),this.getTypeName(v)]})},g)})})]}),u.jsx("hr",{}),u.jsxs("div",{className:"form-row form-inline",children:[u.jsx("label",{className:"col-2 label-left",children:d}),u.jsx("select",{className:"form-control custom-select select-x-axis col",value:o,onChange:this.handleXAxisChange,children:t.map(v=>u.jsx("option",{value:v.name,children:v.name},v.name))})]}),c&&u.jsx("hr",{}),i.map((v,f)=>u.jsxs("div",{className:"form-row form-inline form-series-item","data-testid":"form-series-item-".concat(f),children:[u.jsx("label",{className:"col-2 label-left",children:f===0?h:""}),u.jsx("select",{className:"form-control custom-select select-series col",value:v.value,onChange:this.handleSeriesChange,"data-testid":"select-series-item-".concat(f),"data-index":f,children:t.map(g=>u.jsx("option",{value:g.name,"data-index":f,children:g.name},g.name))}),i.length>1&&u.jsx(G,{kind:"ghost",className:"btn-delete-series ml-2 px-2","data-index":f,"data-testid":"delete-series-".concat(f),onClick:this.handleSeriesDeleteClick,icon:jr,tooltip:"Delete"})]},v.id)),m&&u.jsxs("div",{className:"form-row",children:[u.jsx("div",{className:"col-2"}),u.jsx(G,{kind:"ghost",className:"btn-add-series mt-1",onClick:this.handleAddSeries,icon:Qi,children:"Add Series"})]}),u.jsxs("div",{className:"form-row chart-builder-link",children:[u.jsx("label",{className:"col-2 label-right",children:u.jsxs("div",{className:"fa-md fa-layers",children:[u.jsx(te,{mask:Th,icon:ro,transform:"right-5 down-5"}),u.jsx(te,{icon:s?op:hw,transform:"grow-2 right-8 down-6"})]})}),u.jsxs(dd,{onChange:this.handleLinkStateChange,value:"".concat(s),children:[u.jsx(si,{value:"true",children:"Sync State"}),u.jsx(si,{value:"false",children:"Freeze State"})]})]}),u.jsxs("div",{className:"form-row",children:[u.jsx("div",{className:"col-2 label-right"}),u.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."})]}),u.jsxs("div",{className:J("form-row","justify-content-end","my-3"),children:[u.jsx(G,{kind:"secondary",className:"btn-reset",onClick:this.handleReset,children:"Reset"}),u.jsx(G,{kind:"primary",type:"submit",className:"btn-submit",children:"Create"})]})]})})}}const Rx=hn;function of(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 Nx(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?of(Object(t),!0).forEach(function(r){Yl(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):of(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Yl(n,e,t){return e=Fx(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Fx(n){var e=Ix(n,"string");return typeof e=="symbol"?e:String(e)}function Ix(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 XC extends y.Component{constructor(e){super(e),Yl(this,"editorContainer",void 0),Yl(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=Nx({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=fn.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:o}=this.state;return u.jsxs("div",{className:J("input-editor-wrapper",{focused:a,invalid:t},e),role:"presentation",onClick:this.handleContainerClick,children:[u.jsx("div",{className:"editor-container",ref:s=>{this.editorContainer=s},"data-testid":"custom-column-formula"}),o&&!i&&r.length>0&&u.jsx("div",{className:"editor-placeholder text-muted",children:r})]})}}Yl(XC,"defaultProps",{value:"",onContentChanged:()=>{},editorSettings:{},editorIndex:0,onTab:()=>{},invalid:!1});const _x=XC;function sf(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 el(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?sf(Object(t),!0).forEach(function(r){xx(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):sf(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function xx(n,e,t){return e=Mx(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Mx(n){var e=Ax(n,"string");return typeof e=="symbol"?e:String(e)}function Ax(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 lf=Object.freeze({NAME:"name",FORMULA:"formula"}),Lx=()=>{};function kx(n){var{eventKey:e,name:t,inputIndex:r,formula:i,onChange:a,onDeleteColumn:o,onTabInEditor:s,invalid:l,isDuplicate:d}=n,h=t===""||po.isValidColumnName(t),c=y.useCallback(m=>{m!==void 0&&(m.replace(/(\r\n|\n|\r)/gm,""),a(e,lf.FORMULA,m))},[a,e]);return u.jsx(Qg,{draggableId:e,index:r,disableInteractiveElementBlocking:!0,children:(m,v)=>u.jsxs("div",el(el({className:J("draggable-container",{dragging:v.isDragging}),ref:m.innerRef},m.draggableProps),{},{children:[u.jsxs("div",{className:"custom-column-input-container",children:[u.jsxs("div",{className:"pb-3",children:[u.jsxs("div",{className:"d-flex flex-row custom-column-name",children:[u.jsx("input",{className:J("form-control custom-column-input",{"is-invalid":l||!h||d}),placeholder:"Column Name",value:t,onChange:f=>{a(e,lf.NAME,f.target.value)}}),u.jsx(G,{kind:"ghost",className:"ml-1 px-2",onClick:()=>{o(e)},icon:jr,tooltip:"Delete custom column"}),u.jsx(G,el(el({kind:"ghost",className:"btn-drag-handle",onClick:Lx},m.dragHandleProps),{},{icon:rd,tooltip:"Drag column to re-order"}))]}),(!h||d)&&u.jsx("p",{className:"validate-label-error text-danger mb-0 mt-2 pl-1",children:h?"Duplicate name":"Invalid name"})]}),u.jsx(_x,{editorSettings:{language:"deephavenDb"},editorIndex:r,placeholder:"Column Formula",value:i,onContentChanged:c,onTab:s,invalid:l})]}),u.jsx("hr",{})]}))})}function lh(n,e,t){return e=jx(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function jx(n){var e=Hx(n,"string");return typeof e=="symbol"?e:String(e)}function Hx(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 yu=[];class QC extends VN{constructor(e){super(),lh(this,"dh",void 0),lh(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 yu}get backColumns(){return yu}get frozenColumns(){return yu}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}}lh(QC,"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 Se=QC;function df(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?df(Object(t),!0).forEach(function(r){qa(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):df(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function qa(n,e,t){return e=$x(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function $x(n){var e=Ux(n,"string");return typeof e=="symbol"?e:String(e)}function Ux(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 y.Component{static makeCustomColumnInputEventKey(){return et.generate()}static createCustomColumnInput(){return{eventKey:et.generate(),name:"",formula:""}}constructor(e){super(e),qa(this,"container",void 0),qa(this,"successButtonTimer",void 0),qa(this,"getInput",Ce((t,r)=>t.find(i=>i.eventKey===r))),qa(this,"getInputIndex",Ce((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(Se.EVENT.COLUMNS_CHANGED,this.handleCustomColumnUpdated),e.addEventListener(Se.EVENT.UPDATED,this.handleCustomColumnUpdated),e.addEventListener(Se.EVENT.REQUEST_FAILED,this.handleRequestFailed)}stopListening(){var{model:e}=this.props;e.removeEventListener(Se.EVENT.COLUMNS_CHANGED,this.handleCustomColumnUpdated),e.removeEventListener(Se.EVENT.UPDATED,this.handleCustomColumnUpdated),e.removeEventListener(Se.EVENT.REQUEST_FAILED,this.handleRequestFailed)}parseCustomColumns(e){if(e.length>0){var t=e.map(r=>{var i=r.split(/=(.+)/,2);return{eventKey:Ui.makeCustomColumnInputEventKey(),name:i[0],formula:i[1]}});this.setState({inputs:t})}else this.setState({inputs:[Ui.createCustomColumnInput()]})}handleAddColumnClick(){var{inputs:e}=this.state,t=[...e];t.push(Ui.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(Ui.createCustomColumnInput()),this.setState({inputs:i})}handleInputChange(e,t,r){var{inputs:i}=this.state,a=this.getInputIndex(i,e),o=this.getInput(i,e),s=Eu({},o);s[t]=r;var l=[...i];l.splice(a,1,s),this.setState({inputs:l})}handleCustomColumnUpdated(){var{isCustomColumnApplying:e}=this.state;e&&this.setState({isCustomColumnApplying:!1,isSuccessShowing:!0},()=>{this.successButtonTimer=setTimeout(()=>this.setState({isSuccessShowing:!1}),Ui.SUCCESS_SHOW_DURATION)})}handleRequestFailed(e){var t=e,{isCustomColumnApplying:r}=this.state;r&&this.setState({isCustomColumnApplying:!1,errorMessage:u.jsxs(u.Fragment,{children:[u.jsxs("p",{children:[u.jsx(te,{icon:Ki})," Failed to apply custom columns."]}),u.jsxs("div",{className:"error-box",children:[t.detail.errorMessage,u.jsx("br",{}),"Table configuration:"," ",JSON.stringify(t.detail.configuration)]})]}),hasRequestFailed:!0})}handleDragEnd(e){if(Cn.stopDragging(),!!e.destination){var{inputs:t}=this.state,r=e.source.index,i=e.destination.index,a=[...t],o=t[r];a.splice(r,1),a.splice(i,0,o),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,o;(a=this.container)===null||a===void 0||(o=a.querySelector(".btn-add-column"))===null||o===void 0||o.focus()}else{var s,l=e+1;((s=this.container)===null||s===void 0?void 0:s.querySelectorAll(".custom-column-input")[l]).focus()}}handleSaveClick(){var{onSave:e,customColumns:t}=this.props,{inputs:r,isCustomColumnApplying:i}=this.state;if(!i){var a=[];r.forEach(o=>{var{name:s,formula:l}=o;s&&l&&a.push("".concat(s,"=").concat(l))}),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:o}=i;return r.set(o,((a=r.get(o))!==null&&a!==void 0?a:0)+1)}),e.map((i,a)=>{var o,{eventKey:s,name:l,formula:d}=i,h=((o=r.get(l))!==null&&o!==void 0?o:0)>1;return u.jsx(kx,{inputIndex:a,eventKey:s,name:l,formula:d,onChange:this.handleInputChange,onDeleteColumn:this.handleDeleteColumn,onTabInEditor:this.handleEditorTabNavigation,invalid:t,isDuplicate:h},s)})}renderSaveButton(){var{inputs:e,isCustomColumnApplying:t,isSuccessShowing:r}=this.state,i=e.length>1?"Save Columns":"Save Column",a=e.every(l=>{var{name:d}=l;return d===""||po.isValidColumnName(d)}),o=e.filter(l=>{var{name:d}=l;return d!==""}).map(l=>{var{name:d}=l;return d}),s=new Set(o).size===o.length;return u.jsxs(G,{kind:r?"success":"primary",className:J("btn-apply",{"btn-spinner":t}),disabled:r||t||!a||!s,onClick:this.handleSaveClick,children:[t&&u.jsxs("span",{children:[u.jsx(kn,{}),u.jsx("span",{className:"btn-normal-content",children:"Applying"})]}),!r&&!t&&i,r&&u.jsxs(u.Fragment,{children:[u.jsx(te,{icon:Ph})," Success"]})]})}render(){var{onCancel:e}=this.props,{errorMessage:t}=this.state;return u.jsxs("div",{role:"presentation",className:"custom-column-builder-container",ref:r=>{this.container=r},onClick:this.resetRequestFailed,onFocus:this.resetRequestFailed,children:[u.jsx("hr",{}),u.jsx(ed,{onDragStart:Cn.startDragging,onDragEnd:this.handleDragEnd,children:u.jsx(Eh,{droppableId:"droppable-custom-columns",children:(r,i)=>u.jsxs("div",Eu(Eu({ref:r.innerRef},r.droppableProps),{},{className:J("droppable-container",{dragging:i.draggingFromThisWith}),children:[this.renderInputs(),r.placeholder]}))})}),u.jsx("div",{className:"pt-1 px-3",children:u.jsx(G,{kind:"ghost",className:"btn-add-column",onClick:this.handleAddColumnClick,icon:Qi,children:"Add Another Column"})}),u.jsxs("div",{className:"custom-column-builder-footer",children:[t&&u.jsx("div",{className:"error-message",children:t}),u.jsxs("div",{className:"d-flex justify-content-end",children:[u.jsx(G,{kind:"secondary",className:"mr-2",onClick:e,children:"Cancel"}),this.renderSaveButton()]})]})]})}}qa(Ui,"SUCCESS_SHOW_DURATION",750);const Bx=Ui;var uh;(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"})(uh||(uh={}));const Le=uh;function uf(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 hf(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?uf(Object(t),!0).forEach(function(r){Bi(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):uf(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Bi(n,e,t){return e=Vx(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Vx(n){var e=Gx(n,"string");return typeof e=="symbol"?e:String(e)}function Gx(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 ko=ae.module("RollupRows"),Wx=150,tl="grouped-rollup-rows",rl="ungrouped-rollup-rows";class vr extends y.Component{static renderColumn(e){var{item:t,isClone:r,selectedCount:i}=e,a=t?.name,o=r!==void 0&&r?"".concat(i):void 0,s=r!==void 0&&r?"item-list-item-clone":"";return cn.renderTextItem({text:a,badgeText:o,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((o,s)=>t.includes(o)?(s<i&&(i-=1),!1):!0);return a.splice(i,0,...t),a}static isGroupable(e){return!j.isDecimalType(e.type)}constructor(e){super(e),Bi(this,"ungroupedList",void 0),Bi(this,"groupedList",void 0),Bi(this,"search",tt(o=>{for(var s=this.getSortedUngroupedColumns(),l=[],d=null,h=0;h<s.length;h+=1){var c=s[h];c.name.toLowerCase().includes(o.toLowerCase())&&(d==null&&(d=h),l.push([h,h]))}A(d),this.setState({ungroupedSelectedRanges:l}),l.length>0&&this.ungroupedList.current&&this.ungroupedList.current.scrollToItem(d)},Wx)),Bi(this,"getCachedUngroupedColumns",Pe((o,s)=>o.filter(l=>vr.isGroupable(l)&&s.find(d=>d===l.name)==null))),Bi(this,"getCachedSortedColumns",Pe((o,s)=>s==null?[...o]:j.sortColumns(o,s===vr.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=he.createRef(),this.groupedList=he.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:o}=this.state;r!==e.config?this.updateFromConfig():(i!==t.columns||a!==t.showConstituents||o!==t.showNonAggregatedColumns)&&(r==null||i!==r.columns||a!==r.showConstituents||o!==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===vr.SORT.ASCENDING?null:vr.SORT.ASCENDING}})}handleSortDescending(){this.setState(e=>{var{sort:t}=e;return{sort:t===vr.SORT.DESCENDING?null:vr.SORT.DESCENDING}})}resetSelection(){this.setState({ungroupedSelectedRanges:[],groupedSelectedRanges:[]})}handleDragStart(e){ko.debug("handleDragStart",e),document.documentElement.classList.add("drag-pointer-events-none"),this.setState({dragSource:e.source})}handleDragEnd(e){ko.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===rl){this.setState(o=>{var{groupedSelectedRanges:s,columns:l}=o,d=[...l];return Cn.reorder(d,s,[],0),{columns:d,ungroupedSelectedRanges:[],groupedSelectedRanges:[]}});return}var i=r.droppableId===tl,a=t.index;i&&r.index<t.index&&(a+=1),this.setState(o=>{var{columns:s,ungroupedSelectedRanges:l,groupedSelectedRanges:d}=o,h=[...s],c=i?h:this.getSortedUngroupedColumns().map(p=>p.name),m=i?d:l,v=Cn.reorder(c,m,h,a),f=i?Cn.adjustDestinationIndex(a,d):a,g=[[f,f+v.length-1]];return{columns:h,ungroupedSelectedRanges:[],groupedSelectedRanges:g}}),this.resetSelection()}}handleUngroupedSelect(e){ko.debug("handleUngroupedSelect"),this.setState(t=>{var{columns:r}=t;return{columns:vr.addGroupings(r,[this.getSortedUngroupedColumns()[e].name]),ungroupedSelectedRanges:[],groupedSelectedRanges:[]}})}handleUngroupedSelectionChange(e){ko.debug2("handleUngroupedSelectionChange",e),this.setState(t=>{var{ungroupedSelectedRanges:r}=t;return e===r?null:{ungroupedSelectedRanges:e,groupedSelectedRanges:[]}})}handleGroupedSelectionChange(e){ko.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,o=i!==void 0&&i?"":"  ".repeat(r),s="".concat(o).concat(t),l=i!==void 0&&i?"".concat(a):void 0,d=i!==void 0&&i?"item-list-item-clone":"";return u.jsxs(u.Fragment,{children:[cn.renderTextItem({text:s,badgeText:l,className:d}),(i===void 0||!i)&&u.jsx(G,{kind:"ghost",className:"btn btn-link btn-link-icon btn-delete-grouping float-right",onClick:()=>this.handleDeleteClicked(r),children:u.jsx(te,{icon:jr})})]})}render(){var{columns:e,dragSource:t,searchFilter:r,groupedSelectedRanges:i,ungroupedSelectedRanges:a,showConstituents:o,showNonAggregatedColumns:s,sort:l}=this.state,d=this.getSortedUngroupedColumns(),h=e.length*cn.DEFAULT_ROW_HEIGHT;t?.droppableId===rl&&(h+=cn.DEFAULT_ROW_HEIGHT);var c=d.length*cn.DEFAULT_ROW_HEIGHT+10,m=Math.min(3*cn.DEFAULT_ROW_HEIGHT,c);return u.jsx("div",{role:"menu",className:J("rollup-rows",{"is-dragging":t!=null}),tabIndex:0,children:u.jsxs(ed,{onDragEnd:this.handleDragEnd,onDragStart:this.handleDragStart,children:[u.jsxs("div",{className:"rollup-rows-group-by",children:[u.jsx("div",{className:"section-title",children:"Group By"}),e.length===0&&u.jsx(Eh,{droppableId:"placeholder",children:(v,f)=>u.jsx("div",hf(hf({className:J("placeholder","text-muted",{"is-dragging-from-this":f.draggingFromThisWith,"is-dragging-over":f.isDraggingOver,"is-dropping":f.draggingOverWith}),ref:v.innerRef},v.droppableProps),{},{children:"To create a rollup, drag columns from the list below and drop them into this area."}))}),e.length>0&&u.jsx(cn,{draggingItemClassName:"rollup-rows-dragging-grouped-item",draggablePrefix:tl,droppableId:tl,itemCount:e.length,items:e,offset:0,onSelectionChange:this.handleGroupedSelectionChange,ref:this.groupedList,renderItem:this.renderGroupedItem,selectedRanges:i,style:{height:h},isMultiSelect:!0})]}),u.jsxs("div",{className:"rollup-rows-available-columns",children:[u.jsx("div",{className:"section-title",children:"Available Grouping Columns"}),u.jsxs("div",{className:"top-menu",children:[u.jsx(fo,{className:"w-100",value:r,matchCount:r?a.length:void 0,placeholder:"Find column...",onChange:this.handleSearchChange}),u.jsxs(G,{kind:"ghost",className:J("btn-link btn-link-icon",{active:l===vr.SORT.ASCENDING}),onClick:this.handleSortAscending,children:[u.jsx(te,{icon:Rh}),u.jsx(pt,{children:"Sort ascending"})]}),u.jsxs(G,{kind:"ghost",className:J("btn-link btn-link-icon",{active:l===vr.SORT.DESCENDING}),onClick:this.handleSortDescending,children:[u.jsx(te,{icon:Nh}),u.jsx(pt,{children:"Sort descending"})]})]}),u.jsx(cn,{className:"rollup-available-grouping-columns",draggablePrefix:rl,droppableId:rl,itemCount:d.length,items:d,renderItem:vr.renderColumn,offset:0,onSelect:this.handleUngroupedSelect,onSelectionChange:this.handleUngroupedSelectionChange,ref:this.ungroupedList,selectedRanges:a,style:{maxHeight:c,minHeight:m},isDropDisabled:t?.droppableId!==tl,isMultiSelect:!0}),u.jsxs("div",{className:"bottom-menu",children:[u.jsx("div",{className:"label",children:"Show:"}),u.jsx(tn,{checked:o,onChange:this.handleShowConstituentsChange,children:"Constituents"}),u.jsx(tn,{checked:s,onChange:this.handleShowNonAggregatedColumnsChange,children:"Non-Aggregated Columns"})]})]})]})})}}Bi(vr,"SORT",Object.freeze({ASCENDING:"ASC",DESCENDING:"DESC"}));Bi(vr,"defaultProps",{config:null,onChange:()=>{}});const zx=vr;function cf(n,e,t,r,i,a,o){try{var s=n[a](o),l=s.value}catch(d){t(d);return}s.done?e(l):Promise.resolve(l).then(r,i)}function Kx(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){cf(a,r,i,o,s,"next",l)}function s(l){cf(a,r,i,o,s,"throw",l)}o(void 0)})}}function mf(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 vf(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?mf(Object(t),!0).forEach(function(r){Ia(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):mf(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Ia(n,e,t){return e=Yx(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Yx(n){var e=qx(n,"string");return typeof e=="symbol"?e:String(e)}function qx(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 Xx=ae.module("TableCsvExporter");class Me extends y.Component{static getDateString(e){return e.i18n.DateTimeFormat.format(Me.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(Me.getDateString(t.dh),".csv"),downloadRowOption:Me.DOWNLOAD_ROW_OPTIONS.ALL_ROWS,customizedDownloadRowOption:Me.CUSTOMIZED_ROWS_OPTIONS.FIRST,customizedDownloadRows:Me.DEFAULT_DOWNLOAD_ROWS,includeColumnHeaders:!0,includeHiddenColumns:!1,useUnformattedValues:!1,errorMessage:null,id:et.generate()}}getSnapshotRanges(){var{model:e,selectedRanges:t}=this.props,{downloadRowOption:r,customizedDownloadRowOption:i,customizedDownloadRows:a}=this.state,{rowCount:o,columnCount:s}=e,l=[];switch(r){case Me.DOWNLOAD_ROW_OPTIONS.ALL_ROWS:l.push(new ie(0,0,s-1,o-1));break;case Me.DOWNLOAD_ROW_OPTIONS.SELECTED_ROWS:l=t.map(d=>vf(vf({},d),{},{startColumn:0,endColumn:s-1})).sort((d,h)=>d.startRow!=null&&h.startRow!=null?d.startRow-h.startRow:0);break;case Me.DOWNLOAD_ROW_OPTIONS.CUSTOMIZED_ROWS:switch(i){case Me.CUSTOMIZED_ROWS_OPTIONS.FIRST:l.push(new ie(0,0,s-1,Math.min(a-1,o-1)));break;case Me.CUSTOMIZED_ROWS_OPTIONS.LAST:l.push(new ie(0,Math.max(0,o-a),s-1,o-1));break}break}return l}getModelRanges(e){var{userColumnWidths:t,movedColumns:r}=this.props,{includeHiddenColumns:i}=this.state,a=ye.getHiddenColumns(t),o=B.getModelRanges(e,r);if(!i&&a.length>0){var s=a.map(ie.makeColumn);o=ie.subtractRangesFromRanges(o,s)}return o}resetDownloadState(){this.setState({errorMessage:null})}handleDownloadClick(){var e=this;return Kx(function*(){var{model:t,isDownloading:r,onDownloadStart:i,onDownload:a,onCancel:o}=e.props,{fileName:s,includeColumnHeaders:l,useUnformattedValues:d}=e.state;if(r){o();return}e.resetDownloadState();var h=e.getSnapshotRanges(),c=e.getModelRanges(h);if(e.validateOptionInput()){i();try{var m=yield t.export(),v=m.setViewport(0,0);yield v.getViewportData(),a(s,m,v,h,c,l,d)}catch(f){Xx.error("CSV download failed",f),e.setState({errorMessage:u.jsxs("p",{children:[u.jsx(te,{icon:Ki})," ","".concat(f)]})}),o()}}})()}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===Me.DOWNLOAD_ROW_OPTIONS.SELECTED_ROWS&&e.length===0?(this.setState({errorMessage:u.jsxs("p",{children:[u.jsx(te,{icon:Ki})," No rows selected. Please select some rows in the table."]})}),!1):t===Me.DOWNLOAD_ROW_OPTIONS.CUSTOMIZED_ROWS&&r<=0?(this.setState({errorMessage:u.jsxs("p",{children:[u.jsx(te,{icon:Ki})," 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:o}=this.props,{fileName:s,downloadRowOption:l,customizedDownloadRowOption:d,customizedDownloadRows:h,includeColumnHeaders:c,includeHiddenColumns:m,useUnformattedValues:v,errorMessage:f,id:g}=this.state,{rowCount:p}=e;return u.jsxs("div",{className:"table-csv-exporter",children:[u.jsx("div",{className:"section-title",children:"Download Rows"}),u.jsx("div",{className:"form-group",children:u.jsxs(dd,{onChange:this.handleDownloadRowOptionChanged,value:l,disabled:t,children:[u.jsxs(si,{value:Me.DOWNLOAD_ROW_OPTIONS.ALL_ROWS,"data-testid":"radio-csv-exporter-download-all",children:["All Rows",u.jsx("span",{className:"text-muted ml-2",children:"(".concat(p.toString().replace(/(\d)(?=(\d{3})+(?!\d))/g,"$1,")," rows)")})]}),u.jsxs(si,{value:Me.DOWNLOAD_ROW_OPTIONS.SELECTED_ROWS,"data-testid":"radio-csv-exporter-only-selected",children:["Only Selected Rows",u.jsx("span",{className:"text-muted ml-2",children:a.length>0?"(".concat(ie.rowCount(a).toString().replace(/(\d)(?=(\d{3})+(?!\d))/g,"$1,")," rows)"):null})]}),u.jsx(si,{value:Me.DOWNLOAD_ROW_OPTIONS.CUSTOMIZED_ROWS,"data-testid":"radio-csv-exporter-customized-rows",children:u.jsxs("div",{className:"radio-input-row",role:"presentation",onClick:()=>{this.setState({downloadRowOption:Me.DOWNLOAD_ROW_OPTIONS.CUSTOMIZED_ROWS})},children:[u.jsxs("select",{value:d,"data-testid":"select-csv-exporter-customized-rows",className:"custom-select",disabled:t,onChange:this.handleCustomizedDownloadRowOptionChanged,children:[u.jsx("option",{value:"FIRST",children:"First"}),u.jsx("option",{value:"LAST",children:"Last"})]}),u.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:h,disabled:t,onChange:this.handleCustomizedDownloadRowsChanged}),u.jsx("div",{children:"Rows"})]})})]})}),u.jsxs("div",{className:"form-group",children:[u.jsx("label",{htmlFor:"customizedRows-".concat(g),children:"File Name"}),u.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})]}),u.jsxs("div",{className:"checkbox-options",children:[u.jsx(tn,{checked:c,onChange:this.handleIncludeColumnHeadersChanged,children:"Include column headers"}),u.jsx(tn,{checked:m,onChange:this.handleIncludeHiddenColumnsChanged,children:"Include hidden columns"}),u.jsx(tn,{checked:v,onChange:this.handleUseUnformattedValuesChanged,children:"Use unformatted values"})]}),u.jsxs("div",{className:"section-footer flex-column",children:[f!=null&&u.jsx("div",{className:"error-message",children:f}),o&&u.jsxs("div",{className:"download-status",children:[(o===Me.DOWNLOAD_STATUS.DOWNLOADING||o===Me.DOWNLOAD_STATUS.INITIATING)&&u.jsxs(u.Fragment,{children:[o===Me.DOWNLOAD_STATUS.INITIATING&&u.jsx("div",{className:"text-muted",children:"Starting Download..."}),o===Me.DOWNLOAD_STATUS.DOWNLOADING&&u.jsxs("div",{className:"text-muted d-flex justify-content-between",children:[u.jsx("span",{children:i||i===0?"Estimated time: ".concat(od.formatElapsedTime(i)):null}),u.jsx("span",{children:"".concat(r,"%")})]})]}),o===Me.DOWNLOAD_STATUS.FINISHED&&u.jsx("div",{className:"text-muted text-right",children:"Download Completed"}),o===Me.DOWNLOAD_STATUS.CANCELED&&u.jsx("div",{className:"text-muted",children:"Download Canceled"}),(o===Me.DOWNLOAD_STATUS.DOWNLOADING||o===Me.DOWNLOAD_STATUS.INITIATING)&&u.jsx("div",{className:"progress",children:u.jsx("div",{className:"progress-bar progress-bar-striped progress-bar-animated",style:{width:"".concat(r,"%")}})}),o===Me.DOWNLOAD_STATUS.FINISHED&&u.jsx("div",{className:"progress",children:u.jsx("div",{className:"progress-bar bg-success",style:{width:"".concat(r,"%")}})})]}),u.jsxs(G,{kind:"primary","data-testid":"btn-csv-exporter-download",className:J("btn-downloading",{"btn-spinner btn-cancelable":t}),onClick:this.handleDownloadClick,children:[t&&u.jsxs("span",{children:[u.jsx(kn,{}),u.jsx("span",{className:"btn-normal-content",children:"Downloading"}),u.jsx("span",{className:"btn-hover-content",children:"Cancel"})]}),!t&&"Download"]})]})]})}}Ia(Me,"FILENAME_DATE_FORMAT","yyyy-MM-dd-HHmmss");Ia(Me,"DOWNLOAD_STATUS",{INITIATING:"INITIATING",DOWNLOADING:"DOWNLOADING",FINISHED:"FINISHED",CANCELED:"CANCELED"});Ia(Me,"DOWNLOAD_ROW_OPTIONS",{ALL_ROWS:"ALL_ROWS",SELECTED_ROWS:"SELECTED_ROWS",CUSTOMIZED_ROWS:"CUSTOMIZED_ROWS"});Ia(Me,"CUSTOMIZED_ROWS_OPTIONS",{FIRST:"FIRST",LAST:"LAST"});Ia(Me,"DEFAULT_DOWNLOAD_ROWS",100);Ia(Me,"defaultProps",{onDownloadStart:()=>{},isDownloading:!1,tableDownloadStatus:"",tableDownloadProgress:0,tableDownloadEstimatedTime:null,selectedRanges:[]});const ia=Me;function He(n,e,t){return e=Qx(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Qx(n){var e=Zx(n,"string");return typeof e=="symbol"?e:String(e)}function Zx(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 Yn=ae.module("TableSaver"),Jx="yyyy-MM-dd'T'HH:mm:ss.SSSSSSSSS z";function eM(n){return n.added!==void 0}function tM(n){if(!eM(n))throw new Error("event is not UpdateEventData")}class pr extends y.PureComponent{static csvEscapeString(e){return'"'.concat(e.replace(/"/g,'""'),'"')}constructor(e){super(e),He(this,"sw",void 0),He(this,"port",void 0),He(this,"fileWriter",void 0),He(this,"table",void 0),He(this,"tableSubscription",void 0),He(this,"columns",void 0),He(this,"fileName",void 0),He(this,"includeColumnHeaders",void 0),He(this,"useUnformattedValues",void 0),He(this,"chunkRows",void 0),He(this,"gridRanges",void 0),He(this,"gridRangeCounter",void 0),He(this,"rangedSnapshotsTotal",void 0),He(this,"rangedSnapshotCounter",void 0),He(this,"snapshotsTotal",void 0),He(this,"snapshotCounter",void 0),He(this,"snapshotsBuffer",void 0),He(this,"currentSnapshotIndex",void 0),He(this,"snapshotPending",void 0),He(this,"cancelableSnapshots",void 0),He(this,"streamTimeout",void 0),He(this,"snapshotHandlerTimeout",void 0),He(this,"downloadStartTime",void 0),He(this,"iframes",void 0),He(this,"useBlobFallback",void 0),He(this,"getCachedCustomColumnFormatFlag",wn(oi.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.iframes=[],this.useBlobFallback=!1}componentDidMount(){var{getDownloadWorker:e}=this.props;e().then(t=>{Yn.info("found active service worker"),this.sw=t,this.sw.postMessage("ping")}).catch(t=>{Yn.warn("Download csv is not optimized.",t),this.useBlobFallback=!0})}componentWillUnmount(){this.iframes.length>0&&this.iframes.forEach(e=>{e.remove()}),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,o={};return t?(o.write=s=>{A(i),s.header!==void 0&&r.push(i(s.header)),s.rows!==void 0&&r.push(i(s.rows))},o.close=()=>{A(a);var s=new Blob(r,{type:"application/octet-stream; charset=utf-8"}),l=document.createElement("a");l.href=URL.createObjectURL(s),l.download=a,l.click()},o.abort=()=>{e.postMessage({cancel:!0}),e.close()}):(o.write=s=>{e.postMessage(s)},o.close=()=>{e.postMessage({end:!0}),e.close()},o.abort=()=>{e.postMessage({cancel:!0}),e.close()}),new WritableStream(o)}startDownload(e,t,r,i,a,o,s){var{isDownloading:l}=this.props;if(!l){this.downloadStartTime=Date.now(),Yn.info("start downloading ".concat(e)),this.table=t,this.columns=ye.columnsFromRanges(a,t.columns),this.tableSubscription=r,this.gridRanges=i,this.includeColumnHeaders=o,this.useUnformattedValues=s;var d=encodeURIComponent(e.replace(/\//g,":")).replace(/['()]/g,escape).replace(/\*/g,"%2A"),h=new MessageChannel;if(this.port=h.port1,this.fileName=e,this.fileWriter=this.createWriterStream(this.port).getWriter(),this.useBlobFallback){this.writeCsvTable(o);return}this.sw&&this.sw.postMessage({encodedFileName:d},[h.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&&Yn.info("download finished, total elapsed time ".concat((Date.now()-this.downloadStartTime)/1e3," seconds"))}cancelDownload(){this.table&&this.table.close(),this.tableSubscription&&this.tableSubscription.close(),this.fileWriter&&this.fileWriter.abort(),this.cancelableSnapshots.forEach(t=>{t&&(t.catch(()=>null),t.cancel())});var{onDownloadCanceled:e}=this.props;e(),this.resetTableSaver()}resetTableSaver(){this.table=void 0,this.tableSubscription=void 0,this.columns=void 0,this.chunkRows=void 0,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(){Yn.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?`
22
+ `);S(_),g(!0),w(_)}else D(F.shiftKey?en.UP:en.DOWN);break;case"Tab":F.preventDefault(),D(F.shiftKey?en.LEFT:en.RIGHT);break;case"ArrowDown":case"ArrowUp":case"ArrowLeft":case"ArrowRight":p&&(F.preventDefault(),D(_N(F.key)));break}},[T,D,p,S,g,w,b]),x=y.useCallback(F=>{d(F)},[d]);return u.jsx("textarea",{ref:c,className:J("grid-cell-input-field",t),value:b,onBlur:O,onChange:E,onKeyDown:R,onContextMenu:x,onClick:P,autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",spellCheck:"false",disabled:r,style:h})}ec.propTypes={selectionRange:Y.arrayOf(Y.number),className:Y.string,disabled:Y.bool,isQuickEdit:Y.bool,value:Y.string,onChange:Y.func,onCancel:Y.func,onDone:Y.func,onContextMenu:Y.func,style:Y.shape({})};ec.defaultProps={selectionRange:null,className:"",disabled:!1,value:"",isQuickEdit:!0,onChange:()=>{},onCancel:()=>{},onDone:()=>{},onContextMenu:()=>{},style:{}};var xN=he.createContext({});const MN=xN;function Tv(n,e,t,r,i,a,o){try{var s=n[a](o),l=s.value}catch(d){t(d);return}s.done?e(l):Promise.resolve(l).then(r,i)}function AN(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){Tv(a,r,i,o,s,"next",l)}function s(l){Tv(a,r,i,o,s,"throw",l)}o(void 0)})}}function Pv(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 Ca(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Pv(Object(t),!0).forEach(function(r){yt(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Pv(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function yt(n,e,t){return e=LN(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function LN(n){var e=kN(n,"string");return typeof e=="symbol"?e:String(e)}function kN(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 _r extends y.PureComponent{static getScale(e){var t,r,i,a,o,s=window.devicePixelRatio||1,l=e,d=(t=(r=(i=(a=(o=l.webkitBackingStorePixelRatio)!==null&&o!==void 0?o:l.mozBackingStorePixelRatio)!==null&&a!==void 0?a:l.msBackingStorePixelRatio)!==null&&i!==void 0?i:l.oBackingStorePixelRatio)!==null&&r!==void 0?r:l.backingStorePixelRatio)!==null&&t!==void 0?t:1;return s/d}static getCursorClassName(e){return e!=null&&e!==""?"grid-cursor-".concat(e):null}constructor(e){super(e),yt(this,"renderer",void 0),yt(this,"metricCalculator",void 0),yt(this,"canvas",void 0),yt(this,"canvasContext",void 0),yt(this,"animationFrame",void 0),yt(this,"prevMetrics",void 0),yt(this,"metrics",void 0),yt(this,"renderState",void 0),yt(this,"documentCursor",void 0),yt(this,"dragTimer",void 0),yt(this,"keyHandlers",void 0),yt(this,"mouseHandlers",void 0),yt(this,"getCachedKeyHandlers",Ce(l=>[...l,...this.keyHandlers].sort((d,h)=>d.order-h.order))),yt(this,"getCachedMouseHandlers",Ce(l=>[...l,...this.mouseHandlers].sort((d,h)=>d.order-h.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:o,renderer:s}=e;this.renderer=s||new kC,this.metricCalculator=i||new lR,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 ON(400),new IN(450),new yN(500),new TN(900)],this.mouseHandlers=[new oN(100),new xC(200),new nN(300),new XR(400),new mN(450),new hN(500),new JR(600),new lN(700),new th(800),new gN(875),new WR(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:o,cursorRow:null,cursorColumn:null,selectionStartRow:null,selectionStartColumn:null,selectionEndRow:null,selectionEndColumn:null,selectedRanges:ke,lastSelectedRanges:ke,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:o,onMovedColumnsChanged:s,onMoveColumnComplete:l,onMovedRowsChanged:d,onMoveRowComplete:h}=this.props,{isStickyBottom:c,isStickyRight:m,movedColumns:v,movedRows:f}=e,{movedColumns:g,movedRows:p}=t,{draggingColumn:C,draggingRow:b,movedColumns:S,movedRows:w}=this.state;v!==a&&this.setState({movedColumns:a}),f!==o&&this.setState({movedRows:o}),g!==S&&s(S),t.draggingColumn!=null&&C==null&&l(S),p!==w&&d(w),t.draggingRow!=null&&b==null&&h(w),r!==c&&this.setState({isStuckToBottom:!1}),i!==m&&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 _r.getTheme(this.context,e)}getGridPointFromEvent(e){dv(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 B.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,o=this.canvas.clientWidth,s=this.canvas.clientHeight,{left:l,top:d,leftOffset:h,topOffset:c,movedColumns:m,movedRows:v,isDraggingHorizontalScrollBar:f,isDraggingVerticalScrollBar:g,draggingColumn:p}=e;return Ca({left:l,top:d,leftOffset:h,topOffset:c,width:o,height:s,context:a,theme:t,model:r,movedColumns:m,movedRows:v,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;ze(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:o,selectedRanges:s}=this.state;if(this.setState({selectedRanges:e,lastSelectedRanges:s}),e.length>0){var l=xe.boundedRange(e[0],r,i),d=a,h=o;l.containsCell(o,a)||({row:d,column:h}=l.startCell()),this.setState({selectionStartColumn:l.startColumn,selectionStartRow:l.startRow,selectionEndColumn:l.endColumn,selectionEndRow:l.endRow,cursorColumn:h,cursorRow:d})}}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;A(e),A(t),A(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=_r.getScale(t),i=e.parentElement.getBoundingClientRect(),a=Math.floor(i.width),o=Math.floor(i.height);e.style.width="".concat(a,"px"),e.style.height="".concat(o,"px"),e.width=a*r,e.height=o*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:o,height:s,width:l}=this.prevMetrics;if(a!==e||r!==s){var{isStuckToBottom:d}=this.state;d&&this.scrollToBottom()}if(o!==t||i!==l){var{isStuckToRight:h}=this.state;h&&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 o=t[a];if(o.endColumn!=null&&o.endColumn>=r||o.endRow!=null&&o.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:o,selectionStartRow:s,selectionStartColumn:l}=a,{theme:d}=this.props,{autoSelectRow:h,autoSelectColumn:c}=d;if(r&&o.length>0){var m=o[o.length-1],v=null,f=null,g=null,p=null;if(i){var C,b,S,w;v=h!==void 0&&h?null:Math.min(e??0,(C=m.startColumn)!==null&&C!==void 0?C:0),f=c!==void 0&&c?null:Math.min(t??0,(b=m.startRow)!==null&&b!==void 0?b:0),g=h!==void 0&&h?null:Math.max(e??0,(S=m.endColumn)!==null&&S!==void 0?S:0),p=c!==void 0&&c?null:Math.max(t??0,(w=m.endRow)!==null&&w!==void 0?w:0)}else v=m.startColumn,f=m.startRow,(l!=null||s!=null)&&((h===void 0||!h)&&(v=l),(c===void 0||!c)&&(f=s)),g=h!==void 0&&h?null:e,p=c!==void 0&&c?null:t;var E=xe.makeNormalized(v,f,g,p);if(m.equals(E))return null;var T=[...o];return T[T.length-1]=E,{selectedRanges:T,selectionEndColumn:e,selectionEndRow:t}}var P=[...o],D=h!==void 0&&h?null:e,O=c!==void 0&&c?null:t;return P.push(xe.makeNormalized(D,O,D,O)),{selectedRanges:P,selectionEndColumn:e,selectionEndRow:t}})}commitSelection(){this.setState(e=>{var{theme:t}=this.props,{autoSelectRow:r}=t,{selectedRanges:i,lastSelectedRanges:a,cursorRow:o,cursorColumn:s}=e;if(i.length===1&&(r!==void 0&&r?xe.rowCount(i)===1:xe.cellCount(i)===1)&&xe.rangeArraysEqual(i,a))return{selectedRanges:[],lastSelectedRanges:[],cursorColumn:null,cursorRow:null};var l=i.slice();if(l.length>1){for(var d=l[l.length-1],h=0;h<l.length-1;h+=1){var c=l[h];if(c.contains(d)){var m=c.subtract(d);l.pop(),l.splice(h,1),l=l.concat(m);break}}l=xe.consolidate(l)}var v=s,f=o;if(!xe.containsCell(l,s,o)){var{model:g}=this.props,{columnCount:p,rowCount:C}=g,b=xe.nextCell(xe.boundedRanges(i,p,C));b!=null?{column:v,row:f}=b:(v=null,f=null)}return l.length===0&&(v=null,f=null),{cursorRow:f,cursorColumn:v,selectedRanges:l,lastSelectedRanges:i}})}setFocusRow(e){var t;if(!(!this.metrics||!this.prevMetrics)){var{gridY:r,height:i,lastTop:a,userRowHeights:o,rowHeight:s}=this.metrics,l=i-r,d=Math.round(l/2)+((t=o.get(e))!==null&&t!==void 0?t:s),h=this.getMetricState(),c=this.metricCalculator.getLastTop(h,e+1,d);this.setState({top:Math.min(a,c),selectedRanges:[new xe(null,e,null,e)],isStuckToBottom:!1});var{cursorColumn:m}=this.state;this.moveCursorToPosition(m,e,!1,!1)}}selectAll(){var{model:e,theme:t}=this.props,{autoSelectRow:r,autoSelectColumn:i}=t,a=i!==void 0&&i?null:0,o=i!==void 0&&i?null:e.rowCount-1,s=r!==void 0&&r?null:0,l=r!==void 0&&r?null:e.columnCount-1;this.setSelectedRanges([new xe(s,a,l,o)])}moveCursor(e,t,r){var{cursorRow:i,cursorColumn:a,selectionEndColumn:o,selectionEndRow:s}=this.state,l=r?o:a,d=r?s:i;if(d===null||l===null){var{left:h,top:c}=this.state;this.moveCursorToPosition(h,c,r)}else{var{model:m}=this.props,{columnCount:v,rowCount:f}=m,g=Ue(l+e,0,v-1),p=Ue(d+t,0,f-1);this.moveCursorToPosition(g,p,r)}}moveCursorInDirection(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:xe.SELECTION_DIRECTION.DOWN,{model:t}=this.props,{columnCount:r,rowCount:i}=t,{cursorRow:a,cursorColumn:o,selectedRanges:s}=this.state,l=s.length>0?s:[xe.makeCell(o,a)],d=null;if(l.length===1&&xe.cellCount(l)===1){var h,c=new xe(0,0,r-1,i-1);d=(h=c.nextCell(o,a,e))!==null&&h!==void 0?h:c.startCell(e)}else d=xe.nextCell(xe.boundedRanges(l,r,i),o,a,e);if(d!=null){var{column:m,row:v}=d;this.setState({cursorColumn:m,cursorRow:v}),xe.containsCell(s,m,v)||this.setState({selectedRanges:[xe.makeCell(m,v)],selectionStartColumn:m,selectionStartRow:v,selectionEndColumn:m,selectionEndRow:v}),this.moveViewToCell(d.column,d.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:o,leftVisible:s}=this.metrics,l=this.getMetricState(this.state),{top:d,left:h,topOffset:c,leftOffset:m}=this.state;t!=null&&!B.isFloatingRow(t,this.metrics)&&(t<o?(d=r.getTopForTopVisible(l,t),c=0):t>i&&(d=r.getTopForBottomVisible(l,t),c=0)),e!=null&&!B.isFloatingColumn(e,this.metrics)&&(e<s?(h=r.getLeftForLeftVisible(l,e),m=0):e>a&&(h=r.getLeftForRightVisible(l,e),m=0)),this.setViewState({top:d,left:h,topOffset:c,leftOffset:m})}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:o}=e,{lastTop:s,lastLeft:l}=this.metrics;a!=null&&this.setState({isStuckToBottom:r&&a>=s}),o!=null&&this.setState({isStuckToRight:i&&o>=l}),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:o}=this.props;if(!it(o))throw new Error("model is not editable");var s=this.getModelColumn(e),l=this.getModelRow(t),d={column:e,row:t,selectionRange:i,value:a!==void 0?a:o.editValueForCell(s,l),isQuickEdit:r};this.setState({editingCell:d,cursorColumn:e,cursorRow:t}),this.moveViewToCell(e,t)}isValidForCell(e,t,r){var{model:i}=this.props,a=this.getModelColumn(e),o=this.getModelRow(t);return it(i)&&i.isValidForCell(a,o,r)}pasteValue(e){var t=this;return AN(function*(){var{model:r}=t.props,{movedColumns:i,movedRows:a,selectedRanges:o}=t.state;try{if(uv(r),!r.isEditable||!o.every(p=>r.isEditableRange(p)))throw new pu("Can't paste in to read-only area.");if(o.length<=0)throw new pu("Select an area to paste to.");if(typeof e=="string"){var s=[],l=B.getModelRanges(o,i,a);xe.forEachCell(l,(p,C)=>{s.push({column:p,row:C,text:e})}),yield r.setValues(s);return}var d=e.length,h=e[0].length,{columnCount:c,rowCount:m}=r,v=o;if(v.every(p=>{var C,b;return xe.cellCount([p])===1&&((C=p.startColumn)!==null&&C!==void 0?C:0)+h<=c&&((b=p.startRow)!==null&&b!==void 0?b:0)+d<=m})&&(v=v.map(p=>{var C,b;return new xe(p.startColumn,p.startRow,((C=p.startColumn)!==null&&C!==void 0?C:0)+h-1,((b=p.startRow)!==null&&b!==void 0?b:0)+d-1)}),t.setSelectedRanges(v)),!v.every(p=>xe.rowCount([p])===d&&xe.columnCount([p])===h))throw new pu("Copy and paste area are not same size.");var f=[];v.forEach(p=>{for(var C=0;C<h;C+=1)for(var b=0;b<d;b+=1){var S,w;f.push({column:((S=p.startColumn)!==null&&S!==void 0?S:0)+C,row:((w=p.startRow)!==null&&w!==void 0?w:0)+b,text:e[b][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;uv(i);var a=this.getModelColumn(e),o=this.getModelRow(t);return i.isValidForCell(a,o,r)?(i.setValueForCell(a,o,r),!0):!1}setValueForRanges(e,t){var{model:r}=this.props,{movedColumns:i,movedRows:a}=this.state,o=B.getModelRanges(e,i,a);it(r)&&r.setValueForRanges(o,t)}isSelected(e,t){for(var{selectedRanges:r}=this.state,i=0;i<r.length;i+=1){var a,o,s=r[i],l=s.startRow===null||s.startRow<=e&&e<=((a=s.endRow)!==null&&a!==void 0?a:0),d=s.startColumn===null||s.startColumn<=t&&t<=((o=s.endColumn)!==null&&o!==void 0?o:0);if(l&&d)return!0}return!1}addDocumentCursor(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:null;this.documentCursor!==_r.getCursorClassName(e)&&(this.documentCursor!=null&&document.documentElement.classList.remove(this.documentCursor),this.documentCursor=_r.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)},_r.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 o=i[a];if(o.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 o,s,l=a;(!((o=l?.stopPropagation)!==null&&o!==void 0)||o)&&e.stopPropagation(),(!((s=l?.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),o=this.getMouseHandlers(),s=null,l=0;l<o.length;l+=1){var d=o[l],h=d[e]!=null&&d[e](a,this,t);if(h!==!1){var c,m;d.cursor!=null&&({cursor:s}=d,i&&this.addDocumentCursor(s));var v=h;(!((c=v?.stopPropagation)!==null&&c!==void 0)||c)&&t.stopPropagation(),(!((m=v?.preventDefault)!==null&&m!==void 0)||m)&&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:o,columnCount:s,rowCount:l,scrollableContentWidth:d,scrollableViewportWidth:h,scrollableContentHeight:c,scrollableViewportHeight:m,hasHorizontalBar:v,hasVerticalBar:f}=r,{top:g,left:p,topOffset:C,leftOffset:b}=r,S=this.getTheme(),{deltaX:w,deltaY:E}=B.getScrollDelta(e,r.barWidth,r.barHeight,r.rowHeight,r.rowHeight);v&&w!==0;){if(b+=w,w=0,s>1){if(b>0&&p>=o||b<0&&p<=0){b=0;break}}else{if(b<=0){b=0;break}var T=d-h;if(b>=T){b=T;break}}if(b>0){var P,D=(P=r.allColumnWidths.get(p))!==null&&P!==void 0?P:t.getVisibleColumnWidth(p,i);b>=D?(w=b-D,b=0,p+=1):S.scrollSnapToColumn&&s>1&&(b=0,p+=1)}else if(b<0){var O,R=(O=r.allColumnWidths.get(p-1))!==null&&O!==void 0?O:t.getVisibleColumnWidth(p-1,i);Math.abs(b)<=R&&S.scrollSnapToColumn&&s>1?(b=0,p-=1):(w=b+R,b=0,p-=1)}}for(;f&&E!==0;){if(C+=E,E=0,l>1){if(C>0&&g>=a||C<0&&g<=0){C=0;break}}else{if(C<=0){C=0;break}var x=c-m;if(C>=x){C=x;break}}if(C>0){var F,_=(F=r.allRowHeights.get(g))!==null&&F!==void 0?F:t.getVisibleRowHeight(g,i);C>=_?(E=C-_,C=0,g+=1):S.scrollSnapToRow&&l>1&&(C=0,g+=1)}else if(C<0){var L,M=(L=r.allRowHeights.get(g-1))!==null&&L!==void 0?L:t.getVisibleRowHeight(g-1,i);Math.abs(C)<=M&&S.scrollSnapToRow&&l>1?(C=0,g-=1):(E=C+M,C=0,g-=1)}}this.setViewState({top:g,left:p,leftOffset:b,topOffset:C}),e.stopPropagation(),e.preventDefault()}}handleEditCellCancel(){this.setState({editingCell:null}),this.focus()}handleEditCellChange(e){this.setState(t=>{var{editingCell:r}=t;try{return dv(r),{editingCell:Ca(Ca({},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=en.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:o,row:s}=i;if(!this.isValidForCell(o,s,e)){t===null&&this.setState({editingCell:null});return}r?this.setValueForRanges(a,e):this.setValueForCell(o,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||!it(e))return null;var{selectionRange:i,value:a,isQuickEdit:o}=t,{column:s,row:l}=t,{gridX:d,gridY:h,allColumnXs:c,allRowYs:m,allColumnWidths:v,allRowHeights:f}=r,g=c.get(s),p=m.get(l),C=v.get(s),b=f.get(l),S=g!=null&&p!=null&&C!=null&&b!=null?{position:"absolute",left:d+g,top:h+p,width:C,height:b}:{opacity:0},w=this.getModelColumn(s),E=this.getModelRow(l),T=w!=null&&E!=null?{textAlign:e.textAlignForCell(w,E)}:void 0,P=e.isValidForCell(w,E,a);return u.jsx("div",{style:S,children:u.jsx(ec,{selectionRange:i,className:J({error:!P}),onCancel:this.handleEditCellCancel,onChange:this.handleEditCellChange,onDone:this.handleEditCellCommit,isQuickEdit:o,style:T,value:a},"".concat(s,",").concat(l))})}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:o,draggingRowSeparator:s,editingCell:l,isDraggingHorizontalScrollBar:d,isDraggingVerticalScrollBar:h,isDragging:c,mouseX:m,mouseY:v,selectedRanges:f}=this.state,{model:g,stateOverride:p}=this.props,{metrics:C}=this,b=this.canvasContext,S=this.getTheme(),w=this.canvas.clientWidth,E=this.canvas.clientHeight;return A(C),this.renderState=Ca({width:w,height:E,context:b,theme:S,model:g,metrics:C,mouseX:m,mouseY:v,selectedRanges:f,draggingColumn:r,draggingColumnSeparator:i,draggingRow:a,draggingRowOffset:o,draggingRowSeparator:s,editingCell:l,isDraggingHorizontalScrollBar:d,isDraggingVerticalScrollBar:h,isDragging:c,cursorColumn:e,cursorRow:t},p),this.renderState}render(){var{cursor:e}=this.state;return u.jsxs(u.Fragment,{children:[u.jsx("canvas",{className:J("grid-canvas",_r.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()]})}}yt(_r,"contextType",MN);yt(_r,"defaultProps",{canvasOptions:{alpha:!1},isStickyBottom:!1,isStickyRight:!1,isStuckToBottom:!1,isStuckToRight:!1,keyHandlers:ke,mouseHandlers:ke,movedColumns:ke,movedRows:ke,onError:()=>{},onSelectionChanged:()=>{},onMovedColumnsChanged:n=>{},onMoveColumnComplete:()=>{},onMovedRowsChanged:()=>{},onMoveRowComplete:()=>{},onViewChanged:n=>{},onTokenClicked:n=>{Vl(n)&&window.open(n.href,"_blank","noopener,noreferrer")},stateOverride:{},theme:{autoSelectColumn:!1,autoSelectRow:!1}});yt(_r,"pixelsPerLine",100/3);yt(_r,"dragTimeout",1e3);yt(_r,"getTheme",Ce((n,e)=>Ca(Ca(Ca({},uR),n),e)));const jN=_r;function HN(n,e,t){return e=$N(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function $N(n){var e=UN(n,"string");return typeof e=="symbol"?e:String(e)}function UN(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 Cu=5e3;class BN extends ES{constructor(){super(...arguments),HN(this,"getCachedTokensInText",wn((e,t)=>{if(t>=e.length)return B.findTokensWithProtocolInText(e);var r=e.slice(t-1,Cu).search(/\s/),i=t+r;r===-1&&(i=Math.min(Cu,e.length));var a=e.substring(0,i);return B.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]:Cu,i=this.textForCell(e,t);return this.getCachedTokensInText(i,r)}renderTypeForCell(e,t){return"text"}}const VN=BN;function GN(n,e){var t=KN(n);if(t!==void 0){var r=JN(n);return"".concat(r," ? ").concat(t," : ").concat(e)}}function WN(n,e){return n.Column.formatRowColor(e)}function zN(n,e){return n.formatColor(e)}var es=ae.module("ConditionalFormattingUtils"),wr;(function(n){n.CONDITIONAL="conditional",n.ROWS="rows"})(wr||(wr={}));var ve;(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"})(ve||(ve={}));var Ne;(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"})(Ne||(Ne={}));var De;(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"})(De||(De={}));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 Ct;(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"})(Ct||(Ct={}));var Fe;(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"})(Fe||(Fe={}));function Ov(n){switch(n){case Fe.NO_FORMATTING:return"No formatting";case Fe.POSITIVE:return"Positive";case Fe.NEGATIVE:return"Negative";case Fe.WARN:return"Warn";case Fe.NEUTRAL:return"Neutral";case Fe.ACCENT_1:return"Accent 1";case Fe.ACCENT_2:return"Accent 2";case Fe.CUSTOM:return"Custom..."}}function Wl(n){var{type:e,customConfig:t}=n;switch(e){case Fe.NO_FORMATTING:return;case Fe.POSITIVE:return"#9fde6f";case Fe.NEGATIVE:return"#ff6087";case Fe.WARN:return"#f67f40";case Fe.NEUTRAL:return"#ffd95c";case Fe.ACCENT_1:return"#78dce8";case Fe.ACCENT_2:return"#ab9bf5";case Fe.CUSTOM:return t?.background;default:return}}function zl(n){var{type:e,customConfig:t}=n;switch(e){case Fe.NO_FORMATTING:return;case Fe.POSITIVE:return"#526a3f";case Fe.NEGATIVE:return"#802f44";case Fe.WARN:return"#663318";case Fe.NEUTRAL:return"#63562b";case Fe.ACCENT_1:return"#3f6469";case Fe.ACCENT_2:return"#554d72";case Fe.CUSTOM:return t?.color;default:return}}function KN(n){var e=zl(n.style),t=Wl(n.style);if(!(e===void 0||t===void 0))return"bgfg(`".concat(t,"`, `").concat(e,"`)")}function YN(n){var{column:e,value:t,start:r,end:i}=n;return uF(e.name,n.condition,t,r,i)}function qN(n){var{column:e,value:t}=n;return hF(e.name,n.condition,t)}function XN(n){var{column:e,value:t}=n;return cF(e.name,n.condition,t)}function QN(n){var{column:e}=n;return mF(e.name,n.condition)}function ZN(n){var{column:e,value:t}=n;return vF(e.name,n.condition,t)}function JN(n){var{column:e}=n;if(j.isNumberType(e.type))return YN(n);if(j.isCharType(e.type))return ZN(n);if(j.isStringType(e.type))return qN(n);if(j.isDateType(e.type))return XN(n);if(j.isBooleanType(e.type))return QN(n);throw new Error("Invalid column type")}function eF(n){switch(n){case ve.IS_EQUAL:return"is equal to";case ve.IS_NOT_EQUAL:return"is not equal to";case ve.IS_BETWEEN:return"is between";case ve.GREATER_THAN:return"greater than";case ve.GREATER_THAN_OR_EQUAL:return"greater than or equal to";case ve.LESS_THAN:return"less than";case ve.LESS_THAN_OR_EQUAL:return"less than or equal to";case ve.IS_NULL:return"is null";case ve.IS_NOT_NULL:return"is not null"}}function tF(n){switch(n){case Ne.IS_EXACTLY:return"is exactly";case Ne.IS_NOT_EXACTLY:return"is not exactly";case Ne.CONTAINS:return"contains";case Ne.DOES_NOT_CONTAIN:return"does not contain";case Ne.STARTS_WITH:return"starts with";case Ne.ENDS_WITH:return"ends with";case Ne.IS_NULL:return"is null";case Ne.IS_NOT_NULL:return"is not null"}}function rF(n){switch(n){case De.IS_EXACTLY:return"is";case De.IS_NOT_EXACTLY:return"is not";case De.IS_BEFORE:return"is before";case De.IS_BEFORE_OR_EQUAL:return"is before or equal";case De.IS_AFTER:return"is after";case De.IS_AFTER_OR_EQUAL:return"is after or equal";case De.IS_NULL:return"is null";case De.IS_NOT_NULL:return"is not null"}}function nF(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 iF(n){switch(n){case Ct.IS_EQUAL:return"is";case Ct.IS_NOT_EQUAL:return"is not";case Ct.IS_NULL:return"is null";case Ct.IS_NOT_NULL:return"is not null"}}function HC(n){if(j.isNumberType(n))return ve.IS_EQUAL;if(j.isCharType(n))return Ct.IS_EQUAL;if(j.isStringType(n))return Ne.IS_EXACTLY;if(j.isDateType(n))return De.IS_EXACTLY;if(j.isBooleanType(n))return Rt.IS_TRUE;throw new Error("Invalid column type")}function $C(n){if(j.isCharType(n)||j.isStringType(n))return""}function UC(n){var{condition:e,value:t,start:r,end:i}=n;return{condition:e,value:t,start:r,end:i}}function yd(n){return{condition:HC(n),value:$C(n),start:void 0,end:void 0}}function BC(){return{type:Fe.NO_FORMATTING}}function aF(n){switch(n){case Ne.IS_EXACTLY:return"==";case Ne.IS_NOT_EXACTLY:return"!=";case Ne.CONTAINS:return"contains";case Ne.DOES_NOT_CONTAIN:return"does not contain";case Ne.STARTS_WITH:return"starts with";case Ne.ENDS_WITH:return"ends with";case Ne.IS_NULL:return"is null";case Ne.IS_NOT_NULL:return"is not null"}}function oF(n){switch(n){case De.IS_EXACTLY:return"==";case De.IS_NOT_EXACTLY:return"!=";case De.IS_BEFORE:return"<";case De.IS_BEFORE_OR_EQUAL:return"<=";case De.IS_AFTER:return">";case De.IS_AFTER_OR_EQUAL:return">=";case De.IS_NULL:return"is null";case De.IS_NOT_NULL:return"is not null"}}function sF(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 lF(n){switch(n){case Ct.IS_EQUAL:return"==";case Ct.IS_NOT_EQUAL:return"!=";case Ct.IS_NULL:return"is null";case Ct.IS_NOT_NULL:return"is not null"}}function dF(n){switch(n){case ve.IS_EQUAL:return"==";case ve.IS_NOT_EQUAL:return"!=";case ve.IS_BETWEEN:return"==";case ve.GREATER_THAN:return">";case ve.GREATER_THAN_OR_EQUAL:return">=";case ve.LESS_THAN:return"<";case ve.LESS_THAN_OR_EQUAL:return"<=";case ve.IS_NULL:return"is null";case ve.IS_NOT_NULL:return"is not null"}}function uF(n,e,t,r,i){switch(e){case ve.IS_EQUAL:return"".concat(n," == ").concat(t);case ve.IS_NOT_EQUAL:return"".concat(n," != ").concat(t);case ve.IS_BETWEEN:return"".concat(n," > ").concat(r," && ").concat(n," < ").concat(i);case ve.GREATER_THAN:return"".concat(n," > ").concat(t);case ve.GREATER_THAN_OR_EQUAL:return"".concat(n," >= ").concat(t);case ve.LESS_THAN:return"".concat(n," < ").concat(t);case ve.LESS_THAN_OR_EQUAL:return"".concat(n," <= ").concat(t);case ve.IS_NULL:return"".concat(n," == null");case ve.IS_NOT_NULL:return"".concat(n," != null")}}function hF(n,e,t){switch(e){case Ne.IS_EXACTLY:return"".concat(n,' == "').concat(t,'"');case Ne.IS_NOT_EXACTLY:return"".concat(n,' != "').concat(t,'"');case Ne.CONTAINS:return"".concat(n," != null && ").concat(n,'.contains("').concat(t,'")');case Ne.DOES_NOT_CONTAIN:return"".concat(n," != null && !").concat(n,'.contains("').concat(t,'")');case Ne.STARTS_WITH:return"".concat(n," != null && ").concat(n,'.startsWith("').concat(t,'")');case Ne.ENDS_WITH:return"".concat(n," != null && ").concat(n,'.endsWith("').concat(t,'")');case Ne.IS_NULL:return"".concat(n," == null");case Ne.IS_NOT_NULL:return"".concat(n," != null")}}function cF(n,e,t){switch(e){case De.IS_EXACTLY:return"".concat(n,' == convertDateTime("').concat(t,'")');case De.IS_NOT_EXACTLY:return"".concat(n," != convertDateTime(`").concat(t,"`)");case De.IS_BEFORE:return"".concat(n," < convertDateTime(`").concat(t,"`)");case De.IS_BEFORE_OR_EQUAL:return"".concat(n,' <= convertDateTime("').concat(t,'")');case De.IS_AFTER:return"".concat(n," > convertDateTime(`").concat(t,"`)");case De.IS_AFTER_OR_EQUAL:return"".concat(n," >= convertDateTime(`").concat(t,"`)");case De.IS_NULL:return"".concat(n," == null");case De.IS_NOT_NULL:return"".concat(n," != null")}}function mF(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 vF(n,e,t){switch(e){case Ct.IS_EQUAL:return"".concat(n," == '").concat(t,"'");case Ct.IS_NOT_EQUAL:return"".concat(n," != '").concat(t,"'");case Ct.IS_NULL:return"isNull(".concat(n,")");case Ct.IS_NOT_NULL:return"!isNull(".concat(n,")")}}function fF(n,e){if(j.isNumberType(n))return dF(e);if(j.isCharType(n))return lF(e);if(j.isStringType(n))return aF(e);if(j.isDateType(n))return oF(e);if(j.isBooleanType(n))return sF(e);throw new Error("Invalid column type")}function gF(n,e,t){if(t===void 0)return es.debug("no rules passed."),[];var r=[],i,a=new Map;return t.forEach(o=>{var s,{config:l,type:d}=o,{column:h}=l,c=e.find(C=>{var{name:b,type:S}=C;return b===h.name&&S===h.type});if(c===void 0){es.debug("Column ".concat(h.name,":").concat(h.type," not found. Ignoring format rule."),l);return}var[m,v]=(s=d===wr.CONDITIONAL?a.get(c.name):i)!==null&&s!==void 0?s:["null",void 0],f=GN(l,m);if(f===void 0){es.debug("Ignoring format rule.",l);return}var g=v===void 0?-1:r.indexOf(v);g>-1&&r.splice(g,1);var p=d===wr.CONDITIONAL?zN(c,f):WN(n,f);r.push(p),d===wr.CONDITIONAL?a.set(c.name,[f,p]):i=[f,p]}),r}function pF(n,e,t){switch(e){case De.IS_NULL:case De.IS_NOT_NULL:return!0;default:{var[r,...i]=(t??"").split(" "),a=i.join(" ");try{Ea.parseDateTimeString(r)}catch{return es.debug("Invalid datetime string",r),!1}try{n.i18n.TimeZone.getTimeZone(a)}catch{return es.debug("Invalid timezone string",a),!1}return!0}}}function CF(n){var{type:e}=n;return j.isNumberType(e)||j.isCharType(e)||j.isStringType(e)||j.isDateType(e)||j.isBooleanType(e)}function Ed(n){var{animation:e="iris-grid-bottom-bar-slide-up",children:t,className:r,isShown:i,onClick:a,onEntering:o,onEntered:s,onExiting:l,onExited:d}=n;return u.jsx(Lr,{in:i,timeout:Ze.transitionMs,classNames:e,onEntering:o,onEntered:s,onExiting:l,onExited:d,mountOnEnter:!0,unmountOnExit:!0,children:u.jsx("div",{className:J("iris-grid-bottom-bar",r),role:"presentation",onClick:a,onKeyPress:a,children:t})})}var bF=3e3,SF=5;function wF(n){var{isSaving:e=!1,onSave:t,onDiscard:r,discardTooltip:i,saveTooltip:a,error:o,pendingDataErrors:s,pendingDataMap:l,onEntering:d,onEntered:h,onExiting:c,onExited:m}=n,[v,f]=y.useState(!1),[g,p]=y.useState(!1),C=y.useRef(),b=Ih(e),S=y.useMemo(()=>s.size===0?o:s.size<=SF?"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)"),[o,s]);y.useEffect(function(){b!=null&&b&&!e&&S==null&&(f(!0),p(!0),C.current=setTimeout(()=>{f(!1)},bF))},[S,e,b]),y.useEffect(function(){C.current&&l.size>0&&(clearTimeout(C.current),f(!1),p(!1))},[l]),y.useEffect(function(){return()=>C.current?clearTimeout(C.current):void 0},[]);var w=l.size,E;return e?E=u.jsx(kn,{}):g&&(E=Ph),u.jsxs(Ed,{className:"pending-data-bottom-bar",isShown:w>0||v||S!=null,onEntering:d,onEntered:h,onExiting:c,onExited:()=>{p(!1),m&&m()},children:[S!=null&&S!==""&&u.jsxs("div",{className:"error-message",children:[u.jsx(te,{icon:Ki}),u.jsx("span",{children:"".concat(S)})]}),(S==null||S==="")&&u.jsx("div",{className:"status-message",children:w>0&&u.jsx("span",{children:"".concat(w," row").concat(w>1?"s":""," pending")})}),u.jsxs("div",{className:"buttons-container",children:[!e&&!g&&u.jsx(G,{kind:"secondary",onClick:r,tooltip:i,children:"Discard"}),u.jsxs(G,{kind:g?"success":"primary",onClick:t,icon:E,disabled:e||g||S!=null,tooltip:a,children:[e&&"Committing...",!e&&g&&"Success",!e&&!g&&"Commit"]})]})]})}var rh;(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"})(rh||(rh={}));const $e=rh;var yF=[$e.SUM,$e.ABS_SUM,$e.MIN,$e.MAX,$e.VAR,$e.AVG,$e.STD,$e.FIRST,$e.LAST,$e.COUNT_DISTINCT,$e.DISTINCT,$e.COUNT,$e.UNIQUE],EF=n=>{switch(n){default:return!1}},TF=(n,e)=>{switch(n){case $e.COUNT:case $e.FIRST:case $e.LAST:case $e.COUNT_DISTINCT:case $e.DISTINCT:case $e.UNIQUE:return!0;case $e.MIN:case $e.MAX:return j.isNumberType(e)||j.isDateType(e)||j.isTextType(e);case $e.SUM:case $e.ABS_SUM:case $e.VAR:case $e.AVG:case $e.STD:return j.isNumberType(e);case $e.SKIP:return!1}},tc=(n,e)=>n.filter(t=>TF(e,t.type)),PF=(n,e,t,r)=>tc(n,e).map(i=>{var{name:a}=i;return a}).filter(i=>t.includes(i)?!r:r);const Gi={isRollupOperation:EF,filterValidColumns:tc,getOperationColumnNames:PF};var nh;(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"})(nh||(nh={}));const oo=nh;var OF=Object.freeze([[oo.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS,!1],[oo.LINK_CHANGE_CLEARS_ALL_FILTERS,!1]]);const VC={DEFAULTS:OF};function Ai(n,e,t){return e=DF(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function DF(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)}var NF=ae.module("ColumnHeaderGroup");function bu(n){return n instanceof Jr}class Jr{constructor(e){var{name:t,children:r,color:i,depth:a,childIndexes:o,parent:s}=e;Ai(this,"name",void 0),Ai(this,"children",void 0),Ai(this,"depth",void 0),Ai(this,"parent",void 0),Ai(this,"color",void 0),Ai(this,"childIndexes",void 0),Ai(this,"getVisibleRange",Ce(l=>{var d=this.childIndexes.flat(),h=B.getVisibleIndexes(d,l),c=Math.min(...h),m=Math.max(...h);return m-c!==d.length-1&&NF.warn("Column header group ".concat(this.name," is not contiguous")),[c,m]})),this.name=t,this.children=r,this.color=i,this.depth=a,this.childIndexes=o,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(Jr.NEW_GROUP_PREFIX)}}Ai(Jr,"NEW_GROUP_PREFIX",":newGroup");var FF=["selectedValues"],IF=["selectedValues"];function Dv(n,e){if(n==null)return{};var t=_F(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 _F(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 Rv(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 Kn(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Rv(Object(t),!0).forEach(function(r){ih(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Rv(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function ih(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=MF(n,"string");return typeof e=="symbol"?e:String(e)}function MF(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 Ao=ae.module("IrisGridUtils");function Pi(n,e){return n>=0&&n<e.length}function AF(n){return n.asDate!=null}class Xe{static dehydrateGridState(e,t){var{isStuckToBottom:r,isStuckToRight:i,movedColumns:a,movedRows:o}=t,{columns:s}=e;return{isStuckToBottom:r,isStuckToRight:i,movedColumns:[...a].filter(l=>{var{to:d,from:h}=l;return Pi(d,s)&&(typeof h=="number"&&Pi(h,s)||Array.isArray(h)&&Pi(h[0],s)&&Pi(h[1],s))}).map(l=>{var{to:d,from:h}=l;return{to:s[d].name,from:Array.isArray(h)?[s[h[0]].name,s[h[1]].name]:s[h].name}}),movedRows:[...o]}}static hydrateGridState(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[],{isStuckToBottom:i,isStuckToRight:a,movedColumns:o,movedRows:s}=t,{columns:l}=e,d=Xe.parseCustomColumnNames(r),h=l.map(c=>{var{name:m}=c;return m}).concat(d);return{isStuckToBottom:i,isStuckToRight:a,movedColumns:[...o].map(c=>{var{to:m,from:v}=c,f=g=>typeof g=="string"?h.findIndex(p=>p===g):g;return{to:f(m),from:Array.isArray(v)?[f(v[0]),f(v[1])]:f(v)}}).filter(c=>{var{to:m,from:v}=c;return Pi(m,h)&&(typeof v=="number"&&Pi(v,h)||Array.isArray(v)&&Pi(v[0],h)&&Pi(v[1],h))}),movedRows:[...s]}}static dehydrateIrisGridPanelState(e,t){var{isSelectingPartition:r,partition:i,partitionColumn:a,advancedSettings:o}=t;return{isSelectingPartition:r,partition:i,partitionColumn:a!=null?a.name:null,advancedSettings:[...o]}}static hydrateIrisGridPanelState(e,t){var r,{isSelectingPartition:i,partition:a,partitionColumn:o,advancedSettings:s}=t,{columns:l}=e;return{isSelectingPartition:i,partition:a??null,partitionColumn:o!=null&&(r=Xe.getColumnByName(l,o))!==null&&r!==void 0?r:null,advancedSettings:new Map([...VC.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:o}=r,{advancedFilters:s,quickFilters:l,sorts:d}=i;return{advancedFilters:s,inputFilters:t,partition:o,partitionColumn:a,quickFilters:l,sorts:d}}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(o=>{var{name:s,type:l}=o;return s===i&&l===a})})}static getFiltersFromFilterMap(e){for(var t=[],r=Array.from(e.keys()),i=0;i<r.length;i+=1){var a=r[i],o=e.get(a);o?.filter!=null&&t.push(o.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=Xe.parseCustomColumnNames(e),i=Xe.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(o=>{var{name:s}=o;return s}),a=new Map(t);return r.forEach(o=>a.delete(i.indexOf(o))),a}static removeColumnFromMovedColumns(e,t,r){for(var i=e.map(l=>{var{name:d}=l;return d}),a=[...t],o=function(){for(var d=r[s],h=i.findIndex(C=>C===d),c=[],m=0;m<a.length;m+=1){var v=a[m],f=Kn({},v),[g,p]=Array.isArray(v.from)?v.from:[v.from,v.from];h<=v.to&&(f.to-=1),h<g&&(g-=1),h<=p&&(p-=1),g<=p&&g!==f.to&&(g===p?c.push(Kn(Kn({},f),{},{from:g})):c.push(Kn(Kn({},f),{},{from:[g,p]}))),h=B.applyItemMoves(h,h,[v])[0][0]}a=c,i.splice(i.findIndex(C=>C===d),1)},s=0;s<r.length;s+=1)o();return a}static removeColumnsFromSelectDistinctColumns(e,t){return e.filter(r=>!t.includes(r))}static getVisibleColumnsInRange(e,t,r,i,a){for(var o=[],s=t;s<=r;s+=1){var l=B.getModelIndex(s,i);l>=0&&l<e.length&&!a.includes(l)&&o.push(e[l])}return o}static getPrevVisibleColumns(e,t,r,i,a){for(var o=[],s=t;s>=0&&o.length<r;){var l=B.getModelIndex(s,i);l>=0&&l<e.length&&!a.includes(l)&&o.unshift(e[l]),s-=1}return o}static getNextVisibleColumns(e,t,r,i,a){for(var o=[],s=t;s<e.length&&o.length<r;){var l=B.getModelIndex(s,i);l>=0&&l<e.length&&!a.includes(l)&&o.push(e[l]),s+=1}return o}static getColumnsToFetch(e,t,r){var i=[...t];return r.forEach(a=>{var o=e.find(s=>{var{name:l}=s;return l===a});o!=null&&!t.includes(o)&&i.push(o)}),i}static getModelViewportColumns(e,t,r,i){var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:[],o=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 l=Xe.getVisibleColumnsInRange(e,t,r,i,a),d=l.length*s,h=Xe.getPrevVisibleColumns(e,t-1,d,i,a),c=Xe.getNextVisibleColumns(e,r+1,d,i,a),m=[...h,...l,...c];return Xe.getColumnsToFetch(e,m,o)}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),o="".concat(i.startColumn,":").concat(i.endColumn);t.has(a)||t.set(a,[]),t.get(a).push(o)}for(var s=[...t.keys()],l=t.get(s[0]).sort().join(","),d=1;d<s.length;d+=1)if(t.get(s[d]).sort().join(",")!==l)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];A(a.startColumn),A(a.endColumn);for(var o=(s=a.startColumn)!==null&&s!==void 0?s:0;o<=((l=a.endColumn)!==null&&l!==void 0?l:t.length-1);o+=1){var s,l;r.add(o)}}return[...r].map(d=>t[d])}static snapshotDataToMatrix(e){for(var{columns:t,rows:r}=e,i=[],a=0;a<r.length;a+=1){for(var o=r[a],s=[],l=0;l<t.length;l+=1){var d=t[l],h=o.get(d);s.push(h)}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:o=[],showConstituents:s=!0,showNonAggregatedColumns:l=!0,includeDescriptions:d=!0}=t??{},{aggregations:h=[]}=r??{},c=h.map(C=>{var{operation:b,selected:S,invert:w}=C;return Gi.isRollupOperation(b)?[]:Gi.getOperationColumnNames(e,b,S,w)}),m={},v=0;v<h.length;v+=1)m[h[v].operation]=c[v];if(l){var f=new Set(e.map(C=>C.name).filter(C=>!o.includes(C)));if(c.forEach(C=>{C.forEach(b=>f.delete(b))}),f.size>0){var g,p=(g=m[$e.FIRST])!==null&&g!==void 0?g:[];m[$e.FIRST]=[...p,...f]}}return{groupingColumns:o,includeConstituents:s,includeDescriptions:d,aggregations:m}}static getPendingErrors(e){e.forEach((t,r)=>{if(!Xe.isValidIndex(r))throw new Error("Invalid rowIndex ".concat(r));var{data:i}=t;i.forEach((a,o)=>{if(!Xe.isValidIndex(o))throw new Error("Invalid columnIndex ".concat(o))})})}static getColumn(e,t){return t<e.length?e[t]:(Ao.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&&Ao.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,o=e.findIndex(s=>s.name===i);return o<0?null:[o,a]}).filter(r=>r!=null)}static combineFiltersFromList(e,t){t.sort((h,c)=>h.operator==="eq"&&c.operator!=="eq"?1:h.operator!=="eq"&&c.operator==="eq"?-1:h.startColumnIndex-c.startColumnIndex);for(var r="",i=0;i<t.length;i+=1){var{text:a,value:o,operator:s}=t[i];if(o!==void 0){var l="";s!==void 0&&(o==null&&s==="eq"?l="=":s!=="eq"&&(s==="startsWith"||s==="endsWith"?l="*":l=j.getFilterOperatorString(s)));var d="".concat(l).concat(a);s==="startsWith"&&(d="".concat(a).concat(l)),e!=null&&o!==null&&j.isCharType(e)&&(d="".concat(l).concat(String.fromCharCode(parseInt(a,10)))),i!==0&&(r+=s==="eq"?" || ":" && "),r+=d}}return r}static parseColumnHeaderGroups(e,t){var r=1,i=new Map,a=new Map,o=t?.filter(c=>{var{children:m}=c;return m.length>0});if(o.length===0)return{groups:[],maxDepth:r,parentMap:i,groupMap:a};var s=new Map(o.map(c=>[c.name,c])),l=new Set,d=c=>{var{name:m}=c;if(e.getColumnIndexByName(m)!=null)throw new Error("Column header group has same name as column: ".concat(m));var v=a.get(m);if(v)return v;var f=[],g=1;c.children.forEach(C=>{if(l.has(C))throw new Error("Column group child ".concat(C," specified in multiple groups"));l.add(C);var b=s.get(C),S=e.getColumnIndexByName(C);if(b){var w=d(b);f.push(...w.childIndexes),g=Math.max(g,w.depth+1)}else if(S!=null)f.push(S),g=Math.max(g,1);else throw new Error("Unknown child ".concat(C," in group ").concat(m))});var p=new Jr(Kn(Kn({},c),{},{depth:g,childIndexes:f.flat()}));return a.set(m,p),c.children.forEach(C=>i.set(C,p)),r=Math.max(r,p.depth+1),p},h=new Set;return o.forEach(c=>{var{name:m}=c;if(h.has(m))throw new Error("Duplicate column group name: ".concat(m));h.add(m),d(c)}),a.forEach(c=>{var m;c.setParent((m=i.get(c.name))===null||m===void 0?void 0:m.name)}),{groups:[...a.values()],maxDepth:r,groupMap:a,parentMap:i}}static convertValueToText(e,t){if(t!=null&&j.isCharType(t)&&e!=null&&typeof e=="number")return String.fromCharCode(e);if(j.isDateType(t)&&AF(e)){var r=new Date(e.asDate()),i=r.getTimezoneOffset(),a=new Date(r.getTime()-i*60*1e3),o=a.toISOString(),s=o.replace("T"," ").substring(0,23);return s}return e==null?"":"".concat(e)}constructor(e){ih(this,"dh",void 0),ih(this,"tableUtils",void 0),this.dh=e,this.tableUtils=new j(e)}dehydrateIrisGridState(e,t){var{aggregationSettings:r={aggregations:ke,showOnTop:!1},advancedFilters:i,customColumnFormatMap:a,isFilterBarShown:o,metrics:s,quickFilters:l,customColumns:d,conditionalFormats:h=ke,reverseType:c,rollupConfig:m=void 0,showSearchBar:v,searchValue:f,selectDistinctColumns:g=ke,selectedSearchColumns:p,sorts:C,invertSearchColumns:b,pendingDataMap:S=Zn,frozenColumns:w,columnHeaderGroups:E}=t;A(s);var{userColumnWidths:T,userRowHeights:P}=s,{columns:D}=e;return{advancedFilters:this.dehydrateAdvancedFilters(D,i),aggregationSettings:r,customColumnFormatMap:[...a],isFilterBarShown:o,quickFilters:Xe.dehydrateQuickFilters(l),sorts:Xe.dehydrateSort(C),userColumnWidths:[...T].filter(O=>{var[R]=O;return R!=null&&R>=0&&R<D.length}).map(O=>{var[R,x]=O;return[D[R].name,x]}),userRowHeights:[...P],customColumns:[...d],conditionalFormats:[...h],reverseType:c,rollupConfig:m,showSearchBar:v,searchValue:f,selectDistinctColumns:[...g],selectedSearchColumns:p,invertSearchColumns:b,pendingDataMap:this.dehydratePendingDataMap(D,S),frozenColumns:w,columnHeaderGroups:E?.map(O=>({name:O.name,children:O.children,color:O.color}))}}hydrateIrisGridState(e,t){var r,i,{advancedFilters:a,aggregationSettings:o={aggregations:[],showOnTop:!1},customColumnFormatMap:s,isFilterBarShown:l,quickFilters:d,sorts:h,customColumns:c,conditionalFormats:m,userColumnWidths:v,userRowHeights:f,reverseType:g,rollupConfig:p=void 0,showSearchBar:C,searchValue:b,selectDistinctColumns:S,selectedSearchColumns:w,invertSearchColumns:E=!0,pendingDataMap:T=[],frozenColumns:P,columnHeaderGroups:D}=t,{columns:O,formatter:R}=e;return{advancedFilters:this.hydrateAdvancedFilters(O,a,R.timeZone),aggregationSettings:o,customColumnFormatMap:new Map(s),isFilterBarShown:l,quickFilters:this.hydrateQuickFilters(O,d,R.timeZone),sorts:this.hydrateSort(O,h),userColumnWidths:new Map(v.map(x=>{var[F,_]=x;return typeof F=="string"||F instanceof String?[O.findIndex(L=>{var{name:M}=L;return M===F}),_]:[F,_]}).filter(x=>{var[F]=x;return F!=null&&F>=0&&F<O.length})),customColumns:c,conditionalFormats:m,userRowHeights:new Map(f),reverseType:g,rollupConfig:p,showSearchBar:C,searchValue:b,selectDistinctColumns:S,selectedSearchColumns:w,invertSearchColumns:E,pendingDataMap:this.hydratePendingDataMap(O,T),frozenColumns:P,columnHeaderGroups:Xe.parseColumnHeaderGroups(e,(r=D??((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[o,s]=a,{text:l}=s,d=null;try{var h=Xe.getColumn(e,o);h!=null&&(d=this.tableUtils.makeQuickFilter(h,l,r))}catch(c){Ao.error("hydrateQuickFilters error with",l,c)}return[o,{text:l,filter:d}]});return new Map(i)}dehydrateAdvancedFilters(e,t){return[...t].map(r=>{var[i,a]=r,o=Xe.getColumn(e,i);A(o);var s=this.dehydrateAdvancedFilterOptions(o,a.options);return[i,{options:s}]})}hydrateAdvancedFilters(e,t,r){var i=t.map(a=>{var[o,s]=a,l=Xe.getColumn(e,o);A(l);var d=this.hydrateAdvancedFilterOptions(l,s.options),h=null;try{var c=Xe.getColumn(e,o);c!=null&&(h=this.tableUtils.makeAdvancedFilter(l,d,r))}catch(m){Ao.error("hydrateAdvancedFilters error with",d,m)}return[o,{options:d,filter:h}]});return new Map(i)}dehydrateAdvancedFilterOptions(e,t){var{selectedValues:r}=t,i=Dv(t,FF);return Kn({selectedValues:r?.map(a=>this.dehydrateValue(a,e?.type))},i)}hydrateAdvancedFilterOptions(e,t){var{selectedValues:r}=t,i=Dv(t,IF);return Kn({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(o=>{var[s,l]=o;return[e[s].name,this.dehydrateValue(l,e[s].type)]})}]})}hydratePendingDataMap(e,t){var r=new Map,i=a=>(r.has(a)||r.set(a,e.findIndex(o=>{var{name:s}=o;return s===a})),r.get(a));return new Map(t.map(a=>{var[o,{data:s}]=a;return[o,{data:new Map(s.map(l=>{var d,[h,c]=l,m=i(h);return A(m),[(d=i(h))!==null&&d!==void 0?d:null,this.hydrateValue(c,e[m].type)]}))}]}))}dehydrateValue(e,t){return j.isDateType(t)?this.dehydrateDateTime(e):j.isLongType(t)?Xe.dehydrateLong(e):e}hydrateValue(e,t){return j.isDateType(t)?this.hydrateDateTime(e):j.isLongType(t)?this.hydrateLong(e):e}dehydrateDateTime(e){return e!=null?this.dh.i18n.DateTimeFormat.format(Ea.FULL_DATE_FORMAT,e):null}hydrateDateTime(e){return e!=null?this.dh.i18n.DateTimeFormat.parse(Ea.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:o,direction:s}=i;if(s===j.sortDirection.reverse)return r.Table.reverse();var l=typeof a=="string"?Xe.getColumnByName(e,a):Xe.getColumn(e,a);if(l!=null){var d=l.sort();return o&&(d=d.abs()),s===j.sortDirection.descending?d=d.desc():d=d.asc(),d}return null}).filter(i=>i!=null&&i.direction!==j.sortDirection.reverse)}applyTableSettings(e,t,r){var{columns:i}=e,a=[];t.quickFilters&&(a=Xe.getFiltersFromFilterMap(this.hydrateQuickFilters(i,t.quickFilters,r)));var o=[];t.advancedFilters&&(o=Xe.getFiltersFromFilterMap(this.hydrateAdvancedFilters(i,t.advancedFilters,r)));var s=this.getFiltersFromInputFilters(i,t.inputFilters,r),l=[];t.sorts&&(l=this.hydrateSort(i,t.sorts));var d=[...a,...o],{partition:h,partitionColumn:c}=t;if(h!=null&&c!=null){var m=Xe.getColumnByName(i,c);if(m){var v=m.filter().eq(this.dh.FilterValue.ofString(h));d=[v,...d]}}d=[...s,...d],e.applyFilter(d),e.applySort(l)}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:o,value:s}=i,l=e.find(d=>{var{name:h,type:c}=d;return h===a&&c===o});if(l)try{return this.tableUtils.makeQuickFilter(l,s,r)}catch(d){Ao.debug("Unable to create input filter",d)}return null}).filter(i=>i!=null)}rangeSetFromRanges(e){var{dh:t}=this,r=e.slice().sort((i,a)=>(A(i.startRow),A(a.startRow),i.startRow-a.startRow)).map(i=>{var{startRow:a,endRow:o}=i;return A(a),A(o),t.RangeSet.ofRange(a,o)});return t.RangeSet.ofRanges(r)}}const ye=Xe;function Yi(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 Or=ae.module("IrisGridCopyHandler");class Ie extends y.Component{static getStatusMessageText(e,t){switch(e){case Ie.COPY_STATES.CONFIRMATION_REQUIRED:return"Are you sure you want to copy ".concat(t.toLocaleString()," rows to your clipboard?");case Ie.COPY_STATES.CLICK_REQUIRED:return"Fetched ".concat(t.toLocaleString()," rows!");case Ie.COPY_STATES.FETCH_ERROR:return"Unable to copy data.";case Ie.COPY_STATES.FETCH_IN_PROGRESS:return"Fetching ".concat(t.toLocaleString()," rows for clipboard...");case Ie.COPY_STATES.DONE:return"Copied to Clipboard!";default:return""}}static getCopyButtonText(e){switch(e){case Ie.BUTTON_STATES.FETCH_IN_PROGRESS:return"Fetching";case Ie.BUTTON_STATES.CLICK_TO_COPY:return"Click to Copy";case Ie.BUTTON_STATES.RETRY:return"Retry";default:return"Copy"}}constructor(e){super(e),Yi(this,"textData",void 0),Yi(this,"hideTimer",void 0),Yi(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:Ie.COPY_STATES.IDLE,buttonState:Ie.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(){Or.debug2("startCopy"),this.stopCopy();var{copyOperation:e}=this.props;if(e==null){Or.debug2("No copy operation set, cancelling out"),this.setState({isShown:!1});return}var{ranges:t,error:r}=e;if(r!=null){Or.debug("Showing copy error",r),this.setState({isShown:!0,copyState:Ie.COPY_STATES.DONE,error:r}),this.startHideTimer();return}var i=ie.rowCount(t);this.setState({rowCount:i,isShown:!0,error:void 0}),i>Ie.NO_PROMPT_THRESHOLD?this.setState({buttonState:Ie.BUTTON_STATES.COPY,copyState:Ie.COPY_STATES.CONFIRMATION_REQUIRED}):this.startFetch()}stopCopy(){this.textData=void 0,this.stopFetch(),this.stopHideTimer()}handleBackgroundClick(){Or.debug2("handleBackgroundClick");var{copyState:e}=this.state;e===Ie.COPY_STATES.DONE&&this.setState({isShown:!1})}handleCancelClick(){Or.debug2("handleCancelClick"),this.stopFetch(),this.setState({isShown:!1})}handleCopyClick(){Or.debug2("handleCopyClick"),this.textData!=null?this.copyText(this.textData):this.startFetch()}handleHideTimeout(){Or.debug2("handleHideTimeout"),this.stopHideTimer(),this.setState({isShown:!1})}copyText(e){Or.debug2("copyText",e),this.textData=e,ws(e).then(()=>{this.setState({copyState:Ie.COPY_STATES.DONE}),this.startHideTimer()},t=>{Or.error("copyText error",t),this.setState({buttonState:Ie.BUTTON_STATES.CLICK_TO_COPY,copyState:Ie.COPY_STATES.CLICK_REQUIRED})})}startFetch(){this.stopFetch(),this.setState({buttonState:Ie.BUTTON_STATES.FETCH_IN_PROGRESS,copyState:Ie.COPY_STATES.FETCH_IN_PROGRESS});var{model:e,copyOperation:t}=this.props,{ranges:r,includeHeaders:i,userColumnWidths:a,movedColumns:o,formatValues:s}=t;Or.debug("startFetch",r);var l=ye.getHiddenColumns(a),d=B.getModelRanges(r,o);if(l.length>0){var h=l.map(ie.makeColumn);d=ie.subtractRangesFromRanges(d,h)}var c=s!=null&&s?(m,v)=>e.displayString(m,v.type,v.name):m=>"".concat(m);this.fetchPromise=Te.makeCancelable(e.textSnapshot(d,i,c)),this.fetchPromise.then(m=>{this.fetchPromise=void 0,this.copyText(m)}).catch(m=>{m instanceof sd?Or.debug("User cancelled copy."):(Or.error("Error fetching contents",m),this.fetchPromise=void 0,this.setState({buttonState:Ie.BUTTON_STATES.RETRY,copyState:Ie.COPY_STATES.FETCH_ERROR}))})}stopFetch(){this.fetchPromise&&(Or.debug2("stopFetch"),this.fetchPromise.cancel(),this.fetchPromise=void 0)}startHideTimer(){this.stopHideTimer(),this.hideTimer=setTimeout(this.handleHideTimeout,Ie.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:o,isShown:s,rowCount:l,error:d}=this.state,h=o===Ie.COPY_STATES.DONE?"fade":"copy-slide-up",c=Ie.getCopyButtonText(a),m=d??Ie.getStatusMessageText(o,l),v=o!==Ie.COPY_STATES.DONE,f=a===Ie.BUTTON_STATES.FETCH_IN_PROGRESS,g=o===Ie.COPY_STATES.DONE;return u.jsxs(Ed,{animation:h,isShown:s,className:J("iris-grid-copy-handler",{"copy-done":g}),onClick:this.handleBackgroundClick,onEntering:e,onEntered:t,onExiting:r,onExited:i,children:[u.jsx("div",{className:"status-message",children:u.jsx("span",{children:m})}),u.jsx(Lr,{in:v,timeout:Ze.transitionMs,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0,children:u.jsxs("div",{className:"buttons-container",children:[u.jsx("button",{type:"button",className:"btn btn-outline-secondary btn-cancel",onClick:this.handleCancelClick,children:"Cancel"}),u.jsxs(G,{kind:f?"tertiary":"primary",className:J("btn-copy",{"btn-spinner":f}),onClick:this.handleCopyClick,disabled:f,children:[f&&u.jsx(kn,{}),c]})]})})]})}}Yi(Ie,"NO_PROMPT_THRESHOLD",1e4);Yi(Ie,"HIDE_TIMEOUT",3e3);Yi(Ie,"COPY_STATES",{IDLE:"IDLE",CONFIRMATION_REQUIRED:"CONFIRMATION_REQUIRED",FETCH_IN_PROGRESS:"FETCH_IN_PROGRESS",FETCH_ERROR:"FETCH_ERROR",CLICK_REQUIRED:"CLICK_REQUIRED",DONE:"DONE"});Yi(Ie,"BUTTON_STATES",{COPY:"COPY",FETCH_IN_PROGRESS:"FETCH_IN_PROGRESS",CLICK_TO_COPY:"CLICK_TO_COPY",RETRY:"RETRY"});Yi(Ie,"defaultProps",{copyOperation:null,onEntering:()=>{},onEntered:()=>{},onExiting:()=>{},onExited:()=>{}});const jF=Ie;function Ol(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=$F(n,"string");return typeof e=="symbol"?e:String(e)}function $F(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 GC extends y.PureComponent{constructor(e){super(e),Ol(this,"inputField",void 0),Ol(this,"initialValue",void 0),Ol(this,"debouncedSendUpdate",void 0);var{debounceMs:t}=e;this.debouncedSendUpdate=tt(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=tt(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 u.jsxs("div",{style:t,className:"iris-grid-input-autosized-wrapper","data-value":a,children:[u.jsx("input",{ref:o=>{this.inputField=o},className:J("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"}),u.jsx("div",{className:"advanced-filter-button-container",children:u.jsx(G,{kind:"ghost",className:J("btn-link-icon advanced-filter-button",{"filter-set":r}),onClick:i,onContextMenu:this.handleContextMenu,children:u.jsxs("div",{className:"fa-layers ",children:[u.jsx(te,{icon:Oh,className:"filter-solid"}),u.jsx(te,{icon:xl,className:"filter-light"})]})})})]})}}Ol(GC,"defaultProps",{style:{},className:"",value:"",isAdvancedFilterSet:!1,onAdvancedFiltersTriggered:()=>{},onChange:()=>{},onDone:()=>{},onTab:()=>{},onContextMenu:()=>{},debounceMs:150});const UF=GC;function BF(n,e,t){return e=VF(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function VF(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 WF extends Fa{constructor(e){super(),BF(this,"irisGrid",void 0),this.irisGrid=e}onDown(e){var{selectedRanges:t}=this.irisGrid.state;return e.key==="c"&&Xi.isModifierKeyDown(e)?(ye.isValidSnapshotRanges(t)?this.irisGrid.copyRanges(t):this.irisGrid.copyRanges(t,!1,!1,"Invalid copy ranges"),!0):!1}}const zF=WF;var KF={TOGGLE_QUICK_FILTER:qe.createAndAdd({id:"TABLE.TOGGLE_QUICK_FILTER",name:"Toggle Quick Filter",shortcut:[we.CTRL,Oe.F],macShortcut:[we.CMD,Oe.F]}),CLEAR_ALL_FILTERS:qe.createAndAdd({id:"TABLE.CLEAR_ALL_FILTERS",name:"Clear All Table Filters",shortcut:[we.CTRL,Oe.E],macShortcut:[we.CMD,Oe.E]}),CLEAR_FILTERS:qe.createAndAdd({id:"TABLE.CLEAR_FILTERS",name:"Clear Active Table Filters",shortcut:[we.CTRL,we.SHIFT,Oe.E],macShortcut:[we.CMD,we.SHIFT,Oe.E]}),REVERSE:qe.createAndAdd({id:"TABLE.REVERSE",name:"Reverse",shortcut:[we.CTRL,Oe.I],macShortcut:[we.CMD,Oe.I]}),TOGGLE_SEARCH:qe.createAndAdd({id:"TABLE.TOGGLE_SEARCH",name:"Toggle Search",shortcut:[we.CTRL,we.SHIFT,Oe.F],macShortcut:[we.CMD,we.SHIFT,Oe.F]}),GOTO_ROW:qe.createAndAdd({id:"TABLE.GOTO_ROW",name:"Go to Row",shortcut:[we.CTRL,Oe.G],macShortcut:[we.CMD,Oe.G]})},YF={COMMIT:qe.createAndAdd({id:"INPUT_TABLE.COMMIT",name:"Commit",shortcut:[we.CTRL,Oe.S],macShortcut:[we.CMD,Oe.S]}),DISCARD:qe.createAndAdd({id:"INPUT_TABLE.DISCARD",name:"Discard",shortcut:[we.CTRL,we.ALT,Oe.S],macShortcut:[we.CMD,we.OPTION,Oe.S]})},qF={TABLE:KF,INPUT_TABLE:YF};const xr=qF;function XF(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 JF extends Fa{constructor(e){super(),XF(this,"irisGrid",void 0),this.irisGrid=e}onDown(e){if(xr.TABLE.REVERSE.matchesEvent(e)){if(!this.irisGrid.isReversible())return!1;var{reverseType:t}=this.irisGrid.state;return t===j.REVERSE_TYPE.NONE?this.irisGrid.reverse(j.REVERSE_TYPE.POST_SORT):this.irisGrid.reverse(j.REVERSE_TYPE.NONE),!0}return!1}}const eI=JF;function tI(n,e,t){return e=rI(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function rI(n){var e=nI(n,"string");return typeof e=="symbol"?e:String(e)}function nI(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 iI extends Fa{constructor(e){super(),tI(this,"irisGrid",void 0),this.irisGrid=e}onDown(e){return xr.TABLE.CLEAR_FILTERS.matchesEvent(e)?(this.irisGrid.clearAllFilters(),!0):!1}}const aI=iI;function oI(n,e,t){return e=sI(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function sI(n){var e=lI(n,"string");return typeof e=="symbol"?e:String(e)}function lI(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 dI extends Pt{constructor(e){super(850),oI(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:o,grid:s,state:l,props:d}=this.irisGrid;if(!s)return null;var{metrics:h}=l,{model:c}=d,{canvasContext:m}=s,v=s.getTheme(),f={context:m,mouseX:t,mouseY:r,metrics:h,model:c,theme:v},{left:g,top:p,width:C,height:b}=o.getCellOverflowButtonPosition(f);return g==null||C==null||p==null||b==null?null:{left:g,top:p,width:C,height:b}}isHoveringOverflowButton(e){var t,{x:r,y:i}=e,{left:a,top:o,width:s,height:l}=(t=this.getButtonPosition(e))!==null&&t!==void 0?t:{};if(a==null||s==null||o==null||l==null)return!1;var{renderer:d,grid:h,state:c,props:m}=this.irisGrid;if(!h)return!1;var{metrics:v}=c,{model:f}=m,{canvasContext:g}=h,p=h.getTheme(),C={context:g,mouseX:r,mouseY:i,metrics:v,model:f,theme:p};return d.shouldRenderOverflowButton(C)&&r>=a&&r<=a+s&&i>=o&&i<=o+l}onMove(e){if(this.isHoveringOverflowButton(e)){var{overflowButtonTooltipProps:t}=this.irisGrid.state,r=this.getButtonPosition(e);ct(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 uI=dI;function hI(n,e,t){return e=cI(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function cI(n){var e=mI(n,"string");return typeof e=="symbol"?e:String(e)}function mI(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 vI extends Pt{constructor(e){super(),hI(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 fI=vI;function gI(n,e,t){return e=pI(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function pI(n){var e=CI(n,"string");return typeof e=="symbol"?e:String(e)}function CI(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 bI extends Pt{constructor(e){super(),gI(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 o=a.popper.current;return o&&i instanceof Element&&o.element.contains(i)||this.hideColumnTooltip(),!1}onMove(e){var{column:t,row:r,columnHeaderDepth:i}=e,{shownColumnTooltip:a}=this.irisGrid.state,o=null;return t!==null&&r===null&&i===0&&(o=t),o!==a&&this.irisGrid.setState({shownColumnTooltip:o}),!1}}const SI=bI;function WC(n,e,t){return e=wI(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function wI(n){var e=yI(n,"string");return typeof e=="symbol"?e:String(e)}function yI(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 Td extends y.Component{constructor(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:Td.defaultProps;super(e),WC(this,"inputRef",void 0),this.handleInputChange=this.handleInputChange.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.inputRef=he.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=ay.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:o}=t;return u.jsxs("div",{className:"form-group flex-grow mb-0",children:[u.jsxs("div",{className:"custom-format-title",children:[u.jsx("span",{className:"icon",children:o}),u.jsxs("label",{className:"title mb-0",htmlFor:"custom-format-input",children:[i,a!=null&&u.jsx(pt,{children:a})]})]}),u.jsx("div",{className:"pl-2 pr-2 pb-2",children:u.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"})})]})}}WC(Td,"defaultProps",{formatString:"",forwardedProps:{menuItem:{},closeMenu(n){},iconElement:null},placeholder:"",title:"",onChange(n){}});const EI=Td;class TI{static isDefaultSelected(e){return!e||![El.TYPE_CONTEXT_CUSTOM,El.TYPE_CONTEXT_PRESET].includes(e.type)}static isCustomSelected(e){return e!=null&&e.type===El.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:u.jsx(EI,{formatString:e.formatString,title:e.label,placeholder:r,onChange:a})}}}const Mr=TI;function rc(n,e,t){return e=PI(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function PI(n){var e=OI(n,"string");return typeof e=="symbol"?e:String(e)}function OI(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 fr{static getOptions(e,t){var r=new Date,i=[{group:fr.dateGroup,formatString:"yyyy-MM-dd"},{group:fr.dateGroup,formatString:"MM-dd-yyyy"},{group:fr.timeGroup,formatString:"HH:mm:ss"},{group:fr.timeGroup,formatString:"HH:mm:ss.SSS"},{group:fr.timeGroup,formatString:"HH:mm:ss.SSSSSSSSS"},{group:fr.dateTimeGroup,formatString:"yyyy-MM-dd HH:mm:ss"},{group:fr.dateTimeGroup,formatString:"yyyy-MM-dd HH:mm:ss.SSS"},{group:fr.dateTimeGroup,formatString:"yyyy-MM-dd HH:mm:ss.SSSSSSSSS"}],a=i.map(s=>{var l=Tt.makeFormat("",s.formatString,Tt.TYPE_CONTEXT_PRESET),d=e.getFormattedString(r,j.dataType.DATETIME,"",l);return Mr.makeOption(d,l,s.group,Tt.isSameFormat(l,t))}),o=Mr.makeOption("Default",null,fr.dateGroup,Mr.isDefaultSelected(t));return[o,...a]}}rc(fr,"dateGroup",10);rc(fr,"timeGroup",20);rc(fr,"dateTimeGroup",30);const DI=fr;function Pd(n,e,t){return e=RI(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function RI(n){var e=NI(n,"string");return typeof e=="symbol"?e:String(e)}function NI(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 ir{static getOptions(e,t,r){var i=[{format:Je.FORMAT_PERCENT,group:ir.presetGroup},{format:Je.FORMAT_BASIS_POINTS,group:ir.presetGroup},{format:Je.FORMAT_MILLIONS,group:ir.presetGroup},{format:Je.FORMAT_SCIENTIFIC_NOTATION,group:ir.presetGroup},{format:Je.FORMAT_ROUND,group:ir.presetRoundGroup},{format:Je.FORMAT_ROUND_TWO_DECIMALS,group:ir.presetRoundGroup},{format:Je.FORMAT_ROUND_FOUR_DECIMALS,group:ir.presetRoundGroup}],a=Mr.makeOption("Default",null,ir.defaultGroup,Mr.isDefaultSelected(t)),o=i.map(h=>Mr.makeOption(h.format.label,h.format,h.group,Je.isSameFormat(h.format,t))),s=Mr.isCustomSelected(t),l=s?t:Je.makeCustomFormat(),d=Mr.makeCustomFormatOption(l,ir.customGroup,Je.DEFAULT_FORMAT_STRING,s,h=>{if(h!=null){var c=Je.makeCustomFormat(h);Je.isValid(e,c)&&r(c)}else r(null)});return[a,...o,d]}}Pd(ir,"defaultGroup",10);Pd(ir,"presetGroup",20);Pd(ir,"presetRoundGroup",30);Pd(ir,"customGroup",40);const FI=ir;function nc(n,e,t){return e=II(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function II(n){var e=_I(n,"string");return typeof e=="symbol"?e:String(e)}function _I(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 ri{static getOptions(e,t,r){var i=[{format:Et.FORMAT_MILLIONS,group:ri.presetGroup},{format:Et.FORMAT_SCIENTIFIC_NOTATION,group:ri.presetGroup}],a=Mr.makeOption("Default",null,ri.defaultGroup,Mr.isDefaultSelected(t)),o=i.map(h=>Mr.makeOption(h.format.label,h.format,h.group,Et.isSameFormat(h.format,t))),s=Mr.isCustomSelected(t),l=s?t:Et.makeCustomFormat(),d=Mr.makeCustomFormatOption(l,ri.customGroup,Et.DEFAULT_FORMAT_STRING,s,h=>{if(h!=null){var c=Et.makeCustomFormat(h);Et.isValid(e,c)&&r(c)}else r(null)});return[a,...o,d]}}nc(ri,"defaultGroup",10);nc(ri,"presetGroup",20);nc(ri,"customGroup",30);const xI=ri;function Nv(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 Fv(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Nv(Object(t),!0).forEach(function(r){kr(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Nv(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function kr(n,e,t){return e=MI(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function MI(n){var e=AI(n,"string");return typeof e=="symbol"?e:String(e)}function AI(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 Iv=ae.module("IrisGridContextMenuHandler"),LI=150,_v="yyyy-MM-dd HH:mm:ss.SSSSSSSSS";class q extends Pt{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(An.truncate(t,r-e.length-3),'"')}constructor(e,t){super(),kr(this,"irisGrid",void 0),kr(this,"debouncedUpdateCustomFormat",void 0),kr(this,"dh",void 0),this.debouncedUpdateCustomFormat=tt(e.handleFormatSelection,LI),this.dh=t,this.irisGrid=e}componentWillUnmount(){this.debouncedUpdateCustomFormat.flush()}getHeaderActions(e,t){var{irisGrid:r}=this,{column:i}=t;A(i);var{model:a}=r.props,{columns:o}=a,s=o[e],l=[],{metrics:d,reverseType:h,quickFilters:c,advancedFilters:m,searchFilter:v}=r.state,f=r.getTheme();A(d);var{filterIconColor:g,filterBarActiveColor:p,contextMenuSortIconColor:C,contextMenuReverseIconColor:b}=f,S=a.sort,w=j.getSortForColumn(S,s.name),E=h!==j.REVERSE_TYPE.NONE,{userColumnWidths:T}=d,P=[...T.values()].some(F=>F===0),D=a.getColumnHeaderParentGroup(e,0)===void 0&&!(ze(a)&&a.hasExpandableRows),O=a.isColumnFrozen(e),R=a.isColumnSortable(e);if(l.push({title:"Hide Column",group:q.GROUP_HIDE_COLUMNS,action:()=>{this.irisGrid.hideColumnByVisibleIndex(i)}}),l.push({title:O?"Unfreeze Column":"Freeze Column",group:q.GROUP_HIDE_COLUMNS,disabled:!D,action:()=>{O?this.irisGrid.unFreezeColumnByColumnName(s.name):this.irisGrid.freezeColumnByColumnName(s.name)},order:10}),l.push({title:"Show All Columns",group:q.GROUP_HIDE_COLUMNS,action:()=>{this.irisGrid.showAllColumns()},disabled:!P}),l.push({title:"Quick Filters",icon:Vn,iconColor:p,shortcut:xr.TABLE.TOGGLE_QUICK_FILTER,group:q.GROUP_FILTER,order:10,action:()=>{this.irisGrid.toggleFilterBar(i)}}),l.push({title:"Advanced Filters",icon:m.get(e)?Oh:xl,iconColor:g,group:q.GROUP_FILTER,order:20,action:()=>{this.irisGrid.handleAdvancedMenuOpened(i)}}),l.push({title:"Clear Table Filters",group:q.GROUP_FILTER,order:40,shortcut:xr.TABLE.CLEAR_FILTERS,action:()=>{this.irisGrid.clearAllFilters()},disabled:!(c.size>0||m.size>0||v!=null)}),l.push({title:"Sort by",icon:Vn,iconColor:C,group:q.GROUP_SORT,order:10,actions:this.sortByActions(s,e,w),disabled:!R}),l.push({title:"Add Additional Sort",disabled:w&&S.length===1||E&&S.length===1||w&&E&&S.length===2||S.length===0||!R,group:q.GROUP_SORT,order:20,actions:this.additionalSortActions(s,e)}),l.push({title:"Clear Table Sorting",disabled:S.length===0||E&&S.length===1,group:q.GROUP_SORT,action:()=>{this.irisGrid.sortColumn(i,q.COLUMN_SORT_DIRECTION.none)},order:30}),l.push({title:h===j.REVERSE_TYPE.NONE?"Reverse Table":"Clear Reverse Table",icon:Vn,iconColor:b,group:q.GROUP_SORT,order:40,disabled:!a.isReversible,shortcut:xr.TABLE.REVERSE,action:()=>{h===j.REVERSE_TYPE.NONE?this.irisGrid.reverse(j.REVERSE_TYPE.POST_SORT):this.irisGrid.reverse(j.REVERSE_TYPE.NONE)}}),l.push({title:"Copy Column Name",group:q.GROUP_COPY,action:()=>{var F;ws((F=a.textForColumnHeader(e))!==null&&F!==void 0?F:"").catch(_=>Iv.error("Unable to copy header",_))}}),j.isDateType(s.type))l.push({title:"Date/Time Format",group:q.GROUP_FORMAT,actions:this.dateFormatActions(s)});else if(j.isNumberType(s.type)){var x;l.push({title:"Number Format",group:q.GROUP_FORMAT,actions:(x=this.numberFormatActions(s))!==null&&x!==void 0?x:void 0})}return l}getCellActions(e,t,r){A(e);var{dh:i,irisGrid:a}=this,{column:o,row:s}=r,{model:l,canCopy:d}=a.props,{columns:h}=l,c=a.getModelRow(s);A(c);var m=l.valueForCell(e,c),v=l.textForCell(e,c),f=h[e],g=[],{quickFilters:p}=a.state,C=a.getTheme(),{filterIconColor:b}=C,{settings:S}=a.props,w=new Tt(i,{timeZone:S?.timeZone,showTimeZone:!1,showTSeparator:!0,defaultDateTimeFormatString:_v}),E=new Tt(i,{timeZone:S?.timeZone,showTimeZone:S?.showTimeZone,showTSeparator:S?.showTSeparator,defaultDateTimeFormatString:_v});if(f==null||s==null)return g;if(l.isFilterable(e)){var T={title:"Filter by Value",icon:Vn,iconColor:b,group:q.GROUP_FILTER,order:10,actions:[]};if(m==null)p.get(e)&&T.actions.push({title:"And",actions:this.nullFilterActions(f,p.get(e),"&&"),order:2,group:oe.groups.high}),T.actions.push(...this.nullFilterActions(f));else if(m==="")p.get(e)&&T.actions.push({title:"And",actions:this.emptyStringFilterActions(f,p.get(e),"&&"),order:2,group:oe.groups.high}),T.actions.push(...this.emptyStringFilterActions(f));else if(j.isBooleanType(f.type))p.get(e)&&T.actions.push({title:"Or",actions:this.booleanFilterActions(f,v,p.get(e),"||"),order:2,group:oe.groups.high}),T.actions.push(...this.booleanFilterActions(f,v));else if(j.isNumberType(f.type)||j.isCharType(f.type)){A(e);var P=j.isCharType(f.type)?String.fromCharCode(m):"".concat(m);p.get(e)&&T.actions.push({title:"And",actions:this.numberFilterActions(f,P,m,p.get(e),"&&"),order:2,group:oe.groups.high}),T.actions.push(...this.numberFilterActions(f,P,m,p.get(e)))}else if(j.isDateType(f.type)){var D=w.format(m),O=E.format(m);p.get(e)&&T.actions.push({title:"And",actions:this.dateFilterActions(f,D,O,m,p.get(e),"&&"),order:2,group:oe.groups.high}),T.actions.push(...this.dateFilterActions(f,D,O,m,p.get(e)))}else p.get(e)&&T.actions.push({title:"And",actions:this.stringFilterActions(f,v,m,p.get(e),"&&"),order:2,group:oe.groups.high}),T.actions.push(...this.stringFilterActions(f,v,m));T.actions!=null&&T.actions.length>0&&g.push(T)}if(ze(l)&&l.isRowExpandable(c)){var R=l.groupedColumns.length>0?l.depthForRow(c)-1:0,x=l.valueForCell(R,c),F=x==null?"null":l.textForCell(R,c);g.push({title:q.getRowOptionFormatted(l.isRowExpanded(c)?"Collapse":"Expand",F),group:q.GROUP_EXPAND_COLLAPSE,order:10,action:()=>{l.setRowExpanded(c,!l.isRowExpanded(c))}}),l.isExpandAllAvailable===!0&&g.push({title:q.getRowOptionFormatted("Expand All in",F),group:q.GROUP_EXPAND_COLLAPSE,order:20,action:()=>{l.setRowExpanded(c,!0,!0)}})}ze(l)&&l.hasExpandableRows&&l.isExpandAllAvailable===!0&&(g.push({title:"Expand Entire Table",group:q.GROUP_EXPAND_COLLAPSE,order:30,action:()=>{l.expandAll()}}),g.push({title:"Collapse Entire Table",group:q.GROUP_EXPAND_COLLAPSE,order:40,action:()=>{l.collapseAll()}}));var _={title:"Go to",iconColor:b,shortcut:xr.TABLE.GOTO_ROW,group:q.GROUP_GOTO,order:10,action:()=>this.irisGrid.toggleGotoRow("".concat(s+1),"".concat(m),f.name)};return g.push(_),d&&(g.push({title:"Copy Cell",group:q.GROUP_COPY,order:10,action:()=>{a.copyCell(o,s)}}),g.push({title:"Copy Cell Unformatted",group:q.GROUP_COPY,order:20,action:()=>{a.copyCell(o,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 j.isCharType(e)?r.FilterValue.ofString(String.fromCharCode(t)):r.FilterValue.ofNumber(t)}onContextMenu(e,t,r){var{irisGrid:i}=this,{y:a,column:o,row:s,columnHeaderDepth:l}=e,d=i.getModelColumn(o),h=i.getModelRow(s),{model:c,canCopy:m}=i.props,{columns:v}=c,{metrics:f,isFilterBarShown:g,quickFilters:p,advancedFilters:C,selectedRanges:b}=i.state;A(f);var{columnHeaderHeight:S,gridY:w,columnHeaderMaxDepth:E}=f,T=[];if(d!=null&&h!=null){var P=c.valueForCell(d,h),D=c.textForCell(d,h),O=v[d],{onContextMenu:R}=i.props;O!=null&&T.push(...R({model:c,value:P,valueText:D,column:O,rowIndex:s,columnIndex:o,modelRow:h,modelColumn:d}))}return d!=null&&c.isFilterable(d)&&T.push({title:"Clear Column Filter",group:q.GROUP_FILTER,order:30,action:()=>{this.irisGrid.removeColumnFilter(d)},disabled:!(p.has(d)||C.has(d))}),(g?a<=w:a<=S*E&&l===0)?d!=null&&T.push(...this.getHeaderActions(d,e)):(d!=null&&h!=null&&T.push(...this.getCellActions(d,t,e)),m&&b.length>0&&(T.push({title:"Copy Selection",shortcut:ui.COPY,group:q.GROUP_COPY,order:30,action:()=>{i.copyRanges(b)}}),T.push({title:"Copy Selection w/ Headers",group:q.GROUP_COPY,order:40,action:()=>{i.copyRanges(b,!0)}})),it(c)&&c.isEditable&&b.length>0&&T.push({title:"Delete Selected Rows",group:q.GROUP_EDIT,order:50,action:()=>{this.irisGrid.deleteRanges(b)}})),T.length===0?!1:(A(i.gridWrapper),oe.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),o=DI.getOptions(i,a),s=[],l=function(){var{description:c,format:m,group:v,isSelected:f,title:g}=o[d];s.push({title:g,description:c,icon:f?ii:void 0,group:v,order:d,action:()=>{var p=r.getColumnIndexByName(e.name);A(p),t.irisGrid.handleFormatSelection(p,m)}})},d=0;d<o.length;d+=1)l();return s}numberFormatActions(e){var t=this,{model:r}=this.irisGrid.props,{formatter:i}=r,{dh:a}=this,o=i.getColumnFormat(e.type,e.name),s,l=r.getColumnIndexByName(e.name);if(j.isDecimalType(e.type))s=FI.getOptions(a,o,m=>{A(l),this.debouncedUpdateCustomFormat(l,m)});else if(j.isIntegerType(e.type))s=xI.getOptions(a,o,m=>{A(l),this.debouncedUpdateCustomFormat(l,m)});else return Iv.error("Invalid column type in numberFormatActions"),null;for(var d=[],h=function(){var{format:v,isSelected:f}=s[c];d.push(Fv(Fv({},s[c]),{},{icon:f?ii:void 0,order:c,action:()=>{l===void 0&&v&&v.type===El.TYPE_CONTEXT_CUSTOM||(A(l),t.irisGrid.handleFormatSelection(l,v))}}))},c=0;c<s.length;c+=1)h();return d}stringFilterActions(e,t,r,i,a){var{dh:o}=this,s=o.FilterValue.ofString(r),l=i;l||(l={filter:null,text:null});var{filter:d,text:h}=l,c=[],{model:m}=this.irisGrid.props,v=m.getColumnIndexByName(e.name),f=j.escapeQuickTextFilter(t);return A(v),c.push({menuElement:u.jsxs("div",{className:"iris-grid-filter-menu-item-value",children:[a?q.getOperatorAsText(a):""," ",'"',t,'"']}),order:1,group:oe.groups.high}),c.push({title:"text is exactly",description:"Show only rows where ".concat(e.name," is ").concat(r," (case sensitive)"),action:()=>{this.irisGrid.setQuickFilter(v,q.getQuickFilterCondition(d,e.filter().eq(s),a),q.getQuickFilterText(h,"".concat(f),a))},order:10,group:oe.groups.low}),c.push({title:"text is not exactly",description:"Show only rows where ".concat(e.name," is not ").concat(t," (case sensitive)"),action:()=>{this.irisGrid.setQuickFilter(v,q.getQuickFilterCondition(d,e.filter().notEq(s),a),q.getQuickFilterText(h,"!=".concat(f),a))},order:20,group:oe.groups.low}),c.push({title:"text contains",description:"Show only rows where ".concat(e.name," contains ").concat(t),action:()=>{this.irisGrid.setQuickFilter(v,q.getQuickFilterCondition(d,e.filter().isNull().not().and(e.filter().contains(s)),a),q.getQuickFilterText(h,"~".concat(f),a))},order:30,group:oe.groups.low}),c.push({title:"text does not contain",description:"Show only rows where ".concat(e.name," does not contain ").concat(r),action:()=>{this.irisGrid.setQuickFilter(v,q.getQuickFilterCondition(d,e.filter().isNull().or(e.filter().contains(s).not()),a),q.getQuickFilterText(h,"!~".concat(f),a))},order:40,group:oe.groups.low}),c.push({title:"text starts with",description:"Show only rows where ".concat(e.name," starts with ").concat(t),action:()=>{this.irisGrid.setQuickFilter(v,q.getQuickFilterCondition(d,e.filter().isNull().not().and(e.filter().invoke("startsWith",s)),a),q.getQuickFilterText(h,"".concat(f,"*"),a))},order:50,group:oe.groups.low}),c.push({title:"text ends with",description:"Show only rows where ".concat(e.name," ends with ").concat(t),action:()=>{this.irisGrid.setQuickFilter(v,q.getQuickFilterCondition(d,e.filter().isNull().not().and(e.filter().invoke("endsWith",s)),a),q.getQuickFilterText(h,"*".concat(f),a))},order:60,group:oe.groups.low}),c}numberFilterActions(e,t,r,i,a){var o=this.getFilterValueForNumberOrChar(e.type,r),s=null,l=null;i&&(s=i.filter,l=i.text);var d=[],h=r!==Number.POSITIVE_INFINITY&&r!==Number.NEGATIVE_INFINITY&&!Number.isNaN(r),{model:c}=this.irisGrid.props,m=c.getColumnIndexByName(e.name);return A(m),d.push({menuElement:u.jsxs("div",{className:"iris-grid-filter-menu-item-value",children:[a?q.getOperatorAsText(a):""," ",'"',t,'"']}),order:1,group:oe.groups.high}),d.push({title:"is equal to",description:"Show only rows where ".concat(e.name," is ").concat(t),action:()=>{var v=this.getNumberValueEqualsFilter(e,r);this.irisGrid.setQuickFilter(m,q.getQuickFilterCondition(s,v,a),q.getQuickFilterText(l,"=".concat(t),a))},order:10,group:oe.groups.low}),d.push({title:"is not equal to",description:"Show only rows where ".concat(e.name," is not ").concat(t),action:()=>{var v=this.getNumberValueEqualsFilter(e,r).not();this.irisGrid.setQuickFilter(m,q.getQuickFilterCondition(s,v,a),q.getQuickFilterText(l,"!=".concat(t),a))},order:20,group:oe.groups.low}),h&&!j.isCharType(e.type)&&(d.push({title:"greater than",description:"Show only rows where ".concat(e.name," is greater than ").concat(t),action:()=>{this.irisGrid.setQuickFilter(m,q.getQuickFilterCondition(s,e.filter().greaterThan(o),a),q.getQuickFilterText(l,">".concat(t),a))},order:30,group:oe.groups.low}),d.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(m,q.getQuickFilterCondition(s,e.filter().greaterThanOrEqualTo(o),a),q.getQuickFilterText(l,">=".concat(t),a))},order:40,group:oe.groups.low}),d.push({title:"less than",description:"Show only rows where ".concat(e.name," is less than ").concat(t),action:()=>{this.irisGrid.setQuickFilter(m,q.getQuickFilterCondition(s,e.filter().lessThan(o),a),q.getQuickFilterText(l,"<".concat(t),a))},order:50,group:oe.groups.low}),d.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(m,q.getQuickFilterCondition(s,e.filter().lessThanOrEqualTo(o),a),q.getQuickFilterText(l,"<=".concat(t),a))},order:60,group:oe.groups.low})),d}booleanFilterActions(e,t,r,i){var a=[],{model:o}=this.irisGrid.props,{filter:s,text:l}=r||{},d=o.getColumnIndexByName(e.name);return A(d),a.push({menuElement:u.jsxs("div",{className:"iris-grid-filter-menu-item-value",children:[i?q.getOperatorAsText(i):""," ",'"',t??"null",'"']}),order:1,group:oe.groups.high}),a.push({title:"true",description:"Show only rows where ".concat(e.name," is true"),action:()=>{this.irisGrid.setQuickFilter(d,q.getQuickFilterCondition(s,e.filter().isTrue(),i),q.getQuickFilterText(l,"true",i))},order:10,group:oe.groups.low}),a.push({title:"false",description:"Show only rows where ".concat(e.name," is false"),action:()=>{this.irisGrid.setQuickFilter(d,q.getQuickFilterCondition(s,e.filter().isFalse(),i),q.getQuickFilterText(l,"false",i))},order:20,group:oe.groups.low}),a.push({title:"is null",description:"Show only rows where ".concat(e.name," is null"),action:()=>{this.irisGrid.setQuickFilter(d,q.getQuickFilterCondition(s,e.filter().isNull(),i),q.getQuickFilterText(l,"null",i))},order:30,group:oe.groups.low}),a.push({title:"is not null",description:"Show only rows where ".concat(e.name," is not null"),action:()=>{this.irisGrid.setQuickFilter(d,q.getQuickFilterCondition(s,e.filter().isNull().not(),i),q.getQuickFilterText(l,"!null",i))},order:40,group:oe.groups.low}),a}dateFilterActions(e,t,r,i,a,o){var{dh:s}=this,l=s.FilterValue.ofNumber(i),d=null,h=null;a&&(d=a.filter,h=a.text);var{model:c}=this.irisGrid.props,m=c.getColumnIndexByName(e.name);A(m);var v=[];return v.push({menuElement:u.jsxs("div",{className:"iris-grid-filter-menu-item-value",children:[o?q.getOperatorAsText(o):""," ",'"',r,'"']}),order:1,group:oe.groups.high}),v.push({title:"date is",description:"Show only rows where ".concat(e.name," is ").concat(r),action:()=>{this.irisGrid.setQuickFilter(m,q.getQuickFilterCondition(d,e.filter().eq(l),o),q.getQuickFilterText(h,"=".concat(t),o))},order:10,group:oe.groups.low}),v.push({title:"date is not",description:"Show only rows where ".concat(e.name," is not ").concat(r),action:()=>{this.irisGrid.setQuickFilter(m,q.getQuickFilterCondition(d,e.filter().notEq(l),o),q.getQuickFilterText(h,"!=".concat(t),o))},order:20,group:oe.groups.low}),v.push({title:"date is before",description:"Show only rows where ".concat(e.name," is before ").concat(r),action:()=>{this.irisGrid.setQuickFilter(m,q.getQuickFilterCondition(d,e.filter().lessThan(l),o),q.getQuickFilterText(h,"<".concat(t),o))},order:30,group:oe.groups.low}),v.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(m,q.getQuickFilterCondition(d,e.filter().lessThanOrEqualTo(l),o),q.getQuickFilterText(h,"<=".concat(t),o))},order:40,group:oe.groups.low}),v.push({title:"date is after",description:"Show only rows where ".concat(e.name," is greater than ").concat(r),action:()=>{this.irisGrid.setQuickFilter(m,q.getQuickFilterCondition(d,e.filter().greaterThan(l),o),q.getQuickFilterText(h,">".concat(t),o))},order:50,group:oe.groups.low}),v.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(m,q.getQuickFilterCondition(d,e.filter().greaterThanOrEqualTo(l),o),q.getQuickFilterText(h,">=".concat(t),o))},order:60,group:oe.groups.low}),v}emptyStringFilterActions(e,t,r){var{dh:i}=this,a=i.FilterValue.ofString(""),o=t;o||(o={filter:null,text:null});var{filter:s,text:l}=o,d=[],{model:h}=this.irisGrid.props,c=h.getColumnIndexByName(e.name);return A(c),d.push({menuElement:u.jsxs("div",{className:"iris-grid-filter-menu-item-value",children:[r?q.getOperatorAsText(r):""," ",u.jsx("i",{className:"text-muted",children:"empty"})]}),order:1,group:oe.groups.high}),d.push({title:"is empty string",description:"Show only rows where ".concat(e.name," is empty"),action:()=>{this.irisGrid.setQuickFilter(c,q.getQuickFilterCondition(s,e.filter().eq(a),r),q.getQuickFilterText(l,"=",r))},order:10,group:oe.groups.low}),d.push({title:"is not empty string",description:"Show only rows where ".concat(e.name," is not empty"),action:()=>{this.irisGrid.setQuickFilter(c,q.getQuickFilterCondition(s,e.filter().notEq(a),r),q.getQuickFilterText(l,"!=",r))},order:20,group:oe.groups.low}),d}nullFilterActions(e,t,r){var i=null,a=null;t&&(i=t.filter,a=t.text);var o=[],{model:s}=this.irisGrid.props,l=s.getColumnIndexByName(e.name);return A(l),o.push({menuElement:u.jsxs("div",{className:"iris-grid-filter-menu-item-value",children:[r?q.getOperatorAsText(r):""," ",u.jsx("i",{className:"text-muted",children:"null"})]}),order:1,group:oe.groups.high}),o.push({title:"is null",description:"Show only rows where ".concat(e.name," is null"),action:()=>{this.irisGrid.setQuickFilter(l,q.getQuickFilterCondition(i,e.filter().isNull(),r),q.getQuickFilterText(a,"null",r))},order:10,group:oe.groups.low}),o.push({title:"is not null",description:"Show only rows where ".concat(e.name," is not null"),action:()=>{this.irisGrid.setQuickFilter(l,q.getQuickFilterCondition(i,e.filter().isNull().not(),r),q.getQuickFilterText(a,"!null",r))},order:20,group:oe.groups.low}),o}sortByActions(e,t,r){var i=this.irisGrid.getTheme(),{contextMenuSortIconColor:a}=i,o=[{title:"".concat(e.name," Ascending"),order:10,action:()=>{this.irisGrid.sortColumn(t,q.COLUMN_SORT_DIRECTION.ascending)},icon:this.checkColumnSort(r,q.COLUMN_SORT_DIRECTION.ascending)?Vn:void 0,iconColor:a},{title:"".concat(e.name," Descending"),order:20,action:()=>{this.irisGrid.sortColumn(t,q.COLUMN_SORT_DIRECTION.descending)},icon:this.checkColumnSort(r,q.COLUMN_SORT_DIRECTION.descending)?Vn:void 0,iconColor:a},{title:"Remove Sort",order:50,action:()=>{this.irisGrid.sortColumn(t,q.COLUMN_SORT_DIRECTION.none,!1,!0)},disabled:!r}];return j.isNumberType(e.type)&&(o.push({title:"ABS(".concat(e.name,") Ascending"),order:30,action:()=>{this.irisGrid.sortColumn(t,q.COLUMN_SORT_DIRECTION.ascending,!0)},icon:this.checkColumnSort(r,q.COLUMN_SORT_DIRECTION.ascending,!0)?Vn:void 0,iconColor:a}),o.push({title:"ABS(".concat(e.name,") Descending"),order:40,action:()=>{this.irisGrid.sortColumn(t,q.COLUMN_SORT_DIRECTION.descending,!0)},icon:this.checkColumnSort(r,q.COLUMN_SORT_DIRECTION.descending,!0)?Vn:void 0,iconColor:a})),o}additionalSortActions(e,t){var r=this.irisGrid.getTheme(),{contextMenuSortIconColor:i}=r,a=[{title:"Add Sort By",menuElement:u.jsxs("div",{className:"btn-context-menu menu-title",children:[u.jsx("span",{className:"icon",children:u.jsx(te,{icon:Vn,style:{color:i??void 0}})}),u.jsx("span",{className:"title",children:"Add Additional Sort"}),u.jsx("span",{className:"shortcut",children:Xi.isMacPlatform()?"⌘Click":"Ctrl+Click"})]}),order:1},{title:"".concat(e.name," Ascending"),order:10,action:()=>{this.irisGrid.sortColumn(t,q.COLUMN_SORT_DIRECTION.ascending,!1,!0)}},{title:"".concat(e.name," Descending"),order:20,action:()=>{this.irisGrid.sortColumn(t,q.COLUMN_SORT_DIRECTION.descending,!1,!0)}}];return j.isNumberType(e.type)&&(a.push({title:"ABS(".concat(e.name,") Ascending"),order:30,action:()=>{this.irisGrid.sortColumn(t,q.COLUMN_SORT_DIRECTION.ascending,!0,!0)}}),a.push({title:"ABS(".concat(e.name,") Descending"),order:40,action:()=>{this.irisGrid.sortColumn(t,q.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}}kr(q,"GROUP_EDIT",oe.groups.high+10);kr(q,"GROUP_HIDE_COLUMNS",oe.groups.high+25);kr(q,"GROUP_FILTER",oe.groups.high+50);kr(q,"GROUP_EXPAND_COLLAPSE",oe.groups.high+55);kr(q,"GROUP_GOTO",oe.groups.high+60);kr(q,"GROUP_SORT",oe.groups.high+75);kr(q,"GROUP_COPY",oe.groups.high+100);kr(q,"GROUP_FORMAT",oe.groups.high+150);kr(q,"COLUMN_SORT_DIRECTION",{ascending:"ASC",descending:"DESC",none:null});const kI=q;function jI(n,e,t){return e=HI(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function HI(n){var e=$I(n,"string");return typeof e=="symbol"?e:String(e)}function $I(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 Pt{constructor(e){super(),jI(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 BI=UI;function VI(n,e,t){return e=GI(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function GI(n){var e=WI(n,"string");return typeof e=="symbol"?e:String(e)}function WI(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 zI extends Pt{constructor(e){super(),VI(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:o}=this.irisGrid.state;if(!o)throw new Error("Metrics not set");var{columnHeaderMaxDepth:s}=o,l=this.irisGrid.getTheme();if(a&&l.columnHeaderHeight!=null&&l.filterBarHeight!=null&&t>l.columnHeaderHeight*s&&t<=l.columnHeaderHeight*s+l.filterBarHeight)return this.irisGrid.focusFilterBar(r),!0}return!1}onMove(e){var{y:t,column:r}=e,{isFilterBarShown:i,hoverAdvancedFilter:a,metrics:o}=this.irisGrid.state;if(!o)throw new Error("Metrics not set");var{columnHeaderMaxDepth:s}=o,l=this.irisGrid.getTheme(),d=null;return i&&l.columnHeaderHeight!=null&&l.filterBarHeight!=null&&r!==null&&t>=l.columnHeaderHeight*s&&t<=l.columnHeaderHeight*s+l.filterBarHeight&&(d=r),d!==a&&this.irisGrid.setState({hoverAdvancedFilter:d}),!1}onLeave(e){var{column:t}=e,{hoverAdvancedFilter:r}=this.irisGrid.state;return r!==null&&t!==r&&this.irisGrid.setState({hoverAdvancedFilter:null}),!1}}const KI=zI;function YI(n,e,t){return e=qI(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function qI(n){var e=XI(n,"string");return typeof e=="symbol"?e:String(e)}function XI(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 QI extends Pt{constructor(e){super(750),YI(this,"irisGrid",void 0),this.irisGrid=e}destroyTooltip(){this.irisGrid.setState({expandCellTooltipProps:null})}setCursor(e,t){return th.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:o,grid:s,state:l,props:d}=this.irisGrid;if(!s)return null;var{metrics:h}=l,{model:c}=d,{canvasContext:m}=s,v=s.getTheme(),f={context:m,mouseX:t,mouseY:r,metrics:h,model:c,theme:v},g=ze(c)?c.depthForRow(a):null,{left:p,top:C,width:b,height:S}=o.getExpandButtonPosition(f,g);return p==null||b==null||C==null||S==null?null:{left:p,top:C,width:b,height:S}}onMove(e,t){if(th.isInTreeBox(e,t)){var{expandCellTooltipProps:r}=this.irisGrid.state,{model:i}=this.irisGrid.props,a=this.getButtonPosition(e),{row:o}=e;A(o);var s=ze(i)&&i.isRowExpanded(o);ct(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 ZI=QI;function xv(n,e,t){return e=JI(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function JI(n){var e=e_(n,"string");return typeof e=="symbol"?e:String(e)}function e_(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 t_ extends Pt{constructor(e){super(),xv(this,"irisGrid",void 0),xv(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=Xi.isModifierKeyDown(r);return this.irisGrid.toggleSort(i,a),!0}return!1}}const r_=t_;class n_ extends Pt{constructor(e){super(),this.irisGrid=e}onWheel(e,t,r){var{irisGrid:i}=this,{model:a}=i.props,{metrics:o,pendingRowCount:s}=i.state;A(o);var{bottom:l,rowCount:d,rowHeight:h}=o,{deltaY:c}=B.getScrollDelta(r);return it(a)&&a.isEditable&&l>=d-1&&c>0&&i.setState({pendingRowCount:s+Math.ceil(c/h)}),!1}}const i_=n_;function Mv(n,e,t){return e=a_(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function a_(n){var e=o_(n,"string");return typeof e=="symbol"?e:String(e)}function o_(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 Pt{constructor(e){super(),Mv(this,"irisGrid",void 0),Mv(this,"currentLinkBox",void 0),this.irisGrid=e}destroyTooltip(){this.irisGrid.setState({linkHoverTooltipProps:null})}isHoveringLink(e,t){var{column:r,row:i,x:a,y:o}=e,{renderer:s,metrics:l,props:d}=t,{model:h}=d;if(r==null||i==null||l==null)return this.currentLinkBox=void 0,!1;var{modelRows:c,modelColumns:m}=l,v=$(c,i),f=$(m,r),g=h.renderTypeForCell(f,v),p=s.getCellRenderer(g);if(!jC(p))return!1;if(this.currentLinkBox!=null){var{x1:C,y1:b,x2:S,y2:w}=this.currentLinkBox;if(a>=C&&a<=S&&o>=b&&o<=w)return!0}for(var E=t.updateRenderState(),T=p.getTokenBoxesForVisibleCell(r,i,E),P=0;P<T.length;P+=1)if(Vl(T[P].token)){var D=B.translateTokenBox(T[P],l),{x1:O,x2:R,y1:x,y2:F}=D;if(a>=O&&a<=R&&o>=x&&o<=F)return this.currentLinkBox=D,!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&&Vl(this.currentLinkBox.token)){var{linkHoverTooltipProps:i}=this.irisGrid.state;if(this.currentLinkBox==null)return!1;var{x1:a,y1:o,x2:s,y2:l}=this.currentLinkBox,{href:d}=this.currentLinkBox.token,h=s-a,c=l-o,m={left:a,top:o+1,width:h,height:c};ct(i,m)||this.irisGrid.setState({linkHoverTooltipProps:m,linkHoverDisplayValue:d})}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 l_=s_;var d_=3e3;function u_(n){var{children:e=null,onEntering:t,onEntered:r,onExiting:i,onExited:a}=n,[o,s]=y.useState(!1),l=y.useRef(),d=Ih(e),h=y.useCallback(()=>{s(!0),l.current&&clearTimeout(l.current),l.current=setTimeout(()=>{s(!1)},d_)},[s,l]);return y.useEffect(()=>{d!==e&&e!=null&&h()},[e,d,s,h]),y.useEffect(()=>()=>l.current?clearTimeout(l.current):void 0,[]),u.jsx(Ed,{className:"toast-bottom-bar",isShown:o,onEntering:t,onEntered:r,onExiting:i,onExited:a,children:e})}class h_ extends Na{getGridY(e){var t=super.getGridY(e),{isFilterBarShown:r,theme:i,advancedFilters:a,quickFilters:o,sorts:s,reverseType:l}=e;return r?t+=i.filterBarHeight:(o!=null&&o.size>0||a!=null&&a.size>0)&&(t+=i.filterBarCollapsedHeight),l!==j.REVERSE_TYPE.NONE&&s!=null&&s.length>0&&(t+=i.reverseHeaderBarHeight),t}getUserColumnWidths(){return this.userColumnWidths}}const c_=h_;var m_=1,zC=he.memo(n=>{var{model:e,modelColumns:t,top:r,bottom:i,left:a,right:o,filter:s,formatter:l,reverseType:d=j.REVERSE_TYPE.NONE,sorts:h,customColumns:c,movedColumns:m,hiddenColumns:v,alwaysFetchColumns:f,rollupConfig:g=null,totalsConfig:p=null,selectDistinctColumns:C=ke,pendingRowCount:b=0,pendingDataMap:S=Zn,frozenColumns:w,formatColumns:E,columnHeaderGroups:T}=n,P=y.useMemo(()=>ye.getModelViewportColumns(t,a,o,m,v,f,m_),[t,a,o,m,v,f]);return y.useEffect(function(){e.filter=s},[e,s]),y.useEffect(function(){var O=[...h];d!==j.REVERSE_TYPE.NONE&&O.push(e.dh.Table.reverse()),e.sort=O},[e,h,d]),y.useEffect(function(){e.formatter=l},[e,l]),y.useEffect(function(){e.isCustomColumnsAvailable&&(e.customColumns=c)},[e,c]),y.useEffect(function(){e.isFormatColumnsAvailable&&(e.formatColumns=E)},[e,E]),y.useEffect(function(){e.setViewport(r,i,P)},[e,r,i,P]),y.useEffect(function(){e.isRollupAvailable&&(e.rollupConfig=g)},[e,e.isRollupAvailable,g]),y.useEffect(function(){e.isSelectDistinctAvailable&&(e.selectDistinctColumns=C)},[e,C]),y.useEffect(function(){e.isTotalsAvailable&&(e.totalsConfig=p)},[e,e.isTotalsAvailable,p]),y.useEffect(function(){e.pendingRowCount=b},[e,b]),y.useEffect(function(){e.pendingDataMap=S},[e,S]),y.useEffect(function(){w&&e.updateFrozenColumns(w)},[e,w]),y.useEffect(function(){e.columnHeaderGroups=T},[e,T]),null});zC.displayName="IrisGridModelUpdater";const v_=zC;var ah=16,f_=new Map([["sortUp",aw],["sortDown",ow],["caretDown",ti],["caretRight",rp],["cellOverflow",sw]]),g_=wn(n=>{var e=f_.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:ah/e.icon[0],d:ah/e.icon[1]};return i.addPath(r,a),i},{max:1e3});function ts(n){return g_(n)}class p_{static drawTreeMarker(e,t,r,i,a,o,s){e.save();var{x1:l,y1:d}=a,h=ts(s?"caretDown":"caretRight"),c=r+l-2,m=i+d+2.5;e.fillStyle=o,e.textAlign="center",e.translate(c,m),e.fill(h),e.restore()}}const KC=p_;class C_ extends LC{drawCellContent(e,t,r,i){var a,{metrics:o,model:s}=t,{modelColumns:l,modelRows:d}=o,h=$(d,i),c=l.get(r);if(c!==void 0){var m=s.valueForCell(c,h);if(j.isTextType((a=s.columns[c])===null||a===void 0?void 0:a.type)&&(m===null||m==="")){var v=e.font;e.font="italic ".concat(v),super.drawCellContent(e,t,r,i),e.font=v;return}super.drawCellContent(e,t,r,i)}}getTextRenderMetrics(e,t,r){var i=B.getTextRenderMetrics(e,t,r),{mouseX:a,mouseY:o,metrics:s,theme:l}=e;if(a==null||o==null)return i;var{column:d,row:h}=B.getGridPointFromXY(a,o,s);if(t===d&&r===h){var{left:c}=this.getCellOverflowButtonPosition(a,o,s,l);this.shouldRenderOverflowButton(e)&&c!=null&&(i.width=c-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:o,columnWidth:s,left:l,top:d}=B.getCellInfoFromXY(e,t,r);if(l==null||s==null||d==null)return a;var{width:h,verticalBarWidth:c}=r,{cellHorizontalPadding:m}=i,v=ah+2*m,f=o,g=Math.min(r.gridX+l+s,h-c),p=g-v,C=r.gridY+d;return{left:p,top:C,width:v,height:f}}shouldRenderOverflowButton(e){var t,r,{context:i,mouseX:a,mouseY:o,metrics:s,model:l,theme:d}=e;if(a==null||o==null)return!1;var{row:h,column:c,modelRow:m,modelColumn:v}=B.getCellInfoFromXY(a,o,s);if(h==null||c==null||m==null||v==null||!j.isStringType(l.columns[v].type))return!1;var f=(t=l.textForCell(v,m))!==null&&t!==void 0?t:"",{width:g}=B.getTextRenderMetrics(e,c,h),p=(r=s.fontWidths.get(d.font))!==null&&r!==void 0?r:Ta;i.save(),i.font=d.font;var C=this.getCachedTruncatedString(i,f,g,p,l.truncationCharForCell(v,m));return i.restore(),f!==""&&C!==f}drawTreeMarker(e,t,r,i,a,o,s){KC.drawTreeMarker(e,t,r,i,a,o,s)}}const b_=C_;class S_ extends AC{drawTreeMarker(e,t,r,i,a,o,s){KC.drawTreeMarker(e,t,r,i,a,o,s)}}const w_=S_;function Av(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 Lv(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Av(Object(t),!0).forEach(function(r){oh(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Av(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function oh(n,e,t){return e=y_(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function y_(n){var e=E_(n,"string");return typeof e=="symbol"?e:String(e)}function E_(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 Su=Object.freeze({SORT_UP:"sortUp",SORT_DOWN:"sortDown",CARET_DOWN:"caretDown",CARET_RIGHT:"caretRight",CELL_OVERFLOW:"cellOverflow"}),kv=10;class Kl extends An{constructor(){super(...arguments),oh(this,"textCellRenderer",new b_),oh(this,"dataBarCellRenderer",new w_)}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===j.sortDirection.ascending?ts(Su.SORT_UP):e.direction===j.sortDirection.descending?ts(Su.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:o}=t,{modelColumns:s,modelRows:l}=a,d=s.get(r),h=$(l,i);if(d!==void 0){var c=o.renderTypeForCell(d,h),m=this.getCellRenderer(c);m.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:o,top:s,width:l,height:d}=this.getCellOverflowButtonPosition(e),{cellHorizontalPadding:h,overflowButtonColor:c,overflowButtonHoverColor:m}=a;t.save(),m!=null&&o!=null&&l!=null&&s!=null&&d!=null&&r>=o&&r<=o+l&&i>=s&&i<=s+d?t.fillStyle=m:c!=null&&(t.fillStyle=c);var v=ts(Su.CELL_OVERFLOW);o!=null&&s!=null&&t.translate(o+h,s+2),t.fill(v),t.restore()}}drawGroupedColumnLine(e,t){var{metrics:r,model:i,theme:a}=t,{groupedColumns:o}=i,{maxY:s,allColumnWidths:l,allColumnXs:d}=r;if(!(o.length===0||a.groupedColumnDividerColor==null)){var h=o.length-1,c=d.get(h),m=l.get(h);if(!(c==null||m==null)){var v=c+m+.5;e.strokeStyle=a.groupedColumnDividerColor,e.lineWidth=1,e.beginPath(),e.moveTo(v,0),e.lineTo(v,s),e.stroke()}}}drawPendingRowLine(e,t){var{metrics:r,model:i,theme:a}=t,{allRowYs:o,maxX:s}=r,{pendingRowCount:l}=i;if(!(l<=0)){var d=i.rowCount-i.pendingRowCount-i.floatingBottomRowCount,h=o.get(d);h!=null&&(h-=.5,e.save(),e.setLineDash([4,2]),e.strokeStyle=a.pendingTextColor,e.lineWidth=1,e.beginPath(),e.moveTo(0,h),e.lineTo(s,h),e.stroke(),e.restore())}}drawMouseColumnHover(e,t){var{theme:r,metrics:i,hoverSelectColumn:a}=t;if(!(a==null||r.linkerColumnHoverBackgroundColor==null)){var{allColumnWidths:o,allColumnXs:s,maxY:l}=i,d=$(s,a),h=$(o,a);e.fillStyle=r.linkerColumnHoverBackgroundColor,e.fillRect(d,0,h,l)}}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:o,height:s,gridY:l}=i,{scrimBlurSize:d,scrimColor:h}=a;t.save(),t.globalCompositeOperation="color",t.filter="blur(".concat(d,"px)"),h!=null&&(t.fillStyle=h),t.beginPath(),t.rect(0,l,o,s-l),t.clip(),t.fillRect(-d,-d+l,d*2+o,(d*2+(s-l))*r),t.globalCompositeOperation="overlay",t.filter="blur(".concat(d,"px) opacity(15%)"),t.fillRect(-d,-d+l,d*2+o,(d*2+(s-l))*r),t.restore()}}drawColumnHeaders(e,t){super.drawColumnHeaders(e,t);var{theme:r,metrics:i,model:a,reverseType:o}=t,{columnHeaderHeight:s}=i;if(this.drawFilterHeaders(e,t),!(s<=0)){var{sort:l}=a;if(l.length===1){var d=o!==j.REVERSE_TYPE.NONE,h;d?h=r.headerReverseBarColor:h=r.headerSortBarColor,this.drawHeaderBar(e,t,h,d?r.reverseHeaderBarHeight:r.sortHeaderBarHeight)}else l.length>1&&(o!==j.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:o,metrics:s,model:l}=t,{columnHeaderHeight:d,width:h}=s,c=0;a||(c=i),e.fillStyle=o.headerBarCasingColor,e.fillRect(0,l.columnHeaderMaxDepth*d-i-2+c,h,i+2),e.fillStyle=r,e.fillRect(0,l.columnHeaderMaxDepth*d-i-1+c,h,i)}drawColumnHeadersAtDepth(e,t,r,i,a){var{metrics:o,model:s,isMenuShown:l}=t,{columnHeaderMaxDepth:d}=s,{width:h}=o,c=Lv(Lv({},i),{},{maxX:a===d-1&&i.maxX===h?h-(l?0:30):i.maxX});super.drawColumnHeadersAtDepth(e,t,r,c,a)}drawColumnHeaderAtIndex(e,t,r,i){var a,o;super.drawColumnHeaderAtIndex(e,t,r,i);var{metrics:s,model:l,theme:d}=t,{modelColumns:h,allColumnWidths:c,allColumnXs:m,gridX:v,columnHeaderHeight:f,fontWidths:g}=s,{headerHorizontalPadding:p}=d,C=$(c,r,0),b=$(m,r)+v,S=h.get(r);if(S!=null){var w=(a=l.columns[S])===null||a===void 0?void 0:a.name;if(w!=null){var E=j.getSortForColumn(l.sort,w);if(E){var T=this.getSortIcon(E);if(T){var P=l.textForColumnHeader(S);if(P!==void 0){var D=(o=g.get(e.font))!==null&&o!==void 0?o:Ta;A(D);var O=P.length*D,R=v+b+O+p,{maxX:x}=i;x-=p;var F=v+b+C-p-1,_=R>x?R+1:Math.min(x,F),L=E.direction===j.sortDirection.ascending?-6:-12,M=f*.5+L;e.save(),e.beginPath(),e.rect(b,0,C,f),e.clip(),e.fillStyle=d.headerSortBarColor,e.translate(_,M),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:o,advancedFilters:s}=t,{filterBarHeight:l}=a;if(!(l<=0)){var{gridX:d,gridY:h,maxX:c,modelColumns:m,visibleColumns:v,allColumnWidths:f,allColumnXs:g}=r,p=h-l;e.save(),e.font=a.font,e.textAlign="left",o!=null&&o.size>0||s!=null&&s.size>0?e.fillStyle=a.filterBarExpandedActiveBackgroundColor:e.fillStyle=a.filterBarExpandedBackgroundColor,e.fillRect(d,p,c,l-1),e.fillStyle=a.headerBarCasingColor,e.fillRect(d,p+l-1,c,1);var C=p;e.strokeStyle=a.filterBarSeparatorColor,e.beginPath();for(var b=0;b<v.length;b+=1){var S=v[b],w=$(m,S),E=$(g,S),T=$(f,S);if(i.isFilterable(w)&&T>0){var P=d+(E??0);e.rect(P+.5,C+.5,T,l-2)}}e.stroke();for(var D=0;D<v.length;D+=1){var O=v[D],R=$(f,O),x=$(g,O),F=x+d;this.drawExpandedFilterHeader(e,t,O,F,R)}e.restore()}}drawExpandedFilterHeader(e,t,r,i,a){if(!(a<=0)){var{metrics:o,theme:s,quickFilters:l,advancedFilters:d}=t,{modelColumns:h,gridY:c}=o,{filterBarHeight:m,filterBarExpandedActiveCellBackgroundColor:v,filterBarErrorColor:f,filterBarHorizontalPadding:g,headerColor:p}=s,C=c-m,b=h.get(r);if(b!==void 0){var S=l.get(b),w=d.get(b);if(!(S==null&&w==null)){var E=null;if(S!=null){var{text:T}=S;if(E=T,E||(E=j.getFilterText(S.filter)),E!=null){var{fontWidths:P}=o,D=P.get(e.font);(D==null||D===0)&&(D=e.measureText("8").width,D||(D=10));var O=(a-g*2)/D;O<=0?E="":E.length>O&&(E="".concat(E.substring(0,O-1),"…"))}}e.save();var R=Kl.isFilterValid(w,S);if(R&&v!=null)e.fillStyle=v,e.fillRect(i+1,C+1,a-1,m-3);else if(f!=null){e.fillStyle=f,e.lineWidth=2,e.strokeStyle=f;var x=i+2,F=C+2,_=a-3,L=m-5;e.strokeRect(x,F,_,L)}if(E!=null&&E!==""){var M=i+g,U=C+m*.5+1;e.fillStyle=p,e.fillText(E,M,U)}e.restore()}}}}drawCollapsedFilterHeaders(e,t){var{metrics:r,theme:i}=t,{headerSeparatorColor:a,filterBarCollapsedHeight:o}=i;if(!(o<=0)){var{gridX:s,gridY:l,maxX:d,visibleColumns:h,allColumnWidths:c,allColumnXs:m}=r,v=l-o;e.save(),e.fillStyle=a,e.fillRect(s,v,d,o);for(var f=0;f<h.length;f+=1){var g=h[f],p=c.get(g),C=m.get(g);if(C!=null&&p!=null){var b=C+s;this.drawCollapsedFilterHeader(e,t,g,b,p)}}e.restore()}}drawCollapsedFilterHeader(e,t,r,i,a){if(!(a<=0)){var{metrics:o,theme:s,quickFilters:l,advancedFilters:d}=t,{modelColumns:h,gridY:c}=o,m=h.get(r);if(m!==void 0){var v=l.get(m),f=d.get(m),{filterBarCollapsedHeight:g,filterBarActiveColor:p,filterBarActiveBackgroundColor:C,filterBarErrorColor:b}=s;e.save();var S=Kl.isFilterValid(f,v);C!=null&&v==null&&f==null?e.fillStyle=C:p!=null&&S?e.fillStyle=p:b!=null&&(e.fillStyle=b);var w=i+1,E=c-g,T=a-1,P=g-1;e.fillRect(w,E,T,P),e.restore()}}}drawRowFooters(e,t){var{metrics:r,model:i,mouseX:a,mouseY:o,theme:s}=t,{gridY:l,gridX:d,maxX:h,modelRows:c,floatingTopHeight:m,floatingBottomHeight:v,floatingRows:f,rowFooterWidth:g,height:p,horizontalBarHeight:C,verticalBarWidth:b,allRowHeights:S,allRowYs:w,width:E}=r;if(!(g<=0||f.length===0)){var{cellHorizontalPadding:T,floatingGridRowColor:P,floatingRowBackgroundColors:D,headerColor:O,rowHoverBackgroundColor:R}=s;e.translate(d,l),e.beginPath();var x=Math.min(h,E-g-b-d);e.fillStyle=D,m>0&&e.rect(x,0,g,m),v>0&&e.rect(x,p-l-C-v,g,v),e.fill();var F=a!=null&&o!=null&&a>=d&&a<=h+g?B.getRowAtY(o,r):null;if(R!=null&&F!==null&&f.includes(F)){e.fillStyle=R;var _=w.get(F),L=S.get(F);A(_),A(L),e.fillRect(x,_,g,L)}if(e.beginPath(),P!=null&&(e.strokeStyle=P),m>0&&(e.moveTo(x+.5,.5),e.lineTo(x+.5,m-.5)),v>0){var M=p-l-C-v;e.moveTo(x-.5,M+.5),e.lineTo(x-.5,M+v-.5)}e.stroke(),e.fillStyle=O,e.textAlign="left";for(var U=x+T,V=0;V<f.length;V+=1){var z=f[V],Q=S.get(z),Z=w.get(z),I=c.get(z);if(Z!=null&&Q!=null&&I!=null){var N=Z+Q*.5;e.fillText(i.textForRowFooter(I),U,N)}}e.translate(-d,-l)}}getExpandButtonPosition(e,t){var{mouseX:r,mouseY:i,metrics:a,theme:o}=e,s={left:null,top:null,width:null,height:null};if(r==null||i==null||t==null||!a)return s;var{rowHeight:l,left:d,top:h}=B.getCellInfoFromXY(r,i,a);A(d),A(l),A(h);var{cellHorizontalPadding:c}=o,m=kv+2*c,v=Math.max(d+kv*t,a.gridX),f=a.gridY+h;return{left:v,top:f,width:m,height:l}}}const T_=Kl,P_="12px Fira Sans, sans-serif",O_="#f0f0ee",D_="#1a171a",ue={"grid-bg":"#211f22",font:P_,white:O_,black:D_,"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 R_=Object.freeze({backgroundColor:ue["grid-bg"],white:ue.white,black:ue.black,font:ue.font,headerBackgroundColor:ue["header-bg"],headerColor:ue["header-color"],headerSeparatorColor:ue["header-separator-color"],headerSeparatorHoverColor:ue["header-separator-hover-color"],headerHiddenSeparatorHoverColor:ue["header-hidden-separator-hover-color"],headerSortBarColor:ue["header-sort-bar-color"],headerReverseBarColor:ue["header-reverse-bar-color"],headerBarCasingColor:ue["header-bar-casing-color"],headerFont:ue["header-font"],rowBackgroundColors:ue["row-background-colors"],rowHoverBackgroundColor:ue["row-hover-bg"],selectionColor:ue["selection-color"],selectionOutlineColor:ue["selection-outline-color"],selectionOutlineCasingColor:ue["selection-outline-casing-color"],selectedRowHoverBackgroundColor:ue["selected-row-hover-bg"],scrollBarBackgroundColor:ue["scroll-bar-bg"],scrollBarHoverBackgroundColor:ue["scroll-bar-hover-bg"],scrollBarCasingColor:ue["scroll-bar-casing-color"],scrollBarCornerColor:ue["scroll-bar-corner-color"],scrollBarColor:ue["scroll-bar-color"],scrollBarHoverColor:ue["scroll-bar-hover-color"],scrollBarActiveColor:ue["scroll-bar-active-color"],scrollBarSelectionTickColor:ue["selected-row-hover-bg"],scrollBarActiveSelectionTickColor:ue["scroll-bar-active-selection-tick-color"],textColor:ue["text-color"],hyperlinkColor:ue["hyperlink-color"],positiveNumberColor:ue["positive-number-color"],negativeNumberColor:ue["negative-number-color"],zeroNumberColor:ue["zero-number-color"],dateColor:ue["date-color"],pendingTextColor:ue["pending-text-color"],errorTextColor:ue["error-text-color"],nullStringColor:ue["null-string-color"],filterBarActiveBackgroundColor:ue["filter-bar-active-bg"],filterBarExpandedBackgroundColor:ue["filter-bar-expanded-bg"],filterBarExpandedActiveBackgroundColor:ue["filter-bar-expanded-active-bg"],filterBarExpandedActiveCellBackgroundColor:ue["filter-bar-expanded-active-cell-bg"],filterBarSeparatorColor:ue["filter-bar-separator-color"],filterBarActiveColor:ue["filter-bar-active-color"],filterBarErrorColor:ue["filter-bar-error-color"],filterIconColor:ue["filter-icon-color"],scrimColor:ue["scrim-color"],contextMenuSortIconColor:ue["context-menu-sort-icon-color"],contextMenuReverseIconColor:ue["context-menu-reverse-icon-color"],allowRowResize:!1,autoSelectRow:!0,gridColumnColor:null,gridRowColor:null,groupedColumnDividerColor:ue["grouped-column-divider-color"],columnHoverBackgroundColor:null,headerHorizontalPadding:12,scrollBarSize:13,scrollBarHoverSize:16,minScrollHandleSize:24,rowHeight:parseInt(ue["row-height"],10)||19,columnWidth:100,rowHeaderWidth:0,rowFooterWidth:60,columnHeaderHeight:parseInt(ue["header-height"],10)||30,filterBarHeight:30,filterBarCollapsedHeight:5,sortHeaderBarHeight:2,reverseHeaderBarHeight:4,filterBarHorizontalPadding:4,scrimBlurSize:25,minScrimTransitionTime:150,maxScrimTransitionTime:350,scrollSnapToRow:!0,linkerColumnHoverBackgroundColor:ue["linker-column-hover-bg"],treeLineColor:ue["tree-line-color"],treeMarkerColor:ue["tree-marker-color"],treeMarkerHoverColor:ue["tree-marker-hover-color"],floatingGridColumnColor:null,floatingGridRowColor:ue["floating-grid-row-color"],floatingRowBackgroundColors:ue["floating-row-background-colors"],floatingDividerInnerColor:ue["floating-divider-inner-color"],floatingDividerOuterColor:ue["floating-divider-outer-color"],overflowButtonColor:ue["overflow-button-color"],overflowButtonHoverColor:ue["overflow-button-hover-color"],zeroLineColor:ue["zero-line-color"],positiveBarColor:ue["positive-bar-color"],negativeBarColor:ue["negative-bar-color"]});const YC=R_;function qC(n,e,t){return e=N_(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function N_(n){var e=F_(n,"string");return typeof e=="symbol"?e:String(e)}function F_(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=ae.module("ColumnStatistics"),I_={SIZE:"Number of Rows"};class cs extends y.Component{static getStatsLabel(e){var t;return(t=I_[e])!==null&&t!==void 0?t:e.split(" ").map(r=>r[0].toUpperCase()+r.substr(1).toLowerCase()).join(" ")}constructor(e){super(e),qC(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<cs.AUTO_GENERATE_LIMIT&&this.handleGenerateStatistics():this.setState({loading:!1})}handleGenerateStatistics(){this.setState({loading:!0});var{column:e,model:t}=this.props;this.cancelablePromise=Te.makeCancelable(t.columnStatistics(e)),this.cancelablePromise.then(this.handleStatistics).catch(this.handleError)}handleStatistics(e){wu.debug("Received statistics",e);var{model:t,onStatistics:r}=this.props,i=[];e.statisticsMap.forEach((a,o)=>{i.push({operation:cs.getStatsLabel(o),value:a,type:e.getType(o)})}),e.uniqueValues.forEach((a,o)=>{i.push({operation:o,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&&Te.isCanceled(e)){wu.debug("Called handleError on a cancelled promise result");return}wu.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:o}=this.state,s=!i&&r==null&&a==null&&t.isColumnStatisticsAvailable,l=[],d=e.type.substring(e.type.lastIndexOf(".")+1),h=e.description===null?null:e.description;if(a!=null)for(var c=0;c<a.length;c+=1){var{operation:m,className:v,value:f,type:g}=a[c],p=g?t.displayString(f,g):t.displayString(f,e.type,e.name),C=u.jsxs(he.Fragment,{children:[u.jsx("div",{className:J("column-statistic-operation",v),children:m}),u.jsx("div",{className:"column-statistic-value",children:p})]},m);l.push(C)}var b=ze(t)&&t.hasExpandableRows?"Expanded Rows":"Number of Rows",S=t.displayString(o,"long"),w=t.getColumnIndexByName(e.name);return u.jsxs("div",{className:"column-statistics",children:[u.jsxs("div",{className:"column-statistics-title",children:[e.name,u.jsxs("span",{className:"column-statistics-type",children:[" (",d,")"]}),u.jsx(ld,{className:"column-statistics-copy",tooltip:"Copy column name",copy:e.name})]}),h!=null&&u.jsx("div",{className:"column-statistics-description",children:h}),w!=null&&!t.isColumnSortable(w)&&u.jsxs("div",{className:"column-statistics-status",children:[u.jsx(te,{icon:lw,className:"mr-1"}),"Not sortable"]}),w!=null&&!t.isColumnMovable(w)&&u.jsxs("div",{className:"column-statistics-status",children:[u.jsx(te,{icon:t.isColumnFrozen(w)?dw:uw,className:"mr-1"}),t.isColumnFrozen(w)?"Frozen":"Not movable"]}),u.jsxs("div",{className:"column-statistics-grid",children:[a==null&&u.jsxs(u.Fragment,{children:[u.jsx("div",{className:"column-statistic-operation",children:b}),u.jsx("div",{className:"column-statistic-value",children:S})]}),l]}),s&&u.jsx(G,{kind:"ghost",className:"px-0",onClick:this.handleGenerateStatistics,children:"Generate Stats"}),r!=null&&u.jsx("div",{className:"error-message",children:"".concat(r)}),a&&!i&&u.jsx(G,{kind:"ghost",className:"px-0",onClick:this.handleGenerateStatistics,icon:u.jsx(te,{icon:Dh,className:"mr-1"}),children:"Refresh"}),i&&u.jsxs("div",{className:"column-statistics-loading",children:[u.jsx(kn,{className:"mr-2"}),"Calculating Stats..."]})]})}}qC(cs,"AUTO_GENERATE_LIMIT",1e5);const __=cs;function jv(n,e,t){return e=x_(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function x_(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 Js=ae.module("AdvancedFilterCreatorFilterItem");class ic extends y.PureComponent{static getLabelForFilter(e,t){try{if(j.isNumberType(e)||j.isCharType(e))return Ap(t);if(j.isTextType(e))return Mp(t);if(j.isDateType(e))return Lp(t);if(j.isBooleanType(e))return uT(t);throw new Error("Unrecognized column type: ".concat(e))}catch(r){return Js.warn(r),""}}constructor(e){super(e),jv(this,"typeDropdown",void 0),jv(this,"getCachedIsValid",Ce((a,o,s,l,d)=>{try{return!s||d.makeAdvancedValueFilter(a,o,s,l)!=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;Js.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){Js.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(){Js.debug("delete");var{onDelete:e}=this.props;e()}render(){for(var{column:e,filterTypes:t,formatter:r,tableUtils:i}=this.props,{selectedType:a,value:o}=this.state,s=!j.isBooleanType(e.type),l=[],d=this.getCachedIsValid(e,a,o,r.timeZone,i),h=0;h<t.length;h+=1){var c=t[h],m=ic.getLabelForFilter(e.type,c),v=u.jsx("option",{value:c,children:m},c);l.push(v)}return u.jsx("div",{className:"advanced-filter-creator-filter-item",children:u.jsxs("div",{className:"form-row",children:[u.jsx("div",{className:"form-group col",children:u.jsx("select",{className:"form-control custom-select",value:a,onChange:this.handleTypeChange,ref:f=>{this.typeDropdown=f},children:l})}),s&&u.jsx("div",{className:"form-group col",children:u.jsx("div",{className:"input-group",children:u.jsx("input",{type:"text",className:J("form-control",{error:!d}),placeholder:"Enter value",value:o,onChange:this.handleValueChange})})}),u.jsx("div",{className:"form-group col-1 px-0",children:u.jsx(G,{kind:"ghost",className:"w-100 h-100 p-0 m-0",onClick:this.handleDelete,icon:jr,tooltip:"Remove Filter"})})]})})}}const A_=ic;function sh(n,e,t){return e=L_(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function L_(n){var e=k_(n,"string");return typeof e=="symbol"?e:String(e)}function k_(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 Hv=ae.module("AdvancedFilterCreatorSelectValueList");class ms extends y.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),sh(this,"dh",void 0),sh(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=ms.indexOf(t,i);a>=0?i.splice(a,1):i.push(t);var o=a<0;r&&(o=!o);var{offset:s}=this.state,{items:l}=this.state;l=[...l];var d=e-s;d>=0&&d<l.length&&(l[d].isSelected=o),this.setState({items:l,selectedValues:i});var{onChange:h}=this.props;h(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,o=[],s=t.columns[0],l=0;l<i.rows.length;l+=1){var d=i.rows[l],h=d.get(s),c=void 0;h==null?c=u.jsx("i",{className:"text-muted",children:"null"}):h===""?c=u.jsx("i",{className:"text-muted",children:"empty"}):c=r.getFormattedString(h,s.type,s.name);var m=this.isValueSelected(h);o.push({displayValue:c,value:h,isSelected:m})}Hv.debug2("Received table update:",a,o.length);var v=t.size;this.setState({itemCount:v,items:o,offset:a,isLoading:!1})}}isValueSelected(e){var{invertSelection:t}=this.props,{selectedValues:r}=this.state,i=ms.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,o=Math.max(0,e-a*3),s=Math.max(o,t+a*3);Hv.debug2("Setting viewport",o,",",s),i.setViewport(o,s)}}render(){var{offset:e,isLoading:t,items:r,itemCount:i}=this.state;return u.jsxs("div",{className:"select-value-list-wrapper",children:[u.jsx(oy,{itemCount:i,items:r,offset:e,onSelect:this.handleSelect,onViewportChange:this.handleViewportChange,ref:a=>{this.list=a}}),u.jsx(Lr,{in:t,timeout:250,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0,children:u.jsx("div",{className:"loading-list",children:u.jsx(kn,{className:"loading-spinner-large"})})})]})}}sh(ms,"defaultProps",{invertSelection:!0,selectedValues:[],onChange:()=>{}});const j_=ms;function rs(n,e,t){return e=H_(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function H_(n){var e=$_(n,"string");return typeof e=="symbol"?e:String(e)}function $_(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 y.PureComponent{constructor(e){super(e),rs(this,"searchTablePromise",void 0),rs(this,"tableUtils",void 0),rs(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 j(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:o,searchText:s}=this.state;o!==t.table&&(t.table!=null&&t.table.close(),o!=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"),o="";return e<1e6&&(o="Displaying "),"".concat(o).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,Rs.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],o=[];if(a!=null){var s;if(t.length>0){var l=null;j.isCharType(a.type)?l=i.makeQuickFilter(a,t):j.isTextType(a.type)?l=i.makeQuickFilter(a,"~".concat(t),r):l=i.makeQuickFilter(a,">=".concat(t),r),l!=null?o.push(l):s="Invalid search text"}this.setState({filters:o,error:s})}}render(){var{error:e,filters:t,invertSelection:r,selectedValues:i,searchText:a,table:o}=this.state,{dh:s,formatter:l,showSearch:d}=this.props,h=this.getColumnName(),c=this.getDisplayedValueText(),m=h?"Find ".concat(h,"..."):"";return u.jsxs("div",{className:"advanced-filter-creator-select-value",children:[u.jsxs("div",{className:d?"form-group":"",children:[u.jsx("label",{htmlFor:"advanced-filter-creator-select-value-input",children:"Select Values"}),d&&u.jsx("input",{type:"text",className:J("form-control",{"is-invalid":e!=null}),id:"advanced-filter-creator-select-value-input",placeholder:m,value:a,onChange:this.handleSearchChange})]}),u.jsx(j_,{dh:s,table:o,filters:t,invertSelection:r,selectedValues:i,formatter:l,onChange:this.handleListChange}),u.jsxs("div",{className:"advanced-filter-creator-select-meta-row",children:[u.jsxs("div",{children:[u.jsx(G,{kind:"ghost",onClick:this.handleSelectAllClick,children:"Select All"}),u.jsx(G,{kind:"ghost",onClick:this.handleClearAllClick,children:"Clear"})]}),u.jsx(Lr,{in:c!=null,timeout:250,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0,children:u.jsx("div",{className:"row-count-info",children:c})})]})]})}}rs(Rs,"searchDebounceTime",250);rs(Rs,"defaultProps",{invertSelection:!0,selectedValues:[],onChange:()=>{},showSearch:!0});const U_=Rs;function Ya(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=V_(n,"string");return typeof e=="symbol"?e:String(e)}function V_(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=ae.module("AdvancedFilterCreator");class In extends y.PureComponent{static makeFilterItem(){return{key:et()}}constructor(e){var t,r;super(e),Ya(this,"focusTrapContainer",void 0),Ya(this,"debounceTimeout",void 0),Ya(this,"valuesTablePromise",void 0),Ya(this,"getFilterTypes",Ce(v=>j.getFilterTypes(v))),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=he.createRef();var{model:i,column:a,options:o}=e,{filterOperators:s,invertSelection:l,selectedValues:d}=o,h=(t=(r=o.filterItems)===null||r===void 0?void 0:r.map(v=>{var{selectedType:f,value:g}=v;return{selectedType:f,value:g,key:et()}}))!==null&&t!==void 0?t:[];h.length===0&&h.push(In.makeFilterItem()),s==null&&(s=[]),l==null&&(l=!0),d==null&&(d=[]);var c=i.getColumnIndexByName(a.name);A(c);var m=i.isColumnSortable(c);this.state={filterItems:h,filterOperators:s,invertSelection:l,selectedValues:d,valuesTableError:null,valuesTable:void 0,isSortable:m}}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){Lo.debug("No values table for this model, just ignore");return}this.valuesTablePromise=j.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=>{Te.isCanceled(r)||(Lo.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(In.makeFilterItem()),t=t.concat(ei.and),this.setState({filterItems:e,filterOperators:t})}handleAddOr(){var{filterItems:e,filterOperators:t}=this.state;e=e.concat(In.makeFilterItem()),t=t.concat(ei.or),this.setState({filterItems:e,filterOperators:t})}handleChangeFilterOperator(e,t){var{filterOperators:r}=this.state;r=[...r],sy(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(In.makeFilterItem()),this.setState({filterItems:t,filterOperators:r}),this.startUpdateTimer()}handleSelectValueChange(e,t){this.setState({selectedValues:e,invertSelection:t}),this.startUpdateTimer()}handleReset(){Lo.debug("Resetting Advanced Filter"),this.setState({filterItems:[In.makeFilterItem()],filterOperators:[],selectedValues:[],invertSelection:!0}),this.startUpdateTimer()}handleSortDown(e){var t=Xi.isModifierKeyDown(e);this.sortTable(j.sortDirection.descending,t)}handleSortUp(e){var t=Xi.isModifierKeyDown(e);this.sortTable(j.sortDirection.ascending,t)}handleSubmit(e){Lo.debug("Submitting Advanced Filter"),this.stopUpdateTimer(),this.sendUpdate(),e.preventDefault()}handleDone(e){Lo.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,In.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:o,model:s,tableUtils:l}=this.props,{formatter:d}=s,h=e.filter(f=>{var{selectedType:g,value:p}=f;return g!=null&&p!=null&&p!==""}),c=t.filter((f,g)=>f!=null&&e[g].selectedType!=null&&e[g].value!=null&&e[g].value!=="").slice(0,h.length-1),m={filterItems:h,filterOperators:c,invertSelection:r,selectedValues:i},v=l.makeAdvancedFilter(a,m,d.timeZone);o(a,v,m)}render(){var e=this,{column:t,model:r,sortDirection:i,formatter:a,tableUtils:o}=this.props,{filterItems:s,filterOperators:l,invertSelection:d,selectedValues:h,valuesTable:c,valuesTableError:m,isSortable:v}=this.state,{dh:f,isValuesTableAvailable:g}=r,p=j.isBooleanType(t.type),C=j.isDateType(t.type),b=this.getFilterTypes(t.type),S=t.type.substring(t.type.lastIndexOf(".")+1),w=[];if(!p&&b.length)for(var E=function(R){var x=s[R],{key:F,selectedType:_,value:L}=x,M=u.jsx(A_,{column:t,filterTypes:b,onChange:e.getFilterChangeHandler(R),onDelete:e.getFilterDeleteHandler(R),selectedType:_,value:L,formatter:a,tableUtils:o},F);if(w.push(M),R<l.length){var U=l[R],V=U===ei.and,z=u.jsxs("div",{className:"form-row justify-content-end advanced-filter-creator-filter-operator",children:[u.jsx(G,{kind:"ghost",className:J("filter-operator",{active:V}),onClick:()=>e.handleChangeFilterOperator(R,ei.and),children:"AND"}),u.jsx(G,{kind:"ghost",className:J("filter-operator",{active:!V}),onClick:()=>e.handleChangeFilterOperator(R,ei.or),children:"OR"})]},"filterOperator".concat(F));w.push(z)}},T=0;T<s.length;T+=1)E(T);var P=this.shouldShowAddFilter(),D=u.jsxs("div",{className:J("form-row justify-content-end add-filter-item",{hidden:!P}),children:[u.jsx("span",{className:"text-muted",children:u.jsx(te,{icon:Qi})}),u.jsx(G,{kind:"ghost",className:"btn-filter-item",onClick:this.handleAddAnd,disabled:!P,tooltip:"Add filter with AND",children:"AND"}),u.jsx(G,{kind:"ghost",className:"btn-filter-item",onClick:this.handleAddOr,disabled:!P,tooltip:"Add filter with OR",children:"OR"})]},"addFilterItem");return w.push(D),u.jsxs("div",{className:"advanced-filter-creator",role:"presentation",children:[u.jsx("div",{tabIndex:0,onFocus:this.handleFocusTrapStart}),u.jsxs("form",{onSubmit:this.handleSubmit,ref:this.focusTrapContainer,children:[u.jsxs("div",{className:"title-bar",children:[u.jsx("h6",{className:"advanced-filter-title",children:"Advanced Filters"}),u.jsxs("div",{className:"advanced-filter-menu-buttons",children:[u.jsx(G,{kind:"ghost",className:J("sort-operator",{active:i===j.sortDirection.descending}),onClick:this.handleSortDown,icon:Xc,tooltip:v?"Sort ".concat(t.name," Descending"):"Not sortable",disabled:!v}),u.jsx(G,{kind:"ghost",className:J("sort-operator",{active:i===j.sortDirection.ascending}),onClick:this.handleSortUp,icon:u.jsx(te,{icon:Xc,rotation:180}),tooltip:v?"Sort ".concat(t.name," Ascending"):"Not sortable",disabled:!v})]})]}),u.jsx("hr",{}),u.jsxs("div",{className:"advanced-filter-column-name",children:[t.name," ",u.jsxs("span",{className:"column-type",children:["(",S,")"]})]}),w,g&&m==null&&u.jsxs(u.Fragment,{children:[!p&&u.jsx("hr",{}),u.jsx("div",{className:"form-group",children:u.jsx(U_,{dh:f,table:c,onChange:this.handleSelectValueChange,invertSelection:d,selectedValues:h,formatter:a,showSearch:!C,timeZone:a.timeZone})})]}),u.jsxs("div",{className:"form-row justify-content-end",children:[u.jsx(G,{kind:"secondary",className:"mr-2",onClick:this.handleReset,children:"Reset"}),u.jsx(G,{kind:"primary",onClick:this.handleDone,children:"Done"})]})]}),u.jsx("div",{tabIndex:0,onFocus:this.handleFocusTrapEnd})]})}}Ya(In,"debounceFilterUpdate",250);Ya(In,"defaultProps",{options:{filterItems:null,filterOperators:null,invertSelection:!0,selectedValues:[]},sortDirection:null});const G_=In;function $v(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 Uv(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?$v(Object(t),!0).forEach(function(r){W_(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):$v(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function W_(n,e,t){return e=z_(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function z_(n){var e=K_(n,"string");return typeof e=="symbol"?e:String(e)}function K_(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 Bv=ae.module("Aggregations");function Y_(n){var{isRollup:e,settings:t,onChange:r,onEdit:i}=n,{aggregations:a,showOnTop:o}=t,s=y.useMemo(()=>yF.filter(R=>!a.some(x=>x.operation===R)),[a]),[l,d]=y.useState(s[0]),[h,c]=y.useState([]),m=y.useCallback(R=>{r(Uv(Uv({},t),R))},[r,t]),v=y.useCallback(R=>{m({aggregations:R})},[m]),f=y.useCallback(R=>{m({showOnTop:R})},[m]),g=y.useCallback(()=>{Bv.debug("handleDragStart"),Cn.startDragging()},[]),p=y.useCallback(R=>{var{destination:x,source:F}=R;if(Bv.debug("handleDragEnd",x,F),Cn.stopDragging(),x!==null){var _=x.index;F.index<x.index&&(_+=1);var L=[...a],M=Cn.reorder(L,h,L,_),U=Cn.adjustDestinationIndex(_,h),V=[[U,U+M.length-1]];v(L),c(V)}},[v,a,h,c]),C=y.useCallback(R=>{d(R)},[d]),b=y.useCallback(()=>{v([...a,{operation:l,selected:[],invert:!0}])},[a,l,v]),S=y.useCallback(R=>{v(a.filter((x,F)=>F!==R))},[a,v]),w=y.useCallback(R=>{c(R)},[c]),E=y.useCallback(R=>{var x=a[R];Gi.isRollupOperation(x.operation)||i(x)},[a,i]),T=y.useCallback(R=>{f(R.target.value==="true")},[f]);y.useEffect(function(){s.length>0&&!s.includes(l)&&d(s[0])},[s,l]);var P=y.useCallback(R=>{var{item:x,itemIndex:F,isClone:_=!1,selectedCount:L}=R,M=x.operation,U=_?"".concat(L):void 0,V=_?"item-list-item-clone":void 0,z=Gi.isRollupOperation(x.operation),Q=!_&&!z;return u.jsxs(u.Fragment,{children:[u.jsxs("div",{className:J("item-list-item-content","draggable-item-list-item-content",V),children:[u.jsxs("span",{className:"title",children:[M,!e&&z&&u.jsxs("span",{className:"small text-warning",children:[u.jsx(te,{icon:ap})," Requires rollup"]})]}),cn.renderBadge({text:U}),cn.renderHandle()]}),!_&&u.jsxs(u.Fragment,{children:[u.jsx(G,{kind:"ghost",className:"btn-edit",icon:Ss,tooltip:"Edit Columns",onClick:()=>i(x),disabled:!Q}),u.jsx(G,{kind:"ghost",className:"btn-delete",icon:jr,tooltip:"Delete Aggregation",onClick:()=>S(F)})]})]})},[S,i,e]),D=s.length>0,O=a.length>0;return u.jsxs("div",{className:"aggregations",children:[D&&u.jsxs("div",{className:"form-inline",children:[u.jsx(ly,{onChange:C,value:l,children:s.map(R=>u.jsx(dy,{value:R,children:R},R))}),u.jsxs("button",{type:"button",className:"btn btn-link btn-add",onClick:b,children:[u.jsx(te,{icon:Qi}),"Add Aggregation"]})]}),D&&O&&u.jsx("hr",{}),O&&u.jsxs(u.Fragment,{children:[!e&&u.jsxs("div",{className:"form-inline",children:[u.jsx("label",{children:"Placement: "}),u.jsxs(dd,{onChange:T,value:"".concat(o),children:[u.jsx(si,{value:"true",children:"Top"}),u.jsx(si,{value:"false",children:"Bottom"})]})]}),u.jsx(ed,{onDragStart:g,onDragEnd:p,children:u.jsx(cn,{className:"selected-aggregations",itemCount:a.length,items:a,renderItem:P,offset:0,onSelectionChange:w,onSelect:E,selectedRanges:h,isMultiSelect:!0})})]})]})}function Vv(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 Oi(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Vv(Object(t),!0).forEach(function(r){q_(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Vv(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function q_(n,e,t){return e=X_(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function X_(n){var e=Q_(n,"string");return typeof e=="symbol"?e:String(e)}function Q_(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;(function(n){n[n.NONE=0]="NONE",n[n.ASCENDING=1]="ASCENDING",n[n.DESCENDING=2]="DESCENDING"})(un||(un={}));var Z_=30;function J_(n){var{aggregation:e,columns:t,onChange:r}=n,[i,a]=y.useState(-1),[o,s]=y.useState(-1),[l,d]=y.useState(un.NONE),{invert:h,selected:c}=e,m=y.useRef(null),v=y.useCallback(T=>c.includes(T)?!h:h,[h,c]),f=y.useMemo(()=>{var T=tc(t,e.operation);return l!==un.NONE&&(T=j.sortColumns(T,l===un.ASCENDING)),T},[t,e.operation,l]),g=y.useMemo(()=>i>=0?f.slice(i,o+1).map(T=>({value:T.name,displayValue:T.name,isSelected:v(T.name)})):[],[f,v,o,i]),p=y.useCallback(T=>{var{name:P}=f[T],D=c.indexOf(P),O=[...c],R=h;D>=0?O.splice(D,1):(O.push(P),O.length===f.length&&(O=[],R=!h)),r(Oi(Oi({},e),{},{selected:O,invert:R}))},[e,h,f,c,r]),C=y.useCallback(()=>{d(un.NONE),r(Oi(Oi({},e),{},{selected:[],invert:!0}))},[e,r]),b=y.useCallback((T,P)=>{a(T),s(P)},[a,s]),S=y.useCallback(()=>{c.length===0?r(Oi(Oi({},e),{},{invert:!h})):r(Oi(Oi({},e),{},{selected:[],invert:!0}))},[e,h,r,c]),w=c.length===0?h:null,E=c.length!==0||!h||l!==un.NONE;return u.jsxs("div",{role:"menu",className:"aggregation-edit",children:[u.jsx("div",{className:"top-menu",children:u.jsxs("div",{className:"form-inline",children:[u.jsx(tn,{checked:w,onChange:S,children:"Toggle All"}),u.jsx("div",{className:"spacer"}),u.jsx(Lr,{in:E,timeout:Ze.transitionSlowMs,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0,children:u.jsx(G,{kind:"ghost",className:"btn-reset",onClick:C,children:"Reset"})}),u.jsx(G,{kind:"ghost",className:J({active:l===un.ASCENDING}),icon:Rh,tooltip:"Sort ascending",onClick:()=>d(un.ASCENDING)}),u.jsx(G,{kind:"ghost",className:J({active:l===un.DESCENDING}),icon:Nh,tooltip:"Sort descending",onClick:()=>d(un.DESCENDING)})]})}),u.jsx("div",{className:"aggregation-edit-item-list",children:u.jsx(no,{itemCount:f.length,items:g,offset:i,renderItem:T=>{var{item:P}=T;return u.jsx(tn,{checked:v(P.value),children:P.displayValue})},onSelect:p,onViewportChange:b,rowHeight:Z_,focusSelector:"input",ref:m})})]})}function Gv(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 Wv(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Gv(Object(t),!0).forEach(function(r){ex(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Gv(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function ex(n,e,t){return e=tx(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function tx(n){var e=rx(n,"string");return typeof e=="symbol"?e:String(e)}function rx(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 nx(n){return u.jsx("svg",Wv(Wv({width:48,height:48,xmlns:"http://www.w3.org/2000/svg"},n),{},{children:u.jsxs("g",{fill:"none",fillRule:"evenodd",children:[u.jsx("path",{fill:"#C1C0C0",d:"M44 43v1H4v-1z"}),u.jsx("path",{fill:"#7DA4FF",d:"M8 26h4v15H8zM15 17h4v24h-4zM22 21h4v20h-4zM29 17h4v24h-4zM36 11h4v30h-4z"})]})}))}function zv(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 Kv(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?zv(Object(t),!0).forEach(function(r){ix(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):zv(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function ix(n,e,t){return e=ax(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ax(n){var e=ox(n,"string");return typeof e=="symbol"?e:String(e)}function ox(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 sx(n){return u.jsx("svg",Kv(Kv({width:48,height:48,xmlns:"http://www.w3.org/2000/svg"},n),{},{children:u.jsxs("g",{fill:"none",fillRule:"evenodd",children:[u.jsx("path",{fill:"#C1C0C0",d:"M44 43v1H4v-1z"}),u.jsx("path",{fill:"#7DA4FF",d:"M7 34h4v8H7zM12 31h4v11h-4zM17 27h4v15h-4zM22 22h4v20h-4zM27 27h4v15h-4zM32 29h4v13h-4zM37 31h4v11h-4z"})]})}))}function Yv(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 qv(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Yv(Object(t),!0).forEach(function(r){lx(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Yv(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function lx(n,e,t){return e=dx(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function dx(n){var e=ux(n,"string");return typeof e=="symbol"?e:String(e)}function ux(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 hx(n){return u.jsx("svg",qv(qv({width:48,height:48,xmlns:"http://www.w3.org/2000/svg"},n),{},{children:u.jsxs("g",{fill:"none",fillRule:"evenodd",children:[u.jsx("path",{fill:"#C1C0C0",d:"M4 4h1v40H4zM44 43v1H5v-1z"}),u.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"}),u.jsx("path",{stroke:"#BECDEF",d:"M8.244 37.926L17 33.496l5 .87 10.637-10.35 10.615-1.381"})]})}))}function Xv(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 Qv(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Xv(Object(t),!0).forEach(function(r){cx(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Xv(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function cx(n,e,t){return e=mx(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function mx(n){var e=vx(n,"string");return typeof e=="symbol"?e:String(e)}function vx(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 fx(n){return u.jsx("svg",Qv(Qv({width:48,height:48,xmlns:"http://www.w3.org/2000/svg"},n),{},{children:u.jsxs("g",{fill:"none",fillRule:"evenodd",children:[u.jsx("path",{d:"M24 10c7.732 0 14 6.268 14 14s-6.268 14-14 14-14-6.268-14-14h14V10z",fill:"#80A6FF"}),u.jsx("path",{d:"M10 24c0-7.732 6.268-14 14-14v14H10z",fill:"#C1C0C0"})]})}))}function Zv(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 Jv(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Zv(Object(t),!0).forEach(function(r){gx(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Zv(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function gx(n,e,t){return e=px(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function px(n){var e=Cx(n,"string");return typeof e=="symbol"?e:String(e)}function Cx(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 bx(n){return u.jsx("svg",Jv(Jv({width:48,height:48,xmlns:"http://www.w3.org/2000/svg"},n),{},{children:u.jsxs("g",{fill:"none",fillRule:"evenodd",children:[u.jsx("path",{fill:"#C1C0C0",d:"M44 43v1H4v-1z"}),u.jsx("path",{fill:"#939293",d:"M44 34v1H4v-1zM44 25v1H4v-1zM44 16v1H4v-1z"}),u.jsx("circle",{fill:"#7DA4FF",cx:9.5,cy:37.5,r:1.5}),u.jsx("circle",{fill:"#7DA4FF",cx:16.5,cy:30.5,r:1.5}),u.jsx("circle",{fill:"#7DA4FF",cx:22.5,cy:36.5,r:1.5}),u.jsx("circle",{fill:"#7DA4FF",cx:28.5,cy:30.5,r:1.5}),u.jsx("circle",{fill:"#7DA4FF",cx:15.5,cy:38.5,r:1.5}),u.jsx("circle",{fill:"#7DA4FF",cx:23.5,cy:25.5,r:1.5}),u.jsx("circle",{fill:"#7DA4FF",cx:19.5,cy:19.5,r:1.5}),u.jsx("circle",{fill:"#7DA4FF",cx:29.5,cy:19.5,r:1.5}),u.jsx("circle",{fill:"#7DA4FF",cx:32.5,cy:26.5,r:1.5}),u.jsx("circle",{fill:"#7DA4FF",cx:36.5,cy:13.5,r:1.5})]})}))}function ef(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 tf(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ef(Object(t),!0).forEach(function(r){Sx(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ef(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Sx(n,e,t){return e=wx(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function wx(n){var e=yx(n,"string");return typeof e=="symbol"?e:String(e)}function yx(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 Ex(n){return u.jsxs("svg",tf(tf({width:"48",height:"48",viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg"},n),{},{children:[u.jsx("rect",{width:"48",height:"48",fill:"none"}),u.jsx("rect",{x:"26",y:"10",width:"15",height:"4",fill:"#9FDE70"}),u.jsx("rect",{x:"26",y:"22",width:"15",height:"4",fill:"#9FDE70"}),u.jsx("rect",{x:"26",y:"28",width:"15",height:"4",fill:"#FFD95C"}),u.jsx("rect",{x:"26",y:"34",width:"15",height:"4",fill:"#9FDE70"})]}))}function rf(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 nf(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?rf(Object(t),!0).forEach(function(r){Tx(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):rf(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Tx(n,e,t){return e=Px(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Px(n){var e=Ox(n,"string");return typeof e=="symbol"?e:String(e)}function Ox(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 Dx(n){return u.jsxs("svg",nf(nf({width:"48",height:"48",viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg"},n),{},{children:[u.jsx("rect",{width:"48",height:"48",fill:"none"}),u.jsx("rect",{x:"4",y:"16",width:"40",height:"4",fill:"#FFD95C"}),u.jsx("rect",{x:"4",y:"10",width:"40",height:"4",fill:"#78DCE8"}),u.jsx("rect",{x:"4",y:"34",width:"40",height:"4",fill:"#78DCE8"})]}))}var af=ae.module("ChartBuilder");class hn extends y.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:et.generate(),value:e}}static makeDefaultSeriesItems(e,t,r){var i=hn.getMaxSeriesCount(e,t);if(i===0||r==null||r.length===0)return[];var a=r.length>1?r[1].name:r[0].name;return[hn.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],o=hn.getDefaultXAxis(a,r),s=hn.makeDefaultSeriesItems(i,a,r);this.state={type:a,seriesItems:s,xAxis:o,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 u.jsx(hx,{});case r.plot.SeriesPlotStyle.BAR:return u.jsx(nx,{});case r.plot.SeriesPlotStyle.SCATTER:return u.jsx(bx,{});case r.plot.SeriesPlotStyle.PIE:return u.jsx(fx,{});case r.plot.SeriesPlotStyle.HISTOGRAM:return u.jsx(sx,{});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:et.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=hn.getDefaultXAxis(i,t),o=hn.makeDefaultSeriesItems(r,i,t),s=!0;this.setState({type:i,seriesItems:o,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:o}=a;return o=[...o],o[i].value=t,{seriesItems:o}},this.sendChange)}handleSeriesDeleteClick(e){var t=e,r=t.target.getAttribute("data-index"),i=parseInt(r,10);this.setState(a=>{var{seriesItems:o}=a,s=[...o];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:o}=this.state,s=i.map(l=>l.value);t({type:r,series:s,xAxis:a,isLinked:o})}handleTypeClick(e){var t=e,r=t.target.getAttribute("data-index"),i=parseInt(r,10),a=this.getTypes()[i];af.debug2("handleTypeSelect",a),this.setState(o=>{var{model:s}=this.props,{dh:l}=s,d=hn.getMaxSeriesCount(l,a),{seriesItems:h}=o;if(h=h.slice(0,d),h.length===0&&d>0){var{columns:c}=s;h=hn.makeDefaultSeriesItems(l,a,c)}return{type:a,seriesItems:h}},this.sendChange)}handleXAxisChange(e){var t=e.target.value;af.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,o=i.map(s=>s.value);e({type:r,series:o,xAxis:a,isLinked:t})}render(){var{model:e}=this.props,{columns:t,dh:r}=e,{seriesItems:i,type:a,xAxis:o,isLinked:s}=this.state,l=hn.getMaxSeriesCount(r,a),d=this.getXAxisLabel(a),h=this.getSeriesLabel(a),c=i.length>0,m=i.length<l;return u.jsx("div",{className:"chart-builder",children:u.jsxs("form",{onSubmit:this.handleSubmit,children:[u.jsxs("div",{className:"form-row",children:[u.jsx("label",{children:"Select Chart Type"}),u.jsx("div",{className:"form-row",children:this.getTypes().map((v,f)=>{var g=v;return u.jsx("div",{className:"col col-chart-type",children:u.jsxs("button",{type:"button",className:J("btn","btn-icon","btn-chart-type",{active:v===a}),"data-index":f,onClick:this.handleTypeClick,children:[this.getTypeIcon(v),this.getTypeName(v)]})},g)})})]}),u.jsx("hr",{}),u.jsxs("div",{className:"form-row form-inline",children:[u.jsx("label",{className:"col-2 label-left",children:d}),u.jsx("select",{className:"form-control custom-select select-x-axis col",value:o,onChange:this.handleXAxisChange,children:t.map(v=>u.jsx("option",{value:v.name,children:v.name},v.name))})]}),c&&u.jsx("hr",{}),i.map((v,f)=>u.jsxs("div",{className:"form-row form-inline form-series-item","data-testid":"form-series-item-".concat(f),children:[u.jsx("label",{className:"col-2 label-left",children:f===0?h:""}),u.jsx("select",{className:"form-control custom-select select-series col",value:v.value,onChange:this.handleSeriesChange,"data-testid":"select-series-item-".concat(f),"data-index":f,children:t.map(g=>u.jsx("option",{value:g.name,"data-index":f,children:g.name},g.name))}),i.length>1&&u.jsx(G,{kind:"ghost",className:"btn-delete-series ml-2 px-2","data-index":f,"data-testid":"delete-series-".concat(f),onClick:this.handleSeriesDeleteClick,icon:jr,tooltip:"Delete"})]},v.id)),m&&u.jsxs("div",{className:"form-row",children:[u.jsx("div",{className:"col-2"}),u.jsx(G,{kind:"ghost",className:"btn-add-series mt-1",onClick:this.handleAddSeries,icon:Qi,children:"Add Series"})]}),u.jsxs("div",{className:"form-row chart-builder-link",children:[u.jsx("label",{className:"col-2 label-right",children:u.jsxs("div",{className:"fa-md fa-layers",children:[u.jsx(te,{mask:Th,icon:ro,transform:"right-5 down-5"}),u.jsx(te,{icon:s?op:hw,transform:"grow-2 right-8 down-6"})]})}),u.jsxs(dd,{onChange:this.handleLinkStateChange,value:"".concat(s),children:[u.jsx(si,{value:"true",children:"Sync State"}),u.jsx(si,{value:"false",children:"Freeze State"})]})]}),u.jsxs("div",{className:"form-row",children:[u.jsx("div",{className:"col-2 label-right"}),u.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."})]}),u.jsxs("div",{className:J("form-row","justify-content-end","my-3"),children:[u.jsx(G,{kind:"secondary",className:"btn-reset",onClick:this.handleReset,children:"Reset"}),u.jsx(G,{kind:"primary",type:"submit",className:"btn-submit",children:"Create"})]})]})})}}const Rx=hn;function of(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 Nx(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?of(Object(t),!0).forEach(function(r){Yl(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):of(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Yl(n,e,t){return e=Fx(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Fx(n){var e=Ix(n,"string");return typeof e=="symbol"?e:String(e)}function Ix(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 XC extends y.Component{constructor(e){super(e),Yl(this,"editorContainer",void 0),Yl(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=Nx({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=fn.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:o}=this.state;return u.jsxs("div",{className:J("input-editor-wrapper",{focused:a,invalid:t},e),role:"presentation",onClick:this.handleContainerClick,children:[u.jsx("div",{className:"editor-container",ref:s=>{this.editorContainer=s},"data-testid":"custom-column-formula"}),o&&!i&&r.length>0&&u.jsx("div",{className:"editor-placeholder text-muted",children:r})]})}}Yl(XC,"defaultProps",{value:"",onContentChanged:()=>{},editorSettings:{},editorIndex:0,onTab:()=>{},invalid:!1});const _x=XC;function sf(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 el(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?sf(Object(t),!0).forEach(function(r){xx(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):sf(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function xx(n,e,t){return e=Mx(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Mx(n){var e=Ax(n,"string");return typeof e=="symbol"?e:String(e)}function Ax(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 lf=Object.freeze({NAME:"name",FORMULA:"formula"}),Lx=()=>{};function kx(n){var{eventKey:e,name:t,inputIndex:r,formula:i,onChange:a,onDeleteColumn:o,onTabInEditor:s,invalid:l,isDuplicate:d}=n,h=t===""||po.isValidColumnName(t),c=y.useCallback(m=>{m!==void 0&&(m.replace(/(\r\n|\n|\r)/gm,""),a(e,lf.FORMULA,m))},[a,e]);return u.jsx(Qg,{draggableId:e,index:r,disableInteractiveElementBlocking:!0,children:(m,v)=>u.jsxs("div",el(el({className:J("draggable-container",{dragging:v.isDragging}),ref:m.innerRef},m.draggableProps),{},{children:[u.jsxs("div",{className:"custom-column-input-container",children:[u.jsxs("div",{className:"pb-3",children:[u.jsxs("div",{className:"d-flex flex-row custom-column-name",children:[u.jsx("input",{className:J("form-control custom-column-input",{"is-invalid":l||!h||d}),placeholder:"Column Name",value:t,onChange:f=>{a(e,lf.NAME,f.target.value)}}),u.jsx(G,{kind:"ghost",className:"ml-1 px-2",onClick:()=>{o(e)},icon:jr,tooltip:"Delete custom column"}),u.jsx(G,el(el({kind:"ghost",className:"btn-drag-handle",onClick:Lx},m.dragHandleProps),{},{icon:rd,tooltip:"Drag column to re-order"}))]}),(!h||d)&&u.jsx("p",{className:"validate-label-error text-danger mb-0 mt-2 pl-1",children:h?"Duplicate name":"Invalid name"})]}),u.jsx(_x,{editorSettings:{language:"deephavenDb"},editorIndex:r,placeholder:"Column Formula",value:i,onContentChanged:c,onTab:s,invalid:l})]}),u.jsx("hr",{})]}))})}function lh(n,e,t){return e=jx(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function jx(n){var e=Hx(n,"string");return typeof e=="symbol"?e:String(e)}function Hx(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 yu=[];class QC extends VN{constructor(e){super(),lh(this,"dh",void 0),lh(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 yu}get backColumns(){return yu}get frozenColumns(){return yu}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}}lh(QC,"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 Se=QC;function df(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?df(Object(t),!0).forEach(function(r){qa(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):df(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function qa(n,e,t){return e=$x(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function $x(n){var e=Ux(n,"string");return typeof e=="symbol"?e:String(e)}function Ux(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 y.Component{static makeCustomColumnInputEventKey(){return et.generate()}static createCustomColumnInput(){return{eventKey:et.generate(),name:"",formula:""}}constructor(e){super(e),qa(this,"container",void 0),qa(this,"successButtonTimer",void 0),qa(this,"getInput",Ce((t,r)=>t.find(i=>i.eventKey===r))),qa(this,"getInputIndex",Ce((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(Se.EVENT.COLUMNS_CHANGED,this.handleCustomColumnUpdated),e.addEventListener(Se.EVENT.UPDATED,this.handleCustomColumnUpdated),e.addEventListener(Se.EVENT.REQUEST_FAILED,this.handleRequestFailed)}stopListening(){var{model:e}=this.props;e.removeEventListener(Se.EVENT.COLUMNS_CHANGED,this.handleCustomColumnUpdated),e.removeEventListener(Se.EVENT.UPDATED,this.handleCustomColumnUpdated),e.removeEventListener(Se.EVENT.REQUEST_FAILED,this.handleRequestFailed)}parseCustomColumns(e){if(e.length>0){var t=e.map(r=>{var i=r.split(/=(.+)/,2);return{eventKey:Ui.makeCustomColumnInputEventKey(),name:i[0],formula:i[1]}});this.setState({inputs:t})}else this.setState({inputs:[Ui.createCustomColumnInput()]})}handleAddColumnClick(){var{inputs:e}=this.state,t=[...e];t.push(Ui.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(Ui.createCustomColumnInput()),this.setState({inputs:i})}handleInputChange(e,t,r){var{inputs:i}=this.state,a=this.getInputIndex(i,e),o=this.getInput(i,e),s=Eu({},o);s[t]=r;var l=[...i];l.splice(a,1,s),this.setState({inputs:l})}handleCustomColumnUpdated(){var{isCustomColumnApplying:e}=this.state;e&&this.setState({isCustomColumnApplying:!1,isSuccessShowing:!0},()=>{this.successButtonTimer=setTimeout(()=>this.setState({isSuccessShowing:!1}),Ui.SUCCESS_SHOW_DURATION)})}handleRequestFailed(e){var t=e,{isCustomColumnApplying:r}=this.state;r&&this.setState({isCustomColumnApplying:!1,errorMessage:u.jsxs(u.Fragment,{children:[u.jsxs("p",{children:[u.jsx(te,{icon:Ki})," Failed to apply custom columns."]}),u.jsxs("div",{className:"error-box",children:[t.detail.errorMessage,u.jsx("br",{}),"Table configuration:"," ",JSON.stringify(t.detail.configuration)]})]}),hasRequestFailed:!0})}handleDragEnd(e){if(Cn.stopDragging(),!!e.destination){var{inputs:t}=this.state,r=e.source.index,i=e.destination.index,a=[...t],o=t[r];a.splice(r,1),a.splice(i,0,o),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,o;(a=this.container)===null||a===void 0||(o=a.querySelector(".btn-add-column"))===null||o===void 0||o.focus()}else{var s,l=e+1;((s=this.container)===null||s===void 0?void 0:s.querySelectorAll(".custom-column-input")[l]).focus()}}handleSaveClick(){var{onSave:e,customColumns:t}=this.props,{inputs:r,isCustomColumnApplying:i}=this.state;if(!i){var a=[];r.forEach(o=>{var{name:s,formula:l}=o;s&&l&&a.push("".concat(s,"=").concat(l))}),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:o}=i;return r.set(o,((a=r.get(o))!==null&&a!==void 0?a:0)+1)}),e.map((i,a)=>{var o,{eventKey:s,name:l,formula:d}=i,h=((o=r.get(l))!==null&&o!==void 0?o:0)>1;return u.jsx(kx,{inputIndex:a,eventKey:s,name:l,formula:d,onChange:this.handleInputChange,onDeleteColumn:this.handleDeleteColumn,onTabInEditor:this.handleEditorTabNavigation,invalid:t,isDuplicate:h},s)})}renderSaveButton(){var{inputs:e,isCustomColumnApplying:t,isSuccessShowing:r}=this.state,i=e.length>1?"Save Columns":"Save Column",a=e.every(l=>{var{name:d}=l;return d===""||po.isValidColumnName(d)}),o=e.filter(l=>{var{name:d}=l;return d!==""}).map(l=>{var{name:d}=l;return d}),s=new Set(o).size===o.length;return u.jsxs(G,{kind:r?"success":"primary",className:J("btn-apply",{"btn-spinner":t}),disabled:r||t||!a||!s,onClick:this.handleSaveClick,children:[t&&u.jsxs("span",{children:[u.jsx(kn,{}),u.jsx("span",{className:"btn-normal-content",children:"Applying"})]}),!r&&!t&&i,r&&u.jsxs(u.Fragment,{children:[u.jsx(te,{icon:Ph})," Success"]})]})}render(){var{onCancel:e}=this.props,{errorMessage:t}=this.state;return u.jsxs("div",{role:"presentation",className:"custom-column-builder-container",ref:r=>{this.container=r},onClick:this.resetRequestFailed,onFocus:this.resetRequestFailed,children:[u.jsx("hr",{}),u.jsx(ed,{onDragStart:Cn.startDragging,onDragEnd:this.handleDragEnd,children:u.jsx(Eh,{droppableId:"droppable-custom-columns",children:(r,i)=>u.jsxs("div",Eu(Eu({ref:r.innerRef},r.droppableProps),{},{className:J("droppable-container",{dragging:i.draggingFromThisWith}),children:[this.renderInputs(),r.placeholder]}))})}),u.jsx("div",{className:"pt-1 px-3",children:u.jsx(G,{kind:"ghost",className:"btn-add-column",onClick:this.handleAddColumnClick,icon:Qi,children:"Add Another Column"})}),u.jsxs("div",{className:"custom-column-builder-footer",children:[t&&u.jsx("div",{className:"error-message",children:t}),u.jsxs("div",{className:"d-flex justify-content-end",children:[u.jsx(G,{kind:"secondary",className:"mr-2",onClick:e,children:"Cancel"}),this.renderSaveButton()]})]})]})}}qa(Ui,"SUCCESS_SHOW_DURATION",750);const Bx=Ui;var uh;(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"})(uh||(uh={}));const Le=uh;function uf(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 hf(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?uf(Object(t),!0).forEach(function(r){Bi(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):uf(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Bi(n,e,t){return e=Vx(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Vx(n){var e=Gx(n,"string");return typeof e=="symbol"?e:String(e)}function Gx(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 ko=ae.module("RollupRows"),Wx=150,tl="grouped-rollup-rows",rl="ungrouped-rollup-rows";class vr extends y.Component{static renderColumn(e){var{item:t,isClone:r,selectedCount:i}=e,a=t?.name,o=r!==void 0&&r?"".concat(i):void 0,s=r!==void 0&&r?"item-list-item-clone":"";return cn.renderTextItem({text:a,badgeText:o,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((o,s)=>t.includes(o)?(s<i&&(i-=1),!1):!0);return a.splice(i,0,...t),a}static isGroupable(e){return!j.isDecimalType(e.type)}constructor(e){super(e),Bi(this,"ungroupedList",void 0),Bi(this,"groupedList",void 0),Bi(this,"search",tt(o=>{for(var s=this.getSortedUngroupedColumns(),l=[],d=null,h=0;h<s.length;h+=1){var c=s[h];c.name.toLowerCase().includes(o.toLowerCase())&&(d==null&&(d=h),l.push([h,h]))}A(d),this.setState({ungroupedSelectedRanges:l}),l.length>0&&this.ungroupedList.current&&this.ungroupedList.current.scrollToItem(d)},Wx)),Bi(this,"getCachedUngroupedColumns",Pe((o,s)=>o.filter(l=>vr.isGroupable(l)&&s.find(d=>d===l.name)==null))),Bi(this,"getCachedSortedColumns",Pe((o,s)=>s==null?[...o]:j.sortColumns(o,s===vr.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=he.createRef(),this.groupedList=he.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:o}=this.state;r!==e.config?this.updateFromConfig():(i!==t.columns||a!==t.showConstituents||o!==t.showNonAggregatedColumns)&&(r==null||i!==r.columns||a!==r.showConstituents||o!==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===vr.SORT.ASCENDING?null:vr.SORT.ASCENDING}})}handleSortDescending(){this.setState(e=>{var{sort:t}=e;return{sort:t===vr.SORT.DESCENDING?null:vr.SORT.DESCENDING}})}resetSelection(){this.setState({ungroupedSelectedRanges:[],groupedSelectedRanges:[]})}handleDragStart(e){ko.debug("handleDragStart",e),document.documentElement.classList.add("drag-pointer-events-none"),this.setState({dragSource:e.source})}handleDragEnd(e){ko.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===rl){this.setState(o=>{var{groupedSelectedRanges:s,columns:l}=o,d=[...l];return Cn.reorder(d,s,[],0),{columns:d,ungroupedSelectedRanges:[],groupedSelectedRanges:[]}});return}var i=r.droppableId===tl,a=t.index;i&&r.index<t.index&&(a+=1),this.setState(o=>{var{columns:s,ungroupedSelectedRanges:l,groupedSelectedRanges:d}=o,h=[...s],c=i?h:this.getSortedUngroupedColumns().map(p=>p.name),m=i?d:l,v=Cn.reorder(c,m,h,a),f=i?Cn.adjustDestinationIndex(a,d):a,g=[[f,f+v.length-1]];return{columns:h,ungroupedSelectedRanges:[],groupedSelectedRanges:g}}),this.resetSelection()}}handleUngroupedSelect(e){ko.debug("handleUngroupedSelect"),this.setState(t=>{var{columns:r}=t;return{columns:vr.addGroupings(r,[this.getSortedUngroupedColumns()[e].name]),ungroupedSelectedRanges:[],groupedSelectedRanges:[]}})}handleUngroupedSelectionChange(e){ko.debug2("handleUngroupedSelectionChange",e),this.setState(t=>{var{ungroupedSelectedRanges:r}=t;return e===r?null:{ungroupedSelectedRanges:e,groupedSelectedRanges:[]}})}handleGroupedSelectionChange(e){ko.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,o=i!==void 0&&i?"":"  ".repeat(r),s="".concat(o).concat(t),l=i!==void 0&&i?"".concat(a):void 0,d=i!==void 0&&i?"item-list-item-clone":"";return u.jsxs(u.Fragment,{children:[cn.renderTextItem({text:s,badgeText:l,className:d}),(i===void 0||!i)&&u.jsx(G,{kind:"ghost",className:"btn btn-link btn-link-icon btn-delete-grouping float-right",onClick:()=>this.handleDeleteClicked(r),children:u.jsx(te,{icon:jr})})]})}render(){var{columns:e,dragSource:t,searchFilter:r,groupedSelectedRanges:i,ungroupedSelectedRanges:a,showConstituents:o,showNonAggregatedColumns:s,sort:l}=this.state,d=this.getSortedUngroupedColumns(),h=e.length*cn.DEFAULT_ROW_HEIGHT;t?.droppableId===rl&&(h+=cn.DEFAULT_ROW_HEIGHT);var c=d.length*cn.DEFAULT_ROW_HEIGHT+10,m=Math.min(3*cn.DEFAULT_ROW_HEIGHT,c);return u.jsx("div",{role:"menu",className:J("rollup-rows",{"is-dragging":t!=null}),tabIndex:0,children:u.jsxs(ed,{onDragEnd:this.handleDragEnd,onDragStart:this.handleDragStart,children:[u.jsxs("div",{className:"rollup-rows-group-by",children:[u.jsx("div",{className:"section-title",children:"Group By"}),e.length===0&&u.jsx(Eh,{droppableId:"placeholder",children:(v,f)=>u.jsx("div",hf(hf({className:J("placeholder","text-muted",{"is-dragging-from-this":f.draggingFromThisWith,"is-dragging-over":f.isDraggingOver,"is-dropping":f.draggingOverWith}),ref:v.innerRef},v.droppableProps),{},{children:"To create a rollup, drag columns from the list below and drop them into this area."}))}),e.length>0&&u.jsx(cn,{draggingItemClassName:"rollup-rows-dragging-grouped-item",draggablePrefix:tl,droppableId:tl,itemCount:e.length,items:e,offset:0,onSelectionChange:this.handleGroupedSelectionChange,ref:this.groupedList,renderItem:this.renderGroupedItem,selectedRanges:i,style:{height:h},isMultiSelect:!0})]}),u.jsxs("div",{className:"rollup-rows-available-columns",children:[u.jsx("div",{className:"section-title",children:"Available Grouping Columns"}),u.jsxs("div",{className:"top-menu",children:[u.jsx(fo,{className:"w-100",value:r,matchCount:r?a.length:void 0,placeholder:"Find column...",onChange:this.handleSearchChange}),u.jsxs(G,{kind:"ghost",className:J("btn-link btn-link-icon",{active:l===vr.SORT.ASCENDING}),onClick:this.handleSortAscending,children:[u.jsx(te,{icon:Rh}),u.jsx(pt,{children:"Sort ascending"})]}),u.jsxs(G,{kind:"ghost",className:J("btn-link btn-link-icon",{active:l===vr.SORT.DESCENDING}),onClick:this.handleSortDescending,children:[u.jsx(te,{icon:Nh}),u.jsx(pt,{children:"Sort descending"})]})]}),u.jsx(cn,{className:"rollup-available-grouping-columns",draggablePrefix:rl,droppableId:rl,itemCount:d.length,items:d,renderItem:vr.renderColumn,offset:0,onSelect:this.handleUngroupedSelect,onSelectionChange:this.handleUngroupedSelectionChange,ref:this.ungroupedList,selectedRanges:a,style:{maxHeight:c,minHeight:m},isDropDisabled:t?.droppableId!==tl,isMultiSelect:!0}),u.jsxs("div",{className:"bottom-menu",children:[u.jsx("div",{className:"label",children:"Show:"}),u.jsx(tn,{checked:o,onChange:this.handleShowConstituentsChange,children:"Constituents"}),u.jsx(tn,{checked:s,onChange:this.handleShowNonAggregatedColumnsChange,children:"Non-Aggregated Columns"})]})]})]})})}}Bi(vr,"SORT",Object.freeze({ASCENDING:"ASC",DESCENDING:"DESC"}));Bi(vr,"defaultProps",{config:null,onChange:()=>{}});const zx=vr;function cf(n,e,t,r,i,a,o){try{var s=n[a](o),l=s.value}catch(d){t(d);return}s.done?e(l):Promise.resolve(l).then(r,i)}function Kx(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){cf(a,r,i,o,s,"next",l)}function s(l){cf(a,r,i,o,s,"throw",l)}o(void 0)})}}function mf(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 vf(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?mf(Object(t),!0).forEach(function(r){Ia(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):mf(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Ia(n,e,t){return e=Yx(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Yx(n){var e=qx(n,"string");return typeof e=="symbol"?e:String(e)}function qx(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 Xx=ae.module("TableCsvExporter");class Me extends y.Component{static getDateString(e){return e.i18n.DateTimeFormat.format(Me.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(Me.getDateString(t.dh),".csv"),downloadRowOption:Me.DOWNLOAD_ROW_OPTIONS.ALL_ROWS,customizedDownloadRowOption:Me.CUSTOMIZED_ROWS_OPTIONS.FIRST,customizedDownloadRows:Me.DEFAULT_DOWNLOAD_ROWS,includeColumnHeaders:!0,includeHiddenColumns:!1,useUnformattedValues:!1,errorMessage:null,id:et.generate()}}getSnapshotRanges(){var{model:e,selectedRanges:t}=this.props,{downloadRowOption:r,customizedDownloadRowOption:i,customizedDownloadRows:a}=this.state,{rowCount:o,columnCount:s}=e,l=[];switch(r){case Me.DOWNLOAD_ROW_OPTIONS.ALL_ROWS:l.push(new ie(0,0,s-1,o-1));break;case Me.DOWNLOAD_ROW_OPTIONS.SELECTED_ROWS:l=t.map(d=>vf(vf({},d),{},{startColumn:0,endColumn:s-1})).sort((d,h)=>d.startRow!=null&&h.startRow!=null?d.startRow-h.startRow:0);break;case Me.DOWNLOAD_ROW_OPTIONS.CUSTOMIZED_ROWS:switch(i){case Me.CUSTOMIZED_ROWS_OPTIONS.FIRST:l.push(new ie(0,0,s-1,Math.min(a-1,o-1)));break;case Me.CUSTOMIZED_ROWS_OPTIONS.LAST:l.push(new ie(0,Math.max(0,o-a),s-1,o-1));break}break}return l}getModelRanges(e){var{userColumnWidths:t,movedColumns:r}=this.props,{includeHiddenColumns:i}=this.state,a=ye.getHiddenColumns(t),o=B.getModelRanges(e,r);if(!i&&a.length>0){var s=a.map(ie.makeColumn);o=ie.subtractRangesFromRanges(o,s)}return o}resetDownloadState(){this.setState({errorMessage:null})}handleDownloadClick(){var e=this;return Kx(function*(){var{model:t,isDownloading:r,onDownloadStart:i,onDownload:a,onCancel:o}=e.props,{fileName:s,includeColumnHeaders:l,useUnformattedValues:d}=e.state;if(r){o();return}e.resetDownloadState();var h=e.getSnapshotRanges(),c=e.getModelRanges(h);if(e.validateOptionInput()){i();try{var m=yield t.export(),v=m.setViewport(0,0);yield v.getViewportData(),a(s,m,v,h,c,l,d)}catch(f){Xx.error("CSV download failed",f),e.setState({errorMessage:u.jsxs("p",{children:[u.jsx(te,{icon:Ki})," ","".concat(f)]})}),o()}}})()}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===Me.DOWNLOAD_ROW_OPTIONS.SELECTED_ROWS&&e.length===0?(this.setState({errorMessage:u.jsxs("p",{children:[u.jsx(te,{icon:Ki})," No rows selected. Please select some rows in the table."]})}),!1):t===Me.DOWNLOAD_ROW_OPTIONS.CUSTOMIZED_ROWS&&r<=0?(this.setState({errorMessage:u.jsxs("p",{children:[u.jsx(te,{icon:Ki})," 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:o}=this.props,{fileName:s,downloadRowOption:l,customizedDownloadRowOption:d,customizedDownloadRows:h,includeColumnHeaders:c,includeHiddenColumns:m,useUnformattedValues:v,errorMessage:f,id:g}=this.state,{rowCount:p}=e;return u.jsxs("div",{className:"table-csv-exporter",children:[u.jsx("div",{className:"section-title",children:"Download Rows"}),u.jsx("div",{className:"form-group",children:u.jsxs(dd,{onChange:this.handleDownloadRowOptionChanged,value:l,disabled:t,children:[u.jsxs(si,{value:Me.DOWNLOAD_ROW_OPTIONS.ALL_ROWS,"data-testid":"radio-csv-exporter-download-all",children:["All Rows",u.jsx("span",{className:"text-muted ml-2",children:"(".concat(p.toString().replace(/(\d)(?=(\d{3})+(?!\d))/g,"$1,")," rows)")})]}),u.jsxs(si,{value:Me.DOWNLOAD_ROW_OPTIONS.SELECTED_ROWS,"data-testid":"radio-csv-exporter-only-selected",children:["Only Selected Rows",u.jsx("span",{className:"text-muted ml-2",children:a.length>0?"(".concat(ie.rowCount(a).toString().replace(/(\d)(?=(\d{3})+(?!\d))/g,"$1,")," rows)"):null})]}),u.jsx(si,{value:Me.DOWNLOAD_ROW_OPTIONS.CUSTOMIZED_ROWS,"data-testid":"radio-csv-exporter-customized-rows",children:u.jsxs("div",{className:"radio-input-row",role:"presentation",onClick:()=>{this.setState({downloadRowOption:Me.DOWNLOAD_ROW_OPTIONS.CUSTOMIZED_ROWS})},children:[u.jsxs("select",{value:d,"data-testid":"select-csv-exporter-customized-rows",className:"custom-select",disabled:t,onChange:this.handleCustomizedDownloadRowOptionChanged,children:[u.jsx("option",{value:"FIRST",children:"First"}),u.jsx("option",{value:"LAST",children:"Last"})]}),u.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:h,disabled:t,onChange:this.handleCustomizedDownloadRowsChanged}),u.jsx("div",{children:"Rows"})]})})]})}),u.jsxs("div",{className:"form-group",children:[u.jsx("label",{htmlFor:"customizedRows-".concat(g),children:"File Name"}),u.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})]}),u.jsxs("div",{className:"checkbox-options",children:[u.jsx(tn,{checked:c,onChange:this.handleIncludeColumnHeadersChanged,children:"Include column headers"}),u.jsx(tn,{checked:m,onChange:this.handleIncludeHiddenColumnsChanged,children:"Include hidden columns"}),u.jsx(tn,{checked:v,onChange:this.handleUseUnformattedValuesChanged,children:"Use unformatted values"})]}),u.jsxs("div",{className:"section-footer flex-column",children:[f!=null&&u.jsx("div",{className:"error-message",children:f}),o&&u.jsxs("div",{className:"download-status",children:[(o===Me.DOWNLOAD_STATUS.DOWNLOADING||o===Me.DOWNLOAD_STATUS.INITIATING)&&u.jsxs(u.Fragment,{children:[o===Me.DOWNLOAD_STATUS.INITIATING&&u.jsx("div",{className:"text-muted",children:"Starting Download..."}),o===Me.DOWNLOAD_STATUS.DOWNLOADING&&u.jsxs("div",{className:"text-muted d-flex justify-content-between",children:[u.jsx("span",{children:i||i===0?"Estimated time: ".concat(od.formatElapsedTime(i)):null}),u.jsx("span",{children:"".concat(r,"%")})]})]}),o===Me.DOWNLOAD_STATUS.FINISHED&&u.jsx("div",{className:"text-muted text-right",children:"Download Completed"}),o===Me.DOWNLOAD_STATUS.CANCELED&&u.jsx("div",{className:"text-muted",children:"Download Canceled"}),(o===Me.DOWNLOAD_STATUS.DOWNLOADING||o===Me.DOWNLOAD_STATUS.INITIATING)&&u.jsx("div",{className:"progress",children:u.jsx("div",{className:"progress-bar progress-bar-striped progress-bar-animated",style:{width:"".concat(r,"%")}})}),o===Me.DOWNLOAD_STATUS.FINISHED&&u.jsx("div",{className:"progress",children:u.jsx("div",{className:"progress-bar bg-success",style:{width:"".concat(r,"%")}})})]}),u.jsxs(G,{kind:"primary","data-testid":"btn-csv-exporter-download",className:J("btn-downloading",{"btn-spinner btn-cancelable":t}),onClick:this.handleDownloadClick,children:[t&&u.jsxs("span",{children:[u.jsx(kn,{}),u.jsx("span",{className:"btn-normal-content",children:"Downloading"}),u.jsx("span",{className:"btn-hover-content",children:"Cancel"})]}),!t&&"Download"]})]})]})}}Ia(Me,"FILENAME_DATE_FORMAT","yyyy-MM-dd-HHmmss");Ia(Me,"DOWNLOAD_STATUS",{INITIATING:"INITIATING",DOWNLOADING:"DOWNLOADING",FINISHED:"FINISHED",CANCELED:"CANCELED"});Ia(Me,"DOWNLOAD_ROW_OPTIONS",{ALL_ROWS:"ALL_ROWS",SELECTED_ROWS:"SELECTED_ROWS",CUSTOMIZED_ROWS:"CUSTOMIZED_ROWS"});Ia(Me,"CUSTOMIZED_ROWS_OPTIONS",{FIRST:"FIRST",LAST:"LAST"});Ia(Me,"DEFAULT_DOWNLOAD_ROWS",100);Ia(Me,"defaultProps",{onDownloadStart:()=>{},isDownloading:!1,tableDownloadStatus:"",tableDownloadProgress:0,tableDownloadEstimatedTime:null,selectedRanges:[]});const ia=Me;function He(n,e,t){return e=Qx(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Qx(n){var e=Zx(n,"string");return typeof e=="symbol"?e:String(e)}function Zx(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 Yn=ae.module("TableSaver"),Jx="yyyy-MM-dd'T'HH:mm:ss.SSSSSSSSS z";function eM(n){return n.added!==void 0}function tM(n){if(!eM(n))throw new Error("event is not UpdateEventData")}class pr extends y.PureComponent{static csvEscapeString(e){return'"'.concat(e.replace(/"/g,'""'),'"')}constructor(e){super(e),He(this,"sw",void 0),He(this,"port",void 0),He(this,"fileWriter",void 0),He(this,"table",void 0),He(this,"tableSubscription",void 0),He(this,"columns",void 0),He(this,"fileName",void 0),He(this,"includeColumnHeaders",void 0),He(this,"useUnformattedValues",void 0),He(this,"chunkRows",void 0),He(this,"gridRanges",void 0),He(this,"gridRangeCounter",void 0),He(this,"rangedSnapshotsTotal",void 0),He(this,"rangedSnapshotCounter",void 0),He(this,"snapshotsTotal",void 0),He(this,"snapshotCounter",void 0),He(this,"snapshotsBuffer",void 0),He(this,"currentSnapshotIndex",void 0),He(this,"snapshotPending",void 0),He(this,"cancelableSnapshots",void 0),He(this,"streamTimeout",void 0),He(this,"snapshotHandlerTimeout",void 0),He(this,"downloadStartTime",void 0),He(this,"iframes",void 0),He(this,"useBlobFallback",void 0),He(this,"getCachedCustomColumnFormatFlag",wn(oi.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.iframes=[],this.useBlobFallback=!1}componentDidMount(){var{getDownloadWorker:e}=this.props;e().then(t=>{Yn.info("found active service worker"),this.sw=t,this.sw.postMessage("ping")}).catch(t=>{Yn.warn("Download csv is not optimized.",t),this.useBlobFallback=!0})}componentWillUnmount(){this.iframes.length>0&&this.iframes.forEach(e=>{e.remove()}),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,o={};return t?(o.write=s=>{A(i),s.header!==void 0&&r.push(i(s.header)),s.rows!==void 0&&r.push(i(s.rows))},o.close=()=>{A(a);var s=new Blob(r,{type:"application/octet-stream; charset=utf-8"}),l=document.createElement("a");l.href=URL.createObjectURL(s),l.download=a,l.click()},o.abort=()=>{e.postMessage({cancel:!0}),e.close()}):(o.write=s=>{e.postMessage(s)},o.close=()=>{e.postMessage({end:!0}),e.close()},o.abort=()=>{e.postMessage({cancel:!0}),e.close()}),new WritableStream(o)}startDownload(e,t,r,i,a,o,s){var{isDownloading:l}=this.props;if(!l){this.downloadStartTime=Date.now(),Yn.info("start downloading ".concat(e)),this.table=t,this.columns=ye.columnsFromRanges(a,t.columns),this.tableSubscription=r,this.gridRanges=i,this.includeColumnHeaders=o,this.useUnformattedValues=s;var d=encodeURIComponent(e.replace(/\//g,":")).replace(/['()]/g,escape).replace(/\*/g,"%2A"),h=new MessageChannel;if(this.port=h.port1,this.fileName=e,this.fileWriter=this.createWriterStream(this.port).getWriter(),this.useBlobFallback){this.writeCsvTable(o);return}this.sw&&this.sw.postMessage({encodedFileName:d},[h.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&&Yn.info("download finished, total elapsed time ".concat((Date.now()-this.downloadStartTime)/1e3," seconds"))}cancelDownload(){this.table&&this.table.close(),this.tableSubscription&&this.tableSubscription.close(),this.fileWriter&&this.fileWriter.abort(),this.cancelableSnapshots.forEach(t=>{t&&(t.catch(()=>null),t.cancel())});var{onDownloadCanceled:e}=this.props;e(),this.resetTableSaver()}resetTableSaver(){this.table=void 0,this.tableSubscription=void 0,this.columns=void 0,this.chunkRows=void 0,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(){Yn.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?`
23
23
  `:",";(e=this.fileWriter)===null||e===void 0||e.write({header:t}).then(()=>null)}startWriteTableBody(){this.columns&&this.gridRanges!=null&&(this.chunkRows=Math.floor(pr.DOWNLOAD_CELL_CHUNK/this.columns.length),this.rangedSnapshotsTotal=this.gridRanges.map(e=>(A(e.endRow),A(e.startRow),A(this.chunkRows),Math.ceil((e.endRow-e.startRow+1)/this.chunkRows))),this.snapshotsTotal=this.rangedSnapshotsTotal.reduce((e,t)=>e+t),Yn.info("start writing table, total snapshots: ",this.snapshotsTotal),this.makeSnapshot(Math.min(pr.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);A(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&&(Yn.debug2(`
24
24
  current range index: `.concat(this.gridRangeCounter,`,
25
25
  snapshotIndexCounter: `).concat(this.snapshotCounter,`,
@@ -41,4 +41,4 @@ This note can be edited using **markdown** for styling.`);const xu=vo;function q
41
41
  Web UI Version: ${e}
42
42
  Java Version: ${s}
43
43
  Barrage Version: ${o}`,children:"Copy Versions"})]})]})]}),u.jsx("div",{className:"app-settings-footer-item",children:u.jsx(NH,{})})]}),u.jsx("div",{className:"app-settings-footer-section",children:u.jsx("div",{className:"logo",children:u.jsx("a",{target:"_blank",rel:"noreferrer noopener",href:"https://deephaven.io",className:"d-inline-block custom-link p-1",children:u.jsx("img",{src:Wb,alt:"Deephaven Data Labs",width:"230px"})})})})]})]})]})}}const zg=10;function Xa(n){const{forwardedProps:{menuItem:{action:e,title:t,disabled:r},iconElement:i,displayShortcut:a,isMouseSelected:o,isKeyboardSelected:s,closeMenu:l}}=n,d=y.useRef(),h=y.useRef(),c=y.useRef(null),[m,v]=y.useState(!1),f=y.useCallback(C=>{d.current!=null&&h.current!=null&&c.current&&(Math.abs(d.current-C.clientX)>=zg||Math.abs(h.current-C.clientY)>=zg)&&(v(!0),window.removeEventListener("mousemove",f),l(),e(C),c.current=null)},[e,l]);function g(C){d.current=C.clientX,h.current=C.clientY,c.current=C.target,window.addEventListener("mousemove",f)}function p(C){c.current===C.target&&(v(!0),l(),e(),window.removeEventListener("mousemove",f)),c.current=null}return y.useEffect(function(){return function(){return window.removeEventListener("mousemove",f)}},[f]),u.jsxs("button",{type:"button",className:J("btn-context-menu",{disabled:r},{active:o&&!r},{"keyboard-active":s&&!r}),onMouseDown:g,onMouseUp:p,disabled:m,children:[u.jsx("span",{className:J("icon"),children:i}),u.jsx("span",{className:"title",children:t}),u.jsx("span",{className:"shortcut",children:a})]})}function Tc(n){const{handleControlSelect:e,handleToolSelect:t,onClearFilter:r}=n,i=y.useMemo(()=>[{title:"Input Filter",icon:Zw,menuElement:u.jsx(Xa,{}),action:a=>{e(Wi.INPUT_FILTER,a)},order:10},{title:"Dropdown Filter",icon:dp,menuElement:u.jsx(Xa,{}),action:a=>{e(Wi.DROPDOWN_FILTER,a)},order:15},{title:"Markdown Widget",icon:Jw,menuElement:u.jsx(Xa,{}),action:a=>{e(Wi.MARKDOWN,a)},order:20},{title:"Filter Sets",icon:Uu,menuElement:u.jsx(Xa,{}),action:a=>{e(Wi.FILTER_SET_MANAGER,a)},order:25},{disabled:!0,menuElement:u.jsx("div",{className:"context-menu-group-header",children:"Tools"}),order:30},{title:"Linker",icon:op,action:()=>{t(Sr.LINKER)},order:40,shortcut:ui.LINKER},{disabled:!0,menuElement:u.jsx("div",{className:"context-menu-group-header",children:"Actions"}),order:50},{title:"Clear All Filters",icon:ey,action:()=>{r()},order:60,shortcut:xr.TABLE.CLEAR_ALL_FILTERS}],[e,t,r]);return u.jsx(ai,{popperClassName:"controls-menu-popper",actions:i})}Tc.propTypes={handleControlSelect:Y.func,handleToolSelect:Y.func,onClearFilter:Y.func};Tc.defaultProps={handleControlSelect:()=>{},handleToolSelect:()=>{},onClearFilter:()=>{}};Xa.propTypes={forwardedProps:Y.shape({iconElement:Y.node,displayShortcut:Y.string,isMouseSelected:Y.bool.isRequired,isKeyboardSelected:Y.bool.isRequired,closeMenu:Y.func.isRequired,menuItem:Y.shape({action:Y.func,title:Y.string,disabled:Y.bool}).isRequired})};Xa.defaultProps={forwardedProps:null};const GH=Ji(Gb,null),WH={layoutStorage:GH},zH=n=>n.layoutStorage,KH=n=>n.serverConfigValues;Object.entries(WH).map(([n,e])=>Ts.register(n,e));const Kg=10;function YH(n){const{onExportLayout:e,onImportLayout:t,onResetLayout:r,onSelect:i,widgets:a=[]}=n,[o,s]=y.useState(!1),[l,d]=y.useState(""),h=y.useRef(null),c=y.useRef(),m=y.useCallback((w,E)=>{w!=null&&i(w,E)},[i]),v=y.useCallback(w=>{d(w.target.value)},[]),f=y.useCallback(w=>{c.current!=null&&(Math.abs(c.current.x-w.clientX)>=Kg||Math.abs(c.current.y-w.clientY)>=Kg)&&(s(!0),window.removeEventListener("mousemove",f),m(c.current.widget,w),c.current=void 0)},[c,m]),g=y.useCallback((w,E)=>{c.current={x:w.clientX,y:w.clientY,widget:E},window.addEventListener("mousemove",f)},[f]),p=y.useCallback((w,E)=>{window.removeEventListener("mousemove",f),c.current?.widget===E&&(s(!0),m(E)),c.current=void 0},[f,c,m]),C=y.useMemo(()=>a.filter(w=>l?w.name?.toLowerCase().includes(l.toLowerCase()):!0),[l,a]).sort((w,E)=>w.name?.localeCompare(E.name??"")??0),b=y.useMemo(()=>C.map(w=>u.jsx("li",{children:u.jsxs(G,{kind:"ghost","data-testid":`panel-list-item-${w.name??""}-button`,onMouseDown:E=>{g(E,w)},onMouseUp:E=>{p(E,w)},onKeyDown:E=>{(E.key==="Enter"||E.key===" ")&&m(w)},disabled:o,onClick:()=>{},children:[u.jsx(Cp,{type:w.type})," ",w.name??""]})},w.name)),[C,o,g,p,m]),S=y.useMemo(()=>b.length===0?u.jsx("span",{children:"No bound variables found."}):null,[b]);return u.jsxs("div",{className:"widget-list-container d-flex flex-column",children:[u.jsx("div",{className:"widget-list-header",children:u.jsx(fo,{value:l,placeholder:"Find Table, Plot or Widget",onChange:v,ref:h})}),u.jsxs("ul",{className:"widget-list flex-grow-1",children:[S&&u.jsx("li",{className:"widget-list-message",children:S}),!S&&b]}),u.jsx("div",{children:u.jsx("hr",{})}),u.jsxs("div",{className:"widget-list-footer",children:[u.jsxs(G,{kind:"ghost",onClick:e,children:[u.jsxs("div",{className:"fa-md fa-layers",children:[u.jsx(te,{mask:$u,icon:Zc,transform:"right-5 down-5"}),u.jsx(te,{icon:Zc,transform:"right-8 down-6"})]}),"Export Layout"]}),u.jsxs(G,{kind:"ghost",onClick:t,children:[u.jsxs("div",{className:"fa-md fa-layers",children:[u.jsx(te,{mask:$u,icon:Bu,transform:"right-5 down-5"}),u.jsx(te,{icon:Bu,transform:"right-8 down-6"})]}),"Import Layout"]}),u.jsx(G,{kind:"ghost",icon:fa,onClick:r,tooltip:"Reset Layout"})]})]})}async function qH(n,e,t,r){let i,a,o,s;if(Rl(t)?(i=t.settings,a=t.table,o=void 0,s=t.tableSettings):(i={},a="",o=t.name??t.figure,s={}),r!=null&&(r.tableSettings!=null&&(s=r.tableSettings),r.table!=null&&(a=r.table),r.figure!=null&&(o=r.figure),r.settings!=null&&(i={...i,...r.settings})),o!=null){const h={title:o,name:o,type:n.VariableType.FIGURE},c=await e.getObject(h);return zu.makeModel(n,i,c)}const l={title:o,name:a,type:n.VariableType.TABLE},d=await e.getObject(l);return new ye(n).applyTableSettings(d,s,Es(Hh.getState())),zu.makeModelFromSettings(n,i,d)}const XH=async(n,e,t)=>{const{name:r,type:i}=t,a={title:r,name:r,type:i},o=await e.getObject(a);return HL.makeModel(n,o)};function QH({onAutoFillClick:n=()=>{}}){return u.jsxs("div",{className:"empty-dashboard-container",children:[u.jsxs("div",{className:"hint-container",children:[u.jsx(te,{icon:lp})," ",u.jsx("br",{}),"Use the panel list to add objects from a query."]}),u.jsxs("div",{className:"empty-dashboard",children:[u.jsx("div",{className:"add-panels-hint",children:"Drag Panels Here"}),u.jsx(G,{kind:"tertiary",onClick:n,children:"Auto fill objects"})]})]})}function ZH(n){return n.version===2}function JH(n){return Array.isArray(n)}const wl=ae.module("UserLayoutUtils"),e$={layoutConfig:[{type:"column",content:[{type:"row",height:40,content:[{type:"stack",content:[{type:"react-component",component:ns.COMPONENT,title:ns.TITLE,isClosable:!1},{type:"react-component",component:gh.COMPONENT,title:gh.TITLE,isClosable:!1}]},{type:"stack",width:25,content:[{type:"react-component",component:ch.COMPONENT,title:ch.TITLE,isClosable:!1},{type:"react-component",component:fh.COMPONENT,title:fh.TITLE,isClosable:!1}]}]},{type:"row",content:[{type:"stack",title:"Notebooks",content:[]}]}]}],links:[],filterSets:[],version:2},t$={layoutConfig:[],links:[],filterSets:[],version:2};function Zb(n){if(ZH(n))return n;if(JH(n))return{layoutConfig:n,links:[],filterSets:[],version:2};throw new Error(`Unexpected layout import format: ${n}`)}async function r$(n,e=!0){try{const t=await n.getLayouts();if(t.length>0)try{const r=await n.getLayout(t[0]);return Zb(r)}catch(r){wl.error("Unable to load layout",t[0],":",r),wl.warn("No valid layouts found, falling back to default layout")}}catch(t){wl.error("Unable to fetch layout list",t),wl.warn("Falling back to default layout")}return e?e$:t$}function n$(n){const{filterSets:e,layoutConfig:t,links:r}=n;return{filterSets:e,layoutConfig:t,links:r,version:2}}const Il={exportLayout:n$,getDefaultLayout:r$,normalizeLayout:Zb},yl=ae.module("DownloadServiceWorkerUtils");class Ad{static DOWNLOAD_PATH="/download/";static registerOnLoaded(){new URL("./",window.location.href).origin===window.location.origin&&("serviceWorker"in navigator?window.addEventListener("load",()=>{const t=new URL("./download/serviceWorker.js",window.location.href);navigator.serviceWorker.register(t).then(r=>{r.update(),yl.info("Registering service worker on ",t,r)}).catch(r=>{yl.error("Failed to register service worker",r)})}):yl.info("Service worker is not supported."))}static async getServiceWorker(){if("serviceWorker"in navigator){const t=(await navigator.serviceWorker.getRegistrations()).find(r=>r.scope.endsWith(Ad.DOWNLOAD_PATH));if(t&&t.active)return yl.info("Download service worker is active."),t.active;throw new Error("Can not find download service worker.")}throw new Error("Download service worker is not available.")}static unregisterSW(){}}const St=ae.module("AppMainContainer");class Qa extends y.Component{static handleWindowBeforeUnload(e){e.preventDefault(),e.returnValue=""}static hydrateConsole(e,t){return eh.hydrate({...e,unzip:r=>ep.loadAsync(r).then(i=>Object.values(i.files))},t)}static handleRefresh(){St.info("Refreshing application"),window.location.reload()}constructor(e){super(e),this.handleSettingsMenuHide=this.handleSettingsMenuHide.bind(this),this.handleSettingsMenuShow=this.handleSettingsMenuShow.bind(this),this.handleError=this.handleError.bind(this),this.handleControlSelect=this.handleControlSelect.bind(this),this.handleToolSelect=this.handleToolSelect.bind(this),this.handleClearFilter=this.handleClearFilter.bind(this),this.handleDataChange=this.handleDataChange.bind(this),this.handleAutoFillClick=this.handleAutoFillClick.bind(this),this.handleGoldenLayoutChange=this.handleGoldenLayoutChange.bind(this),this.handleLayoutConfigChange=this.handleLayoutConfigChange.bind(this),this.handleExportLayoutClick=this.handleExportLayoutClick.bind(this),this.handleImportLayoutClick=this.handleImportLayoutClick.bind(this),this.handleImportLayoutFiles=this.handleImportLayoutFiles.bind(this),this.handleLoadTablePlugin=this.handleLoadTablePlugin.bind(this),this.handleResetLayoutClick=this.handleResetLayoutClick.bind(this),this.handleWidgetMenuClick=this.handleWidgetMenuClick.bind(this),this.handleWidgetsMenuClose=this.handleWidgetsMenuClose.bind(this),this.handleWidgetSelect=this.handleWidgetSelect.bind(this),this.handlePaste=this.handlePaste.bind(this),this.hydrateChart=this.hydrateChart.bind(this),this.hydrateTable=this.hydrateTable.bind(this),this.hydrateDefault=this.hydrateDefault.bind(this),this.openNotebookFromURL=this.openNotebookFromURL.bind(this),this.handleDisconnect=this.handleDisconnect.bind(this),this.handleReconnect=this.handleReconnect.bind(this),this.handleReconnectAuthFailed=this.handleReconnectAuthFailed.bind(this),this.importElement=he.createRef(),this.state={contextActions:[{action:()=>{this.handleToolSelect(Sr.LINKER)},shortcut:ui.LINKER,isGlobal:!0},{action:()=>{this.sendClearFilter()},shortcut:xr.TABLE.CLEAR_ALL_FILTERS,isGlobal:!0},{action:()=>{St.debug("Consume unhandled save shortcut")},shortcut:ui.SAVE,isGlobal:!0}],isAuthFailed:!1,isDisconnected:!1,isPanelsMenuShown:!1,isSettingsMenuShown:!1,widgets:[]}}componentDidMount(){this.initWidgets(),this.startListeningForDisconnect(),window.addEventListener("beforeunload",Qa.handleWindowBeforeUnload)}componentDidUpdate(e){const{dashboardData:t}=this.props;e.dashboardData!==t&&this.handleDataChange(t)}componentWillUnmount(){this.deinitWidgets(),this.stopListeningForDisconnect(),window.removeEventListener("beforeunload",Qa.handleWindowBeforeUnload)}goldenLayout;importElement;widgetListenerRemover;initWidgets(){const{connection:e}=this.props;if(e.subscribeToFieldUpdates==null){St.warn("subscribeToFieldUpdates not supported, not initializing widgets");return}this.widgetListenerRemover=e.subscribeToFieldUpdates(t=>{St.debug("Got updates",t),this.setState(({widgets:r})=>{const{updated:i,created:a,removed:o}=t,s=[...i,...o],l=r.filter(h=>!s.some(c=>c.name===h.name));return[...i,...a].forEach(h=>{h.name!=null&&h.name!==""&&l.push(h)}),{widgets:l}})})}deinitWidgets(){this.widgetListenerRemover?.()}openNotebookFromURL(){const{match:e}=this.props,{notebookPath:t}=e.params;if(t){const{session:r,sessionConfig:i}=this.props;if(r==null||i==null){St.error("No session available to open notebook URL",t);return}const a={id:`/${t}`,itemName:`/${t}`},o=i.type,s={value:null,language:o};this.emitLayoutEvent(Ke.SELECT_NOTEBOOK,r,o,s,a,!0)}}sendClearFilter(){this.emitLayoutEvent(at.CLEAR_ALL_FILTERS)}emitLayoutEvent(e,...t){this.goldenLayout?.eventHub.emit(e,...t)}handleError(e){Te.isCanceled(e)||St.error(e)}handleSettingsMenuHide(){this.setState({isSettingsMenuShown:!1})}handleSettingsMenuShow(){this.setState({isSettingsMenuShown:!0})}handleControlSelect(e,t){switch(St.debug("handleControlSelect",e),e){case Wi.DROPDOWN_FILTER:this.emitLayoutEvent(at.OPEN_DROPDOWN,{title:"DropdownFilter",type:e,createNewStack:!0,dragEvent:t});break;case Wi.INPUT_FILTER:this.emitLayoutEvent(at.OPEN_INPUT,{title:"InputFilter",type:e,createNewStack:!0,dragEvent:t});break;case Wi.MARKDOWN:this.emitLayoutEvent(vb.OPEN,{title:"Markdown",type:e,dragEvent:t});break;case Wi.FILTER_SET_MANAGER:this.emitLayoutEvent(at.OPEN_FILTER_SET_MANAGER,{title:"FilterSets",type:e,dragEvent:t});break;default:throw new Error(`Unrecognized control type ${e}`)}}handleToolSelect(e){St.debug("handleToolSelect",e);const{activeTool:t,setActiveTool:r}=this.props;r(t===e?Sr.DEFAULT:e)}handleClearFilter(){this.sendClearFilter()}handleDataChange(e){const{updateWorkspaceData:t}=this.props,{closed:r,filterSets:i,links:a}=e;t({closed:r,filterSets:i,links:a})}handleGoldenLayoutChange(e){this.goldenLayout=e}handleLayoutConfigChange(e){const{updateWorkspaceData:t}=this.props;t({layoutConfig:e})}handleWidgetMenuClick(){this.setState(({isPanelsMenuShown:e})=>({isPanelsMenuShown:!e}))}handleWidgetSelect(e,t){this.setState({isPanelsMenuShown:!1}),St.debug("handleWidgetSelect",e,t),this.openWidget(e,t)}handleWidgetsMenuClose(){this.setState({isPanelsMenuShown:!1})}handleAutoFillClick(){const{widgets:e}=this.state;St.debug("handleAutoFillClick",e);const t=e.sort((r,i)=>r.title!=null&&i.title!=null?r.title.localeCompare(i.title):0);for(let r=0;r<t.length;r+=1)this.openWidget(t[r])}handleExportLayoutClick(){St.info("handleExportLayoutClick"),this.setState({isPanelsMenuShown:!1});try{const{workspace:e}=this.props,{data:t}=e,r=Il.exportLayout(t);St.info("handleExportLayoutClick exportedConfig",r);const i=new Blob([JSON.stringify(r)],{type:"application/json"}),a=ln.i18n.DateTimeFormat.format("yyyy-MM-dd-HHmmss",new Date),o=document.createElement("a");o.href=URL.createObjectURL(i),o.download=`deephaven-app-layout-${a}.json`,o.click()}catch(e){St.error("Unable to export layout",e)}}handleImportLayoutClick(){St.info("handleImportLayoutClick"),this.setState({isPanelsMenuShown:!1}),this.importElement.current!=null&&(this.importElement.current.value="",this.importElement.current.click())}handleResetLayoutClick(){St.info("handleResetLayoutClick"),this.setState({isPanelsMenuShown:!1}),this.resetLayout()}handleImportLayoutFiles(e){e.stopPropagation(),e.preventDefault(),e.target.files!=null&&this.importLayoutFile(e.target.files?.[0])}handleDisconnect(){St.info("Disconnected from server"),this.setState({isDisconnected:!0})}handleReconnect(){St.info("Reconnected to server"),this.setState({isDisconnected:!1})}handleReconnectAuthFailed(){St.warn("Reconnect authentication failed"),this.setState({isAuthFailed:!0})}async importLayoutFile(e){try{const{updateDashboardData:t,updateWorkspaceData:r}=this.props,i=await e.text(),a=JSON.parse(i),{filterSets:o,layoutConfig:s,links:l}=Il.normalizeLayout(a);r({layoutConfig:s}),t(bn,{filterSets:o,links:l})}catch(t){St.error("Unable to import layout",t)}}async resetLayout(){const{layoutStorage:e,session:t}=this.props,{filterSets:r,layoutConfig:i,links:a}=await Il.getDefaultLayout(e,t!==void 0),{updateDashboardData:o,updateWorkspaceData:s}=this.props;s({layoutConfig:i}),o(bn,{filterSets:r,links:a})}handlePaste(e){if(e.target instanceof HTMLElement&&e.target.closest(".monaco-editor"))return;const{clipboardData:t}=e,r=t.getData("Text"),i=/“|”/g;i.test(r)&&(e.preventDefault(),e.stopPropagation(),document.execCommand("insertText",!1,r.replace(i,'"')))}handleLoadTablePlugin(e){const{plugins:t}=this.props,r=t.get(e);if(r!=null){if(py(r))return r.component;if(Cy(r))return r.TablePlugin}const i=`Unable to find table plugin ${e}.`;throw St.error(i),new Error(i)}startListeningForDisconnect(){const{connection:e}=this.props;e.addEventListener(ln.IdeConnection.EVENT_DISCONNECT,this.handleDisconnect),e.addEventListener(ln.IdeConnection.EVENT_RECONNECT,this.handleReconnect),e.addEventListener(ln.CoreClient.EVENT_RECONNECT_AUTH_FAILED,this.handleReconnectAuthFailed)}stopListeningForDisconnect(){const{connection:e}=this.props;e.removeEventListener(ln.IdeConnection.EVENT_DISCONNECT,this.handleDisconnect),e.removeEventListener(ln.IdeConnection.EVENT_RECONNECT,this.handleReconnect),e.removeEventListener(ln.CoreClient.EVENT_RECONNECT_AUTH_FAILED,this.handleReconnectAuthFailed)}hydrateDefault(e,t){const{connection:r}=this.props,{metadata:i}=e;if(i?.type!=null&&(i?.id!=null||i?.name!=null)){const a=i.id!=null?{type:i.type,id:i.id}:{type:i.type,name:i.name,title:i.name};return{fetch:()=>r.getObject(a),...e,localDashboardId:t}}return eh.hydrate(e,t)}hydrateTable(e,t){const{connection:r}=this.props;let i;if(Nb(e.metadata))i=e.metadata;else if(Rb(e.metadata))i={name:e.metadata.table,type:e.metadata.type??ln.VariableType.TABLE};else throw new Error("Metadata is required for table panel");return{...e,getDownloadWorker:Ad.getServiceWorker,loadPlugin:this.handleLoadTablePlugin,localDashboardId:t,makeModel:()=>XH(ln,r,i)}}hydrateChart(e,t){const{connection:r}=this.props;return{...e,localDashboardId:t,makeModel:()=>{const{metadata:i}=e,a=S1(e)?e.panelState:void 0;if(i==null)throw new Error("Metadata is required for chart panel");return qH(ln,r,i,a)}}}openWidget(e,t){const{connection:r}=this.props;this.emitLayoutEvent(Ee.OPEN,{dragEvent:t,fetch:()=>r.getObject(e),widget:e})}getDashboardPlugins=Ce(e=>[...e.entries()].filter(([,r])=>wy(r)).map(([r,{DashboardPlugin:i}])=>u.jsx(i,{},r)).concat([...e.values()].filter(yy).map(({component:r,name:i})=>u.jsx(r,{},i))));render(){const{activeTool:e,plugins:t,user:r,workspace:i,serverConfigValues:a}=this.props,{data:o}=i,{layoutConfig:s}=o,{permissions:l}=r,{canUsePanels:d}=l,{contextActions:h,isAuthFailed:c,isDisconnected:m,isPanelsMenuShown:v,isSettingsMenuShown:f,widgets:g}=this.state,p=this.getDashboardPlugins(t);return u.jsxs("div",{className:J("app-main-tabs","w-100","h-100","d-flex","flex-column",e?`active-tool-${e.toLowerCase()}`:""),onPaste:this.handlePaste,tabIndex:-1,children:[u.jsx("nav",{className:"nav-container",children:u.jsxs("div",{className:"app-main-top-nav-menus",children:[u.jsx("img",{src:Wb,alt:"Deephaven Data Labs",width:"115px",className:"ml-1"}),u.jsxs("div",{children:[u.jsxs(G,{kind:"ghost",className:"btn-panels-menu",icon:ty,onClick:()=>{},children:["Controls",u.jsx(Tc,{handleControlSelect:this.handleControlSelect,handleToolSelect:this.handleToolSelect,onClearFilter:this.handleClearFilter})]}),d&&u.jsxs(G,{kind:"ghost",className:"btn-panels-menu btn-show-panels","data-testid":"app-main-panels-button",onClick:this.handleWidgetMenuClick,icon:ry,children:["Panels",u.jsx(ud,{isShown:v,className:"panels-menu-popper",onExited:this.handleWidgetsMenuClose,options:{placement:"bottom"},closeOnBlur:!0,interactive:!0,children:u.jsx(YH,{widgets:g,onExportLayout:this.handleExportLayoutClick,onImportLayout:this.handleImportLayoutClick,onResetLayout:this.handleResetLayoutClick,onSelect:this.handleWidgetSelect})})]}),u.jsx(G,{kind:"ghost",className:J("btn-settings-menu",{"text-warning":r.operateAs!=null&&r.operateAs!==r.name}),onClick:this.handleSettingsMenuShow,icon:u.jsxs("span",{className:"fa-layers",children:[u.jsx(te,{icon:bs,transform:"grow-3 right-1 down-1"}),m&&!c&&u.jsxs(u.Fragment,{children:[u.jsx(te,{icon:ls,color:Ze.background,transform:"grow-2 right-8 down-8.5 rotate-45"}),u.jsx(te,{icon:Jc,color:Ze.danger,transform:"shrink-5 right-6 down-6"})]})]}),tooltip:m&&!c?"Server disconnected":"User Settings"})]})]})}),u.jsxs(zD,{emptyDashboard:u.jsx(QH,{onAutoFillClick:this.handleAutoFillClick}),id:bn,layoutConfig:s,onGoldenLayoutChange:this.handleGoldenLayoutChange,onLayoutConfigChange:this.handleLayoutConfigChange,onLayoutInitialized:this.openNotebookFromURL,hydrate:this.hydrateDefault,children:[u.jsx(Nj,{hydrate:this.hydrateTable}),u.jsx(wj,{hydrate:this.hydrateChart}),u.jsx(yj,{}),u.jsx(Dj,{hydrateConsole:Qa.hydrateConsole,notebooksUrl:new URL("notebooks/",document.baseURI).href}),u.jsx(Rj,{}),u.jsx(Xj,{hydrate:this.hydrateTable}),u.jsx(qj,{}),u.jsx(zj,{}),p]}),u.jsx(Lr,{in:f,timeout:Ze.transitionMidMs,classNames:"slide-left",mountOnEnter:!0,unmountOnExit:!0,children:u.jsx(Nn,{serverConfigValues:a,onDone:this.handleSettingsMenuHide,user:r})}),u.jsx(oe,{actions:h}),u.jsx("input",{ref:this.importElement,type:"file",accept:".json",style:{display:"none"},onChange:this.handleImportLayoutFiles}),u.jsx(by,{isOpen:m&&!c,debounceMs:1e3,children:u.jsx(Sy,{icon:Jc,title:u.jsxs(u.Fragment,{children:[u.jsx(kn,{})," Attempting to reconnect..."]}),subtitle:"Please check your network connection."})}),u.jsx(ds,{confirmButtonText:"Refresh",onConfirm:Qa.handleRefresh,isOpen:c,headerText:"Authentication failed",bodyText:"Credentials are invalid. Please refresh your browser to try and reconnect."})]})}}const i$=n=>({activeTool:Cd(n),dashboardData:yr(n,bn),layoutStorage:zH(n),plugins:HT(n),connection:h1(n,bn),session:Pa(n,bn)?.session,sessionConfig:Pa(n,bn)?.config,user:kp(n),workspace:pd(n),serverConfigValues:KH(n)}),a$=Ht(i$,{setActiveTool:Sd,updateDashboardData:jn,updateWorkspaceData:nC})(BS(Qa));function o$(){return u.jsxs("div",{className:"app",children:[u.jsx(a$,{}),u.jsx(fp,{})]})}const s$=ae.module("LocalWorkspaceStorage");class Za{static STORAGE_KEY="deephaven.WorkspaceStorage";static async makeDefaultWorkspaceData(e,t){const{filterSets:r,links:i,layoutConfig:a}=await Il.getDefaultLayout(e,t?.isConsoleAvailable);return{settings:{defaultDateTimeFormat:Tt.DEFAULT_DATETIME_FORMAT_STRING,formatter:[],timeZone:Tt.DEFAULT_TIME_ZONE_ID,showTimeZone:!1,showTSeparator:!0,disableMoveConfirmation:!1,defaultDecimalFormatOptions:{defaultFormatString:Je.DEFAULT_FORMAT_STRING},defaultIntegerFormatOptions:{defaultFormatString:Et.DEFAULT_FORMAT_STRING},truncateNumbersWithPound:!1,defaultNotebookSettings:{isMinimapEnabled:!1}},layoutConfig:a,closed:[{}],links:i,filterSets:r}}static async makeDefaultWorkspace(e,t){return{data:await Za.makeDefaultWorkspaceData(e,t)}}layoutStorage;constructor(e){this.layoutStorage=e}async load(e){try{return JSON.parse(localStorage.getItem(Za.STORAGE_KEY)??"")}catch{return s$.info("Unable to load workspace data, initializing to default data"),Za.makeDefaultWorkspace(this.layoutStorage,e)}}async save(e){return localStorage.setItem(Za.STORAGE_KEY,JSON.stringify(e)),e}}class l${storageService;root;constructor(e,t=""){this.storageService=e,this.root=t}async getLayouts(){return(await this.storageService.listItems(this.root,"*.json")).map(t=>t.basename)}async getLayout(e){const r=await(await this.storageService.loadFile(`${this.root}/${e}`)).text();return JSON.parse(r)}}const Go=ae.module("GrpcFileStorageTable");class Jl{static REFRESH_DEBOUNCE=50;storageService;baseRoot;root;currentSize=0;currentViewport;listeners=[];viewportUpdatePromise;currentViewportData;childTables=new Map;constructor(e,t="",r=t){this.storageService=e,this.baseRoot=t,this.root=r,r===t&&(this.doRefresh=tt(this.doRefresh.bind(this),Jl.REFRESH_DEBOUNCE))}removeBaseRoot(e){return ge.removeRoot(this.baseRoot,e)}getViewportData(){return this.viewportUpdatePromise||this.refreshInternal(),this.viewportUpdatePromise??Promise.resolve({items:[],offset:0})}getSnapshot(e){throw new Error("Method not implemented.")}get size(){return this.currentSize}setExpanded(e,t){const r=e.split("/");let i=r.shift();if((i===void 0||i==="")&&(i=r.shift()),i===void 0||i==="")throw new Error(`Invalid path: ${e}`);const a=r.join("/");if(t){if(!this.childTables.has(i)){const o=new Jl(this.storageService,this.baseRoot,`${this.root}/${i}`);this.childTables.set(i,o)}a&&this.childTables.get(i)?.setExpanded(a,t)}else this.childTables.has(i)&&(a?this.childTables.get(i)?.setExpanded(a,t):this.childTables.delete(i));this.currentViewport&&this.refreshInternal()}collapseAll(){this.childTables.clear(),this.currentViewport&&this.refreshInternal()}setSearch(e){throw new Error("Method not implemented.")}setViewport(e){this.currentViewport=e,this.refreshInternal()}setFilters(){throw new Error("Method not implemented.")}setSorts(){throw new Error("Method not implemented.")}setReversed(){throw new Error("Method not implemented.")}close(){this.listeners=[]}onUpdate(e){return this.listeners=[...this.listeners,e],()=>{this.listeners=this.listeners.filter(t=>t!==e)}}doRefresh(e){Go.debug2("doRefresh",this.root),e(this.fetchData())}refresh(){Go.debug2("refresh",this.root),this.viewportUpdatePromise?.cancel();const e=new Promise(r=>{this.doRefresh(r)}),t=Te.makeCancelable(e.then(r=>{if(this.viewportUpdatePromise!==t)throw new sd;return this.currentViewportData=r,this.sendUpdate(),r}));t.catch(r=>{Te.isCanceled(r)||Go.error("Error updating viewport",r)}),this.viewportUpdatePromise=t}refreshInternal(){try{this.refresh()}catch(e){Te.isCanceled(e)||Go.error("Unable to refresh data",e)}}async fetchData(){const{currentViewport:e}=this;if(!e)throw new Error("No viewport set");let r=(await this.storageService.listItems(this.root)).map(i=>({type:i.type,filename:this.removeBaseRoot(i.filename),basename:i.basename,id:this.removeBaseRoot(i.filename),isExpanded:i.type==="directory"?this.childTables.has(i.basename):void 0})).sort((i,a)=>i.type!==a.type?i.type==="directory"?-1:1:i.basename.localeCompare(a.basename));for(let i=0;i<r.length;i+=1){const a=r[i],{basename:o,filename:s}=a;if(s===this.removeBaseRoot(`${this.root}/${o}`)&&a.type==="directory"){const l=this.childTables.get(o);if(l!=null){l.setViewport({top:0,bottom:e.bottom-i});const d=await l.getViewportData();r.splice(i+1,0,...d.items)}}}return this.currentSize=r.length,Go.debug2(this.root,"items",r,e),r=r.slice(e.top,e.bottom),{items:r,offset:e.top}}sendUpdate(){const{listeners:e}=this,t=this.currentViewportData??{items:[],offset:0};for(let r=0;r<e.length;r+=1)e[r](t)}}const d$=ae.module("GrpcFileStorage");class Pc{static REFRESH_THROTTLE=150;storageService;tables=[];root;constructor(e,t=""){this.storageService=e,this.root=t}removeRoot(e){return ge.removeRoot(this.root,e)}addRoot(e){return ge.addRoot(this.root,e)}async createDirectory(e){return await this.storageService.createDirectory(this.addRoot(e)),this.refreshTables(),{type:"directory",id:e,filename:e,basename:ge.getBaseName(e)}}async getTable(){const e=new Jl(this.storageService,this.root);return this.tables.push(e),e}async saveFile(e){const t=dh.storage.FileContents.text(e.content);return await this.storageService.saveFile(this.addRoot(e.filename),t,!0),this.refreshTables(),e}async loadFile(e){const r=await(await this.storageService.loadFile(this.addRoot(e))).text();return{filename:e,basename:ge.getBaseName(e),content:r}}async copyFile(e,t){const r=await this.storageService.loadFile(this.addRoot(e));await this.storageService.saveFile(this.addRoot(t),r,!1),this.refreshTables()}async deleteFile(e){await this.storageService.deleteItem(this.addRoot(e)),this.refreshTables()}async moveFile(e,t){await this.storageService.moveItem(this.addRoot(e),this.addRoot(t)),this.refreshTables()}async info(e){const t=await this.storageService.listItems(this.addRoot(ge.getPath(e)),ge.getBaseName(e));if(t.length===0)throw new fc;if(t.length>1)throw d$.error("More than one matching file found, should never happen.",t),new Error("More than one matching file found");const r=t[0];return{filename:this.removeRoot(r.filename),basename:r.basename,id:this.removeRoot(r.filename),type:r.type}}refreshTables=qi(()=>{this.tables.forEach(e=>e.refresh())},Pc.REFRESH_THROTTLE)}const u$=ae.module("AppInit");function Oc(n){const{workspace:e,setActiveTool:t,setApi:r,setCommandHistoryStorage:i,setDashboardData:a,setFileStorage:o,setLayoutStorage:s,setDashboardConnection:l,setDashboardSessionWrapper:d,setPlugins:h,setUser:c,setWorkspace:m,setWorkspaceStorage:v,setServerConfigValues:f}=n,g=Oa(),p=Ey(),C=Ty(),b=Py(),S=Oy(),w=Dy(),[E,T]=y.useState();y.useEffect(function(){h(b)},[b,h]),y.useEffect(function(){async function x(){try{const F=await Ry(),_=await Ny(g,C,F),L=p.getStorageService(),M=new l$(L,"/layouts"),U=new Pc(L,"/notebooks"),V=new Za(M),z=new bH,Q=await V.load({isConsoleAvailable:_!==void 0}),{data:Z}=Q,{settings:I}=Z;I.defaultDecimalFormatOptions===void 0&&(I.defaultDecimalFormatOptions={defaultFormatString:Je.DEFAULT_FORMAT_STRING}),I.defaultIntegerFormatOptions===void 0&&(I.defaultIntegerFormatOptions={defaultFormatString:Et.DEFAULT_FORMAT_STRING}),I.truncateNumbersWithPound===void 0&&(I.truncateNumbersWithPound=!1);const{shortcutOverrides:N={}}=I,k=dn.isMacPlatform?N.mac??{}:N.windows??{};Object.entries(k).forEach(([re,W])=>{qe.get(re)?.setKeyState(W)});const K={filterSets:Z.filterSets,links:Z.links};r(g),t(Sr.DEFAULT),f(S),i(z),a(bn,K),o(U),s(M),l(bn,C),_!==void 0&&d(bn,_),c(w),v(V),m(Q)}catch(F){u$.error(F),T(F)}}x()},[g,p,C,S,t,r,i,a,o,s,l,d,c,m,v,f,w]);const P=e==null&&E==null,D=!P&&E==null,O=E!=null?`${E}`:null;return u.jsxs(u.Fragment,{children:[D&&u.jsx(o$,{}),u.jsx(td,{isLoading:P&&O==null,isLoaded:D,errorMessage:O})]})}Oc.propTypes={workspace:Y.shape({}),workspaceStorage:Y.shape({close:Y.func}),setActiveTool:Y.func.isRequired,setApi:Y.func.isRequired,setCommandHistoryStorage:Y.func.isRequired,setDashboardData:Y.func.isRequired,setFileStorage:Y.func.isRequired,setLayoutStorage:Y.func.isRequired,setDashboardConnection:Y.func.isRequired,setDashboardSessionWrapper:Y.func.isRequired,setPlugins:Y.func.isRequired,setUser:Y.func.isRequired,setWorkspace:Y.func.isRequired,setWorkspaceStorage:Y.func.isRequired};Oc.defaultProps={workspace:null,workspaceStorage:null};const h$=n=>({workspace:pd(n),workspaceStorage:LT(n)}),Yg=Ht(h$,{setActiveTool:Sd,setApi:GT,setCommandHistoryStorage:zT,setDashboardData:RC,setFileStorage:KT,setLayoutStorage:SH,setDashboardConnection:c1,setDashboardSessionWrapper:m1,setPlugins:qT,setUser:VT,setWorkspace:rC,setWorkspaceStorage:WT,setServerConfigValues:XT})(Oc),c$=document.location.pathname;function m$(){return u.jsx(VS,{basename:c$,children:u.jsxs(GS,{children:[u.jsx(Wc,{exact:!0,path:"/",component:Yg}),u.jsx(Wc,{path:"/notebooks/:notebookPath+",component:Yg}),u.jsx(WS,{from:"*",to:"/"})]})})}function w$(){return Ad.registerOnLoaded(),Cr.init({getWorker:()=>new YS}),window["__react-beautiful-dnd-disable-dev-warnings"]=!0,u.jsx(zS,{store:Hh,children:u.jsx(m$,{})})}export{w$ as AppRoot,w$ as default};
44
- //# sourceMappingURL=AppRoot-f0a8e50d.js.map
44
+ //# sourceMappingURL=AppRoot-3a1dcd13.js.map