@deephaven/code-studio 0.44.0 → 0.44.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.
- package/build/assets/{AppRoot-98516fc4.js → AppRoot-3f29ebcb.js} +5 -5
- package/build/assets/{AppRoot-98516fc4.js.map → AppRoot-3f29ebcb.js.map} +1 -1
- package/build/assets/{index-d300ad1a.js → index-c001a027.js} +2 -2
- package/build/assets/{index-d300ad1a.js.map → index-c001a027.js.map} +1 -1
- package/build/assets/{index-aa78baa2.js → index-d4b59214.js} +2 -2
- package/build/assets/{index-aa78baa2.js.map → index-d4b59214.js.map} +1 -1
- package/build/assets/{useUser-2b2f9281.js → useUser-4c6c31c4.js} +2 -2
- package/build/assets/{useUser-2b2f9281.js.map → useUser-4c6c31c4.js.map} +1 -1
- package/build/index.html +2 -2
- package/package.json +4 -4
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{C as h,G as re,r as w,I as Yb,P as q,F as te,J as Ff,K as fe,L as Uu,M as zi,N as rt,O as Pe,Q as If,S as ct,T as Nh,U as qb,V as Xb,W as Qb,X as Zb,$ as ce,R as Fh,Y as Qc,Z as Xe,_ as Ih,a0 as Jb,a1 as Ve,a2 as $u,E as eS,D as kr,a3 as nd,a4 as _f,a5 as _h,a6 as tS,a7 as An,a8 as rS,a9 as nS,aa as iS,ab as aS,ac as Bu,ad as oS,ae as sS,af as lS,ag as Zc,ah as dS,ai as Jc,aj as uS,ak as hS,al as cS,am as mS,an as vS,ao as gS,ap as $t,aq as Mf,ar as fS,as as Af,at as pS,H as F,au as Lf,av as CS,aw as bS,ax as SS,ay as wS,az as em,aA as ES,aB as yS}from"./vendor-56855688.js";import{e as ni,l as _n,K as Qr,a as tm,R as TS,b as Ui,W as PS}from"./monaco-13f9c9bb.js";import{v as Vu,d as OS,a as kf,b as Mh,L as Hn,c as gs,e as ti,f as xf,g as ie,h as rm,i as DS,j as RS,k as NS,l as FS,m as Hr,n as Wi,o as Hf,p as ii,q as id,r as no,s as IS,t as _S,u as nm,w as Rl,x as im,y as Uf,z as MS,A as fs,B as $f,C as AS,D as LS,T as et,E as Ah,F as Lh,G as Nl,H as Gn,I as kS,J as xS,K as HS,M as US,N as $S,O as BS,P as kh,Q as Yi,R as am,S as ps,U as xh,V as Hh,W as Bf,X as VS,Y as ad,Z as GS,_ as os,$ as WS,a0 as Uh,a1 as Vf,a2 as ma,a3 as jS,a4 as zS,a5 as KS,a6 as YS,a7 as qS,a8 as XS,a9 as su,aa as QS,ab as om,ac as ZS,ad as JS,ae as od,af as sd,ag as ew,ah as tw,ai as ld,aj as Gf,ak as rw,al as nw,am as iw,an as Wf,ao as aw,ap as ow,aq as sw,ar as lw,as as dw,at as uw,au as hw,av as cw,aw as mw,ax as vw,ay as gw,az as fw,aA as pw,aB as jf,aC as Cw,aD as Gu,aE as Wu,aF as bw,aG as Sw,aH as ww,aI as Ew,aJ as yw,aK as Tw,aL as Pw,aM as Ow,aN as Dw,aO as Rw,aP as Nw,aQ as Fw,aR as Iw,aS as sm,aT as _w,aU as Mw,aV as lm}from"./index-aa78baa2.js";import{P as Te,u as Pa,T as dd,B as j,a as L,S as qe,M as we,K as Oe,G as ui,C as le,b as Zr,c as rn,D as ai,d as go,e as ud,f as pt,g as Cs,I as io,U as Aw,h as ge,i as H,F as oi,j as wn,k as Ea,l as $h,m as U,E as xe,n as Zn,o as Ki,p as bl,q as Tt,r as tt,s as yt,t as hd,v as Lw,O as ei,w as kw,x as bn,y as vn,z as xw,A as Hw,R as cd,H as si,J as md,L as zf,N as Kf,Q as Uw,V as $w,W as dm,X as Je,Y as um,Z as Yf,_ as Bh,$ as hm,a0 as ss,a1 as qf,a2 as Bw,a3 as Xf,a4 as Vw,a5 as hn,a6 as Gw,a7 as Ww,a8 as jw,a9 as zw,aa as Kw,ab as Yw,ac as qw,ad as Xw,ae as Qw,af as Zw,ag as Jw,ah as eE}from"./useUser-2b2f9281.js";import{P as Fl,b as tE,h as rE,p as nE,o as iE,s as aE,t as oE,c as Sl}from"./plotly-14bed2d9.js";import"./helpers-042e6b4d.js";class Vh{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=Vh.getBrightness(a);return o<125}static getBrightness(e){return Math.round((e[0]*299+e[1]*587+e[2]*114)/1e3)}}const Qf=Vh;function fo(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 dE="table_",Zf="column_",uE=new Set(["in","not","i","ii","k"]),hE=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"]),cE=/[^a-zA-Z0-9_$+@-]/g,mE=/[^A-Za-z0-9_$]/g;class nn{}fo(nn,"legalize",(n,e,t,r,i)=>{var a=n.trim().replace(/[- ]/g,"_");return r&&(uE.has(a)||hE.has(a))&&(a=e+a),a=a.replace(t,""),a||(a=e+i),Number.isNaN(Number(a.charAt(0)))||(a=e+a),a});fo(nn,"legalizeTableName",n=>nn.legalize(n,dE,cE,!1,0));fo(nn,"legalizeColumnNames",n=>{var e=[];return n.forEach((t,r)=>{var i=nn.legalizeColumnName(t,r);e.includes(i)&&(i=Zf+r),e.push(i)}),e});fo(nn,"legalizeColumnName",function(n){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return nn.legalize(n,Zf,mE,!0,e)});fo(nn,"isValidTableName",n=>nn.legalizeTableName(n)===n);fo(nn,"isValidColumnName",n=>nn.legalizeColumnName(n)===n);const po=nn;function vE(n,e){return n?n.closest(".".concat(e)):null}const gE={getClosestByClassName:vE};function cm(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=pE(n,"string");return typeof e=="symbol"?e:String(e)}function pE(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class CE{constructor(){cm(this,"pending",[]),cm(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=CE;function bE(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)}class EE extends Error{constructor(){super(...arguments),bE(this,"isInvalid",!0)}}const Ja=EE;function Jf(n){var{type:e}=n,t=Pa();switch(e){case t.VariableType.TABLE:case t.VariableType.TABLEMAP:case t.VariableType.TREETABLE:case t.VariableType.HIERARCHICALTABLE:return h.createElement(re,{icon:Mh});case t.VariableType.FIGURE:return h.createElement(re,{icon:kf});case t.VariableType.PANDAS:return h.createElement(re,{icon:OS});default:return h.createElement(re,{icon:Vu})}}function yE(n,e,t){return e=TE(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function TE(n){var e=PE(n,"string");return typeof e=="symbol"?e:String(e)}function PE(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class OE extends w.Component{constructor(e){super(e),yE(this,"container",void 0),this.container=null}componentDidMount(){this.colorize()}colorize(){var{children:e}=this.props;this.container&&e!=null&&ni.colorizeElement(this.container,{theme:"dh-dark"})}render(){var{children:e,language:t}=this.props;return h.createElement("div",null,h.createElement("div",{"data-lang":t,ref:r=>{this.container=r},style:{pointerEvents:"none"}},e))}}const vd=OE;class DE{static get LANGUAGE_MAP(){return new Map([["python","Python"],["groovy","Groovy"],["scala","Scala"]])}}const ep=DE;class Il{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)?[]:Yb.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 Il.isTableType(e,t)||Il.isWidgetType(e,t)}static isFigureType(e,t){return t===e.VariableType.FIGURE}static isPandas(e,t){return t===e.VariableType.PANDAS}}const ju=Il;function tp(n){var{children:e}=n;return h.createElement("div",{className:"console-history-item-result"},h.createElement("div",{className:"console-history-gutter"},"-"),h.createElement("div",{className:"console-history-content"},e))}tp.propTypes={children:q.node.isRequired};function zu(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)}class rp extends w.Component{constructor(e){super(e),zu(this,"timer",void 0),zu(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 h.createElement("div",{className:te("console-history-result-in-progress",{disabled:e})},h.createElement("span",{className:"badge"},h.createElement(Hn,null)," Running... ",dd.formatElapsedTime(r)," ",h.createElement(j,{className:"console-history-result-in-progress-cancel",kind:"ghost",icon:gs,tooltip:"Cancel",onClick:t,disabled:e})))}}zu(rp,"defaultProps",{disabled:!1});const FE=rp;function Qo(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=_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 ao extends w.PureComponent{constructor(e){super(e),Qo(this,"mouseX",void 0),Qo(this,"mouseY",void 0),Qo(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)>=ao.mouseDragThreshold||Math.abs(e.clientY-this.mouseY)>=ao.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;L(r);var i=r.indexOf(`
|
|
1
|
+
import{C as h,G as re,r as w,I as Yb,P as q,F as te,J as Ff,K as fe,L as Uu,M as zi,N as rt,O as Pe,Q as If,S as ct,T as Nh,U as qb,V as Xb,W as Qb,X as Zb,$ as ce,R as Fh,Y as Qc,Z as Xe,_ as Ih,a0 as Jb,a1 as Ve,a2 as $u,E as eS,D as kr,a3 as nd,a4 as _f,a5 as _h,a6 as tS,a7 as An,a8 as rS,a9 as nS,aa as iS,ab as aS,ac as Bu,ad as oS,ae as sS,af as lS,ag as Zc,ah as dS,ai as Jc,aj as uS,ak as hS,al as cS,am as mS,an as vS,ao as gS,ap as $t,aq as Mf,ar as fS,as as Af,at as pS,H as F,au as Lf,av as CS,aw as bS,ax as SS,ay as wS,az as em,aA as ES,aB as yS}from"./vendor-56855688.js";import{e as ni,l as _n,K as Qr,a as tm,R as TS,b as Ui,W as PS}from"./monaco-13f9c9bb.js";import{v as Vu,d as OS,a as kf,b as Mh,L as Hn,c as gs,e as ti,f as xf,g as ie,h as rm,i as DS,j as RS,k as NS,l as FS,m as Hr,n as Wi,o as Hf,p as ii,q as id,r as no,s as IS,t as _S,u as nm,w as Rl,x as im,y as Uf,z as MS,A as fs,B as $f,C as AS,D as LS,T as et,E as Ah,F as Lh,G as Nl,H as Gn,I as kS,J as xS,K as HS,M as US,N as $S,O as BS,P as kh,Q as Yi,R as am,S as ps,U as xh,V as Hh,W as Bf,X as VS,Y as ad,Z as GS,_ as os,$ as WS,a0 as Uh,a1 as Vf,a2 as ma,a3 as jS,a4 as zS,a5 as KS,a6 as YS,a7 as qS,a8 as XS,a9 as su,aa as QS,ab as om,ac as ZS,ad as JS,ae as od,af as sd,ag as ew,ah as tw,ai as ld,aj as Gf,ak as rw,al as nw,am as iw,an as Wf,ao as aw,ap as ow,aq as sw,ar as lw,as as dw,at as uw,au as hw,av as cw,aw as mw,ax as vw,ay as gw,az as fw,aA as pw,aB as jf,aC as Cw,aD as Gu,aE as Wu,aF as bw,aG as Sw,aH as ww,aI as Ew,aJ as yw,aK as Tw,aL as Pw,aM as Ow,aN as Dw,aO as Rw,aP as Nw,aQ as Fw,aR as Iw,aS as sm,aT as _w,aU as Mw,aV as lm}from"./index-d4b59214.js";import{P as Te,u as Pa,T as dd,B as j,a as L,S as qe,M as we,K as Oe,G as ui,C as le,b as Zr,c as rn,D as ai,d as go,e as ud,f as pt,g as Cs,I as io,U as Aw,h as ge,i as H,F as oi,j as wn,k as Ea,l as $h,m as U,E as xe,n as Zn,o as Ki,p as bl,q as Tt,r as tt,s as yt,t as hd,v as Lw,O as ei,w as kw,x as bn,y as vn,z as xw,A as Hw,R as cd,H as si,J as md,L as zf,N as Kf,Q as Uw,V as $w,W as dm,X as Je,Y as um,Z as Yf,_ as Bh,$ as hm,a0 as ss,a1 as qf,a2 as Bw,a3 as Xf,a4 as Vw,a5 as hn,a6 as Gw,a7 as Ww,a8 as jw,a9 as zw,aa as Kw,ab as Yw,ac as qw,ad as Xw,ae as Qw,af as Zw,ag as Jw,ah as eE}from"./useUser-4c6c31c4.js";import{P as Fl,b as tE,h as rE,p as nE,o as iE,s as aE,t as oE,c as Sl}from"./plotly-14bed2d9.js";import"./helpers-042e6b4d.js";class Vh{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=Vh.getBrightness(a);return o<125}static getBrightness(e){return Math.round((e[0]*299+e[1]*587+e[2]*114)/1e3)}}const Qf=Vh;function fo(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 dE="table_",Zf="column_",uE=new Set(["in","not","i","ii","k"]),hE=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"]),cE=/[^a-zA-Z0-9_$+@-]/g,mE=/[^A-Za-z0-9_$]/g;class nn{}fo(nn,"legalize",(n,e,t,r,i)=>{var a=n.trim().replace(/[- ]/g,"_");return r&&(uE.has(a)||hE.has(a))&&(a=e+a),a=a.replace(t,""),a||(a=e+i),Number.isNaN(Number(a.charAt(0)))||(a=e+a),a});fo(nn,"legalizeTableName",n=>nn.legalize(n,dE,cE,!1,0));fo(nn,"legalizeColumnNames",n=>{var e=[];return n.forEach((t,r)=>{var i=nn.legalizeColumnName(t,r);e.includes(i)&&(i=Zf+r),e.push(i)}),e});fo(nn,"legalizeColumnName",function(n){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return nn.legalize(n,Zf,mE,!0,e)});fo(nn,"isValidTableName",n=>nn.legalizeTableName(n)===n);fo(nn,"isValidColumnName",n=>nn.legalizeColumnName(n)===n);const po=nn;function vE(n,e){return n?n.closest(".".concat(e)):null}const gE={getClosestByClassName:vE};function cm(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=pE(n,"string");return typeof e=="symbol"?e:String(e)}function pE(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class CE{constructor(){cm(this,"pending",[]),cm(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=CE;function bE(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)}class EE extends Error{constructor(){super(...arguments),bE(this,"isInvalid",!0)}}const Ja=EE;function Jf(n){var{type:e}=n,t=Pa();switch(e){case t.VariableType.TABLE:case t.VariableType.TABLEMAP:case t.VariableType.TREETABLE:case t.VariableType.HIERARCHICALTABLE:return h.createElement(re,{icon:Mh});case t.VariableType.FIGURE:return h.createElement(re,{icon:kf});case t.VariableType.PANDAS:return h.createElement(re,{icon:OS});default:return h.createElement(re,{icon:Vu})}}function yE(n,e,t){return e=TE(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function TE(n){var e=PE(n,"string");return typeof e=="symbol"?e:String(e)}function PE(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class OE extends w.Component{constructor(e){super(e),yE(this,"container",void 0),this.container=null}componentDidMount(){this.colorize()}colorize(){var{children:e}=this.props;this.container&&e!=null&&ni.colorizeElement(this.container,{theme:"dh-dark"})}render(){var{children:e,language:t}=this.props;return h.createElement("div",null,h.createElement("div",{"data-lang":t,ref:r=>{this.container=r},style:{pointerEvents:"none"}},e))}}const vd=OE;class DE{static get LANGUAGE_MAP(){return new Map([["python","Python"],["groovy","Groovy"],["scala","Scala"]])}}const ep=DE;class Il{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)?[]:Yb.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 Il.isTableType(e,t)||Il.isWidgetType(e,t)}static isFigureType(e,t){return t===e.VariableType.FIGURE}static isPandas(e,t){return t===e.VariableType.PANDAS}}const ju=Il;function tp(n){var{children:e}=n;return h.createElement("div",{className:"console-history-item-result"},h.createElement("div",{className:"console-history-gutter"},"-"),h.createElement("div",{className:"console-history-content"},e))}tp.propTypes={children:q.node.isRequired};function zu(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)}class rp extends w.Component{constructor(e){super(e),zu(this,"timer",void 0),zu(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 h.createElement("div",{className:te("console-history-result-in-progress",{disabled:e})},h.createElement("span",{className:"badge"},h.createElement(Hn,null)," Running... ",dd.formatElapsedTime(r)," ",h.createElement(j,{className:"console-history-result-in-progress-cancel",kind:"ghost",icon:gs,tooltip:"Cancel",onClick:t,disabled:e})))}}zu(rp,"defaultProps",{disabled:!1});const FE=rp;function Qo(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=_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 ao extends w.PureComponent{constructor(e){super(e),Qo(this,"mouseX",void 0),Qo(this,"mouseY",void 0),Qo(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)>=ao.mouseDragThreshold||Math.abs(e.clientY-this.mouseY)>=ao.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;L(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 h.createElement("div",{key:"error",className:te("error-message",{expanded:e})},a&&h.createElement(h.Fragment,null,h.createElement("div",{className:"error-gutter"},h.createElement("button",{type:"button",onClick:this.handleToggleError,className:l,tabIndex:-1},h.createElement(re,{icon:e?ti:xf,transform:"left-3"}))),h.createElement("div",{className:"error-content"},h.createElement("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},o),e?s:"")),!a&&h.createElement("div",{className:"error-content"},h.createElement("div",{className:"console-error-text"},o)))}}Qo(ao,"defaultProps",{message:""});Qo(ao,"mouseDragThreshold",5);const ME=ao;function AE(n,e,t){return e=LE(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function LE(n){var e=kE(n,"string");return typeof e=="symbol"?e:String(e)}function kE(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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=ie.module("ConsoleHistoryItem");class np extends w.PureComponent{constructor(e){super(e),this.handleCancelClick=this.handleCancelClick.bind(this),this.handleObjectClick=this.handleObjectClick.bind(this)}handleObjectClick(e){mm.debug("handleObjectClick",e);var{openObject:t}=this.props;t(e)}handleCancelClick(){var{item:e}=this.props;e!=null&&e.cancelResult&&(mm.debug("Cancelling command: ".concat(e.command)),e.cancelResult())}render(){var{disabled:e,item:t,language:r}=this.props,{disabledObjects:i,result:a}=t,o=null;t.command!=null&&t.command!==""&&(o=h.createElement("div",{className:"console-history-item-command"},h.createElement("div",{className:"console-history-gutter"},">"),h.createElement("div",{className:"console-history-content"},h.createElement(vd,{language:r},t.command))));var s=[],l=!1;if(a){var{error:d,message:u,changes:c}=a;if(c){var{created:m,updated:v}=c;[...m,...v].forEach(E=>{l=!0;var{title:y}=E,T="".concat(y),O=e===void 0||e||(i??[]).indexOf(T)>=0,D=h.createElement(j,{key:T,kind:"primary",onClick:()=>this.handleObjectClick(E),className:"btn-console-object",disabled:O,icon:h.createElement(Jf,{type:E.type})},y);s.push(D)})}if(d!=null&&t.command==null){var g,f="".concat((g=d.message)!==null&&g!==void 0?g:d);f||(f=d);var p=h.createElement(ME,{key:"result-error",message:f});s.push(p)}if(u!==void 0&&u!==""){var C=h.createElement("div",{key:"log-message",className:"log-message"},u);s.push(C)}}else{l=!0;var b=h.createElement(FE,{key:"in_progress",onCancelClick:this.handleCancelClick,disabled:e});s.push(b)}var S=null;return s.length>0&&(S=h.createElement(tp,null,s)),h.createElement("div",{className:te("console-command-result",{"console-result-buttons":l})},o,S)}}AE(np,"defaultProps",{disabled:!1});const xE=np;function HE(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=$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 gd extends w.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=h.createElement(xE,{key:gd.itemKey(o,s),disabled:e,item:s,openObject:i,language:r});a.push(l)}return h.createElement("div",{className:"container-fluid console-history"},a)}}HE(gd,"defaultProps",{disabled:!1});const BE=gd;var VE={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]})},GE={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]})},WE={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]})},jE={CONSOLE:VE,COMMAND_HISTORY:GE,NOTEBOOK:WE};const nr=jE,xt=Object.freeze({FATAL:"FATAL",STDERR:"STDERR",ERROR:"ERROR",WARN:"WARN",STDOUT:"STDOUT",INFO:"INFO",DEBUG:"DEBUG",TRACE:"TRACE"}),zE="#2d2a2e",KE="#fcfcfa",YE="#fcd65b",qE="#b2b1b2",XE="#9edc6f",QE="#76d9e4",ZE="#f95d84",JE="#aa9af4",ey="#f95d84",ty="#fcfcfa",ry="#7c7b7c",Ce={"error-foreground":"#f95d84",background:zE,foreground:KE,"line-height":"19px",string:YE,"string-delim":"#929192",delimiter:qE,predefined:XE,keyword:QE,storage:ZE,number:JE,operator:ey,identifier:ty,"namespace-identifier":"#f95d84","identifier-js":"#fcd65b",comment:ry,"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 ny="python",iy={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/}}},ay={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"]]}},oy={id:ny,conf:iy,language:ay};const sy=oy;var ly="groovy",dy={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/}}},uy={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"]]}},hy={id:ly,conf:dy,language:uy};const cy=hy;var my="scala",vy={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>))/}}},gy={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"]]}},fy={id:my,conf:vy,language:gy};const py=fy;var Cy="deephavenDb",by={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/}}},Sy={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"]]}},wy={id:Cy,conf:by,language:Sy};const Ey=wy;var yy="log",Ty={},Py={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"}]]}},Oy={id:yy,conf:Ty,language:Py};const Dy=Oy;function vm(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 gm(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?vm(Object(t),!0).forEach(function(r){Ry(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):vm(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Ry(n,e,t){return e=Ny(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ny(n){var e=Fy(n,"string");return typeof e=="symbol"?e:String(e)}function Fy(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 On=ie.module("MonacoUtils");class Rn{static init(){var{getWorker:e}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};On.debug("Initializing Monaco..."),e!==void 0&&Rn.registerGetWorker(e);var{registerLanguages:t,removeHashtag:r}=Rn,i=[{token:"",foreground:r(Ce.foreground)},{token:"string",foreground:r(Ce.string)},{token:"string.delim",foreground:r(Ce["string-delim"])},{token:"keyword",foreground:r(Ce.keyword)},{token:"identifier.js",foreground:r(Ce["identifier-js"])},{token:"delimiter",foreground:r(Ce.delimiter)},{token:"comment",foreground:r(Ce.comment)},{token:"number",foreground:r(Ce.number)},{token:"storage",foreground:r(Ce.storage)},{token:"identifier",foreground:r(Ce.identifier)},{token:"namespace.identifier",foreground:r(Ce["namespace-identifier"])},{token:"operator",foreground:r(Ce.operator)},{token:"predefined",foreground:r(Ce.predefined)},{token:"error.log",foreground:Ce["log-error"].substring(1)},{token:"warn.log",foreground:r(Ce["log-warn"])},{token:"info.log",foreground:r(Ce["log-info"])},{token:"stdout.log",foreground:r(Ce["log-stdout"])},{token:"trace.log",foreground:r(Ce["log-trace"])},{token:"debug.log",foreground:r(Ce["log-debug"])},{token:"date.log",foreground:r(Ce["log-date"])}],a={errorForeground:Ce["error-foreground"],"inputOption.activeBorder":Ce["input-option-active-border"],"editor.background":Ce.background,"editor.foreground":Ce.foreground,"editor.lineHighlightBackground":Ce["editor-line-highlight-bg"],"editorLineNumber.foreground":Ce["editor-line-number-foreground"],"editor.selectionBackground":Ce["editor-selection-background"],"editor.findMatchBackground":Ce["editor-find-match-background"],"editor.findMatchHighlightBackground":Ce["editor-find-match-highlight-background"],"editorSuggestWidget.background":Ce["editor-suggest-widget-background"],"editorSuggestWidget.border":Ce["editor-suggest-widget-border"],"editorSuggestWidget.foreground":Ce["editor-suggest-widget-foreground"],"editorSuggestWidget.selectedBackground":Ce["editor-suggest-widget-selected-background"],"editorSuggestWidget.highlightForeground":Ce["editor-suggest-widget-highlightForeground"],"list.hoverBackground":Ce["list-hover-background"],"dropdown.background":Ce["context-menu-background"],"dropdown.foreground":Ce["context-menu-foreground"],"menu.selectionBackground":Ce["menu-selection-background"],"list.focusBackground":Ce["menu-selection-background"],"editorWidget.background":Ce["editor-widget-background"],"inputOption.activeBackground":Ce["input-option-active-background"],"inputOption.activeForeground":Ce["input-option-active-foreground"],focusBorder:Ce["focus-border"],"input.background":Ce["input-background"],"input.foreground":Ce["input-foreground"],"input.border":Ce["input-border"],"textLink.foreground":Ce["text-link-foreground"],"textLink.activeForeground":Ce["text-link-active-foreground"],"editorLink.activeForeground":Ce["editor-link-active-foreground"]};ni.defineTheme("dh-dark",{base:"vs-dark",inherit:!0,rules:i,colors:a}),On.debug2("monaco theme: ",Ce),ni.setTheme("dh-dark"),t([Ey,sy,cy,Dy,py]),On.debug("Monaco initialized.")}static registerGetWorker(e){window.MonacoEnvironment=gm(gm({},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;On.debug2("Overriding default language loader:",i.id)}),e.forEach(r=>{Rn.registerLanguage(r)})}static registerLanguage(e){On.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]:ni.EndOfLineSequence.LF;(t=e.getModel())===null||t===void 0||t.setEOL(r)}static openDocument(e,t){var r=e.getModel();L(r);var i={textDocument:{uri:"".concat(r.uri),languageId:r.getLanguageId(),version:r.getVersionId(),text:r.getValue()}};On.debug2("didOpenDocumentParams: ",i),t.openDocument(i);var a=e.onDidChangeModelContent(o=>{for(var{changes:s,versionId:l}=o,d=[],u=0;u<s.length;u+=1){var c=s[u],{range:m,rangeLength:v,text:g}=c,f={range:{start:{line:m.startLineNumber-1,character:m.startColumn-1},end:{line:m.endLineNumber-1,character:m.endColumn-1}},rangeLength:v,text:g};d.push(f)}if(d.length>0){var p={textDocument:{version:l,uri:"".concat(r.uri)},contentChanges:d};On.debug2("didChangeDocumentParams",p),t.changeDocument(p)}});return a}static closeDocument(e,t){var r=e.getModel();L(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();L(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(e){var t=[{windows:"ctrl+D",mac:"meta+D"},{windows:"ctrl+H"}];try{t.forEach(r=>{Rn.isMacPlatform()&&r.mac===""||!Rn.isMacPlatform()&&r.windows===""||Rn.removeKeybinding(e,Rn.isMacPlatform()?r.mac:r.windows)})}catch(r){On.error(r)}}static removeKeybinding(e,t){if(t!==void 0){var r=e._standaloneKeybindingService._getResolver()._map.get(t);r!=null?r.forEach(i=>{On.debug2("Removing Monaco keybinding ".concat(t," for ").concat(i.command)),e._standaloneKeybindingService.addDynamicKeybinding("-".concat(i.command),null,()=>{})}):On.warn("Did not find any keybindings to remove for ".concat(t))}}static getMonacoKeyCodeFromShortcut(e){var{keyState:t}=e,{keyValue:r}=t;if(r===null)return 0;var i=Rn.isMacPlatform();return i?(t.metaKey?Qr.CtrlCmd:0)|(t.shiftKey?Qr.Shift:0)|(t.altKey?Qr.Alt:0)|(t.ctrlKey?Qr.WinCtrl:0)|tm.fromString(r):(t.ctrlKey?Qr.CtrlCmd:0)|(t.shiftKey?Qr.Shift:0)|(t.altKey?Qr.Alt:0)|(t.metaKey?Qr.WinCtrl:0)|tm.fromString(r)}static provideLinks(e){for(var t=[],r=function(o){var s=e.getLineContent(o),l=Ff(s),d=l.filter(u=>u.type==="url"?/^https?:\/\//.test(u.value):!0);d.forEach(u=>{t.push({url:u.href,range:new TS(o,u.start+1,o,u.end+1)})})},i=1;i<=e.getLineCount();i+=1)r(i);return{links:t}}}const Cr=Rn;function lu(n,e,t){return e=Iy(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Iy(n){var e=_y(n,"string");return typeof e=="symbol"?e:String(e)}function _y(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Wn=ie.module("MonacoCompletionProvider");class la extends w.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),lu(this,"registeredCompletionProvider",void 0),lu(this,"registeredSignatureProvider",void 0),lu(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:la.monacoToLspPosition(t),context:r},s=a.getCompletionItems(o);Wn.debug("Requested completion items",o);var l=s.then(d=>{Wn.debug("Completion items received: ",o,d);var u=d.map(c=>{var{label:m,kind:v,detail:g,documentation:f,sortText:p,filterText:C,textEdit:b,insertTextFormat:S}=c;return{label:m,kind:la.lspToMonacoKind(v),detail:g,documentation:f?.kind==="markdown"?f:f?.value,sortText:p,filterText:C,insertText:b.text,insertTextRules:S===2?4:S,range:la.lspToMonacoRange(b.range)}});return{incomplete:!0,suggestions:u}}).catch(d=>(Wn.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:la.monacoToLspPosition(t),context:i},d=s.getSignatureHelp(l);Wn.debug("Requested signature help",l);var u=d.then(c=>{Wn.debug("Signatures received: ",l,d);var m=c.map(g=>{var{label:f,documentation:p,parameters:C}=g;return{documentation:p?.kind==="markdown"?p:p?.value,label:f,parameters:C??[]}});if(m.length===0)return a;var v=0;return{value:{signatures:m,activeSignature:v,activeParameter:c[v].activeParameter},dispose:()=>{}}}).catch(c=>(Wn.error("There was an error retrieving completion items",c),a));return u}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:la.monacoToLspPosition(t)},o=i.getHover(a);Wn.debug("Requested hover",a);var s=o.then(l=>{Wn.debug("Hover received: ",a,l);var{contents:d}=l;return{contents:d?[d]:[]}}).catch(l=>(Wn.error("There was an error retrieving hover",l),{contents:[]}));return s}render(){return null}}const ip=la;function fm(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 My(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){fm(a,r,i,o,s,"next",l)}function s(l){fm(a,r,i,o,s,"throw",l)}o(void 0)})}}function Kr(n,e,t){return e=Ay(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ay(n){var e=Ly(n,"string");return typeof e=="symbol"?e:String(e)}function Ly(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var du=ie.module("ConsoleInput"),_l=parseInt(Ce["line-height"],10),ap=6,op=6,ky=_l+ap+op,uu=100;class bs extends w.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=h.createRef(),this.commandHistoryIndex=null,this.timestamp=Date.now(),this.bufferIndex=0,this.history=[],this.modifiedCommands=new Map,this.state={commandEditorHeight:_l,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(du.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:_l,lineDecorationsWidth:3,lineNumbers:"off",minimap:{enabled:!1},renderLineHighlight:"none",scrollBeyondLastLine:!1,scrollbar:{arrowSize:0,horizontal:"hidden",horizontalScrollbarSize:0},padding:{top:ap,bottom:op},tabCompletion:"on",value:"",wordWrap:"on"},i=this.commandContainer.current;L(i),this.commandEditor=ni.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();L(l);var{lineNumber:d}=l,u=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===u?.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===Ui.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===Ui.Tab)if(this.isSuggestionMenuActive())this.isSuggestionMenuPopulated()||(a.stopPropagation(),a.preventDefault());else{var g;a.stopPropagation(),a.preventDefault(),(g=this.commandEditor)===null||g===void 0||g.trigger("Tab key trigger suggestions","editor.action.triggerSuggest",{})}}}),this.commandEditor.addCommand(Qr.CtrlCmd|Ui.KeyF,()=>{}),Cr.removeConflictingKeybindings(this.commandEditor),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();L(o);var s=o.getLineLength(1)+1,l=(t=this.commandEditor)===null||t===void 0?void 0:t.getTopForPosition(1,s);L(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();L(o);var s=o.getLineCount(),l=o.getLineLength(s)+1,d=(t=this.commandEditor)===null||t===void 0?void 0:t.getTopForPosition(s,l);L(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-uu&&this.loadMoreHistory()}}loadMoreHistory(){var e=this;return My(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+uu-1}),e.loadingPromise=Te.makeCancelable(a.getViewportData(),()=>a.close());var o=yield e.loadingPromise;e.bufferIndex+=uu,e.bufferIndex>=a.size&&(e.bufferIndex=null),e.history=[...o.items.filter((s,l,d)=>{var{name:u}=s;return l===0||u!==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)){du.debug2("Promise canceled, not loading history");return}du.error("Error fetching history",s)}})()}processCommand(e){this.commandHistoryIndex=null,this.modifiedCommands.clear(),L(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;L(e);var t=this.commandEditor.getContentHeight(),r=Math.max(Math.min(t,e),ky),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 h.createElement("div",{className:te("console-input-wrapper",{disabled:e})},h.createElement("div",{className:te("console-input-inner-wrapper",{focus:a})},h.createElement("div",{className:bs.INPUT_CLASS_NAME,ref:this.commandContainer,style:{height:i}}),o&&h.createElement(ip,{model:o,language:t,session:r})))}}Kr(bs,"defaultProps",{maxHeight:_l*10,scope:null,disabled:!1});Kr(bs,"INPUT_CLASS_NAME","console-input");const pm=bs;function xi(n,e,t){return e=xy(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function xy(n){var e=Hy(n,"string");return typeof e=="symbol"?e:String(e)}function Hy(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Cm="pasted values",Uy=[/^audio.*/,/^font.*/,/^image.*/,/^video.*/],hu=[".csv",".tsv",".tab",".psv",".dsv",".txt"],bm=[".zip"];class Mn extends w.Component{static isValidDropItem(e){return e!=null&&e.kind==="file"&&!Uy.find(t=>t.test(e.type))}static isValidExtension(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;return hu.some(r=>e.endsWith(r))||t&&bm.some(r=>e.endsWith(r))}static handleDragOver(e){e.preventDefault(),e.stopPropagation()}static getIcon(e){return e===Cm?rm:e.endsWith(".csv")?DS:e.endsWith(".zip")?RS:NS}constructor(e){super(e),xi(this,"fileElem",void 0),xi(this,"divElem",void 0),xi(this,"getValidExtensions",fe(t=>t?[...hu,...bm]:[...hu])),xi(this,"getAcceptString",fe(t=>this.getValidExtensions(t).join(", "))),xi(this,"getFileTypeErrorString",fe(t=>Zr.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=h.createRef(),this.divElem=h.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();L(a),Mn.isValidExtension(a.name,t)?this.handleFile(a):this.setState({dropError:Mn.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:Cm,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:rm,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 h.createElement("div",{ref:this.divElem,className:"csv-overlay fill-parent-absolute",onDragOver:Mn.handleDragOver,onDrop:this.handleDrop,tabIndex:-1},h.createElement(le,{actions:s}),h.createElement("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==="")&&h.createElement("div",{className:"message-content"},h.createElement("div",{className:"message-icon"},h.createElement(re,{icon:FS})),h.createElement("label",null,"Drop file (or paste values) here to import"),h.createElement("div",{className:"message-small"},h.createElement("label",null,"or")),h.createElement(j,{kind:"primary",onClick:this.handleSelectFile},"Select File...")),i&&(o===void 0||o==="")&&h.createElement("div",{className:"selected-content"},h.createElement("div",{className:"selected-icon"},h.createElement(re,{icon:Mn.getIcon(i)})),h.createElement("div",{className:"selected-text"},h.createElement("label",null,"Selected File"),h.createElement("label",{className:"selected-name"},i,!r&&h.createElement(j,{kind:"ghost",className:"ml-2",onClick:this.unstageFile,icon:Hr,tooltip:"Remove"})))),!!o&&h.createElement("div",{className:"message-content"},h.createElement("div",{className:"message-icon"},h.createElement(re,{icon:Wi})),h.createElement("label",null,o),o===Mn.FILE_TYPE_ERROR&&h.createElement("div",{className:"message-small"},h.createElement("label",null,this.getFileTypeErrorString(e)))))}}xi(Mn,"defaultProps",{allowZip:!1,dragError:null});xi(Mn,"MULTIPLE_FILE_ERROR","Please select only one file");xi(Mn,"FILE_TYPE_ERROR","Filetype not supported.");const ja=Mn;function Oa(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=By(n,"string");return typeof e=="symbol"?e:String(e)}function By(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class qi{}Oa(qi,"INTEGER","int");Oa(qi,"LONG","long");Oa(qi,"DOUBLE","double");Oa(qi,"BOOLEAN","bool");Oa(qi,"STRING","string");Oa(qi,"DATE_TIME","datetime");Oa(qi,"LOCAL_TIME","localtime");const We=qi;function Sm(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 wm(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Sm(Object(t),!0).forEach(function(r){hr(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Sm(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function hr(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)}var Em="unknown",Wy=2147483647,jy=-2147483648,ym=/^[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]+)?$/,Tm=/^([0-9]+T)?([0-9]+):([0-9]+)(:[0-9]+)?(?:\.[0-9]{1,9})?$/;class Kt{static determineType(e,t,r){if(!e||e===r)return t;switch(t){case We.STRING:return We.STRING;case We.INTEGER:return Kt.checkInteger(e);case We.LONG:return Kt.checkLong(e);case We.DOUBLE:return Kt.checkDouble(e);case We.BOOLEAN:return Kt.checkBoolean(e);case We.DATE_TIME:return Kt.checkDateTime(e);case We.LOCAL_TIME:return Kt.checkLocalTime(e);default:return Kt.getTypeFromUnknown(e)}}static isNotParsableNumber(e){return isNaN(e)||e==="Infinity"||e==="-Infinity"}static checkInteger(e){var t=e.replace(/,/g,"");return Kt.isNotParsableNumber(t)?We.STRING:Kt.getNumberType(t)}static checkLong(e){var t=e.replace(/,/g,"");return Kt.isNotParsableNumber(t)?We.STRING:t.includes(".")?We.DOUBLE:We.LONG}static checkDouble(e){var t=e.replace(/,/g,"");return Kt.isNotParsableNumber(t)?We.STRING:We.DOUBLE}static checkBoolean(e){var t=e.toLowerCase();return t==="true"||t==="false"?We.BOOLEAN:We.STRING}static checkDateTime(e){return ym.test(e)?We.DATE_TIME:We.STRING}static checkLocalTime(e){return Tm.test(e)?We.LOCAL_TIME:We.STRING}static getTypeFromUnknown(e){var t=e.replace(/,/g,"");if(Kt.isNotParsableNumber(t)){var r=e.toLowerCase();return r==="true"||r==="false"?We.BOOLEAN:ym.test(e)&&e.includes(":")?We.DATE_TIME:Tm.test(e)?We.LOCAL_TIME:We.STRING}return Kt.getNumberType(t)}static getNumberType(e){if(e.includes("."))return We.DOUBLE;var t=e.startsWith("-")?11:10;if(e.length>t)return We.LONG;var r=parseInt(e,10);return r>Wy||r<jy?We.LONG:We.INTEGER}constructor(e,t,r,i,a,o,s,l,d,u){hr(this,"onFileCompleted",void 0),hr(this,"file",void 0),hr(this,"readHeaders",void 0),hr(this,"nullString",void 0),hr(this,"onProgress",void 0),hr(this,"onError",void 0),hr(this,"types",void 0),hr(this,"chunks",void 0),hr(this,"totalChunks",void 0),hr(this,"isZip",void 0),hr(this,"shouldTrim",void 0),hr(this,"zipProgress",void 0),hr(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.isZip=d,this.shouldTrim=u,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=wm(wm({},i),{},{error:this.handleError,chunk:this.handleChunk,complete:this.handleComplete})}parse(){var e=this.isZip?this.file.nodeStream("nodebuffer",this.handleNodeUpdate):this.file;Uu.parse(e,this.config)}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(Em),this.readHeaders&&(r=r.slice(1))}L(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]=Kt.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;L(t),(e==null||!e.meta.aborted)&&r(t.map(i=>i===Em?We.STRING:i))}handleError(e){var{onError:t}=this;t(e)}handleNodeUpdate(e){this.zipProgress=e.percent}}const zy=Kt;function gt(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)}var Us=ie.module("CsvParser"),qy=650;class oo{static generateHeaderRecursive(e){var t="",r=e;return e>=26&&(t=t.concat(oo.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:u}=e;gt(this,"onFileCompleted",void 0),gt(this,"session",void 0),gt(this,"file",void 0),gt(this,"isZip",void 0),gt(this,"type",void 0),gt(this,"readHeaders",void 0),gt(this,"timeZone",void 0),gt(this,"onProgress",void 0),gt(this,"onError",void 0),gt(this,"tables",void 0),gt(this,"headers",void 0),gt(this,"types",void 0),gt(this,"chunks",void 0),gt(this,"totalChunks",void 0),gt(this,"isComplete",void 0),gt(this,"zipProgress",void 0),gt(this,"consolidatedChunks",void 0),gt(this,"numConsolidated",void 0),gt(this,"isCancelled",void 0),gt(this,"config",void 0),this.onFileCompleted=t,this.session=r,this.file=i,this.isZip=u,this.type=a,this.readHeaders=o,this.timeZone=d,this.onProgress=s,this.onError=l,this.tables=[],this.chunks=0,this.totalChunks=u?0:Math.ceil(i.size/Uu.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,`
|
|
@@ -30,15 +30,15 @@ Row = `).concat(s))}),this.chunks+=1;var a=0;this.totalChunks>0?a=Math.round(thi
|
|
|
30
30
|
`)),this.makeSnapshot(Math.min(pr.SNAPSHOT_BUFFER_SIZE-this.snapshotsBuffer.size-this.snapshotPending,this.snapshotsTotal-this.snapshotCounter)))}updateDownloadProgress(e){if(e!=null&&this.snapshotsTotal!=null&&this.downloadStartTime!=null){var{onDownloadProgressUpdate:t}=this.props,r=Math.floor(e*100/this.snapshotsTotal),i=e>1?Math.floor((Date.now()-this.downloadStartTime)*(this.snapshotsTotal-e)/e/1e3):null;t(r,i)}}convertSnapshotIntoCsv(e){for(var t="",r=e.added.iterator(),{dh:i,formatter:a}=this.props,o=[];r.hasNext();)o.push(r.next().value);L(this.columns);for(var{useUnformattedValues:s}=this,l=0;l<o.length;l+=1)for(var d=o[l],u=0;u<this.columns.length;u+=1){var{type:c,name:m}=this.columns[u],v=null;if(s){var g,f=(g=e.getData(d,this.columns[u]))!==null&&g!==void 0?g:"";f!==""&&H.isDateType(c)&&(f=i.i18n.DateTimeFormat.format(eM,f,i.i18n.TimeZone.getTimeZone(a.timeZone))),v=f.toString()}else{var p=this.getCachedCustomColumnFormatFlag(a,m,c),C=null;if(!p){var b=e.getFormat(d,this.columns[u]);C=b?.formatString!=null?b:null}C?v=a.getFormattedString(e.getData(d,this.columns[u]),c,m,C):v=a.getFormattedString(e.getData(d,this.columns[u]),c,m)}t+=pr.csvEscapeString(v),t+=u===this.columns.length-1?`
|
|
31
31
|
`:","}return t}makeSnapshot(e){var t=this;if(!(e<=0)){var{dh:r}=this.props;L(this.gridRangeCounter);var i=0,a=this.gridRanges[this.gridRangeCounter];L(this.tableSubscription),L(this.columns);for(var o=function(){L(a),L(a.startRow),L(a.endRow),L(t.rangedSnapshotCounter),L(t.chunkRows);var l=a.startRow+t.rangedSnapshotCounter*t.chunkRows,d=Math.min(l+t.chunkRows-1,a.endRow),u=t.snapshotCounter;t.cancelableSnapshots.push(Te.makeCancelable(t.tableSubscription.snapshot(r.RangeSet.ofRange(l,d),t.columns).then(c=>(rM(c),t.handleSnapshotResolved(c,u,l,d),u)).catch(c=>{Yn.error(c)}),c=>{Yn.info("snapshot ".concat(c," has been canceled"))})),t.rangedSnapshotCounter+=1,t.snapshotCounter+=1,t.snapshotPending+=1,t.rangedSnapshotCounter>=t.rangedSnapshotsTotal[t.gridRangeCounter]&&(t.gridRangeCounter+=1,t.rangedSnapshotCounter=0,a=t.gridRanges[t.gridRangeCounter]),i+=1};i<e;)o()}}handlePortMessage(e){var{data:t}=e,{download:r,readableStreamPulling:i}=t;if(!this.useBlobFallback){if(r!=null){var{includeColumnHeaders:a}=this;this.makeIframe("".concat(r)),this.writeCsvTable(a)}i!=null&&(this.useBlobFallback||(this.streamTimeout!=null&&clearTimeout(this.streamTimeout),this.streamTimeout=setTimeout(this.handleDownloadTimeout,pr.STREAM_TIMEOUT)))}}handleSnapshotResolved(e,t,r,i){this.snapshotHandlerTimeout=setTimeout(()=>{this.snapshotsBuffer.set(t,e),this.snapshotPending-=1,this.writeSnapshot(t,r,i),this.cancelableSnapshots[t]=null},pr.SNAPSHOT_HANDLER_TIMEOUT)}makeIframe(e){var t=document.createElement("iframe");t.hidden=!0,t.src="download/".concat(e),t.name="iframe",document.body.appendChild(t),this.iframes.push(t)}render(){return null}}$e(pr,"DOWNLOAD_CELL_CHUNK",6e3);$e(pr,"SNAPSHOT_BUFFER_SIZE",5);$e(pr,"STREAM_TIMEOUT",8e3);$e(pr,"SNAPSHOT_HANDLER_TIMEOUT",5);$e(pr,"defaultProps",{getDownloadWorker:()=>Promise.reject(new Error("Download worker not provided")),isDownloading:!1,onDownloadCompleted:()=>{},onDownloadCanceled:()=>{},onDownloadProgressUpdate:()=>{}});function nM(n){var e,{group:t,onDelete:r,onColorChange:i,onNameChange:a,validateName:o}=n,{isNew:s}=t,l=w.useRef(t),d=w.useRef(null),u=w.useRef(null),[c,m]=w.useState(!1),[v,g]=w.useState(s?"":t.name),[f,p]=w.useState(s),[C,b]=w.useState(!1),S=v!==t.name?o(v):"",E=s&&!C||S==="",y=w.useCallback(()=>{m(!1)},[]);w.useEffect(function(){f&&d.current&&(d.current.focus(),d.current.select())},[f]),w.useEffect(function(){return()=>{l.current.isNew&&r(l.current)}},[r]),w.useEffect(function(){if(c){var R,_;(R=u.current)===null||R===void 0||R.click(),(_=u.current)===null||_===void 0||_.focus(),window.addEventListener("click",y,!0)}return()=>window.removeEventListener("click",y,!0)},[c,y]);var T=()=>{E&&(a(t,v),p(!1))},O=()=>{if(s){r(t);return}g(t.name),p(!1)},D=P=>{b(!0),P.key==="Enter"&&(P.stopPropagation(),T()),P.key===" "&&P.stopPropagation(),P.key==="Escape"&&O()};return f?h.createElement(h.Fragment,null,h.createElement("div",{className:"editing-container"},h.createElement("input",{ref:d,className:te("form-control",{"is-invalid":!E}),value:v,placeholder:"Group Name",onChange:P=>g(P.target.value),onKeyDown:D,onBlur:()=>b(!0)}),h.createElement(j,{kind:"ghost",icon:ii,tooltip:"Confirm",onClick:T}),h.createElement(j,{kind:"ghost",icon:GS,tooltip:"Cancel",onClick:O})),!E&&h.createElement("p",{className:"mb-0 validate-label-error text-danger"},S)):h.createElement("div",{className:"group-name-wrapper"},h.createElement("span",{className:"column-name"},v),h.createElement(j,{className:"p-1 mx-1",kind:"ghost",icon:ps,tooltip:"Edit",onClick:()=>{p(!0)}}),h.createElement("span",{className:"right-buttons"},h.createElement(j,{kind:"ghost",icon:Hr,tooltip:"Delete group",onClick:()=>r(t)}),h.createElement(j,{kind:"ghost",className:"color-swatch mr-1",icon:t.color!==void 0?h.createElement("span",{className:"fa-layers"},h.createElement(re,{className:"color-swatch",icon:os,color:et.white,transform:"down-1"}),h.createElement(re,{className:"color-swatch",icon:os,color:t.color,transform:"shrink-2 down-1"})):WS,tooltip:"Set color",onClick:()=>m(P=>!P)}),c&&h.createElement(h.Fragment,null,h.createElement("input",{"aria-label":"Color input",ref:u,type:"color",list:"presetColors",value:(e=t.color)!==null&&e!==void 0?e:et["content-bg"],style:{visibility:"hidden",width:0,height:0,padding:0,border:0},onChange:P=>{t.color=P.target.value,i(t,P.target.value)}}),h.createElement("datalist",{id:"presetColors"},h.createElement("option",null,et["content-bg"]),h.createElement("option",null,et.primary),h.createElement("option",null,et.foreground),h.createElement("option",null,et.green),h.createElement("option",null,et.yellow),h.createElement("option",null,et.orange),h.createElement("option",null,et.red),h.createElement("option",null,et.purple),h.createElement("option",null,et.blue),h.createElement("option",null,et["gray-400"])))))}function Eh(){return Eh=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},Eh.apply(this,arguments)}function iM(){}var aM=w.forwardRef(function(e,t){var{value:r,clone:i,childCount:a,item:o,onVisibilityChange:s,onClick:l,onGroupDelete:d,onGroupColorChange:u,onGroupNameChange:c,validateGroupName:m,handleProps:v}=e,{group:g,modelIndex:f,isVisible:p}=o.data,C=w.useRef(null),b=w.useCallback(E=>{if(E.buttons===1){var y;s([f].flat(),!p),(y=C.current)===null||y===void 0||y.focus()}},[s,f,p]),S=w.useCallback(E=>{l(r,E)},[l,r]);return h.createElement("div",Eh({ref:t,className:te("tree-item",{isSelected:o.selected,"two-dragged":a===2,"multiple-dragged":a>2}),onClick:S},v),h.createElement(j,{ref:C,kind:"ghost",className:"px-1",onClick:iM,onMouseDown:b,onMouseEnter:b,icon:p?Uh:Vf,tooltip:"Toggle visibility"}),h.createElement("span",{className:te("column-name",g&&"column-group")},g&&!i?h.createElement(nM,{group:g,onDelete:d,onColorChange:u,onNameChange:c,validateName:m}):r),h.createElement("div",null,i&&a>1&&h.createElement("span",{className:"item-count"},a),h.createElement(pt,null,"Drag to re-order"),h.createElement(re,{icon:ad})))});const oM=aM;function sM(n){return n.parentId!==void 0}function ag(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 og(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ag(Object(t),!0).forEach(function(r){lM(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ag(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function lM(n,e,t){return e=dM(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function dM(n){var e=uM(n,"string");return typeof e=="symbol"?e:String(e)}function uM(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 hM(n,e){return Math.round(n/e)}function _C(n,e,t,r,i,a){var o=n.findIndex(d=>d.name===r);if(o===-1){var s=t.get(r);if(s==null)throw new Error("Column or header group not found: ".concat(r));var l=s.childIndexes.flat();return{id:r,selected:a.has(r),children:s.children.map(d=>_C(n,e,t,d,i,a)).sort((d,u)=>{var c=Array.isArray(d.data.visibleIndex)?d.data.visibleIndex[0]:d.data.visibleIndex,m=Array.isArray(u.data.visibleIndex)?u.data.visibleIndex[0]:u.data.visibleIndex;return c-m}),data:{modelIndex:l,visibleIndex:s.getVisibleRange(e),group:s,isVisible:l.some(d=>!i.has(d))}}}return{id:r,children:[],selected:a.has(r),data:{modelIndex:o,visibleIndex:V.getVisibleIndex(o,e),isVisible:!i.has(o)}}}function cM(n,e,t,r,i){for(var a=[],o=new Set(i),s=new Map(t.map(c=>[c.name,c])),l=new Set(r),d=0,u=function(){for(var m=V.getModelIndex(d,e),v=n[m].name,g=t.find(p=>{var{children:C}=p;return C.includes(v)});g!==void 0&&g.parent!==void 0;)g=s.get(g.parent);var f=_C(n,e,s,g?g.name:v,l,o);a.push(f),Array.isArray(f.data.visibleIndex)?d+=f.data.visibleIndex[1]-f.data.visibleIndex[0]+1:d+=1};d<n.length;)u();return a}function Kl(n,e,t,r,i){var a=n.findIndex(C=>{var{id:b}=C;return b===t}),o=n.findIndex(C=>{var{id:b}=C;return b===e}),s=n[o],l=tS(n,o,a),d=l[a-1],u=l[a+1],c=hM(r,i),m=s.depth+c,v=mM({previousItem:d,nextItem:u}),g=vM({nextItem:u}),f=m;return m>=v?f=v:m<g&&(f=g),{depth:f,maxDepth:v,minDepth:g,parentId:p()};function p(){var C;if(f===0||!d)return null;if(f===d.depth)return d.parentId;if(f>d.depth)return d.id;var b=(C=l.slice(0,a).reverse().find(S=>S.depth===f))===null||C===void 0?void 0:C.parentId;return b??null}}function mM(n){var e,t,{previousItem:r,nextItem:i}=n;return Math.max((e=r?.depth)!==null&&e!==void 0?e:0,(t=i?.depth)!==null&&t!==void 0?t:0)}function vM(n){var{nextItem:e}=n;return e?e.depth:0}function MC(n){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null,t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return n.reduce((r,i,a)=>[...r,og(og({},i),{},{parentId:e,depth:t,index:a}),...MC(i.children,i.id,t+1)],[])}function Yr(n){return n.every(sM)?[...n]:MC(n)}function AC(n,e){for(var t=0;t<n.length;t+=1){var r=n[t],{id:i,children:a}=r;if(i===e)return r;if(a.length){var o=AC(a,e);if(o)return o}}}function LC(n){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return n.reduce((t,r)=>{var{children:i}=r;return i.length?LC(i,t+1):t+1},e)}function gM(n,e){var t=AC(n,e);return t?LC(t.children):0}function sg(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?sg(Object(t),!0).forEach(function(r){fM(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):sg(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function fM(n,e,t){return e=pM(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function pM(n){var e=CM(n,"string");return typeof e=="symbol"?e:String(e)}function CM(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 bM=[An.Down,An.Right,An.Up,An.Left],SM=[An.Left,An.Right];function wM(n,e,t){return(r,i)=>{var{currentCoordinates:a,context:{active:o,over:s,collisionRect:l,droppableRects:d,droppableContainers:u}}=i;if(bM.includes(r.code)){if(!o||!l)return;r.preventDefault();var{current:{items:c,offset:m}}=n;if(SM.includes(r.code)&&s?.id!=null){var{depth:v,maxDepth:g,minDepth:f}=Kl(c,o.id,s.id,m,t);switch(r.code){case An.Left:if(v>f)return el(el({},a),{},{x:a.x-t});break;case An.Right:if(v<g)return el(el({},a),{},{x:a.x+t});break}return}var p=[];u.forEach($=>{if(!($!=null&&$.disabled||$.id===s?.id)){var z=d.get($.id);if(z)switch(r.code){case An.Down:l.top<z.top&&p.push($);break;case An.Up:l.top>z.top&&p.push($);break}}});var C=rS({active:o,collisionRect:l,pointerCoordinates:null,droppableRects:d,droppableContainers:p}),b=nS(C,"id");if(b===s?.id&&C.length>1&&(b=C[1].id),b!=null&&s?.id!=null){var S=d.get(o.id),E=d.get(b),y=u.get(b);if(S&&E&&y){var T=c.findIndex($=>{var{id:z}=$;return z===b}),O=c[T],D=c.findIndex($=>{var{id:z}=$;return z===o.id}),P=c[D];if(O!=null&&P!=null){var{depth:R}=Kl(c,o.id,b,(O.depth-P.depth)*t,t),_=T>D,M=_?1:-1,A=e?(l.height-S.height)/2:0,B={x:E.left+R*t,y:E.top+M*A};return B}}}}}}function EM(n,e,t){return e=yM(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function yM(n){var e=TM(n,"string");return typeof e=="symbol"?e:String(e)}function TM(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class kC extends iS{}EM(kC,"activators",[{eventName:"onPointerDown",handler:n=>{var{nativeEvent:e}=n;return!(!e.isPrimary||e.button!==0||OM(e.target))}}]);var PM=["button","input","textarea","select","option"];function OM(n){return!!(n?.tagName!=null&&PM.includes(n.tagName.toLowerCase()))}function xC(n){var{clone:e=!1,depth:t,disableInteraction:r=!1,ghost:i=!1,handleProps:a,value:o,dragRef:s=null,wrapperRef:l=null,renderItem:d,item:u,childCount:c}=n,m=w.useMemo(()=>Array(t).fill(0).map((g,f)=>h.createElement("span",{key:"depth-line-".concat(f),className:"depth-line"})),[t]),v=w.useMemo(()=>({ref:s,clone:e,value:o,item:u,childCount:c,handleProps:a}),[s,e,o,u,c,a]);return h.createElement("li",{key:o,className:te("item-wrapper",{clone:e,ghost:i,disableInteraction:r}),ref:l},!e&&m,d(v))}xC.displayName="TreeItem";var DM=["id","depth"];function yh(){return yh=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},yh.apply(this,arguments)}function lg(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 Tu(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?lg(Object(t),!0).forEach(function(r){RM(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):lg(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function RM(n,e,t){return e=NM(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function NM(n){var e=FM(n,"string");return typeof e=="symbol"?e:String(e)}function FM(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function IM(n,e){if(n==null)return{};var t=_M(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 _M(n,e){if(n==null)return{};var t={},r=Object.keys(n),i,a;for(a=0;a<r.length;a++)i=r[a],!(e.indexOf(i)>=0)&&(t[i]=n[i]);return t}var MM=n=>{var{isSorting:e,wasDragging:t}=n;return!(e||t)};function dg(n){var{id:e,depth:t}=n,r=IM(n,DM),{attributes:i,isDragging:a,isSorting:o,listeners:s,setDraggableNodeRef:l,setDroppableNodeRef:d,transform:u,transition:c}=aS({id:e,animateLayoutChanges:MM}),m=Bu.Translate.toString(u),v=w.useMemo(()=>({transform:m,transition:c}),[m,c]),g=w.useMemo(()=>Tu(Tu(Tu({},i),s),{},{style:v}),[i,s,v]);return h.createElement(xC,yh({dragRef:l,wrapperRef:d,depth:t,ghost:a,disableInteraction:o,handleProps:g},r))}function ug(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 Yl(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ug(Object(t),!0).forEach(function(r){AM(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ug(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function AM(n,e,t){return e=LM(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function LM(n){var e=kM(n,"string");return typeof e=="symbol"?e:String(e)}function kM(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var xM={keyframes(n){var{transform:e}=n;return[{opacity:1,transform:Bu.Transform.toString(e.initial)},{opacity:0,transform:Bu.Transform.toString(Yl(Yl({},e.final),{},{x:e.final.x+5,y:e.final.y+5}))}]},easing:"ease-out",sideEffects(n){var{active:e}=n;e.node.animate([{opacity:0},{opacity:1}],{duration:Zc.duration,easing:Zc.easing})}},tl=null;function HM(n){var e;return tl==null&&n.activeNodeRect&&n.activatorEvent instanceof PointerEvent&&(tl=Math.floor((n.activatorEvent.clientY-n.activeNodeRect.top)/n.activeNodeRect.height)*n.activeNodeRect.height),n.activeNodeRect||(tl=null),Yl(Yl({},n.transform),{},{y:n.transform.y+((e=tl)!==null&&e!==void 0?e:0)})}function UM(n){var{items:e,renderItem:t,indentationWidth:r=30,indicator:i=!1,activeId:a,overId:o,offsetLeft:s}=n,l=oS(),d=w.useRef(l);w.useEffect(function(){d.current=l},[l]),w.useEffect(function(){d.current.measureDroppableContainers(e.map(g=>{var{id:f}=g;return f}))},[e]);var u=a!=null&&o!=null?Kl(e,a,o,s,r):null,c=w.useRef({items:e,offset:s}),m=a!=null?e.find(v=>{var{id:g}=v;return g===a}):null;return w.useEffect(()=>{c.current={items:e,offset:s}},[e,s]),h.createElement(h.Fragment,null,h.createElement("div",{className:te("tree-container",a!=null&&"marching-ants")},e.map(v=>{var{id:g,depth:f}=v;return h.createElement(dg,{key:g,id:g,value:g,depth:g===a&&u?u.depth:f,item:v,renderItem:t})})),sS.createPortal(h.createElement(lS,{dropAnimation:xM,modifiers:[HM],className:"visibility-ordering-list"},a!=null&&m?h.createElement(dg,{id:a,depth:m.depth,clone:!0,childCount:gM(e,a)+1,value:a.toString(),renderItem:t,item:m}):null),document.body))}function hg(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 rl(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?hg(Object(t),!0).forEach(function(r){$M(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):hg(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function $M(n,e,t){return e=BM(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function BM(n){var e=VM(n,"string");return typeof e=="symbol"?e:String(e)}function VM(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var GM={droppable:{strategy:vS.Always}},WM={activationConstraint:{distance:5}};function jM(n){var{items:e,indicator:t=!1,indentationWidth:r=30,onDragStart:i,onDragEnd:a,renderItem:o}=n,[s,l]=w.useState(null),[d,u]=w.useState(null),[c,m]=w.useState(0),v=w.useMemo(()=>{var P=Yr(e);return s!=null?P.filter(R=>{var{id:_,selected:M}=R;return _===s||!M}):P},[s,e]),g=s!=null&&d!=null?Kl(v,s,d,c,r):null,f=w.useRef({items:v,offset:c}),p=w.useMemo(()=>({coordinateGetter:wM(f,t,r)}),[r,t]),C=dS(Jc(kC,WM),Jc(gS,p)),b=w.useMemo(()=>v.map(P=>{var{id:R}=P;return R}),[v]);w.useEffect(()=>{f.current={items:v,offset:c}},[v,c]);var S=w.useCallback(P=>{var{active:{id:R}}=P;l(R),u(R),i?.(R),document.body.style.setProperty("cursor","grabbing")},[i]),E=w.useCallback(P=>{var{delta:R}=P;m(R.x)},[]),y=w.useCallback(P=>{var R,{over:_}=P;u((R=_?.id)!==null&&R!==void 0?R:null)},[]),T=w.useCallback(()=>{u(null),l(null),m(0),document.body.style.setProperty("cursor","")},[]),O=w.useCallback(P=>{var{active:R,over:_}=P;if(T(),g&&_){var{depth:M,parentId:A}=g,B=JSON.parse(JSON.stringify(Yr(e))),$=B.findIndex(K=>{var{id:X}=K;return X===_.id}),z=B.findIndex(K=>{var{id:X}=K;return X===R.id}),G=B[z];B[z]=rl(rl({},G),{},{depth:M,parentId:A}),a?.(G,rl(rl({},B[$]),{},{parentId:g.parentId}))}},[e,a,g,T]),D=w.useCallback(()=>{T()},[T]);return h.createElement(uS,{sensors:C,collisionDetection:hS,measuring:GM,onDragStart:S,onDragMove:E,onDragOver:y,onDragEnd:O,onDragCancel:D},h.createElement(cS,{items:b,strategy:mS},h.createElement(UM,{items:v,renderItem:o,indicator:t,indentationWidth:r,activeId:s,overId:d,offsetLeft:c})))}function cg(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 mg(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?cg(Object(t),!0).forEach(function(r){zM(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):cg(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function zM(n,e,t){return e=KM(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function KM(n){var e=YM(n,"string");return typeof e=="symbol"?e:String(e)}function YM(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function qM(n,e,t,r,i,a,o,s){var l=i.map((E,y)=>mg(mg({},E),{},{index:y})),d=[],u=r,c=a[0].data.visibleIndex,m=l.findIndex(E=>{var{id:y}=E;return y===n.id}),v=l.findIndex(E=>{var{id:y}=E;return y===e.id}),g=Array.isArray(c)?c[1]+1:c+1;u=Li(a[0],e.parentId,u);for(var f=1;f<a.length;f+=1){var{data:{visibleIndex:p}}=a[f];d=V.moveItemOrRange(p,g,d,!0),g+=Array.isArray(p)?p[1]-p[0]+1:1,u=Li(a[f],e.parentId,u)}var C=[Array.isArray(c)?c[0]:c,g-1],b=Array.isArray(e.data.visibleIndex)?e.data.visibleIndex[0]:e.data.visibleIndex,S=V.getVisibleIndex(b,d);return m>v&&S>b&&(S-=1),e.children.length>0&&(Array.isArray(c)?c[0]:c)<S&&(S-=1),C[0]<S&&(S-=C[1]-C[0]),d=V.moveItemOrRange(C,Ve(S,o,s),d),{groups:u,movedColumns:t.concat(d)}}function Li(n,e,t){if(n.parentId===e)return[...t];var r=t.map(p=>new en(p)),i=new Map(r.map(p=>[p.name,p])),a=r.find(p=>p.name===n.parentId),o=r.find(p=>p.name===e),s=r.find(p=>p.name===n.id);if(a!=null&&(a.children=a.children.filter(p=>p!==n.id),a.children.length===0)){var l,d=new Set([a.name]),{parent:u=""}=a,c=i.get(u);for((l=c)===null||l===void 0||l.removeChildren([a.name]);c&&c.children.length===0;){var m,v;d.add(c.name);var g=(m=(v=c)===null||v===void 0?void 0:v.parent)!==null&&m!==void 0?m:"",f=i.get(g);f?.removeChildren([c.name]),c=f}r=r.filter(p=>{var{name:C}=p;return!d.has(C)})}return o?.addChildren([n.id]),s?.setParent(e??void 0),r}function vg(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 nl(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?vg(Object(t),!0).forEach(function(r){Xr(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):vg(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Xr(n,e,t){return e=XM(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function XM(n){var e=QM(n,"string");return typeof e=="symbol"?e:String(e)}function QM(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ZM=150;class wt extends w.Component{constructor(e){super(e),Xr(this,"list",void 0),Xr(this,"debouncedSearchColumns",rt(this.searchColumns,ZM)),Xr(this,"handleGroupColorChange",zi((t,r)=>{var{columnHeaderGroups:i,onColumnHeaderGroupChanged:a}=this.props,o=[...i],s=new en(nl(nl({},t),{},{color:r}));o.splice(o.findIndex(l=>{var{name:d}=l;return d===t.name}),1,s),a(o)},250)),Xr(this,"renderItem",Pe(t=>{var{value:r,clone:i,item:a,ref:o,handleProps:s}=t,{onColumnVisibilityChanged:l}=this.props,{selectedColumns:d}=this.state,u=r;if(i){var c=this.getSelectedParentItems().map(m=>{var{id:v}=m;return v});u=c.join(", ")}return h.createElement(oM,{ref:o,value:u,clone:i,item:a,childCount:d.size,onVisibilityChange:l,onClick:this.handleItemClick,onGroupDelete:this.handleGroupDelete,onGroupColorChange:this.handleGroupColorChange,onGroupNameChange:this.handleGroupNameChange,validateGroupName:this.validateGroupName,handleProps:s})})),Xr(this,"getMemoizedFirstMovableIndex",Pe((t,r,i)=>{for(var a=0;a<r.length;a+=1){var o=V.getModelIndex(a,i);if(t.isColumnMovable(o))return a}return null})),Xr(this,"getMemoizedLastMovableIndex",Pe((t,r,i)=>{for(var a=r.length-1;a>=0;a-=1){var o=V.getModelIndex(a,i);if(t.isColumnMovable(o))return a}return null})),Xr(this,"memoizedGetTreeItems",Pe((t,r,i,a,o)=>cM(t,r,i,a,[...o.values()]))),Xr(this,"makeVisibilityOrderingList",Pe((t,r)=>{var{movedColumns:i}=this.props,a=[],o=this.getFirstMovableIndex(),s=this.getLastMovableIndex(),l=r.findIndex(E=>{var{data:y}=E;return Array.isArray(y.visibleIndex)?y.visibleIndex[0]===o:y.visibleIndex===o}),d=r.findIndex(E=>{var{data:y}=E;return Array.isArray(y.visibleIndex)?y.visibleIndex[1]===s:y.visibleIndex===s}),u=r.slice(l,d+1);if(o==null||s===null){for(var c=0;c<t.length;c+=1){var m=V.getModelIndex(c,i),v=t[m];a.push(this.renderImmovableItem(v.name))}return a}for(var g=0;g<o;g+=1){var f=V.getModelIndex(g,i),p=t[f];a.push(this.renderImmovableItem(p.name))}o!==null&&o>0&&a.push(h.createElement("hr",{key:"top-horizontal-divider"})),a.push(h.createElement(jM,{key:"movable-items",items:u,renderItem:this.renderItem,onDragStart:this.handleDragStart,onDragEnd:this.handleDragEnd})),s!=null&&s<t.length-1&&a.push(h.createElement("hr",{key:"bottom-horizontal-divider"}));for(var C=s+1;C<t.length;C+=1){var b=V.getModelIndex(C,i),S=t[b];a.push(this.renderImmovableItem(S.name))}return a})),Xr(this,"renderImmovableItem",Pe(t=>h.createElement("div",{className:"visibility-ordering-list-item immovable",key:t},h.createElement("div",{className:"column-item"},h.createElement("span",{className:"column-name"},t))))),this.handleSearchInputChange=this.handleSearchInputChange.bind(this),this.searchColumns=this.searchColumns.bind(this),this.handleItemClick=this.handleItemClick.bind(this),this.handleDragEnd=this.handleDragEnd.bind(this),this.handleGroupDelete=this.handleGroupDelete.bind(this),this.handleGroupNameChange=this.handleGroupNameChange.bind(this),this.handleGroupCreate=this.handleGroupCreate.bind(this),this.validateGroupName=this.validateGroupName.bind(this),this.addColumnToSelected=this.addColumnToSelected.bind(this),this.handleDragStart=this.handleDragStart.bind(this),this.state={selectedColumns:new Set,lastSelectedColumn:"",searchFilter:""},this.list=null}componentWillUnmount(){this.debouncedSearchColumns.cancel()}resetVisibilityOrdering(){var{model:e,onReset:t,onMovedColumnsChanged:r,onColumnHeaderGroupChanged:i}=this.props;this.setState({selectedColumns:new Set,lastSelectedColumn:"",searchFilter:""}),t(),i(e.initialColumnHeaderGroups),r(e.initialMovedColumns)}resetSelection(){this.setState({selectedColumns:new Set,lastSelectedColumn:""})}handleSearchInputChange(e){var t=e.target.value;if(this.setState({searchFilter:t}),!t){this.debouncedSearchColumns.cancel(),this.resetSelection();return}this.debouncedSearchColumns(t)}searchColumns(e){var t=Yr(this.getTreeItems()),r=t.filter(l=>{var d,u,{id:c,data:m}=l;return!((d=(u=m.group)===null||u===void 0?void 0:u.isNew)!==null&&d!==void 0&&d)&&c.toLowerCase().includes(e.toLowerCase())}),i=r.map(l=>{var{id:d}=l;return d}),a=t.findIndex(l=>{var{id:d}=l;return d.toLowerCase().includes(e.toLowerCase())});if(this.addColumnToSelected(i,!1),i.length>0){var o,s=(o=this.list)===null||o===void 0?void 0:o.querySelectorAll(".item-wrapper")[a];s?.scrollIntoView({block:"center"})}}moveSelectedColumns(e){var{columnHeaderGroups:t}=this.props,{selectedColumns:r}=this.state,i=Yr(this.getTreeItems()),a=this.getFirstMovableIndex(),o=this.getLastMovableIndex();L(a),L(o);var s=this.getSelectedParentItems(),l=e===wt.MOVE_OPTIONS.UP||e===wt.MOVE_OPTIONS.TOP;l||s.reverse();for(var d=[],u=t,c=function(){var{id:g,parentId:f,depth:p,data:{visibleIndex:C}}=s[m];switch(e){case wt.MOVE_OPTIONS.TOP:{d=V.moveItemOrRange(C,a,d,!0);var b=Array.isArray(C)?C[1]-C[0]+1:1;a+=b,u=Li(s[m],null,u);break}case wt.MOVE_OPTIONS.BOTTOM:{d=V.moveItemOrRange(C,o,d,!0);var S=Array.isArray(C)?C[1]-C[0]+1:1;o-=S,u=Li(s[m],null,u);break}case wt.MOVE_OPTIONS.UP:{var E=i.findIndex(G=>G.id===g),y=i.map((G,K)=>K<E&&!r.has(G.id)).lastIndexOf(!0),T=i[y];if(T!=null&&T.parentId!==f)if(Math.abs(T.depth-p)>1){var O=i.map((G,K)=>K<y&&G.depth===p).lastIndexOf(!0),D=i[O];u=Li(s[m],D.id,u)}else u=Li(s[m],T.parentId,u);else{var P=Ve(Array.isArray(C)?C[0]-1:C-1,a,o);d=V.moveItemOrRange(C,P,d,!1);var R=Array.isArray(C)?C[1]-C[0]+1:1;a+=R}break}case wt.MOVE_OPTIONS.DOWN:{var _=i.findIndex(G=>G.id===g),M=i.find((G,K)=>K>_&&!r.has(G.id));if(M?.parentId!==f){var A,B=i.find(G=>G.id===f);u=Li(s[m],(A=B?.parentId)!==null&&A!==void 0?A:null,u);break}else if(M?.children.length>0){u=Li(s[m],M.id,u);break}var $=Ve(Array.isArray(C)?C[0]+1:C+1,a,o);d=V.moveItemOrRange(C,$,d,!1);var z=Array.isArray(C)?C[1]-C[0]+1:1;o-=z;break}}},m=0;m<s.length;m+=1)c();return{newMoves:d,groups:u}}handleMoveColumns(e){var{onMovedColumnsChanged:t,movedColumns:r,onColumnHeaderGroupChanged:i}=this.props,{newMoves:a,groups:o}=this.moveSelectedColumns(e),s;e===wt.MOVE_OPTIONS.TOP&&(s=()=>{var l,d;(l=this.list)===null||l===void 0||(d=l.parentElement)===null||d===void 0||d.scroll({top:0})}),e===wt.MOVE_OPTIONS.BOTTOM&&(s=()=>{var l,d;(l=this.list)===null||l===void 0||(d=l.parentElement)===null||d===void 0||d.scroll({top:this.list.parentElement.scrollHeight})}),i(o),a.length>0&&t(r.concat(a),s)}getSortMoves(e,t,r){var i=[...e],a=t===wt.SORTING_OPTIONS.ASC;i.sort((m,v)=>{var g=m.id.toUpperCase(),f=v.id.toUpperCase();return Zr.sort(g,f,a)});for(var o=[...r],s=Math.min(...i.flatMap(m=>{var{modelIndex:v}=m.data;return Array.isArray(v)?V.getVisibleIndexes(v,o):V.getVisibleIndex(v,o)})),l=0;l<i.length;l+=1){var d=i[l],{modelIndex:u}=d.data,c=Array.isArray(u)?V.getVisibleIndexes(u,o):V.getVisibleIndex(u,o);o=Array.isArray(c)?V.moveRange([Math.min(...c),Math.max(...c)],s,o,!0):V.moveItem(c,s,o),Array.isArray(c)&&(o=this.getSortMoves(d.children,t,o)),s+=Array.isArray(u)?u.length:1}return o}handleSortColumns(e){var{model:t,onMovedColumnsChanged:r}=this.props,i=this.getSortMoves(this.getTreeItems(),e,t.initialMovedColumns);r(i)}handleItemClick(e,t){if(t.stopPropagation(),!(t.target instanceof HTMLElement&&(t.target.tagName==="BUTTON"||t.target.tagName==="INPUT"))){t.currentTarget.focus();var{selectedColumns:r,lastSelectedColumn:i}=this.state,a=V.isModifierKeyDown(t),o=t.shiftKey,s=r.has(e),l=[e];if(s&&a){this.removeColumnFromSelected(e);return}var d=Yr(this.getTreeItems());if(s&&!o&&i===e){var u=d.find(g=>{var{id:f}=g;return f===e});L(u);var c=Yr(u.children).length;if(c+1===r.size){this.resetSelection();return}}if(o){var m=d.findIndex(g=>g.id===e),v=d.findIndex(g=>g.id===i);l.push(...d.slice(Math.min(v,m),Math.max(v,m)+1).map(g=>g.id))}this.addColumnToSelected(l,a||o),this.setState({lastSelectedColumn:e})}}addColumnToSelected(e,t){var{selectedColumns:r}=this.state,i=new Set(t?[...r.values()].concat(e):e),a=Yr(this.getTreeItems());a.forEach(o=>{var{id:s,children:l}=o;i.has(s)&&l.forEach(d=>i.add(d.id))}),this.setState({selectedColumns:i})}removeColumnFromSelected(e){var{selectedColumns:t}=this.state,r=Yr(this.getTreeItems()),i=r.find(s=>{var{id:l}=s;return l===e});L(i);var a=r.find(s=>{var{id:l}=s;return l===i.parentId});Yr(i?.children).forEach(s=>t.delete(s.id));for(var o=function(){t.delete(a.id);var l=a.parentId;a=r.find(d=>{var{id:u}=d;return u===l})};a!=null;)o();t.delete(e),this.setState({selectedColumns:new Set(t)})}handleDragStart(e){var{selectedColumns:t}=this.state;t.has(e)||this.addColumnToSelected([e],!1)}handleDragEnd(e,t){var{movedColumns:r,onMovedColumnsChanged:i,columnHeaderGroups:a,onColumnHeaderGroupChanged:o}=this.props,s=this.getSelectedParentItems(),l=Yr(this.getTreeItems()).map((v,g)=>nl(nl({},v),{},{index:g})),d=this.getFirstMovableIndex(),u=this.getLastMovableIndex();L(d),L(u);var{groups:c,movedColumns:m}=qM(e,t,r,a,l,s,d,u);o(c),i(m)}handleGroupNameChange(e,t){var{columnHeaderGroups:r,onColumnHeaderGroupChanged:i}=this.props,a=[...r],o=e.name,s=a.findIndex(m=>{var{name:v}=m;return v===o}),l=a[s];L(l);var d=new en(l);d.name=t,a.splice(s,1,d);var u=a.findIndex(m=>{var{name:v}=m;return v===d.parent});if(u>=0){var c=new en(a[u]);c.removeChildren([o]),c.addChildren([t]),a.splice(u,1,c)}i(a)}handleGroupDelete(e){var{columnHeaderGroups:t,onColumnHeaderGroupChanged:r}=this.props,i=t.filter(s=>s.name!==e.name),a=i.findIndex(s=>s.name===e.parent);if(a>=0){var o=new en(i[a]);o.addChildren(e.children),o.removeChildren([e.name]),i.splice(a,1,o)}r(i)}handleGroupCreate(){var{movedColumns:e,onMovedColumnsChanged:t,onColumnHeaderGroupChanged:r}=this.props,{newMoves:i,groups:a}=this.moveSelectedColumns(wt.MOVE_OPTIONS.TOP),o=a.filter(c=>!c.isNew),s=this.getSelectedParentItems(),l=s.map(c=>c.data.modelIndex).flat().filter(c=>c>=0),d="".concat(en.NEW_GROUP_PREFIX,"-").concat(Date.now()),u=new en({name:d,children:s.map(c=>{var{id:m}=c;return m}),depth:0,childIndexes:[...new Set(l)]});t(e.concat(i),()=>{var c,m;(c=this.list)===null||c===void 0||(m=c.parentElement)===null||m===void 0||m.scroll({top:0})}),r(o.concat([u])),this.resetSelection()}validateGroupName(e){var{model:t,columnHeaderGroups:r}=this.props,{columns:i}=t;return po.isValidColumnName(e)?i.some(a=>{var{name:o}=a;return o===e})||r.some(a=>{var{name:o}=a;return o===e})?"Duplicate name":"":"Invalid name"}getFirstMovableIndex(){var{model:e,movedColumns:t}=this.props;return this.getMemoizedFirstMovableIndex(e,e.columns,t)}getLastMovableIndex(){var{model:e,movedColumns:t}=this.props;return this.getMemoizedLastMovableIndex(e,e.columns,t)}getTreeItems(){var{model:e,movedColumns:t,hiddenColumns:r,columnHeaderGroups:i}=this.props,{selectedColumns:a}=this.state;return this.memoizedGetTreeItems(e.columns,t,i,r,a)}getSelectedParentItems(){var{selectedColumns:e}=this.state,t=Yr(this.getTreeItems());return t.filter(r=>{var{id:i,parentId:a}=r;return e.has(i)&&!e.has(a??"")})}render(){var{model:e,hiddenColumns:t,onColumnVisibilityChanged:r}=this.props,{selectedColumns:i,searchFilter:a}=this.state,o=i.size>0,s=this.getTreeItems(),l=new Map(Yr(s).map(f=>[f.id,f.data.modelIndex])),d=new Set(t),u=[...new Set(o?[...i.values()].map(f=>l.get(f)).filter(f=>f!=null).flat():s.map(f=>f.data.modelIndex).flat())],c=u.some(f=>!d.has(f)),m=c?"Hide All":"Show All",v=c?"Hide Selected":"Show Selected",g=this.makeVisibilityOrderingList(e.columns,s);return h.createElement("div",{role:"menu",className:"visibility-ordering-builder",tabIndex:0},h.createElement("div",{className:"top-menu"},h.createElement(j,{kind:"ghost",className:"toggle-visibility-btn",onClick:()=>{r(u,!c)},icon:c?Uh:Vf,tooltip:"Toggle column visibility"},o?v:m),h.createElement(go,{className:"visibility-search",value:a,matchCount:a?i.size:void 0,onChange:this.handleSearchInputChange})),h.createElement("div",{className:"top-menu"},h.createElement(j,{kind:"ghost",icon:ma,tooltip:"Reset to default",onClick:()=>{this.resetVisibilityOrdering()}},"Reset"),h.createElement("span",{className:"vertical-divider"}),h.createElement(j,{kind:"ghost",icon:xh,tooltip:"Sort ascending",onClick:()=>{this.handleSortColumns(wt.SORTING_OPTIONS.ASC)}}),h.createElement(j,{kind:"ghost",icon:Hh,tooltip:"Sort descending",onClick:()=>{this.handleSortColumns(wt.SORTING_OPTIONS.DSC)}}),h.createElement("span",{className:"vertical-divider"}),h.createElement(j,{kind:"ghost",tooltip:"Create group from selection",disabled:!o,onClick:this.handleGroupCreate},h.createElement("span",{className:"fa-layers",style:{marginRight:"0.75rem"}},h.createElement(re,{mask:jS,icon:no,transform:"right-7 down-5 shrink-6"}),h.createElement(re,{icon:zS,transform:"right-8 down-6 shrink-8"})),"Group"),h.createElement("span",{className:"vertical-divider"}),h.createElement(j,{kind:"ghost",icon:KS,tooltip:"Move selection up",onClick:()=>{this.handleMoveColumns(wt.MOVE_OPTIONS.UP)},disabled:!o}),h.createElement(j,{kind:"ghost",icon:YS,tooltip:"Move selection down",onClick:()=>{this.handleMoveColumns(wt.MOVE_OPTIONS.DOWN)},disabled:!o}),h.createElement(j,{kind:"ghost",icon:qS,tooltip:"Move selection to top",onClick:()=>{this.handleMoveColumns(wt.MOVE_OPTIONS.TOP)},disabled:!o}),h.createElement(j,{kind:"ghost",icon:XS,tooltip:"Move selection to bottom",onClick:()=>{this.handleMoveColumns(wt.MOVE_OPTIONS.BOTTOM)},disabled:!o})),h.createElement("div",{role:"menu",className:te("visibility-ordering-list")},h.createElement("div",{className:"column-list",ref:f=>{this.list=f}},g)))}}Xr(wt,"SORTING_OPTIONS",{DSC:"DSC",ASC:"ASC"});Xr(wt,"MOVE_OPTIONS",{TOP:"TOP",BOTTOM:"BOTTOM",UP:"UP",DOWN:"DOWN"});const JM=wt;function eA(n,e,t){return e=tA(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function tA(n){var e=rA(n,"string");return typeof e=="symbol"?e:String(e)}function rA(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 nA extends w.PureComponent{static createSearchFilter(e,t,r,i,a){var o=a?i.filter(d=>!r.includes(d.name)).map(d=>d.name):r;if(t&&o.length>0){var s=e.FilterValue.ofString(t),l=o.length===i.length?e.FilterCondition.search(s):e.FilterCondition.search(s,i.filter(d=>o.includes(d.name)).map(d=>d.filter()));return l}}constructor(e){super(e),eA(this,"searchField",void 0),this.handleSearchValueChange=this.handleSearchValueChange.bind(this),this.toggleColumn=this.toggleColumn.bind(this),this.selectAll=this.selectAll.bind(this),this.clear=this.clear.bind(this),this.selectNumbers=this.selectNumbers.bind(this),this.searchField=h.createRef(),this.state={isConfigureColumnsShown:!1}}focus(){var e;(e=this.searchField.current)===null||e===void 0||e.focus()}handleSearchValueChange(e){var{onChange:t,selectedColumns:r,invertSelection:i}=this.props;t(e.target.value,r,i)}sendColumnChange(e,t){var{onChange:r,value:i}=this.props;r(i,e,t)}setInvertSelection(e){var{onChange:t,value:r}=this.props;t(r,[],e)}toggleColumn(e){var{selectedColumns:t,invertSelection:r}=this.props;if(t.includes(e))this.sendColumnChange(t.filter(a=>a!==e),r);else{var i=t.slice();i.push(e),this.sendColumnChange(i,r)}}selectAll(){this.setInvertSelection(!0)}clear(){this.setInvertSelection(!1)}selectNumbers(){var{columns:e}=this.props;this.sendColumnChange(e.filter(t=>H.isNumberType(t.type)).map(t=>t.name),!1)}render(){var{value:e,selectedColumns:t,invertSelection:r,columns:i}=this.props,{isConfigureColumnsShown:a}=this.state,o=t.length===0&&r===!0||t.length===i.length&&r===!1,s=t.length===0&&r===!1||t.length===i.length&&r===!0,l;return o?l=h.createElement(h.Fragment,null,h.createElement(re,{icon:os,mask:su,transform:"shrink-2 down-5 right-7"}),h.createElement(re,{icon:QS,className:"text-primary",transform:"shrink-4 down-5 right-7"})):s?l=h.createElement(h.Fragment,null,h.createElement(re,{icon:no,mask:su,transform:"shrink-1 down-5 right-7"}),h.createElement(re,{icon:om,className:"text-danger",transform:"shrink-4 down-5 right-7"})):l=h.createElement(h.Fragment,null,h.createElement(re,{icon:os,mask:su,transform:"shrink-2 down-5 right-7"}),h.createElement(re,{icon:ZS,className:"text-primary",transform:"shrink-4 down-5 right-7"})),h.createElement("div",{className:"cross-column-container"},h.createElement(go,{className:"cross-column-search",placeholder:"Search Data...",value:e,onChange:this.handleSearchValueChange,ref:this.searchField}),h.createElement("button",{type:"button",className:"btn btn-link btn-link-icon px-2",onClick:()=>{a?this.setState({isConfigureColumnsShown:!1}):this.setState({isConfigureColumnsShown:!0})}},h.createElement("div",{className:"fa-layers"},l),h.createElement(pt,null,"Configure Columns"),h.createElement(md,{isShown:a,className:"cross-column-popper",onExited:()=>{this.setState({isConfigureColumnsShown:!1})},closeOnBlur:!0,interactive:!0},h.createElement("div",{className:"cross-column-popup"},"Searched Columns",h.createElement("div",{className:"cross-column-scroll"},i.map(d=>h.createElement(h.Fragment,{key:d.name},h.createElement(rn,{className:"cross-column-checkbox",checked:r?!t.includes(d.name):t.includes(d.name),onChange:()=>this.toggleColumn(d.name)},d.name),d.type.substring(d.type.lastIndexOf(".")+1)))),h.createElement("div",{className:"cross-column-button-bar"},h.createElement("button",{type:"button",className:"btn btn-link",onClick:this.selectAll},"Select All"),h.createElement("button",{type:"button",className:"btn btn-link",onClick:this.clear},"Clear"),h.createElement("button",{type:"button",className:"btn btn-link",onClick:this.selectNumbers},"Numbers Only")),s&&h.createElement("p",{className:"text-danger"},h.createElement(re,{icon:om})," Select at least one column to search.")))))}}const il=nA;function pa(n,e,t){return e=iA(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function iA(n){var e=aA(n,"string");return typeof e=="symbol"?e:String(e)}function aA(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Pi=ie.module("PartitionSelectorSearch"),oA=150;class Co extends w.Component{static handleError(e){e instanceof ud||Pi.error(e)}constructor(e){super(e),pa(this,"itemList",void 0),pa(this,"searchInput",void 0),pa(this,"timer",void 0),pa(this,"debounceUpdateFilter",rt(()=>{this.updateFilter()},oA)),this.handleFilterChange=this.handleFilterChange.bind(this),this.handleInputFocus=this.handleInputFocus.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleListKeydown=this.handleListKeydown.bind(this),this.handleSelect=this.handleSelect.bind(this),this.handleTableUpdate=this.handleTableUpdate.bind(this),this.handleTextChange=this.handleTextChange.bind(this),this.handleViewportChange=this.handleViewportChange.bind(this),this.itemList=null,this.searchInput=null,this.timer=null,this.state={offset:0,itemCount:0,items:[],text:"",isLoading:!0}}componentDidMount(){this.startListening()}componentDidUpdate(e,t){var{isLoading:r,itemCount:i}=this.state,{onListResized:a}=this.props;(i!==t.itemCount||r!==t.isLoading)&&a()}componentWillUnmount(){this.debounceUpdateFilter.cancel(),this.stopListening()}handleKeyDown(e){if(this.itemList==null)return!1;var{items:t,itemCount:r}=this.state;switch(e.key){case"Enter":{var i=null;if(t.length>0)i=t[0].value;else{var{text:a}=this.state;i=a.trim()}if(i.length>0){var{onSelect:o}=this.props;o(i)}return e.stopPropagation(),e.preventDefault(),!0}case"ArrowDown":return r>0&&this.itemList.focusItem(1),e.stopPropagation(),e.preventDefault(),!0;default:return!1}}handleListKeydown(e){switch(e.key){case"Escape":break;default:this.focus();break}}handleFilterChange(){Pi.debug2("handleFilterChange");var{table:e}=this.props,t=e.size;this.setState({itemCount:t,isLoading:!0})}handleInputFocus(){this.itemList&&this.itemList.focusItem(0)}handleSelect(e){Pi.debug2("handleSelect",e);var{onSelect:t}=this.props,{offset:r,items:i}=this.state,a=e-r;if(a<0||i.length<=a){Pi.error("No data for item",e);return}var{value:o}=i[a];t(o)}handleTableUpdate(e){for(var t=e.detail,{offset:r}=t,i=[],{getFormattedString:a,table:o}=this.props,s=o.columns[0],l=0;l<t.rows.length;l+=1){var d=t.rows[l],u=d.get(s),c=a(u,s.type,s.name);i.push({displayValue:c,value:u})}var m=o.size;Pi.debug2("handleTableUpdate",m,r,i.length),this.setState({itemCount:m,items:i,offset:r,isLoading:!1})}handleTextChange(e){Pi.debug2("handleTextChange");var{value:t}=e.target;this.setState({text:t}),this.debounceUpdateFilter()}handleViewportChange(e,t){Pi.debug2("handleViewportChange",e,t);var r=Math.max(1,t-e),i=Math.max(0,e-r),a=t+r,{table:o}=this.props;o.setViewport(i,a)}focus(){this.searchInput&&this.searchInput.focus()}startListening(){var{dh:e,initialPageSize:t,table:r}=this.props;r.addEventListener(e.Table.EVENT_UPDATED,this.handleTableUpdate),r.addEventListener(e.Table.EVENT_FILTERCHANGED,this.handleFilterChange),r.setViewport(0,t)}stopListening(){var{dh:e,table:t}=this.props;t.removeEventListener(e.Table.EVENT_UPDATED,this.handleTableUpdate),t.removeEventListener(e.Table.EVENT_FILTERCHANGED,this.handleFilterChange)}updateFilter(){var{dh:e,initialPageSize:t,table:r}=this.props,{text:i}=this.state,a=i.trim(),o=[];if(a.length>0){var s=r.columns[0],l=s.filter().invoke("matches",e.FilterValue.ofString("(?s)(?i).*\\Q".concat(a,"\\E.*")));o.push(l)}Pi.debug2("updateFilter",o),r.applyFilter(o),r.setViewport(0,t)}render(){var{isLoading:e,itemCount:t,items:r,offset:i,text:a}=this.state,o=Math.min(t,Co.MAX_VISIBLE_ITEMS)*io.DEFAULT_ROW_HEIGHT+11;return h.createElement("div",{className:"iris-grid-partition-selector-search"},h.createElement("div",{className:"search-container"},h.createElement("input",{type:"text",ref:s=>{this.searchInput=s},value:a,placeholder:"Available Partitions",onChange:this.handleTextChange,onFocus:this.handleInputFocus,onKeyDown:this.handleKeyDown,className:"form-control input-partition"})),!e&&t>0&&h.createElement("div",{className:"iris-grid-partition-selector-search-list",onKeyDown:this.handleListKeydown,role:"presentation",style:{height:o}},h.createElement(io,{ref:s=>{this.itemList=s},itemCount:t,items:r,offset:i,onSelect:this.handleSelect,onViewportChange:this.handleViewportChange})),!e&&t===0&&h.createElement("div",{className:"iris-grid-partition-selector-search-empty"},"No results"),e&&h.createElement("div",{className:"iris-grid-partition-selector-loading"},h.createElement(Hn,null)," Loading..."))}}pa(Co,"MAX_VISIBLE_ITEMS",12);pa(Co,"defaultProps",{initialPageSize:100,onSelect:()=>{},onListResized:()=>{}});pa(Co,"propTypes",{getFormattedString:q.func.isRequired,table:q.shape({addEventListener:q.func.isRequired,removeEventListener:q.func.isRequired,columns:q.arrayOf(q.shape({name:q.string.isRequired,type:q.string.isRequired,filter:q.func.isRequired})),size:q.number.isRequired,applyFilter:q.func.isRequired,setViewport:q.func.isRequired}).isRequired,initialPageSize:q.number,onSelect:q.func,onListResized:q.func});const sA=Co;function yl(n,e,t){return e=lA(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function lA(n){var e=dA(n,"string");return typeof e=="symbol"?e:String(e)}function dA(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Va=ie.module("IrisGridPartitionSelector"),uA=250;class HC extends w.Component{constructor(e){super(e),yl(this,"searchMenu",void 0),yl(this,"selectorSearch",void 0),yl(this,"debounceUpdate",rt(()=>{this.sendUpdate()},uA)),this.handleAppendClick=this.handleAppendClick.bind(this),this.handleCloseClick=this.handleCloseClick.bind(this),this.handleIgnoreClick=this.handleIgnoreClick.bind(this),this.handlePartitionChange=this.handlePartitionChange.bind(this),this.handlePartitionSelect=this.handlePartitionSelect.bind(this),this.handlePartitionListResized=this.handlePartitionListResized.bind(this),this.handleSearchOpened=this.handleSearchOpened.bind(this),this.handleSearchClosed=this.handleSearchClosed.bind(this),this.searchMenu=null,this.selectorSearch=null;var{partition:t}=e;this.state={partition:t}}componentWillUnmount(){this.debounceUpdate.cancel()}handleAppendClick(){Va.debug2("handleAppendClick");var{onAppend:e}=this.props,{partition:t}=this.state;e(t)}handleCloseClick(){Va.debug2("handleCloseClick"),this.sendDone()}handleIgnoreClick(){Va.debug2("handleIgnoreClick"),this.sendFetchAll()}handlePartitionChange(e){Va.debug2("handlePartitionChange");var{value:t}=e.target;this.setState({partition:t}),this.debounceUpdate()}handlePartitionSelect(e){this.searchMenu&&this.searchMenu.closeMenu(),this.setState({partition:e},()=>{this.sendUpdate()})}handlePartitionListResized(){this.searchMenu&&this.searchMenu.scheduleUpdate()}handleSearchClosed(){var{table:e}=this.props;e.applyFilter([])}handleSearchOpened(){this.selectorSearch&&this.selectorSearch.focus()}sendDone(){this.debounceUpdate.flush();var{onDone:e}=this.props;e()}sendUpdate(){Va.debug2("sendUpdate");var{onChange:e}=this.props,{partition:t}=this.state;e(t)}sendFetchAll(){Va.debug2("sendFetchAll"),this.debounceUpdate.cancel();var{onFetchAll:e}=this.props;e()}render(){var{columnName:e,dh:t,getFormattedString:r,onDone:i,table:a}=this.props,{partition:o}=this.state,s=h.createElement(sA,{dh:t,key:"search",getFormattedString:r,table:a,onSelect:this.handlePartitionSelect,onListResized:this.handlePartitionListResized,ref:l=>{this.selectorSearch=l}});return h.createElement("div",{className:"iris-grid-partition-selector"},h.createElement("div",{className:"status-message"},h.createElement("span",null,'Filtering "',e,'" partition to')),h.createElement("div",{className:"input-group"},h.createElement("input",{type:"text",value:o,onChange:this.handlePartitionChange,className:"form-control input-partition"}),h.createElement("div",{className:"input-group-append"},h.createElement("button",{type:"button",className:"btn btn-outline-primary"},h.createElement(re,{icon:ti}),h.createElement(pt,null,"Partitions"),h.createElement(ai,{ref:l=>{this.searchMenu=l},actions:[{menuElement:s}],onMenuOpened:this.handleSearchOpened,onMenuClosed:this.handleSearchClosed})))),h.createElement("div",{className:"iris-grid-partition-selector-spacer"}),h.createElement("button",{type:"button",className:"btn btn-outline-primary btn-ignore",onClick:this.handleIgnoreClick},"Ignore & Fetch All"),h.createElement("button",{type:"button",className:"btn btn-outline-primary btn-append",onClick:this.handleAppendClick},"Append Command"),h.createElement("button",{type:"button",className:"btn btn-link btn-link-icon btn-close",onClick:i},h.createElement(re,{icon:gs})))}}yl(HC,"defaultProps",{onAppend:()=>{},onChange:()=>{},onFetchAll:()=>{},onDone:()=>{},partition:""});const hA=HC;function cA(n,e,t){return e=mA(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function mA(n){var e=vA(n,"string");return typeof e=="symbol"?e:String(e)}function vA(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 gA=ie.module("SelectDistinctBuilder");class UC extends w.Component{constructor(e){super(e),this.handleAddColumnClick=this.handleAddColumnClick.bind(this),this.handleDeleteColumn=this.handleDeleteColumn.bind(this),this.handleDropdownChanged=this.handleDropdownChanged.bind(this);var{model:t,selectDistinctColumns:r}=this.props;this.state={inputs:r.length>0?[...r]:[""],columns:t.originalColumns}}componentDidUpdate(e,t){var{inputs:r}=this.state,{onChange:i}=this.props;if(t.inputs!==r){var a=r.filter(o=>o!=="");ct(t.inputs.filter(o=>o!==""),a)||i(a)}}handleAddColumnClick(){this.setState(e=>{var{inputs:t}=e;return{inputs:[...t,""]}})}handleDeleteColumn(e){this.setState(t=>{var{inputs:r}=t;return{inputs:r.length===1&&e===0?[""]:r.filter((i,a)=>e!==a)}})}handleDropdownChanged(e,t){gA.debug("handleDropdownChanged",e,t);var{value:r}=t.target;this.setState(i=>{var{inputs:a}=i,o=[...a];return o[e]=r,{inputs:o}})}renderInputs(){var{columns:e,inputs:t}=this.state;return t.map((r,i)=>{var a=e.filter(o=>{var{name:s}=o;return s===r||!t.includes(s)}).map(o=>{var{name:s}=o;return h.createElement("option",{value:s,key:s},s)});return h.createElement("div",{className:"form-inline px-3 pb-3",key:i},h.createElement("select",{className:"form-control custom-select col",value:r,onChange:o=>this.handleDropdownChanged(i,o)},h.createElement("option",{value:""},"Select a column"),a),(t.length>1||r!=="")&&h.createElement(j,{kind:"ghost",className:"ml-1 px-2",onClick:()=>{this.handleDeleteColumn(i)},icon:h.createElement(re,{icon:Hr,transform:"grow-3"}),tooltip:"Delete column"}))})}render(){var{columns:e,inputs:t}=this.state,r=t.length>=e.length;return h.createElement("div",{role:"presentation",className:"select-distinct-builder-container h-100"},h.createElement("div",{className:"select-distinct-title"},"Display Unique Values From"),this.renderInputs(),h.createElement("hr",null),h.createElement("div",{className:"pt-1 px-3"},h.createElement(j,{kind:"ghost",className:"btn-add-column",onClick:this.handleAddColumnClick,disabled:r,icon:Yi},"Add Additional Column")),h.createElement("div",{className:"select-distinct-builder-footer"},h.createElement("div",{className:"select-distinct-builder-hint"},"Display only unique values from the selected table columns. Note that this will reset any filters and display only the selected columns.")))}}cA(UC,"defaultProps",{selectDistinctColumns:[],onChange:()=>{}});const fA=UC;function mc(n){var{items:e,onChange:t=()=>{}}=n;return h.createElement(zf,{items:Array.from(e.entries()).map(r=>{var[i,a]=r;return{title:mc.getAdvancedSettingsTitleForKey(i),isOn:a,onChange:o=>t(i,o)}})})}mc.getAdvancedSettingsTitleForKey=n=>{switch(n){case so.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS:return"Clear current table filters before applying new filters from a control";case so.LINK_CHANGE_CLEARS_ALL_FILTERS:return"Clear current table filters before applying new filters from an incoming link filter"}};function ts(){return ts=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},ts.apply(this,arguments)}var gg=ie.module("ConditionalFormattingMenu"),Pu=()=>{};function pA(n){var{column:{type:e}}=n;if(H.isNumberType(e))return n.condition===me.IS_NULL||n.condition===me.IS_NOT_NULL?"":"".concat(n.value);if(H.isCharType(e))return n.condition===De.IS_NULL||n.condition===De.IS_NOT_NULL?"":"".concat(n.value);if(H.isStringType(e))return n.condition===Ne.IS_NULL||n.condition===Ne.IS_NOT_NULL?"":'"'.concat(n.value,'"');if(H.isDateType(e))return n.condition===De.IS_NULL||n.condition===De.IS_NOT_NULL?"":"".concat(n.value);if(H.isBooleanType(e))return"";throw new Error("Invalid column type ".concat(e," in getRuleValue"))}function CA(n){return H.isNumberType(n.column.type)&&n.condition===me.IS_BETWEEN?"".concat(n.start," < ").concat(n.column.name," < ").concat(n.end):"".concat(n.column.name," ").concat(UN(n.column.type,n.condition),`
|
|
32
32
|
`).concat(pA(n))}function bA(n){var{rules:e=[],onChange:t=Pu,onCreate:r=Pu,onSelect:i=Pu}=n,a=w.useCallback((d,u,c)=>{d.stopPropagation(),gg.debug("Rule clicked",u,c),i(c)},[i]),o=w.useCallback((d,u,c)=>{d.stopPropagation(),gg.debug("Delete button clicked",u,c);var m=[...e];m.splice(c,1),t(m)},[t,e]),s=w.useCallback(d=>{d.stopPropagation()},[]),l=w.useCallback(d=>{if(bn.stopDragging(),d.destination!=null){var u=d.source.index,c=d.destination.index,m=[...e],v=e[u];m.splice(u,1),m.splice(c,0,v),t(m)}},[t,e]);return h.createElement("div",{className:"conditional-formatting-rules"},h.createElement(nd,{onDragStart:bn.startDragging,onDragEnd:l},h.createElement(_h,{droppableId:"droppable-custom-columns"},(d,u)=>h.createElement("div",ts({ref:d.innerRef},d.droppableProps,{className:te("droppable-container",{dragging:u.draggingFromThisWith})}),e.length===0&&h.createElement("div",{className:"text-muted pl-2"},"No formats defined"),e.map((c,m)=>h.createElement(_f,{key:"".concat(m,"-").concat(c.type),draggableId:"".concat(m,"-").concat(c.type),index:m,disableInteractiveElementBlocking:!0},(v,g)=>h.createElement("div",ts({role:"menuitem",tabIndex:0,onClick:f=>a(f,c,m),className:te("draggable-container",{dragging:g.isDragging}),ref:v.innerRef},v.draggableProps),h.createElement("div",{className:"conditional-formatting-list-item"},h.createElement("div",{className:"formatting-item"},h.createElement("div",{className:"rule-icon"},h.createElement("span",{className:"rule-icon-bg",style:{backgroundColor:Vl(c.config.style),color:Gl(c.config.style)}},c.type===wr.ROWS?"row":"col")),h.createElement("div",{className:"rule-title"},CA(c.config)),h.createElement(j,{kind:"ghost",className:"ml-1 px-2",onClick:f=>o(f,c,m),icon:Hr,tooltip:"Delete rule"}),h.createElement("button",ts({type:"button",className:"btn btn-link btn-link-icon px-2 btn-drag-handle",onClick:s},v.dragHandleProps),h.createElement(pt,null,"Drag to re-order"),h.createElement(re,{icon:ad}))))))),d.placeholder))),h.createElement("hr",null),h.createElement(j,{kind:"ghost",onClick:r,icon:Yi},"Add New Rule"))}var ra=ie.module("ConditionEditor"),SA=()=>{},wA=[me.IS_EQUAL,me.IS_NOT_EQUAL,me.IS_BETWEEN,me.GREATER_THAN,me.GREATER_THAN_OR_EQUAL,me.LESS_THAN,me.LESS_THAN_OR_EQUAL,me.IS_NULL,me.IS_NOT_NULL].map(n=>h.createElement("option",{key:n,value:n},TN(n))),EA=[Ne.IS_EXACTLY,Ne.IS_NOT_EXACTLY,Ne.CONTAINS,Ne.DOES_NOT_CONTAIN,Ne.STARTS_WITH,Ne.ENDS_WITH,Ne.IS_NULL,Ne.IS_NOT_NULL].map(n=>h.createElement("option",{key:n,value:n},PN(n))),yA=[De.IS_EXACTLY,De.IS_NOT_EXACTLY,De.IS_BEFORE,De.IS_BEFORE_OR_EQUAL,De.IS_AFTER,De.IS_AFTER_OR_EQUAL,De.IS_NULL,De.IS_NOT_NULL].map(n=>h.createElement("option",{key:n,value:n},ON(n))),TA=[Rt.IS_TRUE,Rt.IS_FALSE,Rt.IS_NULL,Rt.IS_NOT_NULL].map(n=>h.createElement("option",{key:n,value:n},DN(n))),PA=[Ct.IS_EQUAL,Ct.IS_NOT_EQUAL,Ct.IS_NULL,Ct.IS_NOT_NULL].map(n=>h.createElement("option",{key:n,value:n},RN(n)));function OA(n,e,t,r){return n===me.IS_NULL||n===me.IS_NOT_NULL||n===me.IS_BETWEEN&&t!=null&&t!==""&&!Number.isNaN(Number.parseFloat(t))&&r!=null&&r!==""&&!Number.isNaN(Number.parseFloat(r))||n!==me.IS_BETWEEN&&e!==void 0&&e!==""&&!Number.isNaN(Number.parseFloat(e))}function DA(n,e,t,r,i,a,o){switch(n){case me.IS_EQUAL:case me.IS_NOT_EQUAL:case me.GREATER_THAN:case me.GREATER_THAN_OR_EQUAL:case me.LESS_THAN:case me.LESS_THAN_OR_EQUAL:return h.createElement("input",{type:"number",className:"form-control",placeholder:"Enter value",value:i??"",onChange:e});case me.IS_BETWEEN:return h.createElement("div",{className:"d-flex flex-row"},h.createElement("input",{type:"number",className:"form-control d-flex mr-2",placeholder:"Start value",value:a??"",onChange:t}),h.createElement("input",{type:"number",className:"form-control d-flex",placeholder:"End value",value:o??"",onChange:r}));case me.IS_NULL:case me.IS_NOT_NULL:return null}}function RA(n,e,t){switch(n){case Ne.IS_NULL:case Ne.IS_NOT_NULL:return null;default:return h.createElement("input",{type:"text",className:"form-control",placeholder:"Enter value",value:t??"",onChange:e})}}function NA(n,e,t){switch(n){case De.IS_NULL:case De.IS_NOT_NULL:return null;default:return h.createElement("input",{type:"text",className:"form-control",placeholder:"Enter value",value:t??"",onChange:e})}}function FA(){return null}function IA(n,e,t){switch(n){case Ct.IS_NULL:case Ct.IS_NOT_NULL:return null;default:return h.createElement("input",{type:"text",className:"form-control",maxLength:1,placeholder:"Enter value",value:t??"",onChange:e})}}function $C(n){var{column:e,config:t,dh:r,onChange:i=SA}=n,a=e.type,[o,s]=w.useState(a),[l,d]=w.useState(t.condition),[u,c]=w.useState(t.value),[m,v]=w.useState(t.start),[g,f]=w.useState(t.end);a!==o&&(d(bC(a)),c(SC(a)),v(void 0),f(void 0),s(a));var p=w.useMemo(()=>{if(a===void 0)return[];if(H.isNumberType(a))return wA;if(H.isCharType(a))return PA;if(H.isStringType(a))return EA;if(H.isDateType(a))return yA;if(H.isBooleanType(a))return TA},[a]),C=w.useCallback(T=>{var{value:O}=T.target;ra.debug("handleConditionChange",O),d(O)},[]),b=w.useCallback(T=>{var{value:O}=T.target;ra.debug("handleValueChange",O),c(O)},[]),S=w.useCallback(T=>{var{value:O}=T.target;ra.debug("handleStartValueChange",O),v(O)},[]),E=w.useCallback(T=>{var{value:O}=T.target;ra.debug("handleEndValueChange",O),f(O)},[]);w.useEffect(function(){var O=!0;l===void 0?(ra.debug("Unable to create formatting rule. Condition is not selected."),O=!1):H.isNumberType(e.type)&&!OA(l,u,m,g)?(ra.debug("Unable to create formatting rule. Invalid value",u),O=!1):H.isDateType(e.type)&&!BN(r,l,u)&&(ra.debug("Unable to create formatting rule. Invalid date condition",u),O=!1),i({condition:l,value:u,start:m,end:g},O)},[i,e.type,r,l,u,m,g]);var y=w.useMemo(()=>{if(a===void 0)return null;if(H.isNumberType(a))return DA(l,b,S,E,u,m,g);if(H.isCharType(a))return IA(l,b,u);if(H.isStringType(a))return RA(l,b,u);if(H.isDateType(a))return NA(l,b,u);if(H.isBooleanType(a))return FA()},[a,l,u,m,g,b,S,E]);return h.createElement("div",{className:"condition-editor mb-2"},h.createElement("select",{value:l,"data-testid":"condition-select",className:"custom-select mb-2",onChange:C},p),y)}var _A=ie.module("StyleEditor"),MA="#fcfcfa",AA="#f0f0ee",LA="#1a171a",kA=200,xA=()=>{};function BC(n){var e,t,{config:r,onChange:i=xA}=n,[a,o]=w.useState(r.type),[s,l]=w.useState((e=(t=r.customConfig)===null||t===void 0?void 0:t.background)!==null&&e!==void 0?e:MA),[d,u]=w.useState(!1),[c,m]=w.useState(kA),v=w.useRef(null),g=w.useCallback(y=>{var{value:T}=y.target;_A.debug("handleBackgroundChange",T),l(T)},[]),f=w.useCallback(()=>{d&&u(!1)},[d]),p=w.useCallback(()=>{d||b(),u(!d)},[d]),C=w.useMemo(()=>[Fe.NO_FORMATTING,Fe.POSITIVE,Fe.NEGATIVE,Fe.WARN,Fe.NEUTRAL,Fe.ACCENT_1,Fe.ACCENT_2,Fe.CUSTOM],[]);function b(){v.current&&m(v.current.getBoundingClientRect().width)}w.useEffect(function(){i({type:a,customConfig:{color:Qf.isDark(s)?AA:LA,background:s}})},[i,a,s]);var S=w.useCallback(()=>{for(var y=[],T=function(){var P=C[O],R="option-".concat(O,"-").concat(P);y.push(h.createElement(j,{key:R,kind:"inline",className:"style-option-btn",onClick:()=>{o(P),u(!1)},style:{color:Gl({type:P}),background:Vl({type:P})}},P===a&&h.createElement(re,{icon:ii,className:"mr-2"}),P!==a&&h.createElement("span",{className:"mr-4"}),Av(P)))},O=0;O<C.length;O+=1)T();return y},[C,a]),E=w.useCallback(()=>h.createElement("div",{className:"style-menu-container",role:"presentation",style:{width:c}},h.createElement("div",{className:"style-options"},S())),[c,S]);return h.createElement("div",{className:"style-editor"},h.createElement("div",{className:"mb-2",ref:v},h.createElement("label",{className:"mb-0"},"Style"),h.createElement(j,{kind:"inline",className:"cs-dropdown",style:{color:Gl({type:a}),background:Vl({type:a})},onClick:p},Av(a),h.createElement("span",null,h.createElement(re,{icon:JS,className:"cs-caret"})),h.createElement(ai,{isShown:d,actions:{menuElement:E()},popperOptions:{placement:"bottom-start"},popperClassName:"style-dropdown-menu",onMenuClosed:f,menuStyle:{maxWidth:"100rem"}}))),a===Fe.CUSTOM&&h.createElement("div",{className:"mb-2"},h.createElement("label",{className:"mb-0"},"Background"),h.createElement("input",{type:"color",value:s,className:"custom-select color-select",onChange:g})))}function fg(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 VC(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?fg(Object(t),!0).forEach(function(r){HA(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):fg(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function HA(n,e,t){return e=UA(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function UA(n){var e=$A(n,"string");return typeof e=="symbol"?e:String(e)}function $A(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 xo=ie.module("ColumnFormatEditor"),BA=()=>{};function VA(n){var{type:e,name:t}=n[0],r={type:e,name:t},i=VC({column:r,style:EC()},Pd(e));return i}function GA(n){var e,{columns:t,config:r=VA(t),dh:i,onChange:a=BA}=n,[o,s]=w.useState((e=t.find(b=>b.name===r.column.name&&b.type===r.column.type))!==null&&e!==void 0?e:t[0]),[l,d]=w.useState(wC(r)),[u,c]=w.useState(!1),[m,v]=w.useState(r.style),g=w.useCallback(b=>{var S=t.find(E=>{var{name:y}=E;return y===b});S!==void 0?(s(S),o.type!==S.type&&(d(Pd(S.type)),c(!1))):xo.error("Column ".concat(b," not found."))},[t,o]),f=w.useCallback((b,S)=>{xo.debug("handleConditionChange",b,S),d(b),c(S)},[]),p=w.useCallback(b=>{xo.debug("handleStyleChange",b),v(b)},[]);w.useEffect(function(){var S=u;o===void 0&&(xo.debug("Column is not selected, invalidating update."),S=!1),(m===void 0||m.type===Fe.NO_FORMATTING)&&(xo.debug("Style is not selected, invalidating update."),S=!1);var{type:E,name:y}=o,T={type:E,name:y};a(VC({column:T,style:m},l),S)},[a,o,m,l,u]);var C=t.map(b=>{var{name:S}=b;return{title:S,value:S}});return h.createElement("div",{className:"conditional-rule-editor form"},h.createElement("div",{className:"mb-2"},h.createElement("label",{className:"mb-0"},"Format Cell If"),h.createElement(Kf,{defaultValue:o?.name,options:C,inputPlaceholder:"Select a column",spellCheck:!1,onChange:g,searchPlaceholder:"Filter columns"})),o!==void 0&&h.createElement(h.Fragment,null,h.createElement($C,{dh:i,column:o,config:l,onChange:f}),h.createElement(BC,{config:m,onChange:p})))}function pg(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 GC(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?pg(Object(t),!0).forEach(function(r){WA(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):pg(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function WA(n,e,t){return e=jA(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function jA(n){var e=zA(n,"string");return typeof e=="symbol"?e:String(e)}function zA(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Ho=ie.module("RowFormatEditor"),KA=()=>{};function YA(n){var{type:e,name:t}=n[0],r={type:e,name:t},i=GC({column:r,style:EC()},Pd(e));return i}function qA(n){var e,{columns:t,config:r=YA(t),dh:i,onChange:a=KA}=n,[o,s]=w.useState((e=t.find(b=>b.name===r.column.name&&b.type===r.column.type))!==null&&e!==void 0?e:t[0]),[l,d]=w.useState(wC(r)),[u,c]=w.useState(!1),[m,v]=w.useState(r.style),g=w.useCallback(b=>{var S=t.find(E=>{var{name:y}=E;return y===b});S!==void 0?(s(S),o.type!==S.type&&(d(Pd(S.type)),c(!1))):Ho.error("Column ".concat(b," not found."))},[t,o]),f=w.useCallback((b,S)=>{Ho.debug("handleConditionChange",b,S),d(b),c(S)},[]),p=w.useCallback(b=>{Ho.debug("handleStyleChange",b),v(b)},[]);w.useEffect(function(){if(o===void 0){Ho.debug("Column is not selected, skip update.");return}if(m===void 0){Ho.debug("Style is not selected, skip update.");return}var{type:S,name:E}=o,y={type:S,name:E};a(GC({column:y,style:m},l),u)},[a,o,m,l,u]);var C=t.map(b=>{var{name:S}=b;return{title:S,value:S}});return h.createElement("div",{className:"conditional-rule-editor form"},h.createElement("div",{className:"mb-2"},h.createElement("label",{className:"mb-0"},"Format Row If"),h.createElement(Kf,{defaultValue:o?.name,options:C,inputPlaceholder:"Select a column",spellCheck:!1,onChange:g,searchPlaceholder:"Filter columns"})),o!==void 0&&h.createElement(h.Fragment,null,h.createElement($C,{column:o,config:l,dh:i,onChange:f}),h.createElement(BC,{config:m,onChange:p})))}var Ou=ie.module("ConditionalFormatEditor"),Du=()=>{};function XA(n){switch(n){case wr.CONDITIONAL:return h.createElement(N_,null);case wr.ROWS:return h.createElement(F_,null)}}function QA(n){switch(n){case wr.CONDITIONAL:return"Conditional";case wr.ROWS:return"Rows"}}var Cg=[wr.CONDITIONAL,wr.ROWS];function ZA(n){var e,{columns:t,dh:r,onSave:i=Du,onUpdate:a=Du,onCancel:o=Du,rule:s}=n,l=t.filter(VN),[d,u]=w.useState((e=s?.type)!==null&&e!==void 0?e:Cg[0]),[c,m]=w.useState(s),[v,g]=w.useState(!1),f=w.useCallback(()=>{o()},[o]),p=w.useCallback(()=>{if(c===void 0){Ou.error("Rule is not defined.");return}i(c)},[i,c]),C=w.useCallback(S=>{Ou.debug("handleFormatterChange",S),u(S)},[]),b=w.useCallback((S,E)=>{Ou.debug("handleRuleChange",S,E,d);var y={type:d,config:S};m(y),g(E),a(E?y:void 0)},[a,d]);return h.createElement("div",{className:"conditional-format-editor form"},h.createElement("div",{className:"mb-2"},h.createElement("label",{className:"mb-0",htmlFor:"formatter-select"},"Select Formatter"),h.createElement("div",{className:"formatter-list"},Cg.map((S,E)=>h.createElement("div",{key:S,className:"formatter-type"},h.createElement("button",{type:"button",className:te("btn","btn-icon","btn-formatter-type",{active:S===d}),"data-index":E,onClick:()=>C(S)},XA(S),QA(S)))))),d===wr.CONDITIONAL&&h.createElement(GA,{columns:l,dh:r,config:c?.config,onChange:b}),d===wr.ROWS&&h.createElement(qA,{columns:l,config:c?.config,dh:r,onChange:b}),h.createElement("hr",null),h.createElement("div",{className:"d-flex justify-content-end my-3"},h.createElement(j,{kind:"secondary",onClick:f,className:"mr-2"},"Cancel"),h.createElement(j,{kind:"primary",onClick:p,disabled:c===void 0||!v},"Done")))}function JA(n){var e,t,{text:r,isOpen:i,onClose:a}=n,[o,s]=w.useState(!1),[l,d]=w.useState(0),[u,c]=w.useState(!1),[m,v]=w.useState(!1),[g,f]=w.useState(!1),p=w.useRef();w.useEffect(function(){if(i){try{JSON.parse(r),f(!0)}catch{f(!1)}v(!1)}},[i,r]),w.useEffect(function(){p.current&&p.current.layout()},[l]),w.useEffect(function(){p.current&&p.current.updateOptions({lineNumbers:u?"on":"off"})},[u]);function C(){c(!u)}function b(){var T,O=(T=p.current)===null||T===void 0?void 0:T.getModel();!g||!O||(m?(O.setValue(r),v(!1)):(O.setValue(JSON.stringify(JSON.parse(r),void 0,2)),v(!0)),S())}function S(){var T,O,D=p.current;D&&c(((T=(O=D.getModel())===null||O===void 0?void 0:O.getLineCount())!==null&&T!==void 0?T:0)>1)}function E(){o&&(p.current=void 0,a())}function y(T){p.current=T,d(T.getContentHeight()),T.onDidContentSizeChange(O=>{var{contentHeight:D}=O;return d(D)}),S()}return!i&&!o?null:h.createElement(od,{isOpen:i,centered:!0,keyboard:!0,toggle:E,onOpened:()=>s(!0),onClosed:()=>{s(!1),d(0)},className:"theme-bg-dark cell-overflow-modal",size:"xl"},h.createElement(sd,{toggle:a},h.createElement("h5",{className:"overflow-modal-title"},"Cell Contents"),h.createElement(hd,{kind:"inline",tooltip:"Copy cell contents",copy:(e=(t=p.current)===null||t===void 0?void 0:t.getValue())!==null&&e!==void 0?e:r}),h.createElement(j,{kind:"inline",active:u,icon:ew,tooltip:"Toggle line numbers",onClick:C}),g&&h.createElement(j,{kind:"inline",icon:tw,active:m,tooltip:"Format as JSON",onClick:b})),h.createElement(ld,{style:{height:l}},h.createElement(Wh,{onEditorInitialized:y,settings:{value:r,readOnly:!0,wordWrap:"on",language:g?"typescript":"plaintext",folding:g,padding:{bottom:16},lineNumbers:u?"on":"off",overviewRulerLanes:0,renderLineHighlight:"none",find:{seedSearchStringFromSelection:"never"}}})))}function eL(n){return n.model!==void 0}var tL="###,##0";function rL(n){var{gotoRow:e,gotoRowError:t,gotoValueError:r,onGotoRowSubmit:i,isShown:a,onEntering:o,onEntered:s,onExiting:l,onExited:d,model:u,onGotoRowNumberChanged:c,onClose:m,gotoValueSelectedColumnName:v,gotoValue:g,gotoValueFilter:f,onGotoValueSelectedColumnNameChanged:p,onGotoValueSelectedFilterChanged:C,onGotoValueChanged:b,onGotoValueSubmit:S}=n,E=w.useRef(null),y=w.useRef(null),[T,O]=w.useState(!1),D=[];eL(u)&&u.table!==void 0&&({columns:D}=u.table);var{dh:P,rowCount:R}=u,_=w.useMemo(()=>"goto-row-input-".concat(Xe()),[]),M=I=>{I.key==="Enter"?(I.stopPropagation(),I.preventDefault(),S()):(I.key==="Backspace"||I.key==="Delete")&&(g==="".concat(Number.POSITIVE_INFINITY)||g==="".concat(Number.NEGATIVE_INFINITY))&&K("")},A=I=>{I.key==="Enter"&&(I.stopPropagation(),I.preventDefault(),S(I.shiftKey))},B=u.getColumnIndexByName(v),$=D[B??0],z=$?.type,G=H.getNormalizedType(z),K=I=>{b(I??"")},X=()=>{if(T&&document.activeElement!==E.current){var I;(I=E.current)===null||I===void 0||I.select()}else if(!T&&document.activeElement!==y.current){var N;(N=y.current)===null||N===void 0||N.select()}};w.useEffect(X,[T,e,g]);var J=()=>{switch(G){case H.dataType.DECIMAL:case H.dataType.INT:return h.createElement("div",{className:"goto-row-input"},h.createElement("input",{ref:y,className:te("form-control",{"is-invalid":r!==""}),onKeyDown:M,placeholder:"value",onChange:I=>{var N=I.target.value.toLowerCase();/^-?[0-9]*\.?[0-9]*$/.test(I.target.value)?K(I.target.value):N==="-i"||N==="-infinity"?K("".concat(Number.NEGATIVE_INFINITY)):(N==="i"||N==="infinity")&&K("".concat(Number.POSITIVE_INFINITY))},value:g,"aria-label":"Value Input"}));case H.dataType.DATETIME:return h.createElement("div",{className:"goto-value-date-time-input"},h.createElement(Uw,{ref:y,className:te("form-control","goto-value-date-time-input",{"is-invalid":r!==""}),defaultValue:g,onChange:K,onSubmit:A,"aria-label":"Value Input"}));case H.dataType.STRING:return h.createElement(h.Fragment,null,h.createElement("div",{className:"goto-row-input"},h.createElement("select",{className:"custom-select",onChange:I=>{C(I.target.value)},value:f,"aria-label":"filter-type-select"},h.createElement("option",{key:ge.eqIgnoreCase,value:ge.eqIgnoreCase},"Equals (case-insensitive)"),h.createElement("option",{key:ge.containsIgnoreCase,value:ge.containsIgnoreCase},"Contains (case-insensitive)"),h.createElement("option",{key:ge.eq,value:ge.eq},"Equals"),h.createElement("option",{key:ge.contains,value:ge.contains},"Contains"))),h.createElement("div",{className:"goto-row-input"},h.createElement("input",{ref:y,className:te("form-control",{"is-invalid":r!==""}),onKeyDown:A,placeholder:"value",onChange:I=>K(I.target.value),value:g,"aria-label":"Value Input"})));case H.dataType.BOOLEAN:return h.createElement("div",{className:"goto-row-input"},h.createElement("select",{className:"custom-select",onChange:I=>{K(I.target.value)},value:g,"aria-label":"Value Input"},h.createElement("option",{"aria-label":"null value",key:"null",value:""}),h.createElement("option",{key:"true",value:"true"},"true"),h.createElement("option",{key:"false",value:"false"},"false")));default:return h.createElement("div",{className:"goto-row-input"},h.createElement("input",{ref:y,className:"form-control",onKeyDown:A,placeholder:"value",onChange:I=>K(I.target.value),value:g,"aria-label":"Value Input"}))}};return h.createElement(Od,{isShown:a,className:te("goto-row"),onEntering:o,onEntered:()=>{s(),X()},onExiting:l,onExited:d},h.createElement(h.Fragment,null,h.createElement("div",{className:"goto-row-row"},h.createElement("div",{className:te("goto-row-wrapper",{"is-inactive":!T}),onClick:()=>O(!0),onFocus:()=>O(!0),role:"group"},h.createElement("label",{className:"goto-row-text",htmlFor:_},"Go to row"),h.createElement("div",{className:"goto-row-input"},h.createElement("input",{ref:E,"data-testid":"goto-row-input",type:"number",onKeyDown:I=>{I.key==="Enter"&&(I.stopPropagation(),I.preventDefault(),i())},className:te("form-control",{"is-invalid":t!==""}),placeholder:"Row number",onChange:I=>{c(I)},value:e,id:_})),h.createElement("div",{className:"goto-row-text"},"of ",P.i18n.NumberFormat.format(tL,R)),t&&h.createElement("div",{className:"text-danger"},t)),h.createElement("div",{className:"goto-row-close"},h.createElement(j,{kind:"ghost",onClick:m},h.createElement(re,{icon:gs,style:{marginRight:"0"}})))),u.isSeekRowAvailable&&h.createElement("div",{className:"goto-row-row"},h.createElement("div",{className:te("goto-row-wrapper",{"is-inactive":T}),onClick:()=>O(!1),onFocus:()=>O(!1),role:"group"},h.createElement("div",{className:"goto-row-text"},"Go to value"),h.createElement("div",{className:"goto-row-input"},h.createElement("select",{className:"custom-select",onChange:I=>{var N=I.target.value;p(N)},value:v,"aria-label":"column-name-select"},D.map(I=>h.createElement("option",{key:I.name,value:I.name},I.name)))),J(),h.createElement("div",null,h.createElement(j,{kind:"ghost",disabled:g==="",onClick:()=>{S(!0)}},h.createElement(re,{icon:Gf})),h.createElement(j,{kind:"ghost",disabled:g==="",onClick:()=>{S(!1)}},h.createElement(re,{icon:rw}))),r&&h.createElement("div",{className:"text-danger"},r)))))}function bg(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 al(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){bg(a,r,i,o,s,"next",l)}function s(l){bg(a,r,i,o,s,"throw",l)}o(void 0)})}}function Sg(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 Qt(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Sg(Object(t),!0).forEach(function(r){he(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Sg(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function he(n,e,t){return e=nL(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function nL(n){var e=iL(n,"string");return typeof e=="symbol"?e:String(e)}function iL(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ve=ie.module("IrisGrid"),aL=500,oL=250,sL=250,lL=250,WC=Object.freeze({aggregations:xe,showOnTop:!1}),dL="yyyy-MM-dd'T'HH:mm:ss.SSSSSSSSS z";function wg(n){var{advancedFilters:e,aggregationSettings:t,customColumns:r,quickFilters:i,reverseType:a,rollupConfig:o,searchFilter:s,selectDistinctColumns:l,sorts:d}=n;return e.size===0&&t.aggregations.length===0&&r.length===0&&i.size===0&&a===H.REVERSE_TYPE.NONE&&o==null&&s==null&&l.length===0&&d.length===0}class kn extends w.Component{constructor(e){var t,r,i,a;super(e),he(this,"grid",void 0),he(this,"gridWrapper",void 0),he(this,"lastFocusedFilterBarColumn",void 0),he(this,"lastLoadedConfig",void 0),he(this,"tooltip",void 0),he(this,"pending",void 0),he(this,"globalColumnFormats",void 0),he(this,"dateTimeFormatterOptions",void 0),he(this,"decimalFormatOptions",void 0),he(this,"integerFormatOptions",void 0),he(this,"truncateNumbersWithPound",void 0),he(this,"loadingScrimStartTime",void 0),he(this,"loadingScrimFinishTime",void 0),he(this,"animationFrame",void 0),he(this,"loadingTimer",void 0),he(this,"renderer",void 0),he(this,"tableSaver",void 0),he(this,"crossColumnRef",void 0),he(this,"isAnimating",void 0),he(this,"filterInputRef",void 0),he(this,"toggleFilterBarAction",void 0),he(this,"toggleSearchBarAction",void 0),he(this,"toggleGotoRowAction",void 0),he(this,"discardAction",void 0),he(this,"commitAction",void 0),he(this,"contextActions",void 0),he(this,"tableUtils",void 0),he(this,"getAdvancedMenuOpenedHandler",Pe(N=>this.handleAdvancedMenuOpened.bind(this,N),{max:100})),he(this,"getCachedAdvancedFilterMenuActions",Pe((N,k,x,Y,W)=>h.createElement(v_,{model:N,column:k,onFilterChange:this.handleAdvancedFilterChange,onSortChange:this.handleAdvancedFilterSortChange,onDone:this.handleAdvancedFilterDone,options:x,sortDirection:Y,formatter:W,tableUtils:this.tableUtils}),{max:50})),he(this,"getCachedOptionItems",Pe((N,k,x,Y,W,ee,oe,ae,se,pe,He,at,ot,Qe,lt,Ot)=>{var Le=[];return N&&Le.push({type:ke.CHART_BUILDER,title:"Chart Builder",icon:nw}),Le.push({type:ke.VISIBILITY_ORDERING_BUILDER,title:"Organize Columns",icon:Uh}),x&&Le.push({type:ke.CONDITIONAL_FORMATTING,title:"Conditional Formatting",icon:ps}),k&&Le.push({type:ke.CUSTOM_COLUMN_BUILDER,title:"Custom Columns",icon:iw}),Y&&Le.push({type:ke.ROLLUP_ROWS,title:"Rollup Rows",icon:Wf}),W&&Le.push({type:ke.AGGREGATIONS,title:"Aggregate Columns",icon:aw}),ee&&Le.push({type:ke.SELECT_DISTINCT,title:"Select Distinct Values",icon:ow}),oe&&ot&&Le.push({type:ke.TABLE_EXPORTER,title:"Download CSV",icon:sw}),Ot&&Le.push({type:ke.ADVANCED_SETTINGS,title:"Advanced Settings",icon:lw}),Le.push({type:ke.QUICK_FILTERS,title:"Quick Filters",subtitle:ae.shortcut.getDisplayText(),icon:Nl,isOn:He,onChange:ae.action}),Qe&&Le.push({type:ke.SEARCH_BAR,title:"Search Bar",subtitle:se.shortcut.getDisplayText(),icon:dw,isOn:at,onChange:se.action}),Le.push({type:ke.GOTO,title:"Go to",subtitle:pe.shortcut.getDisplayText(),icon:uw,isOn:lt,onChange:pe.action}),Object.freeze(Le)},{max:1})),he(this,"getCachedHiddenColumns",Pe((N,k)=>ye.getHiddenColumns(new Map([...N.initialColumnWidths,...k])),{max:1})),he(this,"getAggregationMap",Pe((N,k)=>{var x={};return k.forEach(Y=>{var{operation:W,selected:ee,invert:oe}=Y;x[W]=Bi.getOperationColumnNames(N,W,ee,oe)}),x})),he(this,"getOperationMap",Pe((N,k)=>{var x={};return k.filter(Y=>!Bi.isRollupOperation(Y.operation)).forEach(Y=>{var{operation:W,selected:ee,invert:oe}=Y;Bi.getOperationColumnNames(N,W,ee,oe).forEach(ae=>{var se,pe=[...(se=x[ae])!==null&&se!==void 0?se:[],W];x[ae]=Object.freeze(pe)})}),x})),he(this,"getOperationOrder",Pe(N=>N.map(k=>k.operation).filter(k=>!Bi.isRollupOperation(k)))),he(this,"getCachedFormatColumns",Pe((N,k,x)=>$N(N,k,x))),he(this,"getCachedPreviewFormatColumns",Pe((N,k,x,Y,W)=>{if(ve.debug("getCachedPreviewFormatColumns",x,Y,W),Y!==void 0&&W!==void 0){var ee=[...x];return ee[W]=Y,this.getCachedFormatColumns(N,k,ee)}return this.getCachedFormatColumns(N,k,x)})),he(this,"getModelRollupConfig",Pe((N,k,x)=>ye.getModelRollupConfig(N,k,x))),he(this,"getModelTotalsConfig",Pe((N,k,x)=>{var Y,W,ee,{aggregations:oe,showOnTop:ae}=x;if(((Y=k==null||(W=k.columns)===null||W===void 0?void 0:W.length)!==null&&Y!==void 0?Y:0)>0||((ee=oe?.length)!==null&&ee!==void 0?ee:0)===0)return null;var se=this.getOperationMap(N,oe),pe=this.getOperationOrder(oe);return{operationMap:se,operationOrder:pe,showOnTop:ae}})),he(this,"getCachedStateOverride",Pe((N,k,x,Y,W,ee,oe,ae,se,pe)=>({hoverSelectColumn:N,isFilterBarShown:k,isSelectingColumn:x,loadingScrimProgress:Y,quickFilters:W,advancedFilters:ee,sorts:oe,reverseType:ae,rollupConfig:se,isMenuShown:pe}),{max:1})),he(this,"getCachedFilter",Pe((N,k,x,Y,W)=>[...N??[],...Y??[],...ye.getFiltersFromFilterMap(k),...ye.getFiltersFromFilterMap(x),...W!==void 0?[W]:[]],{max:1})),he(this,"getCachedTheme",Pe((N,k,x)=>Qt(Qt(Qt({},RC),N),{},{autoSelectRow:!k,rowFooterWidth:x>0?N.rowFooterWidth:0}),{max:1})),he(this,"getAlwaysFetchColumns",Pe((N,k,x,Y,W,ee)=>{for(var oe=[],ae=0;ae<Y;ae+=1)oe.push(k[V.getModelIndex(ae,x)].name);for(var se=0;se<W;se+=1)oe.push(k[V.getModelIndex(k.length-1-se,x)].name);if(ee)for(var pe=ee[0];pe<=ee[1];pe+=1)oe.push(k[V.getModelIndex(pe,x)].name);var He=new Set([...N,...oe]);return Object.freeze([...He])})),he(this,"updateSearchFilter",rt((N,k,x,Y)=>{var{model:W}=this.props,ee=il.createSearchFilter(W.dh,N,k,x,Y);this.setState({searchFilter:ee})},oL)),he(this,"handleConditionalFormatEditorUpdate",rt(N=>{this.setState({conditionalFormatPreview:N})},lL)),he(this,"handleDownloadProgressUpdate",zi((N,k)=>{var{tableDownloadStatus:x}=this.state;x===ta.DOWNLOAD_STATUS.DOWNLOADING&&this.setState({tableDownloadProgress:N,tableDownloadEstimatedTime:k})},aL)),he(this,"getOverflowButtonTooltip",Pe(N=>{if(N==null)return null;var k=Qt(Qt({position:"absolute"},N),{},{pointerEvents:"none"}),x={placement:"left",modifiers:{flip:{behavior:["left","right"]}}};return h.createElement("div",{style:k},h.createElement(pt,{key:Date.now(),options:x,ref:this.handleTooltipRef},"View full contents"))})),he(this,"getExpandCellTooltip",Pe(N=>{if(N==null)return null;var{expandTooltipDisplayValue:k}=this.state,x=Qt(Qt({position:"absolute"},N),{},{pointerEvents:"none"}),Y={placement:"bottom-start"};return h.createElement("div",{style:x},h.createElement(pt,{key:Date.now(),options:Y,ref:this.handleTooltipRef},h.createElement("div",{style:{textAlign:"left"}},"Click to ",k," row",h.createElement("br",null),Ki.isMacPlatform()?"⌘":"Ctrl+","Click to expand row and all children")))})),he(this,"getLinkHoverTooltip",Pe(N=>{if(N==null)return null;var{linkHoverDisplayValue:k}=this.state,x=Qt(Qt({position:"absolute"},N),{},{pointerEvents:"none"}),Y={placement:"bottom"};return h.createElement("div",{style:x},h.createElement(pt,{options:Y,ref:this.handleTooltipRef},h.createElement("div",{className:"link-hover-tooltip"},k," - Click once to follow.",h.createElement("br",null),"Click and hold to select this cell.")))})),he(this,"handleGotoValueChanged",N=>{this.setState({gotoValue:N}),this.debouncedSeekRow(N)}),he(this,"debouncedSeekRow",rt(N=>{this.seekRow(N)},sL)),this.handleAdvancedFilterChange=this.handleAdvancedFilterChange.bind(this),this.handleAdvancedFilterSortChange=this.handleAdvancedFilterSortChange.bind(this),this.handleAdvancedFilterDone=this.handleAdvancedFilterDone.bind(this),this.handleAdvancedMenuOpened=this.handleAdvancedMenuOpened.bind(this),this.handleGotoRowOpened=this.handleGotoRowOpened.bind(this),this.handleGotoRowClosed=this.handleGotoRowClosed.bind(this),this.handleAdvancedMenuClosed=this.handleAdvancedMenuClosed.bind(this),this.handleAggregationChange=this.handleAggregationChange.bind(this),this.handleAggregationsChange=this.handleAggregationsChange.bind(this),this.handleAggregationEdit=this.handleAggregationEdit.bind(this),this.handleAnimationLoop=this.handleAnimationLoop.bind(this),this.handleAnimationStart=this.handleAnimationStart.bind(this),this.handleAnimationEnd=this.handleAnimationEnd.bind(this),this.handleChartChange=this.handleChartChange.bind(this),this.handleChartCreate=this.handleChartCreate.bind(this),this.handleGridError=this.handleGridError.bind(this),this.handleFilterBarChange=this.handleFilterBarChange.bind(this),this.handleFilterBarDone=this.handleFilterBarDone.bind(this),this.handleFilterBarTab=this.handleFilterBarTab.bind(this),this.handleCancel=this.handleCancel.bind(this),this.handleMenu=this.handleMenu.bind(this),this.handleMenuClose=this.handleMenuClose.bind(this),this.handleMenuSelect=this.handleMenuSelect.bind(this),this.handleMenuBack=this.handleMenuBack.bind(this),this.handleRequestFailed=this.handleRequestFailed.bind(this),this.handleSelectionChanged=this.handleSelectionChanged.bind(this),this.handleMovedColumnsChanged=this.handleMovedColumnsChanged.bind(this),this.handleHeaderGroupsChanged=this.handleHeaderGroupsChanged.bind(this),this.handleUpdate=this.handleUpdate.bind(this),this.handleTooltipRef=this.handleTooltipRef.bind(this),this.handleViewChanged=this.handleViewChanged.bind(this),this.handleFormatSelection=this.handleFormatSelection.bind(this),this.handleConditionalFormatCreate=this.handleConditionalFormatCreate.bind(this),this.handleConditionalFormatEdit=this.handleConditionalFormatEdit.bind(this),this.handleConditionalFormatsChange=this.handleConditionalFormatsChange.bind(this),this.handleConditionalFormatEditorSave=this.handleConditionalFormatEditorSave.bind(this),this.handleConditionalFormatEditorCancel=this.handleConditionalFormatEditorCancel.bind(this),this.handleUpdateCustomColumns=this.handleUpdateCustomColumns.bind(this),this.handleCustomColumnsChanged=this.handleCustomColumnsChanged.bind(this),this.handleSelectDistinctChanged=this.handleSelectDistinctChanged.bind(this),this.handlePendingDataUpdated=this.handlePendingDataUpdated.bind(this),this.handlePendingCommitClicked=this.handlePendingCommitClicked.bind(this),this.handlePendingDiscardClicked=this.handlePendingDiscardClicked.bind(this),this.handleGotoRowSelectedRowNumberSubmit=this.handleGotoRowSelectedRowNumberSubmit.bind(this),this.focusRowInGrid=this.focusRowInGrid.bind(this),this.handleDownloadTable=this.handleDownloadTable.bind(this),this.handleDownloadTableStart=this.handleDownloadTableStart.bind(this),this.handleCancelDownloadTable=this.handleCancelDownloadTable.bind(this),this.handleDownloadCanceled=this.handleDownloadCanceled.bind(this),this.handleDownloadCompleted=this.handleDownloadCompleted.bind(this),this.handlePartitionAppend=this.handlePartitionAppend.bind(this),this.handlePartitionChange=this.handlePartitionChange.bind(this),this.handlePartitionFetchAll=this.handlePartitionFetchAll.bind(this),this.handlePartitionDone=this.handlePartitionDone.bind(this),this.handleColumnVisibilityChanged=this.handleColumnVisibilityChanged.bind(this),this.handleColumnVisibilityReset=this.handleColumnVisibilityReset.bind(this),this.handleCrossColumnSearch=this.handleCrossColumnSearch.bind(this),this.handleRollupChange=this.handleRollupChange.bind(this),this.handleOverflowClose=this.handleOverflowClose.bind(this),this.getColumnBoundingRect=this.getColumnBoundingRect.bind(this),this.handleGotoRowSelectedRowNumberChanged=this.handleGotoRowSelectedRowNumberChanged.bind(this),this.handleGotoValueSelectedColumnNameChanged=this.handleGotoValueSelectedColumnNameChanged.bind(this),this.handleGotoValueSelectedFilterChanged=this.handleGotoValueSelectedFilterChanged.bind(this),this.handleGotoValueChanged=this.handleGotoValueChanged.bind(this),this.handleGotoValueSubmitted=this.handleGotoValueSubmitted.bind(this),this.grid=null,this.gridWrapper=null,this.lastLoadedConfig=null,this.pending=new hi,this.globalColumnFormats=xe,this.decimalFormatOptions={},this.integerFormatOptions={},this.truncateNumbersWithPound=!1,this.renderer=new YI,this.tableSaver=null,this.crossColumnRef=h.createRef(),this.isAnimating=!1,this.filterInputRef=h.createRef(),this.toggleFilterBarAction={action:()=>this.toggleFilterBar(),shortcut:Mr.TABLE.TOGGLE_QUICK_FILTER},this.toggleSearchBarAction={action:()=>this.toggleSearchBar(),shortcut:Mr.TABLE.TOGGLE_SEARCH},this.toggleGotoRowAction={action:()=>this.toggleGotoRow(),shortcut:Mr.TABLE.GOTO_ROW},this.discardAction={action:()=>{var{model:N}=this.props;nt(N)&&N.isEditable&&N.pendingDataMap.size>0&&this.discardPending().catch(ve.error)},shortcut:Mr.INPUT_TABLE.DISCARD},this.commitAction={action:()=>{var{model:N}=this.props;nt(N)&&N.isEditable&&N.pendingDataMap.size>0&&N.pendingDataErrors.size===0&&this.commitPending().catch(ve.error)},shortcut:Mr.INPUT_TABLE.COMMIT},this.contextActions=[this.toggleFilterBarAction,this.toggleSearchBarAction,this.toggleGotoRowAction,this.discardAction,this.commitAction];var{aggregationSettings:o,conditionalFormats:s,customColumnFormatMap:l,isFilterBarShown:d,isSelectingPartition:u,model:c,movedColumns:m,movedRows:v,partition:g,partitionColumn:f,rollupConfig:p,userColumnWidths:C,userRowHeights:b,showSearchBar:S,searchValue:E,selectedSearchColumns:y,invertSearchColumns:T,advancedFilters:O,quickFilters:D,selectDistinctColumns:P,pendingDataMap:R,canCopy:_,frozenColumns:M,columnHeaderGroups:A}=e,B=[new TF(this),new NF(this)];_&&B.push(new fF(this));var{dh:$}=c,z=[new AF(this),new EI(this),new _I(this),new UF(this),new WF(this),new OI(this),new pI(this),new sI(this,$),new cI(this),new RI(this)],G=m.length>0?m:c.initialMovedColumns,K=v.length>0?v:c.initialMovedRows,X=new kI({userColumnWidths:new Map(C),userRowHeights:new Map(b),movedColumns:G,initialColumnWidths:new Map(c==null||(t=c.layoutHints)===null||t===void 0||(r=t.hiddenColumns)===null||r===void 0?void 0:r.map(N=>[c.getColumnIndexByName(N),0]))}),J=y??[],I=il.createSearchFilter($,E,J,c.columns,T);this.tableUtils=new H($),this.state={isFilterBarShown:d,isSelectingPartition:u,focusedFilterBarColumn:null,metricCalculator:X,metrics:void 0,keyHandlers:B,mouseHandlers:z,partition:g,partitionColumn:f,partitionTable:null,partitionFilters:[],quickFilters:D?new Map(D):new Map,advancedFilters:new Map(O),shownAdvancedFilter:null,hoverAdvancedFilter:null,sorts:[],reverseType:H.REVERSE_TYPE.NONE,customColumns:[],selectDistinctColumns:P,selectedRanges:[],copyOperation:null,loadingText:null,loadingScrimProgress:null,loadingSpinnerShown:!1,movedColumns:G,movedRows:K,shownColumnTooltip:null,formatter:new wn($),isMenuShown:!1,customColumnFormatMap:new Map(l),conditionalFormats:s,conditionalFormatEditIndex:null,conditionalFormatPreview:void 0,hoverSelectColumn:null,isTableDownloading:!1,isReady:!1,tableDownloadStatus:"",tableDownloadProgress:0,tableDownloadEstimatedTime:0,showSearchBar:S,searchFilter:I,searchValue:E,selectedSearchColumns:J,invertSearchColumns:T,rollupConfig:p,rollupSelectedColumns:[],aggregationSettings:o,selectedAggregation:null,openOptions:[],pendingRowCount:0,pendingDataMap:R??new Map,pendingDataErrors:new Map,pendingSavePromise:null,pendingSaveError:null,toastMessage:null,frozenColumns:M,showOverflowModal:!1,overflowText:"",overflowButtonTooltipProps:null,expandCellTooltipProps:null,expandTooltipDisplayValue:"expand",linkHoverTooltipProps:null,linkHoverDisplayValue:"",isGotoShown:!1,gotoRow:"",gotoRowError:"",gotoValueError:"",gotoValueSelectedColumnName:(i=(a=c.columns[0])===null||a===void 0?void 0:a.name)!==null&&i!==void 0?i:"",gotoValueSelectedFilter:ge.eqIgnoreCase,gotoValue:"",columnHeaderGroups:A??c.initialColumnHeaderGroups}}componentDidMount(){var{partitionColumn:e,model:t}=this.props,r=e??t.columns.find(i=>i.isPartitionColumn);t.isFilterRequired&&t.isValuesTableAvailable&&r!=null?this.loadPartitionsTable(r):this.initState(),this.startListening(t)}componentDidUpdate(e){var{inputFilters:t,isSelectingColumn:r,settings:i,model:a,customFilters:o,sorts:s}=this.props;a!==e.model&&(this.stopListening(e.model),this.startListening(a));var l=t!==e.inputFilters?t.filter(g=>!e.inputFilters.includes(g)):[];if(l.length>0){var d,{advancedSettings:u}=this.props,c=(d=u.get(so.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS))!==null&&d!==void 0?d:!1;c&&(this.clearGridInputField(),this.clearCrossColumSearch()),this.startLoading("Filtering...",!0),this.applyInputFilters(l,c)}r!==e.isSelectingColumn&&this.resetColumnSelection(),i!==e.settings&&this.updateFormatterSettings(i),o!==e.customFilters&&this.startLoading("Filtering...",!0),s!==e.sorts&&this.updateSorts(s);var{loadingScrimStartTime:m,loadingScrimFinishTime:v}=this;m!=null&&v!=null&&window.requestAnimationFrame(()=>{var g=Date.now(),f=g-m,p=v-m,C=Math.min(f/p,1);v<g&&(this.loadingScrimStartTime=void 0,this.loadingScrimFinishTime=void 0),this.setState(b=>b.loadingScrimProgress==null?(ve.debug2("Ignoring scrim update because loading cancelled."),null):{loadingScrimProgress:C})}),this.sendStateChange()}componentWillUnmount(){var{model:e}=this.props;this.stopListening(e),this.pending.cancel(),this.updateSearchFilter.cancel(),this.loadingTimer&&clearTimeout(this.loadingTimer),this.handleDownloadProgressUpdate.cancel(),this.animationFrame!==void 0&&cancelAnimationFrame(this.animationFrame)}getValueForCell(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{model:i}=this.props,{dh:a}=i,o=this.getModelColumn(e),s=this.getModelRow(t);if(r&&o!=null&&s!=null){var l=i.valueForCell(o,s);if(H.isDateType(i.columns[o].type)){var{formatter:d}=i;return a.i18n.DateTimeFormat.format(dL,l,a.i18n.TimeZone.getTimeZone(d.timeZone))}return l}return r?null:o!=null&&s!=null?i.textForCell(o,s):""}getModelColumn(e){var{metrics:t}=this.state;L(t);var{modelColumns:r}=t;return r==null?null:e!=null?r.get(e):null}getModelRow(e){var{metrics:t}=this.state;L(t);var{modelRows:r}=t;return r==null?null:e!=null?r.get(e):null}getTheme(){var e,{model:t,theme:r}=this.props;return this.getCachedTheme(r,(e=nt(t)&&t.isEditable)!==null&&e!==void 0?e:!1,t.floatingTopRowCount+t.floatingBottomRowCount)}getVisibleColumn(e){var{movedColumns:t}=this.state;return V.getVisibleIndex(e,t)}makeQuickFilter(e,t,r){try{return this.tableUtils.makeQuickFilter(e,t,r)}catch(i){ve.error("Error creating quick filter",i)}return null}applyInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,{model:r}=this.props,{advancedFilters:i,quickFilters:a}=this.state,o=t?new Map:new Map(i),s=t?new Map:new Map(a),l=t&&i.size>0;e.forEach(d=>{var{name:u,type:c,value:m}=d,v=r.columns.findIndex(g=>{var{name:f,type:p}=g;return f===u&&p===c});v>=0?(l=o.delete(v)||l,l=this.applyQuickFilter(v,m,s)||l):ve.error("Unable to find column for inputFilter",u,c,m)}),l&&this.setState({quickFilters:s,advancedFilters:o})}applyQuickFilter(e,t,r){var{model:i}=this.props,{formatter:a}=i,o=i.columns[e];if(t!=null&&"".concat(t).trim().length>0){var s=r.get(e);if(s!=null){var{text:l}=s;if(l===t)return ve.debug2("Ignoring change to existing filter"),!1}return r.set(e,{text:t,filter:this.makeQuickFilter(o,t,a.timeZone)}),!0}return r.delete(e)}setAdvancedFilterMap(e){this.setState({advancedFilters:e})}setAdvancedFilter(e,t,r){ve.debug("Setting advanced filter",e,t),this.startLoading("Filtering...",!0),this.setState(i=>{var{advancedFilters:a}=i,o=new Map(a);return t==null?o.delete(e):o.set(e,{filter:t,options:r}),{advancedFilters:o}})}setQuickFilter(e,t,r){ve.debug("Setting quick filter",e,t,r),this.startLoading("Filtering...",!0),this.setState(i=>{var{quickFilters:a}=i,o=new Map(a);return o.set(e,{filter:t,text:r}),{quickFilters:o}})}setFilterMap(e){var t;ve.debug("setFilterMap",e);var{advancedSettings:r}=this.props,i=(t=r.get(so.LINK_CHANGE_CLEARS_ALL_FILTERS))!==null&&t!==void 0?t:!1;i&&this.clearAllFilters();var{model:a}=this.props;e.forEach((o,s)=>{var{columnType:l,filterList:d}=o,u=a.columns.find(g=>g.name===s&&g.type===l);if(u!=null){var c=a.getColumnIndexByName(u.name);L(c);var m=ye.combineFiltersFromList(l,d);if(m.length===0)this.removeQuickFilter(c);else{var{formatter:v}=a;this.setQuickFilter(c,this.makeQuickFilter(u,m,v.timeZone),"".concat(m))}}})}removeColumnFilter(e){this.startLoading("Filtering...",!0),this.setState(t=>{var{advancedFilters:r,quickFilters:i}=t,a=r?new Map(r):new Map,o=i?new Map(i):new Map;return o.delete(e),a.delete(e),{quickFilters:o,advancedFilters:a}})}removeQuickFilter(e){this.startLoading("Clearing Filter...",!0),this.setState(t=>{var{quickFilters:r}=t,i=new Map(r);return i.delete(e),{quickFilters:i}})}clearAllFilters(){ve.debug("Clearing all filters");var{advancedFilters:e,quickFilters:t,searchFilter:r}=this.state;t.size===0&&e.size===0&&r===null||(this.clearGridInputField(),this.startLoading("Clearing Filters...",!0),this.setState({quickFilters:new Map,advancedFilters:new Map,searchValue:"",searchFilter:void 0}))}clearCrossColumSearch(){ve.debug("Clearing cross-column search"),this.setState({searchValue:"",searchFilter:void 0})}clearGridInputField(){this.filterInputRef.current!=null&&this.filterInputRef.current.setValue("")}rebuildFilters(){ve.debug("Rebuilding filters");var{model:e}=this.props,{advancedFilters:t,quickFilters:r}=this.state,{columns:i,formatter:a}=e,o=new Map,s=new Map;t.forEach((l,d)=>{var{options:u}=l,c=i[d],m=this.tableUtils.makeAdvancedFilter(c,u,a.timeZone);o.set(d,{options:u,filter:m})}),r.forEach((l,d)=>{var{text:u}=l,c=i[d];s.set(d,{text:u,filter:this.makeQuickFilter(c,u,a.timeZone)})}),this.startLoading("Rebuilding filters...",!0),this.setState({quickFilters:s,advancedFilters:o})}setFilters(e){var{quickFilters:t,advancedFilters:r}=e;this.setState({quickFilters:t,advancedFilters:r})}updateFormatterSettings(e){var t,r,i,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,o=oi.getColumnFormats(e),s=oi.getDateTimeFormatterOptions(e),l=(t=e?.defaultDecimalFormatOptions)!==null&&t!==void 0?t:{},d=(r=e?.defaultIntegerFormatOptions)!==null&&r!==void 0?r:{},u=(i=e?.truncateNumbersWithPound)!==null&&i!==void 0?i:!1,c=!ct(this.globalColumnFormats,o),m=!ct(this.dateTimeFormatterOptions,s),v=!ct(this.decimalFormatOptions,e?.defaultDecimalFormatOptions),g=!ct(this.integerFormatOptions,d),f=this.truncateNumbersWithPound!==u;(c||m||v||g||f)&&(this.globalColumnFormats=o,this.dateTimeFormatterOptions=s,this.decimalFormatOptions=l,this.integerFormatOptions=d,this.truncateNumbersWithPound=u,this.updateFormatter({},a),m&&a&&this.rebuildFilters())}updateFormatter(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,{customColumnFormatMap:i}=this.state,{model:a}=this.props,o=Qt({customColumnFormatMap:i},e),s=[...(t=this.globalColumnFormats)!==null&&t!==void 0?t:[],...o.customColumnFormatMap.values()],l=new wn(a.dh,s,this.dateTimeFormatterOptions,this.decimalFormatOptions,this.integerFormatOptions,this.truncateNumbersWithPound);ve.debug("updateFormatter",this.globalColumnFormats,s),this.setState(Qt(Qt({},o),{},{formatter:l}),()=>{r&&this.grid&&this.grid.forceUpdate()})}initFormatter(){var{settings:e}=this.props;this.updateFormatterSettings(e)}initState(){var{applyInputFiltersOnInit:e,inputFilters:t,sorts:r,model:i,reverseType:a,customColumns:o,searchValue:s,selectedSearchColumns:l,invertSearchColumns:d}=this.props,u=l??[],c=il.createSearchFilter(i.dh,s,u,i.columns,d);if(e){var m=t.filter(v=>v.value!=null);this.applyInputFilters(m)}this.setState({sorts:r,reverseType:a,customColumns:o,isReady:!0,searchFilter:c}),this.initFormatter()}loadPartitionsTable(e){var t=this;return al(function*(){var{model:r}=t.props;t.setState({isSelectingPartition:!0});try{var i=yield t.pending.add(r.valuesTable(e),u=>u.close()),a=i.columns[0],o=a.sort().desc();i.applySort([o]),i.setViewport(0,0,[a]);var s=yield t.pending.add(i.getViewportData());if(s.rows.length>0){var l=s.rows[0],d=l.get(a);t.updatePartition(d,e),t.setState({isSelectingPartition:!0})}else ve.info("Table does not have any data, just fetching all"),t.setState({isSelectingPartition:!1}),t.handlePartitionFetchAll();t.setState({partitionTable:i,partitionColumn:e},()=>{t.initState()})}catch(u){t.handleTableLoadError(u)}})()}updatePartition(e,t){var{model:r}=this.props,i=t.filter().eq(r.dh.FilterValue.ofString(e)),a=[i];this.setState({partition:e,partitionFilters:a})}copyCell(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{canCopy:i}=this.props;if(i){var a=String(this.getValueForCell(e,t,r));Cs(a).catch(o=>ve.error("Unable to copy cell",o))}else ve.error("Attempted to copyCell for user without copy permission.")}copyRanges(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,i=arguments.length>3?arguments[3]:void 0,{model:a,canCopy:o}=this.props,{metricCalculator:s,movedColumns:l}=this.state,d=s.getUserColumnWidths();if(o){var u={ranges:ne.boundedRanges(e,a.columnCount,a.rowCount),includeHeaders:t,formatValues:r,movedColumns:l,userColumnWidths:d,error:i};this.setState({copyOperation:u})}else ve.error("Attempted copyRanges for user without copy permission.")}startLoading(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;this.setState({loadingText:e});var r=this.getTheme();if(t&&this.grid&&(this.grid.clearSelectedRanges(),this.grid.setViewState({top:0},!0)),this.loadingScrimStartTime==null){var i,a,{minScrimTransitionTime:o,maxScrimTransitionTime:s}=r;L(o),L(s);var l=(i=(a=this.gridWrapper)===null||a===void 0?void 0:a.getBoundingClientRect().height)!==null&&i!==void 0?i:0,d=Math.max(o,Math.min(l/2,s));this.loadingScrimStartTime=Date.now(),this.loadingScrimFinishTime=this.loadingScrimStartTime+d,this.setState({loadingScrimProgress:0}),this.loadingTimer=setTimeout(()=>{this.setState({loadingSpinnerShown:!0})},kn.loadingSpinnerDelay)}}stopLoading(){this.loadingScrimStartTime=void 0,this.loadingScrimFinishTime=void 0,this.setState({loadingText:null,loadingScrimProgress:null,loadingSpinnerShown:!1}),this.loadingTimer!=null&&(clearTimeout(this.loadingTimer),this.loadingTimer=void 0)}rollback(){if(this.lastLoadedConfig){ve.debug("loading last loading config",this.lastLoadedConfig);var{advancedFilters:e,aggregationSettings:t,customColumns:r,quickFilters:i,reverseType:a,rollupConfig:o,searchFilter:s,selectDistinctColumns:l,sorts:d}=this.lastLoadedConfig;this.lastLoadedConfig=null,this.setState({advancedFilters:e,aggregationSettings:t,customColumns:r,quickFilters:i,reverseType:a,rollupConfig:o,searchFilter:s,selectDistinctColumns:l,sorts:d})}else ve.debug("remove all sorts, filters, and custom columns"),this.setState({advancedFilters:new Map,aggregationSettings:WC,customColumns:[],quickFilters:new Map,reverseType:H.REVERSE_TYPE.NONE,rollupConfig:void 0,selectDistinctColumns:[],sorts:[]})}canRollback(){return this.lastLoadedConfig!=null||!wg(this.state)}startListening(e){e.addEventListener(Se.EVENT.UPDATED,this.handleUpdate),e.addEventListener(Se.EVENT.REQUEST_FAILED,this.handleRequestFailed),e.addEventListener(Se.EVENT.COLUMNS_CHANGED,this.handleCustomColumnsChanged),e.addEventListener(Se.EVENT.PENDING_DATA_UPDATED,this.handlePendingDataUpdated)}stopListening(e){e.removeEventListener(Se.EVENT.UPDATED,this.handleUpdate),e.removeEventListener(Se.EVENT.REQUEST_FAILED,this.handleRequestFailed),e.removeEventListener(Se.EVENT.COLUMNS_CHANGED,this.handleCustomColumnsChanged),e.removeEventListener(Se.EVENT.PENDING_DATA_UPDATED,this.handlePendingDataUpdated)}focus(){var e;(e=this.grid)===null||e===void 0||e.focus()}focusFilterBar(e){var{movedColumns:t}=this.state,{model:r}=this.props,{columnCount:i}=r,a=V.getModelIndex(e,t);if(e==null||e<0||i<=e||!r.isFilterable(a)){this.setState({focusedFilterBarColumn:null});return}var{metricCalculator:o,metrics:s}=this.state;L(s);var{left:l,rightVisible:d,lastLeft:u}=s;if(e<l){var c;(c=this.grid)===null||c===void 0||c.setViewState({left:e},!0)}else if(d<e){var m,v,g=(m=this.grid)===null||m===void 0?void 0:m.getMetricState();L(g);var f=o.getLastLeft(g,e,o.getVisibleWidth(g));(v=this.grid)===null||v===void 0||v.setViewState({left:Math.min(f,u),leftOffset:0},!0)}this.lastFocusedFilterBarColumn=e,this.setState({focusedFilterBarColumn:e,isFilterBarShown:!0})}hideColumnByVisibleIndex(e){var t,{metricCalculator:r,movedColumns:i}=this.state;r.setColumnWidth(V.getModelIndex(e,i),0),(t=this.grid)===null||t===void 0||t.forceUpdate()}freezeColumnByColumnName(e){var{frozenColumns:t,movedColumns:r}=this.state,{model:i}=this.props;ve.debug2("freezing column",e);var a=t==null?new Set(i.frozenColumns):new Set(t);a.add(e);var o=i.getColumnIndexByName(e);L(o);var s=V.getVisibleIndex(o,r),l=V.moveItem(s,a.size-1,r);this.setState({frozenColumns:[...a],movedColumns:l})}unFreezeColumnByColumnName(e){var{frozenColumns:t,movedColumns:r}=this.state,{model:i}=this.props;ve.debug2("unfreezing column",e);var a=t==null?new Set(i.frozenColumns):new Set(t);a.delete(e);var o=i.getColumnIndexByName(e);L(o);var s=V.getVisibleIndex(o,r),l=V.moveItem(s,a.size+i.frontColumns.length,r);this.setState({frozenColumns:[...a],movedColumns:l})}handleColumnVisibilityChanged(e,t){var r,{metricCalculator:i,metrics:a}=this.state;L(a),t?e.forEach(o=>{var s=i.initialColumnWidths.get(o),l=U(a.calculatedColumnWidths,o);s!==l?i.setColumnWidth(o,l):i.resetColumnWidth(o)}):e.forEach(o=>{i.setColumnWidth(o,0)}),(r=this.grid)===null||r===void 0||r.forceUpdate()}handleColumnVisibilityReset(){var e,t,{metricCalculator:r,metrics:i}=this.state,{model:a}=this.props;L(i);for(var o=0;o<i.columnCount;o+=1)r.resetColumnWidth(o);this.handleMovedColumnsChanged(a.initialMovedColumns),this.handleHeaderGroupsChanged(a.initialColumnHeaderGroups),this.setState({frozenColumns:(e=(t=a.layoutHints)===null||t===void 0?void 0:t.frozenColumns)!==null&&e!==void 0?e:[]})}handleCrossColumnSearch(e,t,r){var{model:i}=this.props;this.startLoading("Searching..."),this.updateSearchFilter(e,t,i.columns,r),this.setState({searchValue:e,selectedSearchColumns:t,invertSearchColumns:r})}handleAnimationLoop(){var e;(e=this.grid)===null||e===void 0||e.updateCanvas(),this.isAnimating&&(this.animationFrame=requestAnimationFrame(this.handleAnimationLoop))}handleAnimationStart(){ve.debug2("handleAnimationStart"),this.isAnimating=!0,this.animationFrame=requestAnimationFrame(this.handleAnimationLoop)}handleAnimationEnd(){ve.debug2("handleAnimationEnd"),this.isAnimating=!1}handlePartitionAppend(e){var{onPartitionAppend:t}=this.props,{partitionColumn:r}=this.state;r!=null&&t(r,e)}handlePartitionChange(e){var{partitionColumn:t}=this.state;t!=null&&this.updatePartition(e,t)}handlePartitionFetchAll(){this.setState({partitionFilters:[],isSelectingPartition:!1})}handlePartitionDone(){this.setState({isSelectingPartition:!1})}handleTableLoadError(e){if(!Te.isCanceled(e)){ve.error(e);var{onError:t}=this.props;t(e)}}showAllColumns(){for(var e,{metricCalculator:t}=this.state,r=t.getUserColumnWidths(),i=[...r.entries()],a=0;a<i.length;a+=1){var[o,s]=i[a];s===0&&t.resetColumnWidth(o)}(e=this.grid)===null||e===void 0||e.forceUpdate()}toggleSort(e,t){ve.info("Toggling sort for column",e);var{model:r}=this.props,i=this.getModelColumn(e);if(L(i),r.isColumnSortable(e)){var{sorts:a}=this.state,o=H.toggleSortForColumn(a,r.columns,i,t);this.updateSorts(o)}else ve.debug("Column type was not sortable",r.columns[e])}updateSorts(e){var t;this.startLoading("Sorting..."),this.setState({sorts:e}),(t=this.grid)===null||t===void 0||t.forceUpdate()}sortColumn(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:H.sortDirection.none,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;L(e);var{model:o}=this.props,s=H.sortColumn(o.sort,o.columns,e,r,i,a);this.startLoading("Sorting..."),this.setState({sorts:s}),(t=this.grid)===null||t===void 0||t.forceUpdate()}reverse(e){var t;this.startLoading("Reversing..."),this.setState({reverseType:e}),(t=this.grid)===null||t===void 0||t.forceUpdate()}isReversible(){var{model:e}=this.props;return e.isReversible}toggleFilterBar(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.lastFocusedFilterBarColumn,{isFilterBarShown:t}=this.state;if(t=!t,this.setState({isFilterBarShown:t}),t)if(e!=null)this.focusFilterBar(e);else{for(var r=0,{model:i}=this.props,{columnCount:a}=i,o=0;o<a;o+=1){var s=this.getModelColumn(o);if(s!=null){var l=i.columns[s];if(l!=null&&H.isTextType(l.type)){r=o;break}}}this.focusFilterBar(r)}else{var d;(d=this.grid)===null||d===void 0||d.focus()}}isTableSearchAvailable(){var e,t,r,{model:i,canToggleSearch:a}=this.props,{dh:o}=i,s=i==null||(e=i.layoutHints)===null||e===void 0?void 0:e.searchDisplayMode;return s===((t=o.SearchDisplayMode)===null||t===void 0?void 0:t.SEARCH_DISPLAY_HIDE)?!1:s===((r=o.SearchDisplayMode)===null||r===void 0?void 0:r.SEARCH_DISPLAY_SHOW)?!0:a}toggleSearchBar(){var{showSearchBar:e}=this.state;if(this.isTableSearchAvailable()){var t=!e;this.setState({showSearchBar:t},()=>{var r;if(t&&(r=this.crossColumnRef)!==null&&r!==void 0&&r.current){var i;(i=this.crossColumnRef)===null||i===void 0||i.current.focus()}else{var a;(a=this.grid)===null||a===void 0||a.focus()}})}}toggleGotoRow(){var e,t,r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"",a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"",{isGotoShown:o}=this.state;if(r||i){this.setState({isGotoShown:!0,gotoRow:r,gotoValue:i,gotoValueSelectedColumnName:a,gotoRowError:"",gotoValueError:""}),this.focusRowInGrid(r);return}var s=(e=this.grid)===null||e===void 0?void 0:e.state.cursorRow,l=(t=this.grid)===null||t===void 0?void 0:t.state.cursorColumn;if(s==null||l==null){this.setState({isGotoShown:!o,gotoRow:"",gotoValue:"",gotoRowError:"",gotoValueError:""});return}var{model:d}=this.props,{name:u,type:c}=d.columns[l],m=d.valueForCell(l,s),v=ye.convertValueToText(m,c);this.setState({isGotoShown:!o,gotoRow:"".concat(s),gotoValue:v,gotoValueSelectedColumnName:u,gotoRowError:"",gotoValueError:""})}commitPending(){var e=this;return al(function*(){var t,r,{model:i}=e.props;if(!nt(i)||!i.isEditable)throw new Error("Cannot save, table is not editable");var{pendingSavePromise:a}=e.state;if(a!=null)throw new Error("Save already in progress");var o=(t=document)===null||t===void 0||(r=t.activeElement)===null||r===void 0?void 0:r.classList.contains("grid-cell-input-field");if(o!=null&&o){var s;if(document.activeElement!=null&&document.activeElement.classList.contains("error"))throw new Ja("Current input is invalid");(s=e.grid)===null||s===void 0||s.focus()}var l=e.pending.add(i.commitPending()).then(()=>{e.setState({pendingSaveError:null,pendingSavePromise:null})}).catch(d=>{Te.isCanceled(d)||e.setState({pendingSaveError:d,pendingSavePromise:null})});return e.setState({pendingSavePromise:l}),l})()}discardPending(){var e=this;return al(function*(){var{pendingSavePromise:t}=e.state;if(t!=null)throw new Error("Cannot cancel a save in progress");e.setState({pendingSavePromise:null,pendingSaveError:null,pendingDataMap:new Map,pendingDataErrors:new Map})})()}selectColumn(e){var{onColumnSelected:t}=this.props;t(e)}selectData(e,t){for(var r=this,{model:i}=this.props,{columns:a,groupedColumns:o}=i,s={},l=function(){var m=a[d],{name:v,type:g}=m,f=i.valueForCell(d,t),p=i.textForCell(d,t),C=r.getVisibleColumn(d),b=ze(i)&&i.isRowExpandable(t),S=o.find(E=>E.name===v)!=null;s[v]={value:f,text:p,type:g,isGrouped:S,isExpandable:b,visibleIndex:C}},d=0;d<a.length;d+=1)l();var{onDataSelected:u}=this.props;u(t,s)}handleAdvancedFilterChange(e,t,r){var{model:i}=this.props,a=i.getColumnIndexByName(e.name);L(a),this.setAdvancedFilter(a,t,r)}handleAdvancedFilterSortChange(e,t){var r,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{model:a}=this.props,o=a.getColumnIndexByName(e.name);L(o);var s=a.columns[o].name,l=H.getSortForColumn(a.sort,s),d=null;(l==null||l.direction!==t)&&(t===H.sortDirection.descending?d=e.sort().desc():d=e.sort().asc());var u=H.setSortForColumn(a.sort,s,d,i);ve.info("Setting table sorts",u),this.startLoading("Sorting..."),this.setState({sorts:u}),(r=this.grid)===null||r===void 0||r.forceUpdate()}handleAdvancedFilterDone(){var e;(e=this.grid)===null||e===void 0||e.focus()}handleAdvancedMenuOpened(e){this.setState({shownAdvancedFilter:e})}handleGotoRowOpened(){this.setState({isGotoShown:!0})}handleGotoRowClosed(){this.setState({isGotoShown:!1})}handleAdvancedMenuClosed(e){var t,{focusedFilterBarColumn:r,isFilterBarShown:i}=this.state;if(i&&r===e&&((t=this.filterInputRef)===null||t===void 0?void 0:t.current)!==null){var a;(a=this.filterInputRef)===null||a===void 0||a.current.focus(),this.setState({shownAdvancedFilter:null})}else this.setState({focusedFilterBarColumn:null,shownAdvancedFilter:null})}handleCancel(){this.rollback()}handleChartChange(){}handleChartCreate(e){var{model:t,onCreateChart:r}=this.props;r(e,t)}handleGridError(e){ve.warn("Grid Error",e),this.setState({toastMessage:h.createElement("div",{className:"error-message"},"".concat(e))})}handleFilterBarChange(e){this.startLoading("Filtering...",!0),this.setState(t=>{var{focusedFilterBarColumn:r,quickFilters:i}=t,a=new Map(i);if(r!=null){var o=this.getModelColumn(r);L(o),this.applyQuickFilter(o,e,a)}return{quickFilters:a}})}handleFilterBarDone(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(e){var r;(r=this.grid)===null||r===void 0||r.focus()}t&&this.setState({focusedFilterBarColumn:null})}handleFilterBarTab(e){var{focusedFilterBarColumn:t}=this.state;L(t),e?this.focusFilterBar(t-1):this.focusFilterBar(t+1)}handleFormatSelection(e,t){var{model:r}=this.props,i=r.columns[e],{customColumnFormatMap:a}=this.state,o=new Map(a);if(t!=null){var s=H.getNormalizedType(i.type);L(s);var l=wn.makeColumnFormattingRule(s,i.name,t);o.set(i.name,l)}else o.delete(i.name);this.updateFormatter({customColumnFormatMap:o})}handleMenu(e){e.stopPropagation(),this.setState({isMenuShown:!0})}handleMenuClose(){this.setState({isMenuShown:!1,openOptions:[]})}handleMenuBack(){this.setState(e=>{var{openOptions:t}=e,r=[...t];return r.pop(),{openOptions:r}})}handleMenuSelect(e){this.setState(t=>{var{openOptions:r}=t;return{openOptions:[...r,e]}})}handleRequestFailed(e){var t=e;if(ve.error("request failed:",t.detail),this.stopLoading(),this.canRollback())this.startLoading("Rolling back changes...",!0),this.rollback();else{ve.error("Table failed and unable to rollback");var{onError:r}=this.props;r(new Error("Error displaying table: ".concat(t.detail)))}}handleUpdate(){var e;this.stopLoading(),ve.debug2("Received model update");var{advancedFilters:t,aggregationSettings:r,customColumns:i,quickFilters:a,reverseType:o,rollupConfig:s,searchFilter:l,selectDistinctColumns:d,sorts:u}=this.state,c={advancedFilters:t,aggregationSettings:r,customColumns:i,quickFilters:a,reverseType:o,rollupConfig:s,searchFilter:l,selectDistinctColumns:d,sorts:u};wg(c)?this.lastLoadedConfig=null:this.lastLoadedConfig=c,(e=this.grid)===null||e===void 0||e.forceUpdate()}handleViewChanged(e){var t,r,{model:i}=this.props,{selectionEndRow:a=0}=(t=(r=this.grid)===null||r===void 0?void 0:r.state)!==null&&t!==void 0?t:{},o=0;if(nt(i)&&i.isEditable){L(e);var{bottomViewport:s}=e,l=i.rowCount-i.floatingBottomRowCount;a===l-1?o=i.pendingRowCount+1:a===l-2?o=i.pendingRowCount:o=Math.max(0,s-(i.rowCount-i.pendingRowCount)-i.floatingTopRowCount-i.floatingBottomRowCount-1)}this.setState({metrics:e,pendingRowCount:o})}handleSelectionChanged(e){L(e);var{onSelectionChanged:t}=this.props,{copyOperation:r}=this.state;this.setState({selectedRanges:e}),r!=null&&this.setState({copyOperation:null}),t(e)}handleMovedColumnsChanged(e,t){this.setState({movedColumns:e},t)}handleHeaderGroupsChanged(e){var{model:t}=this.props;this.setState({columnHeaderGroups:ye.parseColumnHeaderGroups(t,e).groups},()=>{var r;return(r=this.grid)===null||r===void 0?void 0:r.forceUpdate()})}handleTooltipRef(e){e?.startTimer(),this.tooltip=e}handleConditionalFormatsChange(e){ve.debug("Updated conditional formats",e),this.setState({conditionalFormats:e})}handleConditionalFormatCreate(){ve.debug("Create new conditional format");var{openOptions:e,conditionalFormats:t}=this.state;this.setState({openOptions:[...e,{type:ke.CONDITIONAL_FORMATTING_EDIT,title:"Create Formatting Rule"}],conditionalFormatEditIndex:t.length,conditionalFormatPreview:void 0})}handleConditionalFormatEdit(e){ve.debug("Edit conditional format",e);var{openOptions:t,conditionalFormats:r}=this.state;this.setState({openOptions:[...t,{type:ke.CONDITIONAL_FORMATTING_EDIT,title:"Edit Formatting Rule"}],conditionalFormatEditIndex:e,conditionalFormatPreview:Qt({},r[e])})}handleConditionalFormatEditorSave(e){ve.debug("Save conditional format changes",e),this.setState(t=>{if(t.conditionalFormatEditIndex===null)return ve.debug("Invalid format index"),null;var r=[...t.conditionalFormats];return r[t.conditionalFormatEditIndex]=e,{conditionalFormats:r}},()=>{this.handleMenuBack()})}handleConditionalFormatEditorCancel(){this.handleMenuBack(),this.setState({conditionalFormatEditIndex:null})}handleUpdateCustomColumns(e){ve.info("handleUpdateCustomColumns:",e);var{model:t}=this.props,{movedColumns:r,sorts:i,quickFilters:a,advancedFilters:o,selectDistinctColumns:s}=this.state,{columns:l}=t,d=t.customColumns.map(p=>"".concat(p)),u=ye.getRemovedCustomColumnNames(d,e);if(u.length>0){var c=ye.removeSortsInColumns(i,u),m=ye.removeFiltersInColumns(l,a,u),v=ye.removeFiltersInColumns(l,o,u),g=ye.removeColumnFromMovedColumns(l,r,u),f=ye.removeColumnsFromSelectDistinctColumns(s,u);c.length!==i.length&&(ve.debug("removing sorts from removed custom columns..."),this.setState({sorts:c})),(m.size!==a.size||v.size!==o.size)&&(ve.debug("removing filters from removed custom columns..."),this.setState({quickFilters:m,advancedFilters:v})),ct(r,g)||(ve.debug("change moved columns for removed custom columns",g),this.setState({movedColumns:g})),ct(s,f)||(ve.debug("change selectDistinct columns for removed custom columns",g),this.setState({selectDistinctColumns:f}))}this.setState({customColumns:e}),e.length>0&&this.startLoading("Applying custom columns...")}handleCustomColumnsChanged(){ve.debug("custom columns changed");var{isReady:e}=this.state;if(e){var t;this.stopLoading(),(t=this.grid)===null||t===void 0||t.forceUpdate()}else this.initState()}handlePendingCommitClicked(){return this.commitPending()}handlePendingDiscardClicked(){return this.discardPending()}handlePendingDataUpdated(){var e;ve.debug("pending data updated");var{model:t}=this.props,{pendingDataMap:r,pendingDataErrors:i}=t;this.setState({pendingDataMap:r,pendingDataErrors:i,pendingSaveError:null}),(e=this.grid)===null||e===void 0||e.forceUpdate()}handleAggregationsChange(e){ve.debug("handleAggregationsChange",e),this.startLoading("Aggregating ".concat(e.aggregations.map(t=>t.operation).join(", "),"...")),this.setState({aggregationSettings:e})}handleAggregationChange(e){ve.debug("handleAggregationChange",e),this.startLoading("Aggregating ".concat(e.operation,"...")),this.setState(t=>{var{aggregationSettings:r}=t;return{selectedAggregation:e,aggregationSettings:Qt(Qt({},r),{},{aggregations:r.aggregations.map(i=>i.operation===e.operation?e:i)})}})}handleAggregationEdit(e){ve.debug("handleAggregationEdit",e);var{openOptions:t}=this.state;this.setState({openOptions:[...t,{type:ke.AGGREGATION_EDIT,title:"Edit Columns to ".concat(e.operation)}],selectedAggregation:e})}handleRollupChange(e){var t,r;ve.info("Rollup change",e),this.resetGridViewState(),this.showAllColumns(),this.clearAllFilters(),this.startLoading("Grouping by columns ".concat((t=e==null||(r=e.columns)===null||r===void 0?void 0:r.join(", "))!==null&&t!==void 0?t:"","...")),this.setState({rollupConfig:e,movedColumns:[],frozenColumns:[],sorts:[],reverseType:H.REVERSE_TYPE.NONE,selectDistinctColumns:[]})}handleSelectDistinctChanged(e){ve.debug("SelectDistinct change",e),this.resetGridViewState(),this.showAllColumns(),this.clearAllFilters(),this.startLoading("Selecting distinct values in ".concat(e.length>0?e.join(", "):"","...")),this.setState({selectDistinctColumns:e,movedColumns:[],sorts:[],reverseType:H.REVERSE_TYPE.NONE})}handleDownloadTableStart(){var{canDownloadCsv:e}=this.props;e?this.setState({isTableDownloading:!0,tableDownloadProgress:0,tableDownloadEstimatedTime:null,tableDownloadStatus:ta.DOWNLOAD_STATUS.INITIATING}):ve.error("Attempted to handleDownloadTableStart for user without download CSV permission.")}handleDownloadTable(e,t,r,i,a,o,s){var{canDownloadCsv:l}=this.props;l?(ve.info("start table downloading",e,t,r,i,a,o,s),this.setState(()=>(this.tableSaver&&this.tableSaver.startDownload(e,t,r,i,a,o,s),{tableDownloadStatus:ta.DOWNLOAD_STATUS.DOWNLOADING}))):ve.error("Attempted to handleDownloadTable for user without download CSV permission.")}seekRow(e){var t=arguments,r=this;return al(function*(){var i,a=t.length>1&&t[1]!==void 0?t[1]:!1,{gotoValueSelectedColumnName:o,gotoValueSelectedFilter:s}=r.state,{model:l}=r.props,{dh:d}=l;if(l.isSeekRowAvailable&&e!==""){var u=ye.getColumnByName(l.columns,o);if(u!==void 0){var c=(i=r.grid)===null||i===void 0?void 0:i.state.cursorRow;c==null&&(c=0);var m=s===ge.contains||s===ge.containsIgnoreCase,v=s===ge.eqIgnoreCase||s===ge.containsIgnoreCase;try{var g,{formatter:f}=l,p=H.getNormalizedType(u.type),C;switch(p){case H.dataType.CHAR:case H.dataType.STRING:{C=yield l.seekRow(c,u,d.ValueType.STRING,e,v,m,a??!1);break}case H.dataType.DATETIME:{var[b]=Ea.parseDateRange(d,e,f.timeZone);C=yield l.seekRow(c,u,d.ValueType.DATETIME,b,void 0,void 0,a??!1);break}case H.dataType.DECIMAL:case H.dataType.INT:{if(!H.isBigDecimalType(u.type)&&!H.isBigIntegerType(u.type)){var S=parseInt(e,10);e==="-Infinity"?S=Number.NEGATIVE_INFINITY:e==="Infinity"&&(S=Number.POSITIVE_INFINITY),C=yield l.seekRow(c,u,d.ValueType.NUMBER,S,void 0,void 0,a??!1)}else C=yield l.seekRow(c,u,d.ValueType.STRING,e,void 0,void 0,a??!1);break}default:C=yield l.seekRow(c,u,d.ValueType.STRING,r.tableUtils.makeValue(u.type,e,f.timeZone),void 0,void 0,a??!1)}(g=r.grid)===null||g===void 0||g.setFocusRow(C),r.setState({gotoValueError:""})}catch{r.setState({gotoValueError:"invalid input"})}}}})()}handleCancelDownloadTable(){var e;(e=this.tableSaver)===null||e===void 0||e.cancelDownload(),this.setState({isTableDownloading:!1})}handleDownloadCompleted(){this.setState({isTableDownloading:!1,tableDownloadProgress:100,tableDownloadStatus:ta.DOWNLOAD_STATUS.FINISHED})}handleDownloadCanceled(){this.setState({isTableDownloading:!1,tableDownloadProgress:0,tableDownloadStatus:ta.DOWNLOAD_STATUS.CANCELED})}deleteRanges(e){var{model:t}=this.props;this.pending.add(t.delete(e)).catch(r=>{Te.isCanceled(r)||ve.error("Unable to delete ranges",e,r)})}resetColumnSelection(){if(this.grid!=null){var{isSelectingColumn:e}=this.props;if(e){var{columnAllowedCursor:t}=this.props;this.grid.setState({cursor:t})}else this.grid.setState({cursor:null}),this.setState({hoverSelectColumn:null})}}resetGridViewState(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;this.grid&&(this.grid.clearSelectedRanges(),this.grid.setViewState({left:0,top:0,topOffset:0,leftOffset:0},e))}sendStateChange(){if(this.grid){var{state:e}=this,{state:t}=this.grid,{onStateChange:r}=this.props;r(e,t)}}handleOverflowClose(){this.setState({showOverflowModal:!1})}getColumnBoundingRect(){var e,{metrics:t,shownColumnTooltip:r}=this.state;L(t),L(r);var i=(e=this.gridWrapper)===null||e===void 0?void 0:e.getBoundingClientRect(),a=20;L(i);var{columnHeaderHeight:o,allColumnXs:s,allColumnWidths:l,width:d,columnHeaderMaxDepth:u}=t,c=s.get(r),m=l.get(r);L(c),L(m);var v=i.left+Ve(c+m/2,a,d-a);return{top:i.top+(u-1)*o,left:i.left+Ve(c+m/2,a,d-a),bottom:i.top+u*o,right:i.left+Ve(c+m/2,a,d-a)+1,width:1,height:o,x:v,y:i.top,toJSON:()=>{throw new Error("not implemented")}}}handleGotoRowSelectedRowNumberSubmit(){var{gotoRow:e}=this.state;this.focusRowInGrid(e)}focusRowInGrid(e){var{model:t}=this.props,{rowCount:r}=t;if(this.setState({gotoRow:e}),e===""){this.setState({gotoRowError:"",gotoValueError:""});return}var i=parseInt(e,10);if(i>r||i<-r)this.setState({gotoRowError:"Invalid row index"});else if(i===0){var a;this.setState({gotoRowError:"",gotoValueError:""}),(a=this.grid)===null||a===void 0||a.setFocusRow(0)}else if(i<0){var o;this.setState({gotoRowError:"",gotoValueError:""}),(o=this.grid)===null||o===void 0||o.setFocusRow(i+r)}else{var s;(s=this.grid)===null||s===void 0||s.setFocusRow(i-1),this.setState({gotoRowError:"",gotoValueError:""})}}handleGotoRowSelectedRowNumberChanged(e){var t=e.target.value;this.focusRowInGrid(t)}getColumnTooltip(e,t,r){var{columnHeaderHeight:i,columnHeaderMaxDepth:a,allColumnXs:o,allColumnWidths:s,width:l}=t,d=o.get(e),u=s.get(e);if(d==null||u==null)return null;var c=Math.max(0,d),m=u;d+u>l?m=l-d:d<0&&(m=u-Math.abs(d));var v={position:"absolute",top:(a-1)*i,left:c,width:m,height:i,pointerEvents:"none"},g={clientWidth:1,clientHeight:i,getBoundingClientRect:this.getColumnBoundingRect},f={placement:"bottom",modifiers:{flip:{behavior:["bottom","top"]}}},p=this.getModelColumn(e);if(p==null)return null;var C=r.columns[p];return C==null?null:h.createElement("div",{style:v},h.createElement(pt,{key:C.name,timeout:400,interactive:!0,options:f,ref:this.handleTooltipRef,referenceObject:g,onExited:()=>{this.setState({shownColumnTooltip:null})}},h.createElement(r_,{model:r,column:C,onStatistics:()=>{var b;(b=this.tooltip)===null||b===void 0||b.update()}})))}handleGotoValueSelectedColumnNameChanged(e){var t,{model:r}=this.props,i=(t=this.grid)===null||t===void 0?void 0:t.state.cursorRow;if(i!=null){var a=r.getColumnIndexByName(e),o=ye.getColumnByName(r.columns,e);if(a==null||o==null)return;var s=r.valueForCell(a,i),l=ye.convertValueToText(s,o.type);this.setState({gotoValueSelectedColumnName:e,gotoValue:l,gotoValueError:""})}this.setState({gotoValueSelectedColumnName:e,gotoValueError:""})}handleGotoValueSelectedFilterChanged(e){this.setState({gotoValueSelectedFilter:e,gotoValueError:""})}handleGotoValueSubmitted(e){var{gotoValue:t}=this.state;this.seekRow(t,e)}render(){var e,t,r=this,i,a,o,{children:s,customFilters:l,getDownloadWorker:d,isSelectingColumn:u,isStuckToBottom:c,isStuckToRight:m,model:v,name:g,onlyFetchVisibleColumns:f,alwaysFetchColumns:p,advancedSettings:C,onAdvancedSettingsChange:b,canDownloadCsv:S,onCreateChart:E}=this.props,{metricCalculator:y,metrics:T,isFilterBarShown:O,isSelectingPartition:D,isMenuShown:P,isReady:R,copyOperation:_,focusedFilterBarColumn:M,loadingText:A,loadingScrimProgress:B,loadingSpinnerShown:$,keyHandlers:z,mouseHandlers:G,shownColumnTooltip:K,hoverAdvancedFilter:X,shownAdvancedFilter:J,hoverSelectColumn:I,quickFilters:N,advancedFilters:k,partition:x,partitionFilters:Y,partitionTable:W,partitionColumn:ee,searchFilter:oe,selectDistinctColumns:ae,movedColumns:se,movedRows:pe,formatter:He,conditionalFormats:at,conditionalFormatPreview:ot,conditionalFormatEditIndex:Qe,sorts:lt,reverseType:Ot,customColumns:Le,selectedRanges:_t,isTableDownloading:Vt,tableDownloadStatus:yr,tableDownloadProgress:Tr,tableDownloadEstimatedTime:an,showSearchBar:Tn,searchValue:Ur,selectedSearchColumns:Mt,invertSearchColumns:on,aggregationSettings:ir,selectedAggregation:ar,rollupConfig:Nt,openOptions:$r,pendingSavePromise:sn,pendingSaveError:Br,pendingRowCount:or,pendingDataErrors:gi,pendingDataMap:Pn,toastMessage:Bn,frozenColumns:Vr,columnHeaderGroups:ln,showOverflowModal:Ji,overflowText:Ma,overflowButtonTooltipProps:Aa,expandCellTooltipProps:La,linkHoverTooltipProps:ka,isGotoShown:xa,gotoRow:st,gotoRowError:Ns,gotoValueError:yo,gotoValueSelectedColumnName:Fs,gotoValue:ea,gotoValueSelectedFilter:Is}=this.state;if(!R)return null;var sr=this.getTheme(),_s=this.getCachedFilter(l,N,k,Y,oe),To=y.getUserColumnWidths(),Ms=this.getCachedStateOverride(I,O,u,B,N,k,lt,Ot,Nt,P),Hd=T?T.top:0,Ud=T?T.bottomViewport:0,As=null,Ls=null;f&&(As=T?T.left:0,Ls=T?T.right:0);var $d=T!=null&&T.width>0&&T.height>0,ks=((e=Nt==null||(t=Nt.columns)===null||t===void 0?void 0:t.length)!==null&&e!==void 0?e:0)>0,xs=null,Bd=T?Math.min(Math.max(kn.minDebounce,Math.round(T.rowCount/200)),kn.maxDebounce):kn.maxDebounce;if(O&&M!=null&&T!=null){var{gridX:Vd,gridY:Gd,allColumnXs:Wd,allColumnWidths:Vn,width:Po}=T,kc=Wd.get(M),xc=Vn.get(M);if(kc!=null&&xc!=null){var jd,zd,Kd,Hc=Vd+kc,Ib=Gd-((jd=sr.filterBarHeight)!==null&&jd!==void 0?jd:0),_b=xc+1,Mb=((zd=sr.filterBarHeight)!==null&&zd!==void 0?zd:0)-1,Ab={top:Ib,left:Hc,minWidth:Math.min(_b,Po-Hc),height:Mb},Yd="",Uc=!0,qd=this.getModelColumn(M);L(qd);var Xd=N.get(qd),$c=k.get(qd);Xd!=null&&(Yd=Xd.text,Uc=Xd.filter!=null);var Lb=N.size!==0||k.size!==0;xs=h.createElement(hF,{ref:this.filterInputRef,style:Ab,className:te({error:!Uc,active:Yd!==""||$c!=null,"iris-grid-has-filter":Lb}),isAdvancedFilterSet:$c!=null,onAdvancedFiltersTriggered:()=>{this.setState({shownAdvancedFilter:M})},key:M,onChange:this.handleFilterBarChange,onDone:this.handleFilterBarDone,onTab:this.handleFilterBarTab,onContextMenu:(Kd=this.grid)===null||Kd===void 0?void 0:Kd.handleContextMenu,debounceMs:Bd,value:Yd})}}var Bc=null;if(A!=null){var kb=h.createElement("div",{className:"iris-grid-loading-status"},h.createElement("div",{className:te("iris-grid-loading-status-bar",{show:$})},A),h.createElement("button",{type:"button",onClick:this.handleCancel,className:te("iris-grid-btn-cancel",{show:$})},h.createElement(re,{icon:gs,transform:"down-1"}),"Cancel")),xb=T?T.gridY:0;Bc=h.createElement("div",{className:"iris-grid-loading",style:{top:xb}},kb)}var Vc=null;if(K!=null&&T){var Qd;Vc=this.getColumnTooltip(K,T,v),(Qd=this.tooltip)===null||Qd===void 0||Qd.update()}var Gc=[];if(T&&O)for(var{gridX:Hb,gridY:Ub,visibleColumns:Wc,allColumnXs:$b,allColumnWidths:Bb}=T,{filterBarHeight:Zd}=sr,Vb=function(){var mt=Wc[Jd],fi=$b.get(mt),pi=Bb.get(mt),Oo=r.getModelColumn(mt);if(Oo!=null){var tu=v.isFilterable(Oo);if(tu&&fi!=null&&pi!=null&&pi>0){var ru=Hb+fi+pi-24,Ha=Ub-(Zd??0)+2,Do={position:"absolute",top:Ha,left:ru},nu=k.get(Oo),Hs=nu!=null,Ro=mt===X||mt===M||Hs,iu=h.createElement("div",{className:te("advanced-filter-button-container",{hidden:!Ro}),key:mt,style:Do},Ro&&h.createElement(j,{kind:"ghost",className:te("btn-link-icon advanced-filter-button",{"filter-set":Hs}),onClick:()=>{r.setState({shownAdvancedFilter:mt})},onContextMenu:au=>{var ou;(ou=r.grid)===null||ou===void 0||ou.handleContextMenu(au)},onMouseEnter:()=>{r.setState({hoverAdvancedFilter:mt})},onMouseLeave:()=>{r.setState({hoverAdvancedFilter:null})}},h.createElement("div",{className:"fa-layers"},h.createElement(re,{icon:Lh,className:"filter-solid"}),h.createElement(re,{icon:Nl,className:"filter-light"}))));Gc.push(iu)}}},Jd=0;Jd<Wc.length;Jd+=1)Vb();var jc=[];if(T)for(var{gridX:zc,visibleColumns:Kc,allColumnXs:Gb,allColumnWidths:Wb,columnHeaderHeight:Yc}=T,jb=function(){var mt=Kc[eu],fi=Gb.get(mt),pi=Wb.get(mt);if(fi!=null&&pi!=null&&pi>0){var Oo=zc+fi,tu=zc+fi+pi-20,ru=O?{position:"absolute",top:Yc,left:tu,width:20,height:sr.filterBarHeight}:{position:"absolute",top:0,left:Oo,width:pi,height:Yc},Ha=r.getModelColumn(mt);if(Ha!=null){var Do=v.columns[Ha];if(Do==null)return ve.warn("Column does not exist at index ".concat(Ha," for column array of length ").concat(v.columns.length)),"continue";var nu=k.get(Ha),{options:Hs}=nu||{},Ro=H.getSortForColumn(v.sort,Do.name),iu=Ro?Ro.direction:null,au=h.createElement("div",{key:mt,className:"advanced-filter-menu-container",style:ru},h.createElement(md,{className:"advanced-filter-menu-popper",onEntered:r.getAdvancedMenuOpenedHandler(mt),onExited:()=>{r.handleAdvancedMenuClosed(mt)},isShown:J===mt,interactive:!0,closeOnBlur:!0,options:{positionFixed:!0}},r.getCachedAdvancedFilterMenuActions(v,Do,Hs,iu,He)));jc.push(au)}}},eu=0;eu<Kc.length;eu+=1)var zb=jb();var qc=this.getCachedOptionItems(E!==void 0&&v.isChartBuilderAvailable,v.isCustomColumnsAvailable,v.isFormatColumnsAvailable,v.isRollupAvailable,v.isTotalsAvailable||ks,v.isSelectDistinctAvailable,v.isExportAvailable,this.toggleFilterBarAction,this.toggleSearchBarAction,this.toggleGotoRowAction,O,Tn,S,this.isTableSearchAvailable(),xa,C.size>0),Xc=this.getCachedHiddenColumns(y,To),Kb=$r.map(Gt=>{switch(Gt.type){case ke.CHART_BUILDER:return h.createElement(I_,{model:v,onChange:this.handleChartChange,onSubmit:this.handleChartCreate,key:ke.CHART_BUILDER});case ke.VISIBILITY_ORDERING_BUILDER:return h.createElement(JM,{model:v,movedColumns:se,hiddenColumns:Xc,columnHeaderGroups:ln,onColumnVisibilityChanged:this.handleColumnVisibilityChanged,onReset:this.handleColumnVisibilityReset,onMovedColumnsChanged:this.handleMovedColumnsChanged,onColumnHeaderGroupChanged:this.handleHeaderGroupsChanged,key:ke.VISIBILITY_ORDERING_BUILDER});case ke.CONDITIONAL_FORMATTING:return h.createElement(bA,{rules:at,onChange:this.handleConditionalFormatsChange,onCreate:this.handleConditionalFormatCreate,onSelect:this.handleConditionalFormatEdit});case ke.CONDITIONAL_FORMATTING_EDIT:return L(v.columns),L(this.handleConditionalFormatEditorUpdate),h.createElement(ZA,{dh:v.dh,columns:v.columns,rule:ot,onUpdate:this.handleConditionalFormatEditorUpdate,onSave:this.handleConditionalFormatEditorSave,onCancel:this.handleConditionalFormatEditorCancel});case ke.CUSTOM_COLUMN_BUILDER:return h.createElement(G_,{model:v,customColumns:Le,onSave:this.handleUpdateCustomColumns,onCancel:this.handleMenuBack,key:ke.CUSTOM_COLUMN_BUILDER});case ke.ROLLUP_ROWS:return h.createElement(K_,{model:v,onChange:this.handleRollupChange,config:Nt,key:ke.ROLLUP_ROWS});case ke.AGGREGATIONS:return h.createElement(C_,{settings:ir,isRollup:ks,onChange:this.handleAggregationsChange,onEdit:this.handleAggregationEdit});case ke.AGGREGATION_EDIT:return ar&&h.createElement(y_,{aggregation:ar,columns:v.originalColumns,onChange:this.handleAggregationChange});case ke.TABLE_EXPORTER:return h.createElement(ta,{model:v,name:g,userColumnWidths:To,movedColumns:se,isDownloading:Vt,tableDownloadStatus:yr,tableDownloadProgress:Tr,tableDownloadEstimatedTime:an??void 0,onDownload:this.handleDownloadTable,onDownloadStart:this.handleDownloadTableStart,onCancel:this.handleCancelDownloadTable,selectedRanges:_t,key:ke.TABLE_EXPORTER});case ke.SELECT_DISTINCT:return h.createElement(fA,{model:v,selectDistinctColumns:ae,onChange:this.handleSelectDistinctChanged});case ke.ADVANCED_SETTINGS:return h.createElement(mc,{items:C,onChange:b});default:throw Error("Unexpected option type ".concat(Gt.type))}});return h.createElement("div",{className:"iris-grid",role:"presentation"},h.createElement("div",{className:"iris-grid-column"},s!=null&&h.createElement("div",{className:"iris-grid-bar"},s),h.createElement(kr,{in:D,timeout:et.transitionSlowMs,classNames:"iris-grid-bar-horizontal",onEnter:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExit:this.handleAnimationStart,onExited:this.handleAnimationEnd,mountOnEnter:!0,unmountOnExit:!0},h.createElement("div",{className:"iris-grid-partition-selector-wrapper iris-grid-bar iris-grid-bar-primary"},W&&ee&&x!=null&&h.createElement(hA,{dh:v.dh,table:W,getFormattedString:(Gt,mt,fi)=>v.displayString(Gt,mt,fi),columnName:ee.name,partition:x,onChange:this.handlePartitionChange,onFetchAll:this.handlePartitionFetchAll,onAppend:this.handlePartitionAppend,onDone:this.handlePartitionDone}))),h.createElement(kr,{in:Tn,timeout:et.transitionSlowMs,classNames:"iris-grid-bar-horizontal",onEnter:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExit:this.handleAnimationStart,onExited:this.handleAnimationEnd,mountOnEnter:!0,unmountOnExit:!0},h.createElement("div",{className:"iris-grid-bar"},h.createElement(il,{value:Ur,selectedColumns:Mt,invertSelection:on,onChange:this.handleCrossColumnSearch,columns:v.columns,ref:this.crossColumnRef}))),h.createElement("div",{className:"grid-wrapper",ref:Gt=>{this.gridWrapper=Gt}},h.createElement(lN,{ref:Gt=>{this.grid=Gt},isStickyBottom:!nt(v)||!v.isEditable,isStuckToBottom:c,isStuckToRight:m,metricCalculator:y,model:v,keyHandlers:z,mouseHandlers:G,movedColumns:se,movedRows:pe,onError:this.handleGridError,onViewChanged:this.handleViewChanged,onSelectionChanged:this.handleSelectionChanged,onMovedColumnsChanged:this.handleMovedColumnsChanged,renderer:this.renderer,stateOverride:Ms,theme:sr}),h.createElement(JA,{isOpen:Ji,text:Ma,onClose:this.handleOverflowClose}),$d&&h.createElement(HI,{model:v,modelColumns:v.columns,top:Hd,bottom:Ud,left:As,right:Ls,filter:_s,formatter:He,sorts:lt,reverseType:Ot,movedColumns:se,customColumns:Le,hiddenColumns:Xc,alwaysFetchColumns:this.getAlwaysFetchColumns(p,v.columns,se,v.floatingLeftColumnCount,v.floatingRightColumnCount,(i=this.grid)===null||i===void 0||(a=i.state.draggingColumn)===null||a===void 0?void 0:a.range),formatColumns:this.getCachedPreviewFormatColumns(v.dh,v.columns,at,ot,((o=$r[$r.length-1])===null||o===void 0?void 0:o.type)===ke.CONDITIONAL_FORMATTING_EDIT?Qe??void 0:void 0),rollupConfig:this.getModelRollupConfig(v.originalColumns,Nt,ir),totalsConfig:this.getModelTotalsConfig(v.columns,Nt,ir),selectDistinctColumns:ae,pendingRowCount:or,pendingDataMap:Pn,frozenColumns:Vr,columnHeaderGroups:ln}),!P&&h.createElement("div",{className:"grid-settings-button"},h.createElement(j,{kind:"ghost","data-testid":"btn-iris-grid-settings-button-".concat(g),onClick:this.handleMenu,icon:h.createElement(re,{icon:hw,transform:"up-1"}),tooltip:"Table Options"})),xs,Bc,Gc,Vc,jc,Aa&&this.getOverflowButtonTooltip(Aa),La&&this.getExpandCellTooltip(La),ka&&this.getLinkHoverTooltip(ka)),h.createElement(rL,{model:v,isShown:xa,gotoRow:st,gotoRowError:Ns,gotoValueError:yo,onGotoRowSubmit:this.handleGotoRowSelectedRowNumberSubmit,onGotoRowNumberChanged:this.handleGotoRowSelectedRowNumberChanged,onClose:this.handleGotoRowClosed,onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:()=>{this.handleAnimationStart(),this.focus()},onExited:this.handleAnimationEnd,gotoValueSelectedColumnName:Fs,gotoValue:ea,gotoValueFilter:Is,onGotoValueSelectedColumnNameChanged:this.handleGotoValueSelectedColumnNameChanged,onGotoValueSelectedFilterChanged:this.handleGotoValueSelectedFilterChanged,onGotoValueChanged:this.handleGotoValueChanged,onGotoValueSubmit:this.handleGotoValueSubmitted}),h.createElement(jN,{error:Br,isSaving:sn!=null,saveTooltip:"Commit (".concat(this.commitAction.shortcut.getDisplayText(),")"),discardTooltip:"Discard (".concat(this.discardAction.shortcut.getDisplayText(),")"),pendingDataErrors:gi,pendingDataMap:Pn,onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:this.handleAnimationStart,onExited:this.handleAnimationEnd,onSave:this.handlePendingCommitClicked,onDiscard:this.handlePendingDiscardClicked}),h.createElement(AI,null,Bn),h.createElement(lF,{model:v,copyOperation:_??void 0,onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:this.handleAnimationStart,onExited:this.handleAnimationEnd}),h.createElement(pr,{dh:v.dh,ref:Gt=>{this.tableSaver=Gt},getDownloadWorker:d,onDownloadCompleted:this.handleDownloadCompleted,onDownloadCanceled:this.handleDownloadCanceled,onDownloadProgressUpdate:this.handleDownloadProgressUpdate,isDownloading:yr===ta.DOWNLOAD_STATUS.DOWNLOADING,formatter:He})),h.createElement(kr,{in:P,timeout:et.transitionMidMs,classNames:"slide-left",onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:this.handleAnimationStart,onExited:this.handleAnimationEnd,mountOnEnter:!0,unmountOnExit:!0},h.createElement("div",{className:"table-sidebar"},h.createElement($w,null,h.createElement(dm,{title:"Table Options",onClose:this.handleMenuClose},h.createElement(zf,{onSelect:Gt=>this.handleMenuSelect(qc[Gt]),items:qc})),Kb.map((Gt,mt)=>h.createElement(dm,{title:$r[mt].title,onBack:this.handleMenuBack,onClose:this.handleMenuClose,key:$r[mt].type},Gt))))),h.createElement(le,{actions:this.contextActions}))}}he(kn,"minDebounce",150);he(kn,"maxDebounce",500);he(kn,"loadingSpinnerDelay",800);he(kn,"defaultProps",{children:null,advancedFilters:Zn,advancedSettings:Zn,alwaysFetchColumns:xe,conditionalFormats:xe,customColumnFormatMap:Zn,isFilterBarShown:!1,applyInputFiltersOnInit:!1,movedColumns:xe,movedRows:xe,inputFilters:xe,customFilters:xe,onCreateChart:void 0,onColumnSelected:()=>{},onDataSelected:()=>{},onError:()=>{},onStateChange:()=>{},onPartitionAppend:()=>{},onAdvancedSettingsChange:()=>{},partition:null,partitionColumn:null,quickFilters:Zn,selectDistinctColumns:xe,sorts:xe,reverseType:H.REVERSE_TYPE.NONE,customColumns:xe,aggregationSettings:WC,rollupConfig:void 0,userColumnWidths:Zn,userRowHeights:Zn,onSelectionChanged:()=>{},isSelectingColumn:!1,isSelectingPartition:!1,isStuckToBottom:!1,isStuckToRight:!1,columnSelectionValidator:null,columnAllowedCursor:null,columnNotAllowedCursor:null,name:"table",onlyFetchVisibleColumns:!0,showSearchBar:!1,searchValue:"",selectedSearchColumns:null,invertSearchColumns:!0,onContextMenu:()=>{},pendingDataMap:Zn,getDownloadWorker:void 0,settings:{timeZone:"America/New_York",defaultDateTimeFormat:Ea.FULL_DATE_FORMAT,showTimeZone:!1,showTSeparator:!0,truncateNumbersWithPound:!1,formatter:xe,decimalFormatOptions:q.shape({defaultFormatString:q.string}),integerFormatOptions:q.shape({defaultFormatString:q.string})},canCopy:!0,canDownloadCsv:!0,frozenColumns:null,theme:RC,canToggleSearch:!0});const jC=kn;function Ru(n,e,t){return e=uL(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function uL(n){var e=hL(n,"string");return typeof e=="symbol"?e:String(e)}function hL(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 cL extends Error{constructor(e,t){super("".concat(t," can't be empty (on pending row ").concat(e+1,")")),Ru(this,"isMissingKey",!0),Ru(this,"rowIndex",void 0),Ru(this,"columnName",void 0),this.rowIndex=e,this.columnName=t}}const mL=cL;function Eg(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 ol(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Eg(Object(t),!0).forEach(function(r){_e(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Eg(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function yg(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 Oi(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){yg(a,r,i,o,s,"next",l)}function s(l){yg(a,r,i,o,s,"throw",l)}o(void 0)})}}function _e(n,e,t){return e=vL(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function vL(n){var e=gL(n,"string");return typeof e=="symbol"?e:String(e)}function gL(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 dt=ie.module("IrisGridTableModel"),fL=150,pL=0,CL=[];function Ca(n){return n.table!==void 0}class lo extends Se{seekRow(e,t,r,i,a,o,s){throw new Error("Method not implemented.")}export(){throw new Error("Method not implemented.")}columnStatistics(e){throw new Error("Method not implemented.")}get customColumns(){return[]}set customColumns(e){throw new Error("Method not implemented.")}get formatColumns(){return[]}set formatColumns(e){throw new Error("Method not implemented.")}updateFrozenColumns(e){throw new Error("Method not implemented.")}get rollupConfig(){throw new Error("Method not implemented.")}set rollupConfig(e){throw new Error("Method not implemented.")}get selectDistinctColumns(){throw new Error("Method not implemented.")}set selectDistinctColumns(e){throw new Error("Method not implemented.")}get columns(){return this.table.columns}constructor(e,t){var r,i,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new wn(e),o=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e),_e(this,"dh",void 0),_e(this,"irisGridUtils",void 0),_e(this,"tableUtils",void 0),_e(this,"irisFormatter",void 0),_e(this,"inputTable",void 0),_e(this,"subscription",void 0),_e(this,"table",void 0),_e(this,"viewport",void 0),_e(this,"viewportData",void 0),_e(this,"formattedStringData",void 0),_e(this,"pendingStringData",void 0),_e(this,"isSaveInProgress",void 0),_e(this,"totalsTable",void 0),_e(this,"totalsTablePromise",void 0),_e(this,"totals",void 0),_e(this,"totalsDataMap",void 0),_e(this,"pendingNewDataMap",void 0),_e(this,"pendingNewRowCount",0),_e(this,"_columnHeaderGroupMap",new Map),_e(this,"columnHeaderParentMap",new Map),_e(this,"_columnHeaderMaxDepth",null),_e(this,"_columnHeaderGroups",[]),_e(this,"_movedColumns",null),_e(this,"getMemoizedInitialMovedColumns",fe(s=>{var l;if(!s)return[];var d=[],{groupMap:u}=ye.parseColumnHeaderGroups(this,(l=s?.columnGroups)!==null&&l!==void 0?l:[]),c=(y,T)=>{var O=this.getColumnIndexByName(y);if(O==null)throw new Error("Unknown layout hint column: ".concat(y));var D=V.getVisibleIndex(O,d);d=V.moveItem(D,T,d)},m=(y,T)=>{var O=u.get(y);if(O==null)throw new Error("Unknown layout hint group: ".concat(y));var D=O.getVisibleRange(d);d=V.moveRange(D,T,d)},{frontColumns:v=[],backColumns:g=[],frozenColumns:f=[]}=s;if(v.length||g.length||f.length){var p=new Set,C=0;f.forEach(y=>{if(p.has(y))throw new Error("Column specified in multiple layout hints: ".concat(y));c(y,C),C+=1}),v.forEach(y=>{if(p.has(y))throw new Error("Column specified in multiple layout hints: ".concat(y));c(y,C),C+=1});var b=this.columnMap.size-1;g.forEach(y=>{if(p.has(y))throw new Error("Column specified in multiple layout hints: ".concat(y));c(y,b),b-=1})}var S=s?.columnGroups;if(S){var E=[...u.values()];E.sort((y,T)=>y.depth-T.depth),E.forEach(y=>{var T=y.children[0],O=this.getColumnIndexByName(T),D;if(O!=null)D=V.getVisibleIndex(O,d);else{var P=u.get(T);if(!P)throw new Error("Unknown column ".concat(T," in group ").concat(y.name));var R=P.getVisibleRange(d);[,D]=R}for(var _=1;_<y.children.length;_+=1){var M=y.children[_],A=u.get(M),B=this.getColumnIndexByName(M);if(A){var $=A.getVisibleRange(d)[0]<D,z=$?D-A.childIndexes.length+1:D+1;m(M,z),D=z+A.childIndexes.length-1}else if(B!=null){var G=V.getVisibleIndex(B,d)<D,K=G?D:D+1;c(M,K),D=K}}})}return this._movedColumns=d,d})),_e(this,"getMemoizedInitialColumnHeaderGroups",fe(s=>{var l;return ye.parseColumnHeaderGroups(this,(l=s?.columnGroups)!==null&&l!==void 0?l:[]).groups})),_e(this,"getMemoizedColumnMap",fe(s=>{var l=new Map;return s.forEach(d=>l.set(d.name,d)),l})),_e(this,"getColumnIndicesByNameMap",fe(s=>{var l=new Map;return s.forEach((d,u)=>{var{name:c}=d;return l.set(c,u)}),l})),_e(this,"setViewport",zi((s,l,d)=>{if(l<s){dt.error("Invalid viewport",s,l);return}var{viewport:u}=this;if(u!=null&&u.top===s&&u.bottom===l&&u.columns===d){dt.debug2("Ignoring duplicate viewport",u);return}this.viewport={top:s,bottom:l,columns:d},dt.debug2("setViewport",this.viewport),this.applyViewport()},fL)),_e(this,"applyViewport",zi(()=>{if(this.viewport){dt.debug2("applyViewport",this.viewport);var{top:s,bottom:l,columns:d}=this.viewport,[u,c]=this.getCachedViewportRowRange(s,l);this.applyBufferedViewport(u,c,d)}},pL,{leading:!1})),_e(this,"getCachedFormattedString",En((s,l,d,u,c)=>s.getFormattedString(l,d,u,c),{max:1e4})),_e(this,"getCachedCustomColumnFormatFlag",En(oi.isCustomColumnFormatDefined,{max:1e4})),_e(this,"getCachedViewportRowRange",fe((s,l)=>{var d=l-s,u=Math.max(0,s-d*lo.ROW_BUFFER_PAGES),c=l+d*lo.ROW_BUFFER_PAGES;return[u,c]})),_e(this,"getCachedPendingErrors",fe((s,l,d)=>{var u=new Map;return s.forEach((c,m)=>{for(var{data:v}=c,g=0;g<d;g+=1)if(!v.has(g)){var f;u.has(m)||u.set(m,[]),(f=u.get(m))===null||f===void 0||f.push(new mL(m,l[g].name))}}),u})),this.handleTableDisconnect=this.handleTableDisconnect.bind(this),this.handleTableReconnect=this.handleTableReconnect.bind(this),this.handleTableUpdate=this.handleTableUpdate.bind(this),this.handleTotalsUpdate=this.handleTotalsUpdate.bind(this),this.handleRequestFailed=this.handleRequestFailed.bind(this),this.handleCustomColumnsChanged=this.handleCustomColumnsChanged.bind(this),this.dh=e,this.irisFormatter=a,this.irisGridUtils=new ye(e),this.inputTable=o,this.subscription=null,this.table=t,this.tableUtils=new H(e),this.viewport=null,this.viewportData=null,this.formattedStringData=[],this.pendingStringData=[],this.isSaveInProgress=!1,this.totalsTable=null,this.totalsTablePromise=null,this.totals=null,this.totalsDataMap=null,this.pendingNewDataMap=new Map,this.pendingNewRowCount=0,this.columnHeaderGroups=ye.parseColumnHeaderGroups(this,(r=(i=this.layoutHints)===null||i===void 0?void 0:i.columnGroups)!==null&&r!==void 0?r:[]).groups}close(){this.table.close(),this.totalsTable!==null&&this.totalsTable.close(),this.totalsTablePromise!==null&&this.totalsTablePromise.cancel()}startListening(){super.startListening();var{dh:e}=this;this.table.addEventListener(e.Table.EVENT_DISCONNECT,this.handleTableDisconnect),this.table.addEventListener(e.Table.EVENT_RECONNECT,this.handleTableReconnect),this.table.addEventListener(e.Table.EVENT_UPDATED,this.handleTableUpdate),this.table.addEventListener(e.Client.EVENT_REQUEST_FAILED,this.handleRequestFailed),this.table.addEventListener(e.Table.EVENT_CUSTOMCOLUMNSCHANGED,this.handleCustomColumnsChanged),this.totalsTable!=null&&this.addTotalsListeners(this.totalsTable),this.applyViewport()}stopListening(){super.stopListening();var{dh:e}=this;this.table.removeEventListener(e.Table.EVENT_DISCONNECT,this.handleTableDisconnect),this.table.removeEventListener(e.Table.EVENT_RECONNECT,this.handleTableReconnect),this.table.removeEventListener(e.Table.EVENT_UPDATED,this.handleTableUpdate),this.table.removeEventListener(e.Client.EVENT_REQUEST_FAILED,this.handleRequestFailed),this.table.removeEventListener(e.Table.EVENT_CUSTOMCOLUMNSCHANGED,this.handleCustomColumnsChanged),this.totalsTable!=null&&this.removeTotalsListeners(this.totalsTable),this.closeSubscription()}addTotalsListeners(e){var{dh:t}=this;e.addEventListener(t.Table.EVENT_UPDATED,this.handleTotalsUpdate),e.setViewport(0,0)}removeTotalsListeners(e){var{dh:t}=this;e.removeEventListener(t.Table.EVENT_UPDATED,this.handleTotalsUpdate)}handleTableDisconnect(){this.dispatchEvent(new Je(Se.EVENT.DISCONNECT))}handleTableReconnect(){this.dispatchEvent(new Je(Se.EVENT.RECONNECT))}handleTableUpdate(e){this.copyViewportData(e.detail),this.dispatchEvent(new Je(Se.EVENT.UPDATED))}handleTotalsUpdate(e){this.copyTotalsData(e.detail),this.dispatchEvent(new Je(Se.EVENT.UPDATED))}handleRequestFailed(e){this.dispatchEvent(new Je(Se.EVENT.REQUEST_FAILED,e))}handleCustomColumnsChanged(){this.dispatchEvent(new Je(Se.EVENT.COLUMNS_CHANGED,{detail:this.columns}))}get rowCount(){var e,t,r;return this.table.size+this.pendingNewRowCount+((e=(t=this.totals)===null||t===void 0||(r=t.operationOrder)===null||r===void 0?void 0:r.length)!==null&&e!==void 0?e:0)}get pendingDataErrors(){var e,t;return this.getCachedPendingErrors(this.pendingNewDataMap,this.columns,(e=(t=this.inputTable)===null||t===void 0?void 0:t.keyColumns.length)!==null&&e!==void 0?e:0)}get pendingDataMap(){return this.pendingNewDataMap}set pendingDataMap(e){e!==this.pendingNewDataMap&&(e.forEach((t,r)=>{if(!ye.isValidIndex(r))throw new Error("Invalid rowIndex ".concat(r));var{data:i}=t;i.forEach((a,o)=>{if(!ye.isValidIndex(o))throw new Error("Invalid columnIndex ".concat(o))})}),this.pendingNewDataMap=e,this.pendingNewRowCount=Math.max(this.pendingNewRowCount,this.maxPendingDataRow),this.formattedStringData=[],this.dispatchEvent(new Je(Se.EVENT.PENDING_DATA_UPDATED)))}get pendingRowCount(){return this.pendingNewRowCount}set pendingRowCount(e){e!==this.pendingNewRowCount&&(this.pendingNewRowCount=Math.max(0,e,this.maxPendingDataRow),this.dispatchEvent(new Je(Se.EVENT.UPDATED)))}get maxPendingDataRow(){return this.pendingNewDataMap.size>0?Math.max(...this.pendingNewDataMap.keys())+1:0}get columnCount(){return this.columns.length}get floatingBottomRowCount(){var e,t,r;return this.totals!=null&&this.totals.showOnTop?0:(e=(t=this.totals)===null||t===void 0||(r=t.operationOrder)===null||r===void 0?void 0:r.length)!==null&&e!==void 0?e:0}get floatingTopRowCount(){var e,t,r;return this.totals!=null&&this.totals.showOnTop&&(e=(t=this.totals)===null||t===void 0||(r=t.operationOrder)===null||r===void 0?void 0:r.length)!==null&&e!==void 0?e:0}get isChartBuilderAvailable(){return!0}get isTotalsAvailable(){return this.table.getTotalsTable!=null}get isEditable(){return!this.isSaveInProgress&&this.inputTable!=null}cacheFormattedValue(e,t,r){this.formattedStringData[e]==null&&(this.formattedStringData[e]=[]),this.formattedStringData[e][t]=r}cachePendingValue(e,t,r){this.pendingStringData[e]==null&&(this.pendingStringData[e]=[]),this.pendingStringData[e][t]=r}clearPendingValue(e,t){var r=this.pendingStringData[e];r!=null&&delete r[t]}textValueForCell(e,t){var r,i;if(((r=this.pendingStringData[e])===null||r===void 0?void 0:r[t])!==void 0)return this.pendingStringData[e][t];if(((i=this.formattedStringData[e])===null||i===void 0?void 0:i[t])===void 0){var a,o=this.valueForCell(e,t);if(o===null)return null;if(o===void 0)return;var s=(a=this.totalsColumn(e,t))!==null&&a!==void 0?a:this.columns[e],l=this.getCachedCustomColumnFormatFlag(this.formatter,s.name,s.type),d;if(!l){var u=this.formatForCell(e,t);u?.formatString!=null&&(d=u)}var c=this.displayString(o,s.type,s.name,d);this.cacheFormattedValue(e,t,c)}return this.formattedStringData[e][t]}textForCell(e,t){var r,i=this.textValueForCell(e,t);if(i==null&&this.isKeyColumn(e)){var a=this.pendingRow(t);if(a!=null&&this.pendingDataMap.has(a))return"*"}if(H.isTextType((r=this.columns[e])===null||r===void 0?void 0:r.type)){if(i===null)return"null";if(i==="")return"empty"}return i??""}truncationCharForCell(e){var t=this.columns[e],{type:r}=t;if(H.isNumberType(r)&&this.formatter.truncateNumbersWithPound)return"#"}colorForCell(e,t,r){var i=this.dataForCell(e,t);if(i){var{format:a,value:o}=i;if(o==null||o==="")return L(r.nullStringColor),r.nullStringColor;if(a&&a.color)return a.color;if(this.isPendingRow(t))return L(r.pendingTextColor),r.pendingTextColor;if(o!=null){var s,l=(s=this.totalsColumn(e,t))!==null&&s!==void 0?s:this.columns[e];if(H.isDateType(l.type)||l.name==="Date")return L(r.dateColor),r.dateColor;if(H.isNumberType(l.type))return o>0?(L(r.positiveNumberColor),r.positiveNumberColor):o<0?(L(r.negativeNumberColor),r.negativeNumberColor):(L(r.zeroNumberColor),r.zeroNumberColor)}}else if(this.isPendingRow(t)&&this.isKeyColumn(e))return L(r.errorTextColor),r.errorTextColor;return r.textColor}backgroundColorForCell(e,t){var r,i;return(r=(i=this.formatForCell(e,t))===null||i===void 0?void 0:i.backgroundColor)!==null&&r!==void 0?r:null}textAlignForCell(e){var t=this.columns[e],{type:r}=t;return H.isNumberType(r)?"right":H.isDateType(r)||t.name==="Date"?"center":"left"}textForColumnHeader(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=this.columnAtDepth(e,t);return Su(r)?r.isNew?"":r.name:r?.name}colorForColumnHeader(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=this.columnAtDepth(e,t);if(Su(r)){var i;return(i=r.color)!==null&&i!==void 0?i:null}return null}getColumnHeaderGroup(e,t){var r=this.columnAtDepth(e,t);if(Su(r))return r}getColumnHeaderParentGroup(e,t){var r,i;return this.columnHeaderParentMap.get((r=(i=this.columnAtDepth(e,t))===null||i===void 0?void 0:i.name)!==null&&r!==void 0?r:"")}columnAtDepth(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;if(r===0)return this.columns[e];var i=(t=this.columns[e])===null||t===void 0?void 0:t.name,a=this.columnHeaderParentMap.get(i);if(a){for(var o=a.depth;o<r;){if(a=this.columnHeaderParentMap.get(a.name),!a)return;o=a.depth}if(a.depth===r)return a}}textForRowFooter(e){var t=this.totalsRow(e);return t!=null&&this.totals?this.totals.operationOrder[t]:""}get initialMovedColumns(){var e;return this.getMemoizedInitialMovedColumns((e=this.layoutHints)!==null&&e!==void 0?e:void 0)}get initialMovedRows(){return CL}get initialColumnHeaderGroups(){var e;return this.getMemoizedInitialColumnHeaderGroups((e=this.layoutHints)!==null&&e!==void 0?e:void 0)}get columnMap(){return this.getMemoizedColumnMap(this.table.columns)}get columnHeaderMaxDepth(){var e;return(e=this._columnHeaderMaxDepth)!==null&&e!==void 0?e:1}set columnHeaderMaxDepth(e){this._columnHeaderMaxDepth=e}get columnHeaderGroupMap(){return this._columnHeaderGroupMap}get columnHeaderGroups(){return this._columnHeaderGroups}set columnHeaderGroups(e){if(e!==this._columnHeaderGroups){var{groups:t,maxDepth:r,parentMap:i,groupMap:a}=ye.parseColumnHeaderGroups(this,e??this.initialColumnHeaderGroups);this._columnHeaderGroups=t,this.columnHeaderMaxDepth=r,this.columnHeaderParentMap=i,this._columnHeaderGroupMap=a}}get groupedColumns(){return[]}row(e){var t,r,i,a,o,s,l,d,u,c,m=(t=(r=this.totals)===null||r===void 0||(i=r.operationOrder)===null||i===void 0?void 0:i.length)!==null&&t!==void 0?t:0,v=(a=(o=this.totals)===null||o===void 0?void 0:o.showOnTop)!==null&&a!==void 0?a:!1,g=this.totalsRow(e);if(g!=null){var f,p,C,b=(f=this.totals)===null||f===void 0?void 0:f.operationOrder[g];return L(b),(p=(C=this.totalsDataMap)===null||C===void 0?void 0:C.get(b))!==null&&p!==void 0?p:null}var S=this.pendingRow(e);if(S!=null){var E;return(E=this.pendingNewDataMap.get(S))!==null&&E!==void 0?E:null}var y=(s=(l=this.viewportData)===null||l===void 0?void 0:l.offset)!==null&&s!==void 0?s:0,T=(v?e-m:e)-y;return(d=(u=this.viewportData)===null||u===void 0||(c=u.rows)===null||c===void 0?void 0:c[T])!==null&&d!==void 0?d:null}totalsColumn(e,t){var r,i,a,o,s=this.totalsRow(t);if(s==null)return null;var l=(r=this.totals)===null||r===void 0?void 0:r.operationOrder[s],d=(i=(a=this.totals)===null||a===void 0?void 0:a.defaultOperation)!==null&&i!==void 0?i:Be.SUM,u=this.columns[e];return(o=this.totalsTable)===null||o===void 0?void 0:o.columns.find(c=>{var m;return c.name==="".concat(u.name,"__").concat(l)||(l===d||((m=this.totals)===null||m===void 0?void 0:m.operationOrder.length)===1)&&c.name===u.name})}totalsRow(e){var t,r,i,a,o,s=(t=(r=this.totals)===null||r===void 0||(i=r.operationOrder)===null||i===void 0?void 0:i.length)!==null&&t!==void 0?t:0,l=(a=(o=this.totals)===null||o===void 0?void 0:o.showOnTop)!==null&&a!==void 0?a:!1,d=l?e:e-this.table.size;return d>=0&&d<s?d:null}pendingRow(e){var t=e-this.floatingTopRowCount-this.table.size;return t>=0&&t<this.pendingNewRowCount?t:null}isTotalsRow(e){return this.totalsRow(e)!=null}isPendingRow(e){return this.pendingRow(e)!=null}dataForCell(e,t){var r;return(r=this.row(t))===null||r===void 0?void 0:r.data.get(e)}formatForCell(e,t){var r;return(r=this.dataForCell(e,t))===null||r===void 0?void 0:r.format}valueForCell(e,t){var r=this.dataForCell(e,t);if(r){var i;return(i=r.value)!==null&&i!==void 0?i:null}}copyViewportData(e){if(e==null){dt.warn("invalid data!");return}this.viewportData=this.extractViewportData(e),this.formattedStringData=[]}copyTotalsData(e){var t,r,i,a=this;if(e==null){dt.warn("invalid data!");return}var{columns:o,rows:s}=e;if(s.length!==1){dt.error("Unexpected number of rows received for totals table, ignoring update");return}for(var l=new Map,d=s[0],u=(t=(r=this.totals)===null||r===void 0?void 0:r.defaultOperation)!==null&&t!==void 0?t:Be.SUM,c=(i=this.totals)===null||i===void 0?void 0:i.operationMap,m=function(){var f,p,C=o[v],[b,S=(f=c==null||(p=c[b])===null||p===void 0?void 0:p[0])!==null&&f!==void 0?f:u]=C.name.split("__");l.has(S)||l.set(S,{data:new Map});var{data:E}=l.get(S),y=a.columns.findIndex(T=>T.name===b);E.set(y,{value:d.get(C),format:d.getFormat(C)})},v=0;v<o.length;v+=1)m();dt.debug2("copyTotalsData",l),this.totalsDataMap=l,this.formattedStringData=[]}getColumnIndexByName(e){return this.getColumnIndicesByNameMap(this.columns).get(e)}extractViewportData(e){for(var t={offset:e.offset,rows:[]},{columns:r}=e,i=0;i<e.rows.length;i+=1){var a=e.rows[i],o=this.extractViewportRow(a,r);t.rows.push(o)}return t}extractViewportRow(e,t){for(var r=new Map,i=0;i<t.length;i+=1){var a=t[i],o=this.getColumnIndexByName(a.name);L(o),r.set(o,{value:e.get(a),format:e.getFormat(a)})}return{data:r}}closeSubscription(){dt.debug2("closeSubscription",this.subscription),this.subscription&&(this.subscription.close(),this.subscription=null),this.setViewport.cancel(),this.applyViewport.cancel()}get filter(){return this.table.filter}set filter(e){this.closeSubscription(),this.table.applyFilter(e),this.applyViewport()}get formatter(){return this.irisFormatter}set formatter(e){this.irisFormatter=e,this.formattedStringData=[],this.dispatchEvent(new Je(Se.EVENT.FORMATTER_UPDATED))}displayString(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"",i=arguments.length>3?arguments[3]:void 0;return this.getCachedFormattedString(this.formatter,e,t,r,i)}get sort(){return this.table.sort}set sort(e){this.closeSubscription(),this.table.applySort(e),this.applyViewport()}set totalsConfig(e){if(dt.debug("set totalsConfig",e),e!==this.totals){if(this.totals=e,this.formattedStringData=[],this.totalsTablePromise!=null&&this.totalsTablePromise.cancel(),this.setTotalsTable(null),e==null){this.dispatchEvent(new Je(Se.EVENT.UPDATED));return}this.totalsTablePromise=Te.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{Te.isCanceled(t)||(dt.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new Je(Se.EVENT.REQUEST_FAILED,{detail:t})))})}}setTotalsTable(e){dt.debug("setTotalsTable",e),this.totalsTable!==null&&(this.listenerCount>0&&this.removeTotalsListeners(this.totalsTable),this.totalsTable.close()),this.totalsTable=e,this.totalsDataMap=null,this.listenerCount>0&&this.totalsTable!=null&&this.addTotalsListeners(this.totalsTable)}applyBufferedViewport(e,t,r){dt.debug2("applyBufferedViewport",e,t,r),this.subscription==null?(dt.debug2("applyBufferedViewport creating new subscription"),this.subscription=this.table.setViewport(e,t,r)):(dt.debug2("applyBufferedViewport using existing subscription"),this.subscription.setViewport(e,t,r))}snapshot(e){var t=arguments,r=this;return Oi(function*(){var i=t.length>1&&t[1]!==void 0?t[1]:!1,a=t.length>2&&t[2]!==void 0?t[2]:P=>P,o=t.length>3&&t[3]!==void 0?t[3]:!0;if(r.subscription==null)throw new Error("No subscription available");var s=o?ne.consolidate(e):e;if(!ye.isValidSnapshotRanges(s))throw new Error("Invalid snapshot ranges ".concat(e));for(var l=new Set,d=[],u=new Set,c=0;c<s.length;c+=1){var m=s[c];L(m.endRow),L(m.startRow);for(var v=m.startRow;v<=m.endRow&&v<r.floatingTopRowCount;v+=1)l.add(v);m.endRow>=r.floatingTopRowCount&&m.startRow<=r.floatingTopRowCount+r.table.size&&d.push(new ne(m.startColumn,Math.min(Math.max(0,m.startRow-r.floatingTopRowCount)),m.endColumn,Math.min(Math.max(0,m.endRow-r.floatingTopRowCount),r.table.size-r.floatingTopRowCount)));for(var g=Math.max(m.startRow,r.floatingTopRowCount+r.table.size);g<=m.endRow&&g<r.floatingTopRowCount+r.table.size+r.floatingBottomRowCount;g+=1)u.add(g)}var f=ye.columnsFromRanges(s,r.columns),p=[];i&&p.push(f.map(P=>P.name));for(var C=[...l].sort(),b=function*(){var R=C[S],_=f.map(M=>{var A=r.getColumnIndexByName(M.name);return L(A),a(r.valueForCell(A,R),M)});i&&_.push(r.textForRowFooter(R)),p.push(_)},S=0;S<C.length;S+=1)yield*b();if(d.length>0){var E=r.irisGridUtils.rangeSetFromRanges(d),y=yield r.subscription.snapshot(E,f);p.push(...y.rows.map(P=>f.map(R=>a(P.get(R),R))))}for(var T=[...u].sort(),O=function*(){var R=T[D],_=f.map(M=>{var A=r.getColumnIndexByName(M.name);return L(A),a(r.valueForCell(A,R),M)});i&&_.push(r.textForRowFooter(R)),p.push(_)},D=0;D<T.length;D+=1)yield*O();return p})()}textSnapshot(e){var t=arguments,r=this;return Oi(function*(){var i=t.length>1&&t[1]!==void 0?t[1]:!1,a=t.length>2&&t[2]!==void 0?t[2]:s=>"".concat(s);dt.debug2("textSnapshot",e,i);var o=yield r.snapshot(e,i,a,!1);return o.map(s=>s.join(" ")).join(`
|
|
33
|
-
`)})()}valuesTable(e){var t=this;return Oi(function*(){var r=null;try{return r=yield t.table.copy(),r.applyFilter([]),r.applySort([]),r.selectDistinct([e])}finally{r?.close()}})()}isColumnMovable(e,t){if(e<0||e>=this.columnCount)return!1;if(t>0)return!0;var r=this.columns[e].name;return this.frontColumns.includes(r)||this.backColumns.includes(r)||this.frozenColumns.includes(r)||!r?!1:!this.isKeyColumn(e)}isKeyColumn(e){var t,r;return e<((t=(r=this.inputTable)===null||r===void 0?void 0:r.keyColumns.length)!==null&&t!==void 0?t:0)}isRowMovable(){return!1}isEditableRange(e){if(this.inputTable==null||!ne.isBounded(e))return!1;var t=this.isPendingRow(e.startRow)&&this.isPendingRow(e.endRow);return!(!(t||this.inputTable.keyColumns.length!==0&&e.startColumn>=this.inputTable.keyColumns.length&&e.endColumn>=this.inputTable.keyColumns.length)||e.startRow<this.floatingTopRowCount||e.startRow>=this.floatingTopRowCount+this.table.size+this.pendingRowCount||e.endRow>=this.floatingTopRowCount+this.table.size+this.pendingRowCount)}isDeletableRange(e){return this.inputTable!=null&&e.startRow!=null&&e.endRow!=null&&e.startRow>=this.floatingTopRowCount&&e.startRow<this.floatingTopRowCount+this.table.size+this.pendingRowCount&&e.endRow<this.floatingTopRowCount+this.table.size+this.pendingRowCount}isEditableRanges(e){return e.every(t=>this.isEditableRange(t))}isDeletableRanges(e){return e.every(t=>this.isDeletableRange(t))}getTableAreaRange(){return new ne(null,this.floatingTopRowCount,null,this.floatingTopRowCount+this.table.size-1)}getPendingAreaRange(){return new ne(null,this.floatingTopRowCount+this.table.size,null,this.floatingTopRowCount+this.table.size+this.pendingNewRowCount-1)}setValueForCell(e,t,r){var i=this;return Oi(function*(){return i.setValueForRanges([new ne(e,t,e,t)],r)})()}setValueForRanges(e,t){var r=this;return Oi(function*(){if(!r.isEditableRanges(e))throw new Error("Uneditable ranges ".concat(e));try{var i=new Set,a=[];ne.forEachCell(e,(f,p)=>{var C=r.columns[f];if(i.add(C),a[f]===void 0){var b=r.tableUtils.makeValue(C.type,t,r.formatter.timeZone);a[f]=b!=null?r.displayString(b,C.type,C.name):null}r.cachePendingValue(f,p,a[f])});var o=r.getPendingAreaRange(),s=e.map(f=>ne.intersection(o,f)).filter(f=>f!=null).map(f=>(L(f),ne.offset(f,0,-(r.floatingTopRowCount+r.table.size))));if(s.length>0){var l=new Map(r.pendingNewDataMap);ne.forEachCell(s,(f,p)=>{l.has(p)||l.set(p,{data:new Map});var C=r.columns[f],b=l.get(p);L(b);var{data:S}=b,E=new Map(S),y=r.tableUtils.makeValue(C.type,t,r.formatter.timeZone);y!=null?E.set(f,{value:y}):E.delete(f),E.size>0?l.set(p,ol(ol({},b),{},{data:E})):l.delete(p)}),r.pendingDataMap=l}r.dispatchEvent(new Je(Se.EVENT.UPDATED));var d=r.getTableAreaRange(),u=e.map(f=>ne.intersection(d,f)).filter(f=>f!=null);if(u.length>0){var c,m=yield r.snapshot(u.map(f=>{var p,C;return new ne(null,(p=f?.startRow)!==null&&p!==void 0?p:null,null,(C=f?.endRow)!==null&&C!==void 0?C:null)})),v=m.map(f=>{for(var p={},C=0;C<r.columns.length;C+=1)p[r.columns[C].name]=f[C];return i.forEach(b=>{p[b.name]=r.tableUtils.makeValue(b.type,t,r.formatter.timeZone)}),p}),g=yield(c=r.inputTable)===null||c===void 0?void 0:c.addRows(v);dt.debug("setValueForRanges(",e,",",t,") set tableRanges",u,"result",g)}ne.forEachCell(e,(f,p)=>{var C=a[f];L(C),r.cacheFormattedValue(f,p,C)})}catch(f){dt.error("Unable to set ranges",e,t,f)}finally{ne.forEachCell(e,(f,p)=>{r.clearPendingValue(f,p)})}})()}setValues(){var e=arguments,t=this;return Oi(function*(){var r=e.length>0&&e[0]!==void 0?e[0]:[];if(dt.debug("setValues(",r,")"),!r.every(v=>{var g,f;return t.isEditableRange(ne.makeCell((g=v.column)!==null&&g!==void 0?g:v.x,(f=v.row)!==null&&f!==void 0?f:v.y))}))throw new Error("Uneditable ranges ".concat(r));try{var i=new Map(t.pendingNewDataMap);r.forEach(v=>{var g,f,{text:p}=v,C=(g=v.column)!==null&&g!==void 0?g:v.x,b=(f=v.row)!==null&&f!==void 0?f:v.y,S=t.columns[C],E=t.tableUtils.makeValue(S.type,p,t.formatter.timeZone),y=E!=null?t.displayString(E,S.type,S.name):null;t.cachePendingValue(C,b,y);var T=t.pendingRow(b);if(T!=null){i.has(T)||i.set(T,{data:new Map});var O=i.get(T);L(O);var{data:D}=O,P=new Map(D);E!=null?P.set(C,{value:E}):P.delete(C),P.size>0?i.set(T,ol(ol({},O),{},{data:P})):i.delete(T)}}),t.pendingDataMap=i,t.dispatchEvent(new Je(Se.EVENT.UPDATED));var a=r.reduce((v,g)=>{var f,p,C=(f=g.row)!==null&&f!==void 0?f:g.y;return v.has(C)||v.set(C,[]),(p=v.get(C))===null||p===void 0||p.push(g),v},new Map),o=ne.consolidate(r.map(v=>{var g,f;return ne.makeCell((g=v.column)!==null&&g!==void 0?g:v.x,(f=v.row)!==null&&f!==void 0?f:v.y)})),s=t.getTableAreaRange(),l=o.map(v=>ne.intersection(s,v)).filter(v=>v!=null);if(l.length>0){var d,u=yield t.snapshot(l.map(v=>(L(v),new ne(null,v.startRow,null,v.endRow)))),c=u.map((v,g)=>{for(var f=null,p=g,C=0;C<l.length;C+=1){var b=l[C];L(b);var S=ne.rowCount([b]);if(p<S){L(b.startRow),f=b.startRow+p;break}p-=S}for(var E={},y=0;y<t.columns.length;y+=1)E[t.columns[y].name]=v[y];L(f);var T=a.get(f);return T?.forEach(O=>{var D,P=t.columns[(D=O.column)!==null&&D!==void 0?D:O.x];E[P.name]=t.tableUtils.makeValue(P.type,O.text,t.formatter.timeZone)}),E});dt.info("setValues setting tableRanges",l);var m=yield(d=t.inputTable)===null||d===void 0?void 0:d.addRows(c);dt.info("setValues set tableRanges",l,"SUCCESS",m)}r.forEach(v=>{var g,f,{text:p}=v,C=(g=v.column)!==null&&g!==void 0?g:v.x,b=(f=v.row)!==null&&f!==void 0?f:v.y,S=t.columns[C],E=t.tableUtils.makeValue(S.type,p,t.formatter.timeZone),y=E!=null?t.displayString(E,S.type,S.name):null;t.cacheFormattedValue(C,b,y)})}finally{r.forEach(v=>{t.clearPendingValue(v.column,v.row)})}})()}commitPending(){var e=this;return Oi(function*(){if(e.pendingNewDataMap.size<=0)throw new Error("No pending changes to commit");try{var t,r,i;e.isSaveInProgress=!0;var a=[];e.pendingNewDataMap.forEach(s=>{var l={};s.data.forEach((d,u)=>{var{value:c}=d,m=e.columns[u];l[m.name]=c}),a.push(l)});var o=yield(t=e.inputTable)===null||t===void 0?void 0:t.addRows(a);dt.debug("commitPending()",e.pendingNewDataMap,"result",o),e.pendingNewDataMap=new Map,e.pendingNewRowCount=Math.max(0,((r=(i=e.viewport)===null||i===void 0?void 0:i.bottom)!==null&&r!==void 0?r:0)-e.table.size),e.formattedStringData=[],e.dispatchEvent(new Je(Se.EVENT.PENDING_DATA_UPDATED))}finally{e.isSaveInProgress=!1}})()}editValueForCell(e,t){return this.textValueForCell(e,t)}delete(e){var t=this;return Oi(function*(){if(!t.isDeletableRanges(e))throw new Error("Undeletable ranges ".concat(e));L(t.inputTable);var{keyColumns:r}=t.inputTable;if(r.length===0)throw new Error("No key columns to allow deletion");var i=t.getPendingAreaRange(),a=e.map(p=>ne.intersection(i,p)).filter(p=>p!=null).map(p=>(L(p),ne.offset(p,0,-(t.floatingTopRowCount+t.table.size))));if(a.length>0){for(var o=new Map(t.pendingNewDataMap),s=0;s<a.length;s+=1){var l=a[s];L(l.startRow),L(l.endRow);for(var d=l.startRow;d<=l.endRow;d+=1)o.delete(d)}t.pendingNewDataMap=o,t.formattedStringData=[],t.dispatchEvent(new Je(Se.EVENT.PENDING_DATA_UPDATED)),t.dispatchEvent(new Je(Se.EVENT.UPDATED))}var u=t.getTableAreaRange(),c=e.map(p=>ne.intersection(u,p)).filter(p=>p!=null);if(!(c.length<=0)){var[m,v]=yield Promise.all([t.snapshot(c.map(p=>(L(p),new ne(0,p.startRow,r.length-1,p.endRow)))),t.table.copy()]),g=m.map(p=>{for(var C=[],b=0;b<r.length;b+=1){var S=r[b],E=p[b],y=t.tableUtils.makeFilterRawValue(S.type,E),T=S.filter().eq(y);C.push(T)}return C.reduce((O,D)=>{var P;return(P=O?.and(D))!==null&&P!==void 0?P:D})}),f=g.reduce((p,C)=>{var b;return(b=p?.or(C))!==null&&b!==void 0?b:C});v.applyFilter([f]),v.close()}})()}isValidForCell(e,t,r){try{var i=this.columns[e];return this.tableUtils.makeValue(i.type,r,this.formatter.timeZone),!0}catch{return!1}}}_e(lo,"ROW_BUFFER_PAGES",1);function Tg(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 Nu(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){Tg(a,r,i,o,s,"next",l)}function s(l){Tg(a,r,i,o,s,"throw",l)}o(void 0)})}}function na(n,e,t){return e=bL(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function bL(n){var e=SL(n,"string");return typeof e=="symbol"?e:String(e)}function SL(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Di=ie.module("IrisGridTableModel");class wL extends lo{constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new wn(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e,t,r,i),na(this,"userFrozenColumns",void 0),na(this,"customColumnList",void 0),na(this,"formatColumnList",void 0),na(this,"getMemoizedFrontColumns",fe(a=>a??[])),na(this,"getMemoizedBackColumns",fe(a=>a??[])),na(this,"getMemoizedFrozenColumns",fe((a,o)=>{var s;return(s=o??a)!==null&&s!==void 0?s:[]})),na(this,"getCachedFilterableColumnSet",fe(a=>new Set(a.map((o,s)=>s)))),this.customColumnList=[],this.formatColumnList=[]}get isExportAvailable(){return this.table.freeze!=null}get isColumnStatisticsAvailable(){return this.table.getColumnStatistics!=null}get isValuesTableAvailable(){return this.table.selectDistinct!=null&&this.table.copy!=null}get isRollupAvailable(){return this.table.rollup!=null}get isSelectDistinctAvailable(){return this.table.selectDistinct!=null}get isCustomColumnsAvailable(){return this.table.applyCustomColumns!=null}get isFormatColumnsAvailable(){return this.table.applyCustomColumns!=null}get frontColumns(){var e;return this.getMemoizedFrontColumns((e=this.layoutHints)===null||e===void 0?void 0:e.frontColumns)}get backColumns(){var e;return this.getMemoizedBackColumns((e=this.layoutHints)===null||e===void 0?void 0:e.backColumns)}get frozenColumns(){var e;return this.getMemoizedFrozenColumns((e=this.layoutHints)===null||e===void 0?void 0:e.frozenColumns,this.userFrozenColumns)}get layoutHints(){return this.table.layoutHints}get floatingLeftColumnCount(){return this.frozenColumns.length}get description(){return this.table.description}get customColumns(){return this.customColumnList}set customColumns(e){if(Di.debug2("set customColumns",e,this.customColumnList,e===this.customColumnList),this.customColumnList.length===0&&e.length===0){Di.debug("Ignore empty initial customColumns"),this.customColumnList=e;return}if(this.customColumnList===e){Di.debug("Ignore same customColumns");return}this.closeSubscription(),this.customColumnList=e,this.table.applyCustomColumns([...e,...this.formatColumns]),this.applyViewport()}get formatColumns(){return this.formatColumnList}set formatColumns(e){if(Di.debug2("set formatColumns",e,this.formatColumnList,e===this.formatColumnList),this.formatColumnList.length===0&&e.length===0){Di.debug("Ignore empty initial formatColumns"),this.formatColumnList=e;return}if(this.formatColumnList===e){Di.debug("Ignore same formatColumns");return}this.closeSubscription(),this.formatColumnList=e,this.table.applyCustomColumns([...this.customColumns,...e]),this.applyViewport()}updateFrozenColumns(e){this.userFrozenColumns=e,this.dispatchEvent(new Je(Se.EVENT.TABLE_CHANGED,{detail:this.table}))}set totalsConfig(e){if(Di.debug("set totalsConfig",e),e!==this.totals){if(this.totals=e,this.formattedStringData=[],this.totalsTablePromise!=null&&this.totalsTablePromise.cancel(),this.setTotalsTable(null),e==null){this.dispatchEvent(new Je(Se.EVENT.UPDATED));return}this.totalsTablePromise=Te.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{Te.isCanceled(t)||(Di.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new Je(Se.EVENT.REQUEST_FAILED,{detail:t})))})}}get isFilterRequired(){return this.table.isUncoalesced}isFilterable(e){return this.getCachedFilterableColumnSet(this.columns).has(e)}export(){var e=this;return Nu(function*(){return e.table.freeze()})()}columnStatistics(e){return this.table.getColumnStatistics(e)}isColumnMovable(e){var t=this.columns[e].name;return this.frontColumns.includes(t)||this.backColumns.includes(t)||this.frozenColumns.includes(t)?!1:!this.isKeyColumn(e)}isColumnFrozen(e){return this.frozenColumns.includes(this.columns[e].name)}isColumnSortable(e){var t;return(t=this.columns[e].isSortable)!==null&&t!==void 0?t:!0}delete(e){var t=()=>super.pendingDataMap,r=a=>super.pendingDataMap=a,i=this;return Nu(function*(){var a;if(!i.isDeletableRanges(e))throw new Error("Undeletable ranges ".concat(e));L(i.inputTable);var{keyColumns:o}=i.inputTable;if(o.length===0)throw new Error("No key columns to allow deletion");var s=i.getPendingAreaRange(),l=e.map(S=>ne.intersection(s,S)).filter(S=>S!=null).map(S=>(L(S),ne.offset(S,0,-(i.floatingTopRowCount+i.table.size))));if(l.length>0){for(var d=new Map(t()),u=0;u<l.length;u+=1){var c=l[u];L(c.startRow),L(c.endRow);for(var m=c.startRow;m<=c.endRow;m+=1)d.delete(m)}r(d),i.formattedStringData=[],i.dispatchEvent(new Je(Se.EVENT.PENDING_DATA_UPDATED)),i.dispatchEvent(new Je(Se.EVENT.UPDATED))}var v=i.getTableAreaRange(),g=e.map(S=>ne.intersection(v,S)).filter(S=>S!=null);if(!(g.length<=0)){var[f,p]=yield Promise.all([i.snapshot(g.map(S=>(L(S),new ne(0,S.startRow,o.length-1,S.endRow)))),i.table.copy()]),C=f.map(S=>{for(var E=[],y=0;y<o.length;y+=1){var T=o[y],O=S[y],D=i.tableUtils.makeFilterRawValue(T.type,O),P=T.filter().eq(D);E.push(P)}return E.reduce((R,_)=>{var M;return(M=R?.and(_))!==null&&M!==void 0?M:_})}),b=C.reduce((S,E)=>{var y;return(y=S?.or(E))!==null&&y!==void 0?y:E});p.applyFilter([b]),yield(a=i.inputTable)===null||a===void 0?void 0:a.deleteTable(p),p.close()}})()}seekRow(e,t,r,i,a,o,s){var l=this;return Nu(function*(){return l.table.seekRow(e,t,r,i,a,o,s)})()}get isSeekRowAvailable(){return this.table.seekRow!=null}}const zC=wL;function Pg(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 EL(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){Pg(a,r,i,o,s,"next",l)}function s(l){Pg(a,r,i,o,s,"throw",l)}o(void 0)})}}function Og(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 Dg(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Og(Object(t),!0).forEach(function(r){KC(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Og(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function KC(n,e,t){return e=yL(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function yL(n){var e=TL(n,"string");return typeof e=="symbol"?e:String(e)}function TL(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 PL extends lo{constructor(){super(...arguments),KC(this,"getCachedFilterableColumnSet",fe((e,t)=>new Set((t?.length>0?t:e).map(r=>e.findIndex(i=>r.name===i.name)))))}applyBufferedViewport(e,t,r){this.table.setViewport(e,t,r)}textForCell(e,t){var r=this.columns[e],i=this.row(t);if(i!=null&&r!=null&&!i.hasChildren&&r.constituentType!=null){var a=this.valueForCell(e,t);return this.displayString(a,r.constituentType,r.name)}return super.textForCell(e,t)}extractViewportRow(e,t){var{isExpanded:r,hasChildren:i,depth:a}=e;return Dg(Dg({},super.extractViewportRow(e,t)),{},{isExpanded:r,hasChildren:i,depth:a})}snapshot(e,t,r){var i=this;return EL(function*(){var a;L(i.viewport),L(i.viewportData);var{columns:o}=i.viewport,s=[];t!=null&&t&&s.push(o.map(p=>p.name));for(var l=new ne(0,(a=i.viewportData)===null||a===void 0?void 0:a.offset,o.length,i.viewportData.offset+i.viewportData.rows.length),d=0;d<e.length;d+=1){var u=ne.intersection(l,e[d]);L(u),L(u.startRow),L(u.endRow);for(var c=u.startRow;c<=u.endRow;c+=1){var m=[],v=i.viewportData.rows[c-i.viewportData.offset];L(u.startColumn),L(u.endColumn);for(var g=u.startColumn;g<=u.endColumn;g+=1){var f;L(r),m.push(r((f=v.data.get(g))===null||f===void 0?void 0:f.value,i.columns[g]))}s.push(m)}}return s})()}get groupedColumns(){return this.table.groupedColumns}get hasExpandableRows(){return!0}get isExpandAllAvailable(){return this.table.expandAll!==void 0}get isChartBuilderAvailable(){return!1}get isSelectDistinctAvailable(){return!1}get isReversible(){return!1}isFilterable(e){return this.getCachedFilterableColumnSet(this.columns,this.groupedColumns).has(e)}isColumnMovable(e){return e>=this.groupedColumns.length}isRowExpandable(e){var t,r=this.row(e);return(t=r?.hasChildren)!==null&&t!==void 0?t:!1}isRowExpanded(e){var t,r=this.row(e);return(t=r?.isExpanded)!==null&&t!==void 0?t:!1}setRowExpanded(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;this.isExpandAllAvailable?this.table.setExpanded(e,t,r):this.table.setExpanded(e,t)}expandAll(){this.table.expandAll&&this.table.expandAll()}collapseAll(){this.table.collapseAll&&this.table.collapseAll()}depthForRow(e){var t,r=this.row(e);return((t=r?.depth)!==null&&t!==void 0?t:1)-1}updateFrozenColumns(e){if(e.length>0)throw new Error("Cannot freeze columns on a tree table")}}const OL=PL;function Rg(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 DL(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){Rg(a,r,i,o,s,"next",l)}function s(l){Rg(a,r,i,o,s,"throw",l)}o(void 0)})}}function Re(n,e,t){return e=RL(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function RL(n){var e=NL(n,"string");return typeof e=="symbol"?e:String(e)}function NL(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Ri=ie.module("IrisGridProxyModel");function Fu(n,e,t,r){return H.isTreeTable(e)?new OL(n,e,t):new zC(n,e,t,r)}class FL extends Se{constructor(e,t){var r,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new wn(e),a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e),r=this,Re(this,"dh",void 0),Re(this,"originalModel",void 0),Re(this,"model",void 0),Re(this,"modelPromise",void 0),Re(this,"rollup",void 0),Re(this,"selectDistinct",void 0),Re(this,"textForCell",function(){return r.model.textForCell(...arguments)}),Re(this,"truncationCharForCell",function(){return r.model.truncationCharForCell(...arguments)}),Re(this,"textAlignForCell",function(){return r.model.textAlignForCell(...arguments)}),Re(this,"colorForCell",function(){return r.model.colorForCell(...arguments)}),Re(this,"backgroundColorForCell",function(){return r.model.backgroundColorForCell(...arguments)}),Re(this,"textForColumnHeader",function(){return r.model.textForColumnHeader(...arguments)}),Re(this,"colorForColumnHeader",function(){return r.model.colorForColumnHeader(...arguments)}),Re(this,"textForRowHeader",function(){return r.model.textForRowHeader(...arguments)}),Re(this,"textForRowFooter",function(){return r.model.textForRowFooter(...arguments)}),Re(this,"isRowMovable",function(){return r.model.isRowMovable(...arguments)}),Re(this,"isColumnMovable",function(){return r.model.isColumnMovable(...arguments)}),Re(this,"isRowExpandable",function(){return ze(r.model)?r.model.isRowExpandable(...arguments):!1}),Re(this,"isRowExpanded",function(){return ze(r.model)?r.model.isRowExpanded(...arguments):!1}),Re(this,"setRowExpanded",function(){if(ze(r.model))return r.model.setRowExpanded(...arguments);throw Error("Function setRowExpanded does not exist on IrisGridTableModel")}),Re(this,"expandAll",()=>{if(ze(this.model))return this.model.expandAll();throw Error("Function expandAll does not exist on IrisGridTableModel")}),Re(this,"collapseAll",()=>{if(ze(this.model))return this.model.collapseAll();throw Error("Function collapseAll does not exist on IrisGridTableModel")}),Re(this,"depthForRow",function(){return ze(r.model)?r.model.depthForRow(...arguments):0}),Re(this,"getColumnHeaderGroup",function(){return r.model.getColumnHeaderGroup(...arguments)}),Re(this,"getColumnHeaderParentGroup",function(){return r.model.getColumnHeaderParentGroup(...arguments)}),Re(this,"formatForCell",function(){return r.model.formatForCell(...arguments)}),Re(this,"valueForCell",function(){return r.model.valueForCell(...arguments)}),Re(this,"displayString",function(){return r.model.displayString(...arguments)}),Re(this,"isEditableRange",function(){return nt(r.model)?r.model.isEditableRange(...arguments):!1}),Re(this,"isFilterable",function(){return r.model.isFilterable(...arguments)}),Re(this,"setViewport",(s,l,d)=>this.model.setViewport(s,l,d)),Re(this,"snapshot",function(){return r.model.snapshot(...arguments)}),Re(this,"textSnapshot",function(){return r.model.textSnapshot(...arguments)}),Re(this,"valuesTable",function(){return r.model.valuesTable(...arguments)}),Re(this,"editValueForCell",function(){return nt(r.model)?r.model.editValueForCell(...arguments):""}),Re(this,"setValueForCell",function(){return nt(r.model)?r.model.setValueForCell(...arguments):Promise.reject(new Error("Model is not editable"))}),Re(this,"setValueForRanges",function(){return nt(r.model)?r.model.setValueForRanges(...arguments):Promise.reject(new Error("Model is not editable"))}),Re(this,"setValues",function(){return nt(r.model)?r.model.setValues(...arguments):Promise.resolve()}),Re(this,"isValidForCell",function(){return nt(r.model)?r.model.isValidForCell(...arguments):!1}),Re(this,"delete",function(){return r.model.delete(...arguments)}),Re(this,"commitPending",function(){return r.model.commitPending(...arguments)}),this.handleModelEvent=this.handleModelEvent.bind(this);var o=Fu(e,t,i,a);this.dh=e,this.originalModel=o,this.model=o,this.modelPromise=null,this.rollup=null,this.selectDistinct=[]}close(){this.originalModel.close(),this.model!==this.originalModel&&this.model.close(),this.modelPromise!=null&&this.modelPromise.cancel()}handleModelEvent(e){Ri.debug2("handleModelEvent",e);var{detail:t,type:r}=e;this.dispatchEvent(new Je(r,{detail:t}))}setModel(e){Ri.debug("setModel",e);var t=this.model;t!==this.originalModel&&t.close(),this.model=e,this.listenerCount>0&&this.addListeners(e),this.dispatchEvent(new Je(Se.EVENT.COLUMNS_CHANGED,{detail:e.columns})),Ca(e)&&this.dispatchEvent(new Je(Se.EVENT.TABLE_CHANGED,{detail:e.table}))}setNextModel(e){Ri.debug2("setNextModel"),this.modelPromise&&this.modelPromise.cancel(),this.listenerCount>0&&this.removeListeners(this.model),this.modelPromise=Te.makeCancelable(e,t=>t.close()),this.modelPromise.then(t=>{this.modelPromise=null,this.setModel(t)}).catch(t=>{if(Te.isCanceled(t)){Ri.debug2("setNextModel cancelled");return}Ri.error("Unable to set next model",t),this.modelPromise=null,this.dispatchEvent(new Je(Se.EVENT.REQUEST_FAILED,{detail:t}))})}startListening(){super.startListening(),this.addListeners(this.model)}stopListening(){super.stopListening(),this.removeListeners(this.model)}addListeners(e){for(var t=Object.keys(Se.EVENT),r=0;r<t.length;r+=1)e.addEventListener(t[r],this.handleModelEvent)}removeListeners(e){for(var t=Object.keys(Se.EVENT),r=0;r<t.length;r+=1)e.removeEventListener(t[r],this.handleModelEvent)}get rowCount(){return this.model.rowCount}get columnCount(){return this.model.columnCount}get floatingTopRowCount(){return this.model.floatingTopRowCount}get floatingBottomRowCount(){return this.model.floatingBottomRowCount}get floatingLeftColumnCount(){return this.model.floatingLeftColumnCount}get floatingRightColumnCount(){return this.model.floatingRightColumnCount}isColumnFrozen(e){return this.model.isColumnFrozen(e)}isColumnSortable(e){return this.model.isColumnSortable(e)}get hasExpandableRows(){return ze(this.model)?this.model.hasExpandableRows:!1}get isExpandAllAvailable(){if(ze(this.model)){var e;return(e=this.model.isExpandAllAvailable)!==null&&e!==void 0?e:!1}return!1}get isExportAvailable(){return this.model.isExportAvailable}get isColumnStatisticsAvailable(){return this.model.isColumnStatisticsAvailable}get isValuesTableAvailable(){return this.model.isValuesTableAvailable}get isCustomColumnsAvailable(){return this.model.isCustomColumnsAvailable&&!(this.isSelectDistinctAvailable&&this.selectDistinctColumns.length>0)}get isFormatColumnsAvailable(){return this.model.isFormatColumnsAvailable}get isChartBuilderAvailable(){return this.model.isChartBuilderAvailable}get isRollupAvailable(){return(this.originalModel.isRollupAvailable||this.rollup!=null)&&this.selectDistinct.length===0}get isSelectDistinctAvailable(){return(this.originalModel.isSelectDistinctAvailable||this.selectDistinct.length>0)&&this.rollup==null}get isTotalsAvailable(){return this.model.isTotalsAvailable}get isReversible(){return this.model.isReversible}get columns(){return this.model.columns}get initialMovedColumns(){return this.model.initialMovedColumns}get initialMovedRows(){return this.model.initialMovedRows}get layoutHints(){return this.model.layoutHints}get frontColumns(){return this.model.frontColumns}get backColumns(){return this.model.backColumns}get frozenColumns(){return this.model.frozenColumns}get columnHeaderGroups(){return this.model.columnHeaderGroups}set columnHeaderGroups(e){this.model.columnHeaderGroups=e}get initialColumnHeaderGroups(){return this.model.initialColumnHeaderGroups}get columnHeaderGroupMap(){return this.model.columnHeaderGroupMap}get columnHeaderMaxDepth(){return this.model.columnHeaderMaxDepth}updateFrozenColumns(e){return this.model.updateFrozenColumns(e)}get originalColumns(){return this.originalModel.columns}get groupedColumns(){return this.model.groupedColumns}get description(){return this.model.description}get filter(){return this.model.filter}set filter(e){this.model.filter=e}get formatter(){return this.model.formatter}set formatter(e){this.model.formatter=e}get sort(){return this.model.sort}set sort(e){this.model.sort=e}get customColumns(){return this.model.customColumns}set customColumns(e){this.model.customColumns=e}get formatColumns(){return this.model.formatColumns}set formatColumns(e){this.model.formatColumns=e}get rollupConfig(){return this.rollup}set rollupConfig(e){if(Ri.debug("set rollupConfig",e),!this.isRollupAvailable)throw new Error("Rollup Rows are not available");if(!ct(e,this.rollup)){this.rollup=e;var t=Promise.resolve(this.originalModel);Ca(this.originalModel)&&e!=null&&(t=this.originalModel.table.rollup(e).then(r=>Fu(this.dh,r,this.formatter))),this.setNextModel(t)}}get selectDistinctColumns(){return this.selectDistinct}set selectDistinctColumns(e){if(Ri.debug("set selectDistinctColumns",e),!this.isSelectDistinctAvailable)throw new Error("Select distinct is not available");if(e===this.selectDistinctColumns||e.length===0&&this.selectDistinctColumns.length===0){Ri.debug("Ignore same selectDistinctColumns",e);return}this.selectDistinct=e;var t=e.map(i=>this.originalColumns.find(a=>a.name===i)).filter(i=>i!=null),r=Promise.resolve(this.originalModel);Ca(this.originalModel)&&t.length>0&&(r=this.originalModel.table.selectDistinct(t).then(i=>Fu(this.dh,i,this.formatter))),this.setNextModel(r)}get table(){if(Ca(this.model))return this.model.table}get totalsConfig(){return this.model.totalsConfig}set totalsConfig(e){this.model.totalsConfig=e}get isFilterRequired(){return this.model.isFilterRequired}get isEditable(){return nt(this.model)&&this.model.isEditable}export(){if(H.isTreeTable(this.model))throw new Error("TreeTable has no 'export' property");return this.model.export()}columnStatistics(e){if(H.isTreeTable(this.model))throw new Error("TreeTable has no 'columnStatistics' function");return this.model.columnStatistics(e)}get pendingDataMap(){return this.model.pendingDataMap}set pendingDataMap(e){this.model.pendingDataMap=e}get pendingRowCount(){return this.model.pendingRowCount}set pendingRowCount(e){this.model.pendingRowCount=e}get pendingDataErrors(){return this.model.pendingDataErrors}getColumnIndexByName(e){return this.model.getColumnIndexByName(e)}seekRow(e,t,r,i,a,o,s){var l=this;return DL(function*(){return l.model.seekRow(e,t,r,i,a,o,s)})()}get isSeekRowAvailable(){return this.model.isSeekRowAvailable}}const IL=FL;function Ng(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 _L(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){Ng(a,r,i,o,s,"next",l)}function s(l){Ng(a,r,i,o,s,"throw",l)}o(void 0)})}}class ML{static makeModel(e,t){var r=arguments;return _L(function*(){var i=r.length>2&&r[2]!==void 0?r[2]:new wn(e),a=null;return!H.isTreeTable(t)&&t.hasInputTable&&(a=yield t.inputTable()),new IL(e,t,i,a)})()}}const vc=ML;function gc(n,e,t){return e=AL(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function AL(n){var e=LL(n,"string");return typeof e=="symbol"?e:String(e)}function LL(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Nd{}gc(Nd,"OPEN","ChartEvent.OPEN");gc(Nd,"CLOSE","ChartEvent.CLOSE");gc(Nd,"COLUMN_SELECTED","ChartEvent.COLUMN_SELECTED");const Th=Nd;function Os(n,e,t){return e=kL(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function kL(n){var e=xL(n,"string");return typeof e=="symbol"?e:String(e)}function xL(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 bo{}Os(bo,"SESSION_OPENED","ConsoleEvent.SESSION_OPENED");Os(bo,"SESSION_CLOSED","ConsoleEvent.SESSION_CLOSED");Os(bo,"FOCUS_HISTORY","ConsoleEvent.FOCUS_HISTORY");Os(bo,"SEND_COMMAND","ConsoleEvent.SEND_COMMAND");Os(bo,"SETTINGS_CHANGED","ConsoleEvent.SETTINGS_CHANGED");const Lr=bo;function Zi(n,e,t){return e=HL(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function HL(n){var e=UL(n,"string");return typeof e=="symbol"?e:String(e)}function UL(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 ci{}Zi(ci,"TABLE_CHANGED","InputFilterEvent.TABLE_CHANGED");Zi(ci,"COLUMNS_CHANGED","InputFilterEvent.COLUMNS_CHANGED");Zi(ci,"FILTERS_CHANGED","InputFilterEvent.FILTERS_CHANGED");Zi(ci,"CLEAR_ALL_FILTERS","InputFilterEvent.CLEAR_ALL_FILTERS");Zi(ci,"COLUMN_SELECTED","InputFilterEvent.COLUMN_SELECTED");Zi(ci,"OPEN_DROPDOWN","InputFilterEvent.OPEN_DROPDOWN");Zi(ci,"OPEN_INPUT","InputFilterEvent.OPEN_INPUT");Zi(ci,"OPEN_FILTER_SET_MANAGER","InputFilterEvent.OPEN_FILTER_SET_MANAGER");const it=ci;function So(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=BL(n,"string");return typeof e=="symbol"?e:String(e)}function BL(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Ia{}So(Ia,"OPEN_GRID","IrisGridEvent.OPEN_GRID");So(Ia,"CLOSE_GRID","IrisGridEvent.CLOSE_GRID");So(Ia,"DATA_SELECTED","IrisGridEvent.DATA_SELECTED");So(Ia,"COLUMN_SELECTED","IrisGridEvent.COLUMN_SELECTED");So(Ia,"STATE_CHANGED","IrisGridEvent.STATE_CHANGED");So(Ia,"CREATE_CHART","IrisGridevent.CREATE_CHART");const fn=Ia,YC=Object.freeze({OPEN:"MarkdownEvent.OPEN"});function mi(n,e,t){return e=VL(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function VL(n){var e=GL(n,"string");return typeof e=="symbol"?e:String(e)}function GL(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 $n{}mi($n,"CREATE_NOTEBOOK","NotebookEvent.createNotebook");mi($n,"SELECT_NOTEBOOK","NotebookEvent.selectNotebook");mi($n,"CLOSE_FILE","NotebookEvent.closeFile");mi($n,"RENAME","NotebookEvent.rename");mi($n,"RENAME_FILE","NotebookEvent.renameFile");mi($n,"REGISTER_FILE","NotebookEvent.registerFile");mi($n,"SEND_TO_NOTEBOOK","NotebookEvent.sendToNotebook");mi($n,"UNREGISTER_FILE","NotebookEvent.unregisterFile");mi($n,"PROMOTE_FROM_PREVIEW","NotebookEvent.promoteFromPreview");const Ye=$n;function wo(n,e,t){return e=WL(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function WL(n){var e=jL(n,"string");return typeof e=="symbol"?e:String(e)}function jL(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 _a{}wo(_a,"focus","TabEvent.focus");wo(_a,"blur","TabEvent.blur");wo(_a,"openPQObject","TabEvent.openPQObject");wo(_a,"openControl","TabEvent.openControl");wo(_a,"reload","TabEvent.reload");wo(_a,"clearAllFilters","TabEvent.clearAllFilters");const sl=_a;function zL(n,e,t){return e=KL(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function KL(n){var e=YL(n,"string");return typeof e=="symbol"?e:String(e)}function YL(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class qC extends w.PureComponent{constructor(e){super(e),this.handleCloseTab=this.handleCloseTab.bind(this),this.handleCloseTabsRight=this.handleCloseTabsRight.bind(this),this.handleCloseTabsAll=this.handleCloseTabsAll.bind(this)}getAllTabs(){var e,t,r,{glContainer:i}=this.props;return[...(e=i==null||(t=i.tab)===null||t===void 0||(r=t.header)===null||r===void 0?void 0:r.tabs)!==null&&e!==void 0?e:[]]}handleCloseTab(){var{glContainer:e}=this.props;e.close()}handleCloseTabsAll(){var e=this.getAllTabs();e.forEach(t=>{var r;return(r=(t?.contentItem).container)===null||r===void 0?void 0:r.close()})}handleCloseTabsRight(){for(var{glContainer:e}=this.props,t=this.getAllTabs(),r=t.length-1;r>0;r-=1){var i,a,o,s,l,d,u;if(((i=t[r].contentItem)===null||i===void 0||(a=i.config)===null||a===void 0?void 0:a.id)===((o=e.tab)===null||o===void 0||(s=o.contentItem)===null||s===void 0||(l=s.config)===null||l===void 0?void 0:l.id))break;(d=((u=t[r])===null||u===void 0?void 0:u.contentItem).container)===null||d===void 0||d.close()}}canCloseTabsRight(){for(var{glContainer:e}=this.props,t=this.getAllTabs(),r=!0,i=t.length-1;i>0;i-=1){var a,o,s,l,d,u,c,m;if(((a=t[i].contentItem)===null||a===void 0||(o=a.config)===null||o===void 0?void 0:o.id)===((s=e.tab)===null||s===void 0||(l=s.contentItem)===null||l===void 0||(d=l.config)===null||d===void 0?void 0:d.id))break;var v=!!(!((u=t[i])===null||u===void 0||(c=u.contentItem)===null||c===void 0||(m=c.config)===null||m===void 0)&&m.isClosable);if(v){r=!1;break}}return r}canCloseAny(){for(var e=this.getAllTabs(),t=!0,r=e.length-1;r>0;r-=1){var i,a,o,s=!!(!((i=e[r])===null||i===void 0||(a=i.contentItem)===null||a===void 0||(o=a.config)===null||o===void 0)&&o.isClosable);if(s){t=!1;break}}return t}render(){var e,t,r,{additionalActions:i,glContainer:a}=this.props,o=[...i],s=(e=a.tab)===null||e===void 0||(t=e.contentItem)===null||t===void 0||(r=t.config)===null||r===void 0?void 0:r.isClosable;return o.push({title:"Close",order:10,group:le.groups.low,action:this.handleCloseTab,disabled:s===void 0||!s}),o.push(()=>({title:"Close Tabs to Right",order:20,group:le.groups.low,action:this.handleCloseTabsRight,disabled:this.canCloseTabsRight()})),o.push(()=>({title:"Close All",order:30,group:le.groups.low,action:this.handleCloseTabsAll,disabled:this.canCloseAny()})),h.createElement(le,{actions:o})}}zL(qC,"defaultProps",{additionalActions:[]});const qL=qC;function XC(n,e,t){return e=XL(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function XL(n){var e=QL(n,"string");return typeof e=="symbol"?e:String(e)}function QL(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class QC extends w.PureComponent{constructor(e){super(e),XC(this,"renameInputRef",void 0),this.handleRenameDialogOpened=this.handleRenameDialogOpened.bind(this),this.handleRenameInputChange=this.handleRenameInputChange.bind(this),this.handleRenameCancel=this.handleRenameCancel.bind(this),this.handleRenameSubmit=this.handleRenameSubmit.bind(this),this.renameInputRef=h.createRef();var{value:t}=e;this.state={value:t,valueWasValidated:!1}}componentDidUpdate(e){var{isShown:t}=e,{isShown:r}=this.props;r&&!t&&this.resetState()}resetState(){var{value:e}=this.props;this.setState({value:e,valueWasValidated:!1})}handleRenameDialogOpened(){var e,t;(e=this.renameInputRef)===null||e===void 0||(t=e.current)===null||t===void 0||t.focus()}handleRenameInputChange(e){this.setState({value:e.target.value})}handleRenameCancel(){var{onCancel:e}=this.props;e()}handleRenameSubmit(e){e.stopPropagation(),e.preventDefault();var{value:t}=this.state,r=t?.trim();if(r!==void 0&&r!==""){var{onSubmit:i}=this.props;i(r)}else this.setState({value:r,valueWasValidated:!0})}renderRenameDialog(){var{isShared:e,isOwner:t,itemType:r}=this.props,{value:i,valueWasValidated:a}=this.state;return h.createElement("form",{className:te("p-3",{"was-validated":a}),onSubmit:this.handleRenameSubmit,noValidate:!0,role:"presentation",onMouseDown:o=>{o.stopPropagation()},onMouseUp:o=>{o.stopPropagation()}},h.createElement("div",{className:"form-group"},h.createElement("label",{htmlFor:"rename-dialog-".concat(r,"-input")},"Rename ",r),h.createElement("input",{type:"text",className:"form-control",id:"rename-dialog-".concat(r,"-input"),value:i??void 0,ref:this.renameInputRef,onChange:this.handleRenameInputChange,required:!0}),h.createElement("div",{className:"invalid-feedback"},r," name cannot be empty"),(e||!t)&&h.createElement("div",{className:"pt-2"},"Renaming this ",r," will rename for all users.")),h.createElement("div",{className:"text-right"},h.createElement(j,{kind:"secondary",className:"mr-2",onClick:this.handleRenameCancel},"Cancel"),h.createElement(j,{kind:"primary",type:"submit"},"Rename")))}render(){var{isShown:e,onCancel:t}=this.props;return h.createElement(md,{isShown:e,onEntered:this.handleRenameDialogOpened,onExited:t,options:{placement:"bottom"},interactive:!0,closeOnBlur:!0},this.renderRenameDialog())}}XC(QC,"defaultProps",{isShared:!1,isOwner:!0,itemType:"Item",value:""});function ZC(n,e,t){return e=ZL(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ZL(n){var e=JL(n,"string");return typeof e=="symbol"?e:String(e)}function JL(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 e1=ie.module("Panel");class JC extends w.PureComponent{constructor(e){super(e),ZC(this,"getAdditionActions",fe((r,i,a)=>{var o=[];return i&&o.push(this.getCloneAction()),a&&o.push(this.getRenameAction()),[...o,...r]})),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.handleCopyPanel=this.handleCopyPanel.bind(this),this.handleFocus=this.handleFocus.bind(this),this.handleBlur=this.handleBlur.bind(this),this.handleHide=this.handleHide.bind(this),this.handleResize=this.handleResize.bind(this),this.handleSessionClosed=this.handleSessionClosed.bind(this),this.handleSessionOpened=this.handleSessionOpened.bind(this),this.handleBeforeShow=this.handleBeforeShow.bind(this),this.handleShow=this.handleShow.bind(this),this.handleTabBlur=this.handleTabBlur.bind(this),this.handleTabFocus=this.handleTabFocus.bind(this),this.handleRenameCancel=this.handleRenameCancel.bind(this),this.handleRenameSubmit=this.handleRenameSubmit.bind(this),this.handleShowRenameDialog=this.handleShowRenameDialog.bind(this),this.handleTabClicked=this.handleTabClicked.bind(this),this.handleTab=this.handleTab.bind(this);var{glContainer:t}=this.props;this.state={title:Q.getTitleFromContainer(t),showRenameDialog:!1}}componentDidMount(){var{componentPanel:e,glContainer:t,glEventHub:r}=this.props;t.on("resize",this.handleResize),t.on("show",this.handleBeforeShow),t.on("shown",this.handleShow),t.on("hide",this.handleHide),t.on("tab",this.handleTab),t.on("tabClicked",this.handleTabClicked),r.on(Lr.SESSION_CLOSED,this.handleSessionClosed),r.on(Lr.SESSION_OPENED,this.handleSessionOpened),r.on(sl.focus,this.handleTabFocus),r.on(sl.blur,this.handleTabBlur),r.on(it.CLEAR_ALL_FILTERS,this.handleClearAllFilters),r.emit(Ee.MOUNT,e)}componentWillUnmount(){var{componentPanel:e,glContainer:t,glEventHub:r}=this.props;t.off("resize",this.handleResize),t.off("show",this.handleBeforeShow),t.off("shown",this.handleShow),t.off("hide",this.handleHide),t.off("tab",this.handleTab),t.off("tabClicked",this.handleTabClicked),r.off(Lr.SESSION_CLOSED,this.handleSessionClosed),r.off(Lr.SESSION_OPENED,this.handleSessionOpened),r.off(sl.focus,this.handleTabFocus),r.off(sl.blur,this.handleTabBlur),r.off(it.CLEAR_ALL_FILTERS,this.handleClearAllFilters),r.emit(Ee.UNMOUNT,e)}handleTab(e){e!=null&&this.setState({title:Q.getTitleFromTab(e)}),this.forceUpdate();var{onTab:t}=this.props;t(e)}handleTabClicked(e){var{onTabClicked:t}=this.props;t(e)}handleClearAllFilters(){var{onClearAllFilters:e}=this.props;e(...arguments)}handleFocus(e){var{componentPanel:t,glEventHub:r}=this.props;r.emit(Ee.FOCUS,t);var{onFocus:i}=this.props;i(e)}handleBlur(e){var{onBlur:t}=this.props;t(e)}handleHide(){var{onHide:e}=this.props;e(...arguments)}handleResize(){var{onResize:e}=this.props;e(...arguments)}handleSessionClosed(e){var{onSessionClose:t}=this.props;t(e)}handleSessionOpened(e,t){var{onSessionOpen:r}=this.props;r(e,t)}handleBeforeShow(){var{onBeforeShow:e}=this.props;e(...arguments)}handleShow(){var{onShow:e}=this.props;e(...arguments)}handleTabBlur(){var{onTabBlur:e}=this.props;e(...arguments)}handleTabFocus(){var{onTabFocus:e}=this.props;e(...arguments)}handleRenameCancel(){this.setState({showRenameDialog:!1})}handleShowRenameDialog(){this.setState({showRenameDialog:!0})}handleRenameSubmit(e){var{glContainer:t}=this.props;this.setState({showRenameDialog:!1,title:e});var r=Q.getRootFromContainer(t),i=Q.getComponentConfigFromContainer(t);L(i),Q.renameComponent(r,i,e)}handleCopyPanel(){var{glContainer:e,glEventHub:t}=this.props,r=Q.getRootFromContainer(e),i=Q.getComponentConfigFromContainer(e);if(i==null){e1.error("Could not get component config from container",e);return}var a=Q.cloneComponent(r,i);a!==null&&t.emit(Ee.CLONED,this,a)}getCloneAction(){return{title:"Copy Panel",order:10,group:le.groups.high,action:this.handleCopyPanel}}getRenameAction(){return{title:"Rename",order:10,group:le.groups.medium,action:this.handleShowRenameDialog}}render(){var{children:e,className:t,renderTabTooltip:r,glContainer:i,additionalActions:a,errorMessage:o,isLoaded:s,isLoading:l,isClonable:d,isRenamable:u}=this.props,{tab:c}=i,{showRenameDialog:m,title:v}=this.state;return h.createElement("div",{className:te("h-100 w-100 iris-panel",t),onFocusCapture:this.handleFocus,onBlurCapture:this.handleBlur},e,h.createElement(id,{errorMessage:o,isLoaded:s,isLoading:l}),c!=null&&Fh.createPortal(h.createElement(h.Fragment,null,h.createElement(qL,{glContainer:i,additionalActions:this.getAdditionActions(a,d,u)}),u&&h.createElement(QC,{isShown:m,value:v,itemType:"Panel",onCancel:this.handleRenameCancel,onSubmit:this.handleRenameSubmit}),r!=null&&h.createElement(pt,{interactive:!0,options:{placement:"bottom"},popperClassName:"panel-tab-popper"},r())),c.element[0]))}}ZC(JC,"defaultProps",{className:"",onTab:()=>{},onTabClicked:()=>{},onClearAllFilters:()=>{},onFocus:()=>{},onBlur:()=>{},onHide:()=>{},onResize:()=>{},onSessionClose:()=>{},onSessionOpen:()=>{},onBeforeShow:()=>{},onShow:()=>{},onTabBlur:()=>{},onTabFocus:()=>{},renderTabTooltip:null,additionalActions:[],errorMessage:null,isLoading:!1,isLoaded:!0,isClonable:!1,isRenamable:!1});const vi=JC;function Fd(n){var{widgetType:e,widgetName:t,glContainer:r,description:i,children:a}=n,o=Q.getTitleFromContainer(r);return h.createElement("div",{className:"tab-tooltip-grid-container"},h.createElement("span",{className:"tab-tooltip-title"},e," Name"),h.createElement("div",{className:"tab-tooltip-name-wrapper"},h.createElement("span",{className:"tab-tooltip-name"},t),h.createElement(hd,{className:"tab-tooltip-copy",tooltip:"Copy name",copy:t})),t!==o&&h.createElement(h.Fragment,null,h.createElement("span",{className:"tab-tooltip-title"},"Display Name"),h.createElement("span",{className:"tab-tooltip-name"},o)),i&&h.createElement("div",{className:"tab-tooltip-description"},i),a)}Fd.propTypes={glContainer:nc.Container.isRequired,widgetType:q.string,widgetName:q.string,description:q.string,children:q.node};Fd.defaultProps={widgetType:"",widgetName:"",description:null,children:null};function eb(n,e,t){return e=t1(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function t1(n){var e=r1(n,"string");return typeof e=="symbol"?e:String(e)}function r1(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 tb extends w.PureComponent{constructor(e){super(e),eb(this,"getCachedRenderTabTooltip",fe((t,r,i,a,o)=>t?()=>h.createElement(Fd,{glContainer:r,widgetType:i,widgetName:a,description:o}):null)),this.handleSessionClosed=this.handleSessionClosed.bind(this),this.handleSessionOpened=this.handleSessionOpened.bind(this),this.handleCopyName=this.handleCopyName.bind(this),this.state={isClientDisconnected:!1,isPanelDisconnected:!1,isWidgetDisconnected:!1,isWaitingForReconnect:!1,isPanelInactive:!1}}handleCopyName(){var{widgetName:e}=this.props;Cs(e)}getErrorMessage(){var{errorMessage:e}=this.props,{isClientDisconnected:t,isPanelDisconnected:r,isWidgetDisconnected:i,isWaitingForReconnect:a}=this.state;if(e)return"".concat(e);if(t&&r&&a)return`Disconnected from server.
|
|
33
|
+
`)})()}valuesTable(e){var t=this;return Oi(function*(){var r=null;try{return r=yield t.table.copy(),r.applyFilter([]),r.applySort([]),r.selectDistinct([e])}finally{r?.close()}})()}isColumnMovable(e,t){if(e<0||e>=this.columnCount)return!1;if(t>0)return!0;var r=this.columns[e].name;return this.frontColumns.includes(r)||this.backColumns.includes(r)||this.frozenColumns.includes(r)||!r?!1:!this.isKeyColumn(e)}isColumnSortable(e){var t;return(t=this.columns[e].isSortable)!==null&&t!==void 0?t:!0}isKeyColumn(e){var t,r;return e<((t=(r=this.inputTable)===null||r===void 0?void 0:r.keyColumns.length)!==null&&t!==void 0?t:0)}isRowMovable(){return!1}isEditableRange(e){if(this.inputTable==null||!ne.isBounded(e))return!1;var t=this.isPendingRow(e.startRow)&&this.isPendingRow(e.endRow);return!(!(t||this.inputTable.keyColumns.length!==0&&e.startColumn>=this.inputTable.keyColumns.length&&e.endColumn>=this.inputTable.keyColumns.length)||e.startRow<this.floatingTopRowCount||e.startRow>=this.floatingTopRowCount+this.table.size+this.pendingRowCount||e.endRow>=this.floatingTopRowCount+this.table.size+this.pendingRowCount)}isDeletableRange(e){return this.inputTable!=null&&e.startRow!=null&&e.endRow!=null&&e.startRow>=this.floatingTopRowCount&&e.startRow<this.floatingTopRowCount+this.table.size+this.pendingRowCount&&e.endRow<this.floatingTopRowCount+this.table.size+this.pendingRowCount}isEditableRanges(e){return e.every(t=>this.isEditableRange(t))}isDeletableRanges(e){return e.every(t=>this.isDeletableRange(t))}getTableAreaRange(){return new ne(null,this.floatingTopRowCount,null,this.floatingTopRowCount+this.table.size-1)}getPendingAreaRange(){return new ne(null,this.floatingTopRowCount+this.table.size,null,this.floatingTopRowCount+this.table.size+this.pendingNewRowCount-1)}setValueForCell(e,t,r){var i=this;return Oi(function*(){return i.setValueForRanges([new ne(e,t,e,t)],r)})()}setValueForRanges(e,t){var r=this;return Oi(function*(){if(!r.isEditableRanges(e))throw new Error("Uneditable ranges ".concat(e));try{var i=new Set,a=[];ne.forEachCell(e,(f,p)=>{var C=r.columns[f];if(i.add(C),a[f]===void 0){var b=r.tableUtils.makeValue(C.type,t,r.formatter.timeZone);a[f]=b!=null?r.displayString(b,C.type,C.name):null}r.cachePendingValue(f,p,a[f])});var o=r.getPendingAreaRange(),s=e.map(f=>ne.intersection(o,f)).filter(f=>f!=null).map(f=>(L(f),ne.offset(f,0,-(r.floatingTopRowCount+r.table.size))));if(s.length>0){var l=new Map(r.pendingNewDataMap);ne.forEachCell(s,(f,p)=>{l.has(p)||l.set(p,{data:new Map});var C=r.columns[f],b=l.get(p);L(b);var{data:S}=b,E=new Map(S),y=r.tableUtils.makeValue(C.type,t,r.formatter.timeZone);y!=null?E.set(f,{value:y}):E.delete(f),E.size>0?l.set(p,ol(ol({},b),{},{data:E})):l.delete(p)}),r.pendingDataMap=l}r.dispatchEvent(new Je(Se.EVENT.UPDATED));var d=r.getTableAreaRange(),u=e.map(f=>ne.intersection(d,f)).filter(f=>f!=null);if(u.length>0){var c,m=yield r.snapshot(u.map(f=>{var p,C;return new ne(null,(p=f?.startRow)!==null&&p!==void 0?p:null,null,(C=f?.endRow)!==null&&C!==void 0?C:null)})),v=m.map(f=>{for(var p={},C=0;C<r.columns.length;C+=1)p[r.columns[C].name]=f[C];return i.forEach(b=>{p[b.name]=r.tableUtils.makeValue(b.type,t,r.formatter.timeZone)}),p}),g=yield(c=r.inputTable)===null||c===void 0?void 0:c.addRows(v);dt.debug("setValueForRanges(",e,",",t,") set tableRanges",u,"result",g)}ne.forEachCell(e,(f,p)=>{var C=a[f];L(C),r.cacheFormattedValue(f,p,C)})}catch(f){dt.error("Unable to set ranges",e,t,f)}finally{ne.forEachCell(e,(f,p)=>{r.clearPendingValue(f,p)})}})()}setValues(){var e=arguments,t=this;return Oi(function*(){var r=e.length>0&&e[0]!==void 0?e[0]:[];if(dt.debug("setValues(",r,")"),!r.every(v=>{var g,f;return t.isEditableRange(ne.makeCell((g=v.column)!==null&&g!==void 0?g:v.x,(f=v.row)!==null&&f!==void 0?f:v.y))}))throw new Error("Uneditable ranges ".concat(r));try{var i=new Map(t.pendingNewDataMap);r.forEach(v=>{var g,f,{text:p}=v,C=(g=v.column)!==null&&g!==void 0?g:v.x,b=(f=v.row)!==null&&f!==void 0?f:v.y,S=t.columns[C],E=t.tableUtils.makeValue(S.type,p,t.formatter.timeZone),y=E!=null?t.displayString(E,S.type,S.name):null;t.cachePendingValue(C,b,y);var T=t.pendingRow(b);if(T!=null){i.has(T)||i.set(T,{data:new Map});var O=i.get(T);L(O);var{data:D}=O,P=new Map(D);E!=null?P.set(C,{value:E}):P.delete(C),P.size>0?i.set(T,ol(ol({},O),{},{data:P})):i.delete(T)}}),t.pendingDataMap=i,t.dispatchEvent(new Je(Se.EVENT.UPDATED));var a=r.reduce((v,g)=>{var f,p,C=(f=g.row)!==null&&f!==void 0?f:g.y;return v.has(C)||v.set(C,[]),(p=v.get(C))===null||p===void 0||p.push(g),v},new Map),o=ne.consolidate(r.map(v=>{var g,f;return ne.makeCell((g=v.column)!==null&&g!==void 0?g:v.x,(f=v.row)!==null&&f!==void 0?f:v.y)})),s=t.getTableAreaRange(),l=o.map(v=>ne.intersection(s,v)).filter(v=>v!=null);if(l.length>0){var d,u=yield t.snapshot(l.map(v=>(L(v),new ne(null,v.startRow,null,v.endRow)))),c=u.map((v,g)=>{for(var f=null,p=g,C=0;C<l.length;C+=1){var b=l[C];L(b);var S=ne.rowCount([b]);if(p<S){L(b.startRow),f=b.startRow+p;break}p-=S}for(var E={},y=0;y<t.columns.length;y+=1)E[t.columns[y].name]=v[y];L(f);var T=a.get(f);return T?.forEach(O=>{var D,P=t.columns[(D=O.column)!==null&&D!==void 0?D:O.x];E[P.name]=t.tableUtils.makeValue(P.type,O.text,t.formatter.timeZone)}),E});dt.info("setValues setting tableRanges",l);var m=yield(d=t.inputTable)===null||d===void 0?void 0:d.addRows(c);dt.info("setValues set tableRanges",l,"SUCCESS",m)}r.forEach(v=>{var g,f,{text:p}=v,C=(g=v.column)!==null&&g!==void 0?g:v.x,b=(f=v.row)!==null&&f!==void 0?f:v.y,S=t.columns[C],E=t.tableUtils.makeValue(S.type,p,t.formatter.timeZone),y=E!=null?t.displayString(E,S.type,S.name):null;t.cacheFormattedValue(C,b,y)})}finally{r.forEach(v=>{t.clearPendingValue(v.column,v.row)})}})()}commitPending(){var e=this;return Oi(function*(){if(e.pendingNewDataMap.size<=0)throw new Error("No pending changes to commit");try{var t,r,i;e.isSaveInProgress=!0;var a=[];e.pendingNewDataMap.forEach(s=>{var l={};s.data.forEach((d,u)=>{var{value:c}=d,m=e.columns[u];l[m.name]=c}),a.push(l)});var o=yield(t=e.inputTable)===null||t===void 0?void 0:t.addRows(a);dt.debug("commitPending()",e.pendingNewDataMap,"result",o),e.pendingNewDataMap=new Map,e.pendingNewRowCount=Math.max(0,((r=(i=e.viewport)===null||i===void 0?void 0:i.bottom)!==null&&r!==void 0?r:0)-e.table.size),e.formattedStringData=[],e.dispatchEvent(new Je(Se.EVENT.PENDING_DATA_UPDATED))}finally{e.isSaveInProgress=!1}})()}editValueForCell(e,t){return this.textValueForCell(e,t)}delete(e){var t=this;return Oi(function*(){if(!t.isDeletableRanges(e))throw new Error("Undeletable ranges ".concat(e));L(t.inputTable);var{keyColumns:r}=t.inputTable;if(r.length===0)throw new Error("No key columns to allow deletion");var i=t.getPendingAreaRange(),a=e.map(p=>ne.intersection(i,p)).filter(p=>p!=null).map(p=>(L(p),ne.offset(p,0,-(t.floatingTopRowCount+t.table.size))));if(a.length>0){for(var o=new Map(t.pendingNewDataMap),s=0;s<a.length;s+=1){var l=a[s];L(l.startRow),L(l.endRow);for(var d=l.startRow;d<=l.endRow;d+=1)o.delete(d)}t.pendingNewDataMap=o,t.formattedStringData=[],t.dispatchEvent(new Je(Se.EVENT.PENDING_DATA_UPDATED)),t.dispatchEvent(new Je(Se.EVENT.UPDATED))}var u=t.getTableAreaRange(),c=e.map(p=>ne.intersection(u,p)).filter(p=>p!=null);if(!(c.length<=0)){var[m,v]=yield Promise.all([t.snapshot(c.map(p=>(L(p),new ne(0,p.startRow,r.length-1,p.endRow)))),t.table.copy()]),g=m.map(p=>{for(var C=[],b=0;b<r.length;b+=1){var S=r[b],E=p[b],y=t.tableUtils.makeFilterRawValue(S.type,E),T=S.filter().eq(y);C.push(T)}return C.reduce((O,D)=>{var P;return(P=O?.and(D))!==null&&P!==void 0?P:D})}),f=g.reduce((p,C)=>{var b;return(b=p?.or(C))!==null&&b!==void 0?b:C});v.applyFilter([f]),v.close()}})()}isValidForCell(e,t,r){try{var i=this.columns[e];return this.tableUtils.makeValue(i.type,r,this.formatter.timeZone),!0}catch{return!1}}}_e(lo,"ROW_BUFFER_PAGES",1);function Tg(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 Nu(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){Tg(a,r,i,o,s,"next",l)}function s(l){Tg(a,r,i,o,s,"throw",l)}o(void 0)})}}function na(n,e,t){return e=bL(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function bL(n){var e=SL(n,"string");return typeof e=="symbol"?e:String(e)}function SL(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Di=ie.module("IrisGridTableModel");class wL extends lo{constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new wn(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e,t,r,i),na(this,"userFrozenColumns",void 0),na(this,"customColumnList",void 0),na(this,"formatColumnList",void 0),na(this,"getMemoizedFrontColumns",fe(a=>a??[])),na(this,"getMemoizedBackColumns",fe(a=>a??[])),na(this,"getMemoizedFrozenColumns",fe((a,o)=>{var s;return(s=o??a)!==null&&s!==void 0?s:[]})),na(this,"getCachedFilterableColumnSet",fe(a=>new Set(a.map((o,s)=>s)))),this.customColumnList=[],this.formatColumnList=[]}get isExportAvailable(){return this.table.freeze!=null}get isColumnStatisticsAvailable(){return this.table.getColumnStatistics!=null}get isValuesTableAvailable(){return this.table.selectDistinct!=null&&this.table.copy!=null}get isRollupAvailable(){return this.table.rollup!=null}get isSelectDistinctAvailable(){return this.table.selectDistinct!=null}get isCustomColumnsAvailable(){return this.table.applyCustomColumns!=null}get isFormatColumnsAvailable(){return this.table.applyCustomColumns!=null}get frontColumns(){var e;return this.getMemoizedFrontColumns((e=this.layoutHints)===null||e===void 0?void 0:e.frontColumns)}get backColumns(){var e;return this.getMemoizedBackColumns((e=this.layoutHints)===null||e===void 0?void 0:e.backColumns)}get frozenColumns(){var e;return this.getMemoizedFrozenColumns((e=this.layoutHints)===null||e===void 0?void 0:e.frozenColumns,this.userFrozenColumns)}get layoutHints(){return this.table.layoutHints}get floatingLeftColumnCount(){return this.frozenColumns.length}get description(){return this.table.description}get customColumns(){return this.customColumnList}set customColumns(e){if(Di.debug2("set customColumns",e,this.customColumnList,e===this.customColumnList),this.customColumnList.length===0&&e.length===0){Di.debug("Ignore empty initial customColumns"),this.customColumnList=e;return}if(this.customColumnList===e){Di.debug("Ignore same customColumns");return}this.closeSubscription(),this.customColumnList=e,this.table.applyCustomColumns([...e,...this.formatColumns]),this.applyViewport()}get formatColumns(){return this.formatColumnList}set formatColumns(e){if(Di.debug2("set formatColumns",e,this.formatColumnList,e===this.formatColumnList),this.formatColumnList.length===0&&e.length===0){Di.debug("Ignore empty initial formatColumns"),this.formatColumnList=e;return}if(this.formatColumnList===e){Di.debug("Ignore same formatColumns");return}this.closeSubscription(),this.formatColumnList=e,this.table.applyCustomColumns([...this.customColumns,...e]),this.applyViewport()}updateFrozenColumns(e){this.userFrozenColumns=e,this.dispatchEvent(new Je(Se.EVENT.TABLE_CHANGED,{detail:this.table}))}set totalsConfig(e){if(Di.debug("set totalsConfig",e),e!==this.totals){if(this.totals=e,this.formattedStringData=[],this.totalsTablePromise!=null&&this.totalsTablePromise.cancel(),this.setTotalsTable(null),e==null){this.dispatchEvent(new Je(Se.EVENT.UPDATED));return}this.totalsTablePromise=Te.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{Te.isCanceled(t)||(Di.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new Je(Se.EVENT.REQUEST_FAILED,{detail:t})))})}}get isFilterRequired(){return this.table.isUncoalesced}isFilterable(e){return this.getCachedFilterableColumnSet(this.columns).has(e)}export(){var e=this;return Nu(function*(){return e.table.freeze()})()}columnStatistics(e){return this.table.getColumnStatistics(e)}isColumnMovable(e){var t=this.columns[e].name;return this.frontColumns.includes(t)||this.backColumns.includes(t)||this.frozenColumns.includes(t)?!1:!this.isKeyColumn(e)}isColumnFrozen(e){return this.frozenColumns.includes(this.columns[e].name)}delete(e){var t=()=>super.pendingDataMap,r=a=>super.pendingDataMap=a,i=this;return Nu(function*(){var a;if(!i.isDeletableRanges(e))throw new Error("Undeletable ranges ".concat(e));L(i.inputTable);var{keyColumns:o}=i.inputTable;if(o.length===0)throw new Error("No key columns to allow deletion");var s=i.getPendingAreaRange(),l=e.map(S=>ne.intersection(s,S)).filter(S=>S!=null).map(S=>(L(S),ne.offset(S,0,-(i.floatingTopRowCount+i.table.size))));if(l.length>0){for(var d=new Map(t()),u=0;u<l.length;u+=1){var c=l[u];L(c.startRow),L(c.endRow);for(var m=c.startRow;m<=c.endRow;m+=1)d.delete(m)}r(d),i.formattedStringData=[],i.dispatchEvent(new Je(Se.EVENT.PENDING_DATA_UPDATED)),i.dispatchEvent(new Je(Se.EVENT.UPDATED))}var v=i.getTableAreaRange(),g=e.map(S=>ne.intersection(v,S)).filter(S=>S!=null);if(!(g.length<=0)){var[f,p]=yield Promise.all([i.snapshot(g.map(S=>(L(S),new ne(0,S.startRow,o.length-1,S.endRow)))),i.table.copy()]),C=f.map(S=>{for(var E=[],y=0;y<o.length;y+=1){var T=o[y],O=S[y],D=i.tableUtils.makeFilterRawValue(T.type,O),P=T.filter().eq(D);E.push(P)}return E.reduce((R,_)=>{var M;return(M=R?.and(_))!==null&&M!==void 0?M:_})}),b=C.reduce((S,E)=>{var y;return(y=S?.or(E))!==null&&y!==void 0?y:E});p.applyFilter([b]),yield(a=i.inputTable)===null||a===void 0?void 0:a.deleteTable(p),p.close()}})()}seekRow(e,t,r,i,a,o,s){var l=this;return Nu(function*(){return l.table.seekRow(e,t,r,i,a,o,s)})()}get isSeekRowAvailable(){return this.table.seekRow!=null}}const zC=wL;function Pg(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 EL(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){Pg(a,r,i,o,s,"next",l)}function s(l){Pg(a,r,i,o,s,"throw",l)}o(void 0)})}}function Og(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 Dg(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Og(Object(t),!0).forEach(function(r){KC(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Og(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function KC(n,e,t){return e=yL(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function yL(n){var e=TL(n,"string");return typeof e=="symbol"?e:String(e)}function TL(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 PL extends lo{constructor(){super(...arguments),KC(this,"getCachedFilterableColumnSet",fe((e,t)=>new Set((t?.length>0?t:e).map(r=>e.findIndex(i=>r.name===i.name)))))}applyBufferedViewport(e,t,r){this.table.setViewport(e,t,r)}textForCell(e,t){var r=this.columns[e],i=this.row(t);if(i!=null&&r!=null&&!i.hasChildren&&r.constituentType!=null){var a=this.valueForCell(e,t);return this.displayString(a,r.constituentType,r.name)}return super.textForCell(e,t)}extractViewportRow(e,t){var{isExpanded:r,hasChildren:i,depth:a}=e;return Dg(Dg({},super.extractViewportRow(e,t)),{},{isExpanded:r,hasChildren:i,depth:a})}snapshot(e,t,r){var i=this;return EL(function*(){var a;L(i.viewport),L(i.viewportData);var{columns:o}=i.viewport,s=[];t!=null&&t&&s.push(o.map(p=>p.name));for(var l=new ne(0,(a=i.viewportData)===null||a===void 0?void 0:a.offset,o.length,i.viewportData.offset+i.viewportData.rows.length),d=0;d<e.length;d+=1){var u=ne.intersection(l,e[d]);L(u),L(u.startRow),L(u.endRow);for(var c=u.startRow;c<=u.endRow;c+=1){var m=[],v=i.viewportData.rows[c-i.viewportData.offset];L(u.startColumn),L(u.endColumn);for(var g=u.startColumn;g<=u.endColumn;g+=1){var f;L(r),m.push(r((f=v.data.get(g))===null||f===void 0?void 0:f.value,i.columns[g]))}s.push(m)}}return s})()}get groupedColumns(){return this.table.groupedColumns}get hasExpandableRows(){return!0}get isExpandAllAvailable(){return this.table.expandAll!==void 0}get isChartBuilderAvailable(){return!1}get isSelectDistinctAvailable(){return!1}get isReversible(){return!1}isFilterable(e){return this.getCachedFilterableColumnSet(this.columns,this.groupedColumns).has(e)}isColumnMovable(e){return e>=this.groupedColumns.length}isRowExpandable(e){var t,r=this.row(e);return(t=r?.hasChildren)!==null&&t!==void 0?t:!1}isRowExpanded(e){var t,r=this.row(e);return(t=r?.isExpanded)!==null&&t!==void 0?t:!1}setRowExpanded(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;this.isExpandAllAvailable?this.table.setExpanded(e,t,r):this.table.setExpanded(e,t)}expandAll(){this.table.expandAll&&this.table.expandAll()}collapseAll(){this.table.collapseAll&&this.table.collapseAll()}depthForRow(e){var t,r=this.row(e);return((t=r?.depth)!==null&&t!==void 0?t:1)-1}updateFrozenColumns(e){if(e.length>0)throw new Error("Cannot freeze columns on a tree table")}}const OL=PL;function Rg(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 DL(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){Rg(a,r,i,o,s,"next",l)}function s(l){Rg(a,r,i,o,s,"throw",l)}o(void 0)})}}function Re(n,e,t){return e=RL(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function RL(n){var e=NL(n,"string");return typeof e=="symbol"?e:String(e)}function NL(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Ri=ie.module("IrisGridProxyModel");function Fu(n,e,t,r){return H.isTreeTable(e)?new OL(n,e,t):new zC(n,e,t,r)}class FL extends Se{constructor(e,t){var r,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new wn(e),a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e),r=this,Re(this,"dh",void 0),Re(this,"originalModel",void 0),Re(this,"model",void 0),Re(this,"modelPromise",void 0),Re(this,"rollup",void 0),Re(this,"selectDistinct",void 0),Re(this,"textForCell",function(){return r.model.textForCell(...arguments)}),Re(this,"truncationCharForCell",function(){return r.model.truncationCharForCell(...arguments)}),Re(this,"textAlignForCell",function(){return r.model.textAlignForCell(...arguments)}),Re(this,"colorForCell",function(){return r.model.colorForCell(...arguments)}),Re(this,"backgroundColorForCell",function(){return r.model.backgroundColorForCell(...arguments)}),Re(this,"textForColumnHeader",function(){return r.model.textForColumnHeader(...arguments)}),Re(this,"colorForColumnHeader",function(){return r.model.colorForColumnHeader(...arguments)}),Re(this,"textForRowHeader",function(){return r.model.textForRowHeader(...arguments)}),Re(this,"textForRowFooter",function(){return r.model.textForRowFooter(...arguments)}),Re(this,"isRowMovable",function(){return r.model.isRowMovable(...arguments)}),Re(this,"isColumnMovable",function(){return r.model.isColumnMovable(...arguments)}),Re(this,"isRowExpandable",function(){return ze(r.model)?r.model.isRowExpandable(...arguments):!1}),Re(this,"isRowExpanded",function(){return ze(r.model)?r.model.isRowExpanded(...arguments):!1}),Re(this,"setRowExpanded",function(){if(ze(r.model))return r.model.setRowExpanded(...arguments);throw Error("Function setRowExpanded does not exist on IrisGridTableModel")}),Re(this,"expandAll",()=>{if(ze(this.model))return this.model.expandAll();throw Error("Function expandAll does not exist on IrisGridTableModel")}),Re(this,"collapseAll",()=>{if(ze(this.model))return this.model.collapseAll();throw Error("Function collapseAll does not exist on IrisGridTableModel")}),Re(this,"depthForRow",function(){return ze(r.model)?r.model.depthForRow(...arguments):0}),Re(this,"getColumnHeaderGroup",function(){return r.model.getColumnHeaderGroup(...arguments)}),Re(this,"getColumnHeaderParentGroup",function(){return r.model.getColumnHeaderParentGroup(...arguments)}),Re(this,"formatForCell",function(){return r.model.formatForCell(...arguments)}),Re(this,"valueForCell",function(){return r.model.valueForCell(...arguments)}),Re(this,"displayString",function(){return r.model.displayString(...arguments)}),Re(this,"isEditableRange",function(){return nt(r.model)?r.model.isEditableRange(...arguments):!1}),Re(this,"isFilterable",function(){return r.model.isFilterable(...arguments)}),Re(this,"setViewport",(s,l,d)=>this.model.setViewport(s,l,d)),Re(this,"snapshot",function(){return r.model.snapshot(...arguments)}),Re(this,"textSnapshot",function(){return r.model.textSnapshot(...arguments)}),Re(this,"valuesTable",function(){return r.model.valuesTable(...arguments)}),Re(this,"editValueForCell",function(){return nt(r.model)?r.model.editValueForCell(...arguments):""}),Re(this,"setValueForCell",function(){return nt(r.model)?r.model.setValueForCell(...arguments):Promise.reject(new Error("Model is not editable"))}),Re(this,"setValueForRanges",function(){return nt(r.model)?r.model.setValueForRanges(...arguments):Promise.reject(new Error("Model is not editable"))}),Re(this,"setValues",function(){return nt(r.model)?r.model.setValues(...arguments):Promise.resolve()}),Re(this,"isValidForCell",function(){return nt(r.model)?r.model.isValidForCell(...arguments):!1}),Re(this,"delete",function(){return r.model.delete(...arguments)}),Re(this,"commitPending",function(){return r.model.commitPending(...arguments)}),this.handleModelEvent=this.handleModelEvent.bind(this);var o=Fu(e,t,i,a);this.dh=e,this.originalModel=o,this.model=o,this.modelPromise=null,this.rollup=null,this.selectDistinct=[]}close(){this.originalModel.close(),this.model!==this.originalModel&&this.model.close(),this.modelPromise!=null&&this.modelPromise.cancel()}handleModelEvent(e){Ri.debug2("handleModelEvent",e);var{detail:t,type:r}=e;this.dispatchEvent(new Je(r,{detail:t}))}setModel(e){Ri.debug("setModel",e);var t=this.model;t!==this.originalModel&&t.close(),this.model=e,this.listenerCount>0&&this.addListeners(e),this.dispatchEvent(new Je(Se.EVENT.COLUMNS_CHANGED,{detail:e.columns})),Ca(e)&&this.dispatchEvent(new Je(Se.EVENT.TABLE_CHANGED,{detail:e.table}))}setNextModel(e){Ri.debug2("setNextModel"),this.modelPromise&&this.modelPromise.cancel(),this.listenerCount>0&&this.removeListeners(this.model),this.modelPromise=Te.makeCancelable(e,t=>t.close()),this.modelPromise.then(t=>{this.modelPromise=null,this.setModel(t)}).catch(t=>{if(Te.isCanceled(t)){Ri.debug2("setNextModel cancelled");return}Ri.error("Unable to set next model",t),this.modelPromise=null,this.dispatchEvent(new Je(Se.EVENT.REQUEST_FAILED,{detail:t}))})}startListening(){super.startListening(),this.addListeners(this.model)}stopListening(){super.stopListening(),this.removeListeners(this.model)}addListeners(e){for(var t=Object.keys(Se.EVENT),r=0;r<t.length;r+=1)e.addEventListener(t[r],this.handleModelEvent)}removeListeners(e){for(var t=Object.keys(Se.EVENT),r=0;r<t.length;r+=1)e.removeEventListener(t[r],this.handleModelEvent)}get rowCount(){return this.model.rowCount}get columnCount(){return this.model.columnCount}get floatingTopRowCount(){return this.model.floatingTopRowCount}get floatingBottomRowCount(){return this.model.floatingBottomRowCount}get floatingLeftColumnCount(){return this.model.floatingLeftColumnCount}get floatingRightColumnCount(){return this.model.floatingRightColumnCount}isColumnFrozen(e){return this.model.isColumnFrozen(e)}isColumnSortable(e){return this.model.isColumnSortable(e)}get hasExpandableRows(){return ze(this.model)?this.model.hasExpandableRows:!1}get isExpandAllAvailable(){if(ze(this.model)){var e;return(e=this.model.isExpandAllAvailable)!==null&&e!==void 0?e:!1}return!1}get isExportAvailable(){return this.model.isExportAvailable}get isColumnStatisticsAvailable(){return this.model.isColumnStatisticsAvailable}get isValuesTableAvailable(){return this.model.isValuesTableAvailable}get isCustomColumnsAvailable(){return this.model.isCustomColumnsAvailable&&!(this.isSelectDistinctAvailable&&this.selectDistinctColumns.length>0)}get isFormatColumnsAvailable(){return this.model.isFormatColumnsAvailable}get isChartBuilderAvailable(){return this.model.isChartBuilderAvailable}get isRollupAvailable(){return(this.originalModel.isRollupAvailable||this.rollup!=null)&&this.selectDistinct.length===0}get isSelectDistinctAvailable(){return(this.originalModel.isSelectDistinctAvailable||this.selectDistinct.length>0)&&this.rollup==null}get isTotalsAvailable(){return this.model.isTotalsAvailable}get isReversible(){return this.model.isReversible}get columns(){return this.model.columns}get initialMovedColumns(){return this.model.initialMovedColumns}get initialMovedRows(){return this.model.initialMovedRows}get layoutHints(){return this.model.layoutHints}get frontColumns(){return this.model.frontColumns}get backColumns(){return this.model.backColumns}get frozenColumns(){return this.model.frozenColumns}get columnHeaderGroups(){return this.model.columnHeaderGroups}set columnHeaderGroups(e){this.model.columnHeaderGroups=e}get initialColumnHeaderGroups(){return this.model.initialColumnHeaderGroups}get columnHeaderGroupMap(){return this.model.columnHeaderGroupMap}get columnHeaderMaxDepth(){return this.model.columnHeaderMaxDepth}updateFrozenColumns(e){return this.model.updateFrozenColumns(e)}get originalColumns(){return this.originalModel.columns}get groupedColumns(){return this.model.groupedColumns}get description(){return this.model.description}get filter(){return this.model.filter}set filter(e){this.model.filter=e}get formatter(){return this.model.formatter}set formatter(e){this.model.formatter=e}get sort(){return this.model.sort}set sort(e){this.model.sort=e}get customColumns(){return this.model.customColumns}set customColumns(e){this.model.customColumns=e}get formatColumns(){return this.model.formatColumns}set formatColumns(e){this.model.formatColumns=e}get rollupConfig(){return this.rollup}set rollupConfig(e){if(Ri.debug("set rollupConfig",e),!this.isRollupAvailable)throw new Error("Rollup Rows are not available");if(!ct(e,this.rollup)){this.rollup=e;var t=Promise.resolve(this.originalModel);Ca(this.originalModel)&&e!=null&&(t=this.originalModel.table.rollup(e).then(r=>Fu(this.dh,r,this.formatter))),this.setNextModel(t)}}get selectDistinctColumns(){return this.selectDistinct}set selectDistinctColumns(e){if(Ri.debug("set selectDistinctColumns",e),!this.isSelectDistinctAvailable)throw new Error("Select distinct is not available");if(e===this.selectDistinctColumns||e.length===0&&this.selectDistinctColumns.length===0){Ri.debug("Ignore same selectDistinctColumns",e);return}this.selectDistinct=e;var t=e.map(i=>this.originalColumns.find(a=>a.name===i)).filter(i=>i!=null),r=Promise.resolve(this.originalModel);Ca(this.originalModel)&&t.length>0&&(r=this.originalModel.table.selectDistinct(t).then(i=>Fu(this.dh,i,this.formatter))),this.setNextModel(r)}get table(){if(Ca(this.model))return this.model.table}get totalsConfig(){return this.model.totalsConfig}set totalsConfig(e){this.model.totalsConfig=e}get isFilterRequired(){return this.model.isFilterRequired}get isEditable(){return nt(this.model)&&this.model.isEditable}export(){if(H.isTreeTable(this.model))throw new Error("TreeTable has no 'export' property");return this.model.export()}columnStatistics(e){if(H.isTreeTable(this.model))throw new Error("TreeTable has no 'columnStatistics' function");return this.model.columnStatistics(e)}get pendingDataMap(){return this.model.pendingDataMap}set pendingDataMap(e){this.model.pendingDataMap=e}get pendingRowCount(){return this.model.pendingRowCount}set pendingRowCount(e){this.model.pendingRowCount=e}get pendingDataErrors(){return this.model.pendingDataErrors}getColumnIndexByName(e){return this.model.getColumnIndexByName(e)}seekRow(e,t,r,i,a,o,s){var l=this;return DL(function*(){return l.model.seekRow(e,t,r,i,a,o,s)})()}get isSeekRowAvailable(){return this.model.isSeekRowAvailable}}const IL=FL;function Ng(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 _L(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){Ng(a,r,i,o,s,"next",l)}function s(l){Ng(a,r,i,o,s,"throw",l)}o(void 0)})}}class ML{static makeModel(e,t){var r=arguments;return _L(function*(){var i=r.length>2&&r[2]!==void 0?r[2]:new wn(e),a=null;return!H.isTreeTable(t)&&t.hasInputTable&&(a=yield t.inputTable()),new IL(e,t,i,a)})()}}const vc=ML;function gc(n,e,t){return e=AL(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function AL(n){var e=LL(n,"string");return typeof e=="symbol"?e:String(e)}function LL(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Nd{}gc(Nd,"OPEN","ChartEvent.OPEN");gc(Nd,"CLOSE","ChartEvent.CLOSE");gc(Nd,"COLUMN_SELECTED","ChartEvent.COLUMN_SELECTED");const Th=Nd;function Os(n,e,t){return e=kL(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function kL(n){var e=xL(n,"string");return typeof e=="symbol"?e:String(e)}function xL(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 bo{}Os(bo,"SESSION_OPENED","ConsoleEvent.SESSION_OPENED");Os(bo,"SESSION_CLOSED","ConsoleEvent.SESSION_CLOSED");Os(bo,"FOCUS_HISTORY","ConsoleEvent.FOCUS_HISTORY");Os(bo,"SEND_COMMAND","ConsoleEvent.SEND_COMMAND");Os(bo,"SETTINGS_CHANGED","ConsoleEvent.SETTINGS_CHANGED");const Lr=bo;function Zi(n,e,t){return e=HL(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function HL(n){var e=UL(n,"string");return typeof e=="symbol"?e:String(e)}function UL(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 ci{}Zi(ci,"TABLE_CHANGED","InputFilterEvent.TABLE_CHANGED");Zi(ci,"COLUMNS_CHANGED","InputFilterEvent.COLUMNS_CHANGED");Zi(ci,"FILTERS_CHANGED","InputFilterEvent.FILTERS_CHANGED");Zi(ci,"CLEAR_ALL_FILTERS","InputFilterEvent.CLEAR_ALL_FILTERS");Zi(ci,"COLUMN_SELECTED","InputFilterEvent.COLUMN_SELECTED");Zi(ci,"OPEN_DROPDOWN","InputFilterEvent.OPEN_DROPDOWN");Zi(ci,"OPEN_INPUT","InputFilterEvent.OPEN_INPUT");Zi(ci,"OPEN_FILTER_SET_MANAGER","InputFilterEvent.OPEN_FILTER_SET_MANAGER");const it=ci;function So(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=BL(n,"string");return typeof e=="symbol"?e:String(e)}function BL(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Ia{}So(Ia,"OPEN_GRID","IrisGridEvent.OPEN_GRID");So(Ia,"CLOSE_GRID","IrisGridEvent.CLOSE_GRID");So(Ia,"DATA_SELECTED","IrisGridEvent.DATA_SELECTED");So(Ia,"COLUMN_SELECTED","IrisGridEvent.COLUMN_SELECTED");So(Ia,"STATE_CHANGED","IrisGridEvent.STATE_CHANGED");So(Ia,"CREATE_CHART","IrisGridevent.CREATE_CHART");const fn=Ia,YC=Object.freeze({OPEN:"MarkdownEvent.OPEN"});function mi(n,e,t){return e=VL(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function VL(n){var e=GL(n,"string");return typeof e=="symbol"?e:String(e)}function GL(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 $n{}mi($n,"CREATE_NOTEBOOK","NotebookEvent.createNotebook");mi($n,"SELECT_NOTEBOOK","NotebookEvent.selectNotebook");mi($n,"CLOSE_FILE","NotebookEvent.closeFile");mi($n,"RENAME","NotebookEvent.rename");mi($n,"RENAME_FILE","NotebookEvent.renameFile");mi($n,"REGISTER_FILE","NotebookEvent.registerFile");mi($n,"SEND_TO_NOTEBOOK","NotebookEvent.sendToNotebook");mi($n,"UNREGISTER_FILE","NotebookEvent.unregisterFile");mi($n,"PROMOTE_FROM_PREVIEW","NotebookEvent.promoteFromPreview");const Ye=$n;function wo(n,e,t){return e=WL(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function WL(n){var e=jL(n,"string");return typeof e=="symbol"?e:String(e)}function jL(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 _a{}wo(_a,"focus","TabEvent.focus");wo(_a,"blur","TabEvent.blur");wo(_a,"openPQObject","TabEvent.openPQObject");wo(_a,"openControl","TabEvent.openControl");wo(_a,"reload","TabEvent.reload");wo(_a,"clearAllFilters","TabEvent.clearAllFilters");const sl=_a;function zL(n,e,t){return e=KL(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function KL(n){var e=YL(n,"string");return typeof e=="symbol"?e:String(e)}function YL(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class qC extends w.PureComponent{constructor(e){super(e),this.handleCloseTab=this.handleCloseTab.bind(this),this.handleCloseTabsRight=this.handleCloseTabsRight.bind(this),this.handleCloseTabsAll=this.handleCloseTabsAll.bind(this)}getAllTabs(){var e,t,r,{glContainer:i}=this.props;return[...(e=i==null||(t=i.tab)===null||t===void 0||(r=t.header)===null||r===void 0?void 0:r.tabs)!==null&&e!==void 0?e:[]]}handleCloseTab(){var{glContainer:e}=this.props;e.close()}handleCloseTabsAll(){var e=this.getAllTabs();e.forEach(t=>{var r;return(r=(t?.contentItem).container)===null||r===void 0?void 0:r.close()})}handleCloseTabsRight(){for(var{glContainer:e}=this.props,t=this.getAllTabs(),r=t.length-1;r>0;r-=1){var i,a,o,s,l,d,u;if(((i=t[r].contentItem)===null||i===void 0||(a=i.config)===null||a===void 0?void 0:a.id)===((o=e.tab)===null||o===void 0||(s=o.contentItem)===null||s===void 0||(l=s.config)===null||l===void 0?void 0:l.id))break;(d=((u=t[r])===null||u===void 0?void 0:u.contentItem).container)===null||d===void 0||d.close()}}canCloseTabsRight(){for(var{glContainer:e}=this.props,t=this.getAllTabs(),r=!0,i=t.length-1;i>0;i-=1){var a,o,s,l,d,u,c,m;if(((a=t[i].contentItem)===null||a===void 0||(o=a.config)===null||o===void 0?void 0:o.id)===((s=e.tab)===null||s===void 0||(l=s.contentItem)===null||l===void 0||(d=l.config)===null||d===void 0?void 0:d.id))break;var v=!!(!((u=t[i])===null||u===void 0||(c=u.contentItem)===null||c===void 0||(m=c.config)===null||m===void 0)&&m.isClosable);if(v){r=!1;break}}return r}canCloseAny(){for(var e=this.getAllTabs(),t=!0,r=e.length-1;r>0;r-=1){var i,a,o,s=!!(!((i=e[r])===null||i===void 0||(a=i.contentItem)===null||a===void 0||(o=a.config)===null||o===void 0)&&o.isClosable);if(s){t=!1;break}}return t}render(){var e,t,r,{additionalActions:i,glContainer:a}=this.props,o=[...i],s=(e=a.tab)===null||e===void 0||(t=e.contentItem)===null||t===void 0||(r=t.config)===null||r===void 0?void 0:r.isClosable;return o.push({title:"Close",order:10,group:le.groups.low,action:this.handleCloseTab,disabled:s===void 0||!s}),o.push(()=>({title:"Close Tabs to Right",order:20,group:le.groups.low,action:this.handleCloseTabsRight,disabled:this.canCloseTabsRight()})),o.push(()=>({title:"Close All",order:30,group:le.groups.low,action:this.handleCloseTabsAll,disabled:this.canCloseAny()})),h.createElement(le,{actions:o})}}zL(qC,"defaultProps",{additionalActions:[]});const qL=qC;function XC(n,e,t){return e=XL(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function XL(n){var e=QL(n,"string");return typeof e=="symbol"?e:String(e)}function QL(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class QC extends w.PureComponent{constructor(e){super(e),XC(this,"renameInputRef",void 0),this.handleRenameDialogOpened=this.handleRenameDialogOpened.bind(this),this.handleRenameInputChange=this.handleRenameInputChange.bind(this),this.handleRenameCancel=this.handleRenameCancel.bind(this),this.handleRenameSubmit=this.handleRenameSubmit.bind(this),this.renameInputRef=h.createRef();var{value:t}=e;this.state={value:t,valueWasValidated:!1}}componentDidUpdate(e){var{isShown:t}=e,{isShown:r}=this.props;r&&!t&&this.resetState()}resetState(){var{value:e}=this.props;this.setState({value:e,valueWasValidated:!1})}handleRenameDialogOpened(){var e,t;(e=this.renameInputRef)===null||e===void 0||(t=e.current)===null||t===void 0||t.focus()}handleRenameInputChange(e){this.setState({value:e.target.value})}handleRenameCancel(){var{onCancel:e}=this.props;e()}handleRenameSubmit(e){e.stopPropagation(),e.preventDefault();var{value:t}=this.state,r=t?.trim();if(r!==void 0&&r!==""){var{onSubmit:i}=this.props;i(r)}else this.setState({value:r,valueWasValidated:!0})}renderRenameDialog(){var{isShared:e,isOwner:t,itemType:r}=this.props,{value:i,valueWasValidated:a}=this.state;return h.createElement("form",{className:te("p-3",{"was-validated":a}),onSubmit:this.handleRenameSubmit,noValidate:!0,role:"presentation",onMouseDown:o=>{o.stopPropagation()},onMouseUp:o=>{o.stopPropagation()}},h.createElement("div",{className:"form-group"},h.createElement("label",{htmlFor:"rename-dialog-".concat(r,"-input")},"Rename ",r),h.createElement("input",{type:"text",className:"form-control",id:"rename-dialog-".concat(r,"-input"),value:i??void 0,ref:this.renameInputRef,onChange:this.handleRenameInputChange,required:!0}),h.createElement("div",{className:"invalid-feedback"},r," name cannot be empty"),(e||!t)&&h.createElement("div",{className:"pt-2"},"Renaming this ",r," will rename for all users.")),h.createElement("div",{className:"text-right"},h.createElement(j,{kind:"secondary",className:"mr-2",onClick:this.handleRenameCancel},"Cancel"),h.createElement(j,{kind:"primary",type:"submit"},"Rename")))}render(){var{isShown:e,onCancel:t}=this.props;return h.createElement(md,{isShown:e,onEntered:this.handleRenameDialogOpened,onExited:t,options:{placement:"bottom"},interactive:!0,closeOnBlur:!0},this.renderRenameDialog())}}XC(QC,"defaultProps",{isShared:!1,isOwner:!0,itemType:"Item",value:""});function ZC(n,e,t){return e=ZL(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ZL(n){var e=JL(n,"string");return typeof e=="symbol"?e:String(e)}function JL(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 e1=ie.module("Panel");class JC extends w.PureComponent{constructor(e){super(e),ZC(this,"getAdditionActions",fe((r,i,a)=>{var o=[];return i&&o.push(this.getCloneAction()),a&&o.push(this.getRenameAction()),[...o,...r]})),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.handleCopyPanel=this.handleCopyPanel.bind(this),this.handleFocus=this.handleFocus.bind(this),this.handleBlur=this.handleBlur.bind(this),this.handleHide=this.handleHide.bind(this),this.handleResize=this.handleResize.bind(this),this.handleSessionClosed=this.handleSessionClosed.bind(this),this.handleSessionOpened=this.handleSessionOpened.bind(this),this.handleBeforeShow=this.handleBeforeShow.bind(this),this.handleShow=this.handleShow.bind(this),this.handleTabBlur=this.handleTabBlur.bind(this),this.handleTabFocus=this.handleTabFocus.bind(this),this.handleRenameCancel=this.handleRenameCancel.bind(this),this.handleRenameSubmit=this.handleRenameSubmit.bind(this),this.handleShowRenameDialog=this.handleShowRenameDialog.bind(this),this.handleTabClicked=this.handleTabClicked.bind(this),this.handleTab=this.handleTab.bind(this);var{glContainer:t}=this.props;this.state={title:Q.getTitleFromContainer(t),showRenameDialog:!1}}componentDidMount(){var{componentPanel:e,glContainer:t,glEventHub:r}=this.props;t.on("resize",this.handleResize),t.on("show",this.handleBeforeShow),t.on("shown",this.handleShow),t.on("hide",this.handleHide),t.on("tab",this.handleTab),t.on("tabClicked",this.handleTabClicked),r.on(Lr.SESSION_CLOSED,this.handleSessionClosed),r.on(Lr.SESSION_OPENED,this.handleSessionOpened),r.on(sl.focus,this.handleTabFocus),r.on(sl.blur,this.handleTabBlur),r.on(it.CLEAR_ALL_FILTERS,this.handleClearAllFilters),r.emit(Ee.MOUNT,e)}componentWillUnmount(){var{componentPanel:e,glContainer:t,glEventHub:r}=this.props;t.off("resize",this.handleResize),t.off("show",this.handleBeforeShow),t.off("shown",this.handleShow),t.off("hide",this.handleHide),t.off("tab",this.handleTab),t.off("tabClicked",this.handleTabClicked),r.off(Lr.SESSION_CLOSED,this.handleSessionClosed),r.off(Lr.SESSION_OPENED,this.handleSessionOpened),r.off(sl.focus,this.handleTabFocus),r.off(sl.blur,this.handleTabBlur),r.off(it.CLEAR_ALL_FILTERS,this.handleClearAllFilters),r.emit(Ee.UNMOUNT,e)}handleTab(e){e!=null&&this.setState({title:Q.getTitleFromTab(e)}),this.forceUpdate();var{onTab:t}=this.props;t(e)}handleTabClicked(e){var{onTabClicked:t}=this.props;t(e)}handleClearAllFilters(){var{onClearAllFilters:e}=this.props;e(...arguments)}handleFocus(e){var{componentPanel:t,glEventHub:r}=this.props;r.emit(Ee.FOCUS,t);var{onFocus:i}=this.props;i(e)}handleBlur(e){var{onBlur:t}=this.props;t(e)}handleHide(){var{onHide:e}=this.props;e(...arguments)}handleResize(){var{onResize:e}=this.props;e(...arguments)}handleSessionClosed(e){var{onSessionClose:t}=this.props;t(e)}handleSessionOpened(e,t){var{onSessionOpen:r}=this.props;r(e,t)}handleBeforeShow(){var{onBeforeShow:e}=this.props;e(...arguments)}handleShow(){var{onShow:e}=this.props;e(...arguments)}handleTabBlur(){var{onTabBlur:e}=this.props;e(...arguments)}handleTabFocus(){var{onTabFocus:e}=this.props;e(...arguments)}handleRenameCancel(){this.setState({showRenameDialog:!1})}handleShowRenameDialog(){this.setState({showRenameDialog:!0})}handleRenameSubmit(e){var{glContainer:t}=this.props;this.setState({showRenameDialog:!1,title:e});var r=Q.getRootFromContainer(t),i=Q.getComponentConfigFromContainer(t);L(i),Q.renameComponent(r,i,e)}handleCopyPanel(){var{glContainer:e,glEventHub:t}=this.props,r=Q.getRootFromContainer(e),i=Q.getComponentConfigFromContainer(e);if(i==null){e1.error("Could not get component config from container",e);return}var a=Q.cloneComponent(r,i);a!==null&&t.emit(Ee.CLONED,this,a)}getCloneAction(){return{title:"Copy Panel",order:10,group:le.groups.high,action:this.handleCopyPanel}}getRenameAction(){return{title:"Rename",order:10,group:le.groups.medium,action:this.handleShowRenameDialog}}render(){var{children:e,className:t,renderTabTooltip:r,glContainer:i,additionalActions:a,errorMessage:o,isLoaded:s,isLoading:l,isClonable:d,isRenamable:u}=this.props,{tab:c}=i,{showRenameDialog:m,title:v}=this.state;return h.createElement("div",{className:te("h-100 w-100 iris-panel",t),onFocusCapture:this.handleFocus,onBlurCapture:this.handleBlur},e,h.createElement(id,{errorMessage:o,isLoaded:s,isLoading:l}),c!=null&&Fh.createPortal(h.createElement(h.Fragment,null,h.createElement(qL,{glContainer:i,additionalActions:this.getAdditionActions(a,d,u)}),u&&h.createElement(QC,{isShown:m,value:v,itemType:"Panel",onCancel:this.handleRenameCancel,onSubmit:this.handleRenameSubmit}),r!=null&&h.createElement(pt,{interactive:!0,options:{placement:"bottom"},popperClassName:"panel-tab-popper"},r())),c.element[0]))}}ZC(JC,"defaultProps",{className:"",onTab:()=>{},onTabClicked:()=>{},onClearAllFilters:()=>{},onFocus:()=>{},onBlur:()=>{},onHide:()=>{},onResize:()=>{},onSessionClose:()=>{},onSessionOpen:()=>{},onBeforeShow:()=>{},onShow:()=>{},onTabBlur:()=>{},onTabFocus:()=>{},renderTabTooltip:null,additionalActions:[],errorMessage:null,isLoading:!1,isLoaded:!0,isClonable:!1,isRenamable:!1});const vi=JC;function Fd(n){var{widgetType:e,widgetName:t,glContainer:r,description:i,children:a}=n,o=Q.getTitleFromContainer(r);return h.createElement("div",{className:"tab-tooltip-grid-container"},h.createElement("span",{className:"tab-tooltip-title"},e," Name"),h.createElement("div",{className:"tab-tooltip-name-wrapper"},h.createElement("span",{className:"tab-tooltip-name"},t),h.createElement(hd,{className:"tab-tooltip-copy",tooltip:"Copy name",copy:t})),t!==o&&h.createElement(h.Fragment,null,h.createElement("span",{className:"tab-tooltip-title"},"Display Name"),h.createElement("span",{className:"tab-tooltip-name"},o)),i&&h.createElement("div",{className:"tab-tooltip-description"},i),a)}Fd.propTypes={glContainer:nc.Container.isRequired,widgetType:q.string,widgetName:q.string,description:q.string,children:q.node};Fd.defaultProps={widgetType:"",widgetName:"",description:null,children:null};function eb(n,e,t){return e=t1(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function t1(n){var e=r1(n,"string");return typeof e=="symbol"?e:String(e)}function r1(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 tb extends w.PureComponent{constructor(e){super(e),eb(this,"getCachedRenderTabTooltip",fe((t,r,i,a,o)=>t?()=>h.createElement(Fd,{glContainer:r,widgetType:i,widgetName:a,description:o}):null)),this.handleSessionClosed=this.handleSessionClosed.bind(this),this.handleSessionOpened=this.handleSessionOpened.bind(this),this.handleCopyName=this.handleCopyName.bind(this),this.state={isClientDisconnected:!1,isPanelDisconnected:!1,isWidgetDisconnected:!1,isWaitingForReconnect:!1,isPanelInactive:!1}}handleCopyName(){var{widgetName:e}=this.props;Cs(e)}getErrorMessage(){var{errorMessage:e}=this.props,{isClientDisconnected:t,isPanelDisconnected:r,isWidgetDisconnected:i,isWaitingForReconnect:a}=this.state;if(e)return"".concat(e);if(t&&r&&a)return`Disconnected from server.
|
|
34
34
|
Check your internet connection.`;if(t&&r)return"Disconnected from server.";if(r){var{widgetName:o,widgetType:s}=this.props;return'Variable "'.concat(o,`" not set.
|
|
35
35
|
`).concat(s," does not exist yet.")}if(i){var{widgetName:l}=this.props;return"".concat(l," is unavailable.")}}handleSessionClosed(){var{onSessionClose:e}=this.props;this.setState({isPanelDisconnected:!0,isWaitingForReconnect:!1}),e(...arguments)}handleSessionOpened(){var{onSessionOpen:e}=this.props;e(...arguments)}render(){var{children:e,className:t,componentPanel:r,isLoaded:i,isLoading:a,glContainer:o,glEventHub:s,isDisconnected:l,isClonable:d,isRenamable:u,showTabTooltip:c,renderTabTooltip:m,widgetType:v,widgetName:g,description:f,onClearAllFilters:p,onHide:C,onFocus:b,onBlur:S,onResize:E,onShow:y,onTabBlur:T,onTabFocus:O,onTabClicked:D}=this.props,{isPanelDisconnected:P,isWidgetDisconnected:R,isPanelInactive:_}=this.state,M=this.getErrorMessage(),A=m??this.getCachedRenderTabTooltip(c,o,v,g,f),B=[{title:"Copy ".concat(v," Name"),group:le.groups.medium,order:20,action:this.handleCopyName}];return h.createElement(vi,{className:te(t,{disconnected:P||R||l,inactive:_}),componentPanel:r,glContainer:o,glEventHub:s,onClearAllFilters:p,onHide:C,onFocus:b,onBlur:S,onResize:E,onShow:y,onSessionClose:this.handleSessionClosed,onSessionOpen:this.handleSessionOpened,onTabBlur:T,onTabFocus:O,onTabClicked:D,renderTabTooltip:A,errorMessage:M,isLoaded:i,isLoading:a,isClonable:d,isRenamable:u,additionalActions:B},e,_&&h.createElement("div",{className:"fill-parent-absolute"}))}}eb(tb,"defaultProps",{className:"",errorMessage:null,isClonable:!0,isDisconnected:!1,isLoading:!1,isLoaded:!0,isRenamable:!0,showTabTooltip:!0,widgetName:"Widget",widgetType:"Widget",renderTabTooltip:null,description:"",onFocus:()=>{},onBlur:()=>{},onHide:()=>{},onClearAllFilters:()=>{},onResize:()=>{},onSessionClose:()=>{},onSessionOpen:()=>{},onShow:()=>{},onTabBlur:()=>{},onTabFocus:()=>{},onTabClicked:()=>{}});const fc=tb,Sr=Object.freeze({DEFAULT:"DEFAULT",LINKER:"LINKER"});var n1=new Map,Id=Object.freeze([]),rb=(n,e)=>{var t;return(t=Er(n,e).columns)!==null&&t!==void 0?t:Id},i1=(n,e)=>{var t;return(t=Er(n,e).filterSets)!==null&&t!==void 0?t:Id},pc=(n,e)=>{var t;return(t=Er(n,e).filters)!==null&&t!==void 0?t:Id},Cc=(n,e)=>{var t;return(t=Er(n,e).tableMap)!==null&&t!==void 0?t:n1},bc=(n,e)=>Er(n,e).isolatedLinkerPanelId,Eo=(n,e)=>{var t;return(t=Er(n,e).links)!==null&&t!==void 0?t:Id},Sc=(n,e)=>Er(n,e).columnSelectionValidator,a1=(n,e)=>Er(n,e).connection,Ta=(n,e)=>Er(n,e).sessionWrapper,o1=(n,e)=>t=>t(Un(n,{connection:e})),s1=(n,e)=>t=>t(Un(n,{sessionWrapper:e})),wc=(n,e)=>t=>t(Un(n,{links:e})),l1=(n,e)=>(t,r)=>{var i=Eo(r(),n),a=e.filter(o=>i.findIndex(s=>ct(s.start,o.start)&&ct(s.end,o.end))<0);return t(wc(n,i.concat(a)))},d1=(n,e)=>(t,r)=>{var i=Eo(r(),n),a=i.filter(o=>!e.includes(o.id));return t(wc(n,a))},nb=(n,e)=>t=>t(Un(n,{isolatedLinkerPanelId:e})),u1=(n,e)=>t=>t(Un(n,{columnSelectionValidator:e})),h1=(n,e)=>t=>t(Un(n,{consoleSettings:e})),c1=(n,e)=>t=>t(Un(n,{filterSets:e}));function ib(n){var{columnMap:e,inputFilterMap:t,linkedColumnMap:r,onAdd:i,onOpenLinker:a,waitingFilterMap:o,waitingInputMap:s}=n,l=w.useMemo(()=>{var g=Array.from(s.keys()),f=g.find(b=>t.get(b)!=null),p=g.find(b=>r.get(b)!=null),C=Zr.join(g.map(b=>'"'.concat(b,'"')));return f!=null&&f&&p!=null&&p?"Use a filter control or linked table to set a value for ".concat(C):f!=null&&f?"Set a filter control value for ".concat(C):"Double click a row in a linked table to set a value for ".concat(C)},[t,r,s]),d=w.useMemo(()=>Array.from(e.values()),[e]),u=w.useCallback(g=>{g.stopPropagation(),g.preventDefault(),i(Array.from(o.values()))},[i,o]),c=w.useCallback(g=>{g.stopPropagation(),g.preventDefault(),a()},[a]),m=o.size>0,v=!m&&s.size>0;return h.createElement("div",{className:"chart-panel-overlay chart-filter-overlay"},h.createElement("div",{className:te("chart-panel-overlay-content chart-filter-overlay-content",{"chart-filter-waiting-filter":m},{"chart-filter-waiting-input":v})},m&&h.createElement(h.Fragment,null,h.createElement("div",{className:"info-message"},"This plot requires a filter control to be added to the layout or a table link to be created on the following columns:"),h.createElement("div",{className:"waiting-filter-list"},d.map(g=>{var f=o.has(g.name),p=f?Wi:Ah;return h.createElement("div",{key:g.name,className:te("waiting-filter-item",{"is-invalid":f})},h.createElement(re,{icon:p}),g.name)})),h.createElement("div",null,h.createElement(um,{onClick:u,className:"btn-primary"},"Add Input Filters"),h.createElement(um,{onClick:c,className:"btn-primary"},"Open Linker Tool"))),v&&h.createElement(h.Fragment,null,h.createElement("div",{className:"info-message"},"Waiting for User Input"),h.createElement("div",{className:""},l))))}ib.propTypes={columnMap:q.instanceOf(Map).isRequired,inputFilterMap:q.instanceOf(Map).isRequired,linkedColumnMap:q.instanceOf(Map).isRequired,onAdd:q.func.isRequired,onOpenLinker:q.func.isRequired,waitingFilterMap:q.instanceOf(Map).isRequired,waitingInputMap:q.instanceOf(Map).isRequired};function cs(n){var{columns:e,onColumnSelected:t,onMouseEnter:r,onMouseLeave:i}=n;return h.createElement("div",{className:"chart-panel-overlay chart-column-selector-overlay"},h.createElement("div",{className:te("chart-panel-overlay-content")},h.createElement("div",{className:"info-message"},"This plot requires a filter control to be added to the layout or a table link to be created on the following columns:"),h.createElement("div",{className:"waiting-column-select-list"},e.map(a=>h.createElement(Yf,{key:a.name,className:te("btn-chart-column-selector",cs.makeButtonClassName(a.name)),onClick:()=>t(a.name),onMouseEnter:()=>{r&&r(a)},onMouseLeave:i,disabled:!a.isValid,isLinked:a.isActive},a.name)))))}cs.makeButtonClassName=n=>"btn-chart-column-selector-".concat(n);cs.defaultProps={onMouseEnter:()=>{},onMouseLeave:()=>{}};function Tl(n){return n.settings!==void 0}function Fg(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 Ig(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Fg(Object(t),!0).forEach(function(r){Jr(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Fg(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Jr(n,e,t){return e=m1(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function m1(n){var e=v1(n,"string");return typeof e=="symbol"?e:String(e)}function v1(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 ur=ie.module("ChartPanel"),g1=150;function f1(n){return n.inputFilters!=null}function p1(n){return n.panelState!=null}class _d extends w.Component{constructor(e){super(e),Jr(this,"panelContainer",void 0),Jr(this,"chart",void 0),Jr(this,"pending",void 0),Jr(this,"getWaitingInputMap",fe((o,s,l)=>{if(!o)return new Map;var d=new Map(s);return l.forEach((u,c)=>{d.delete(c)}),d})),Jr(this,"getWaitingFilterMap",fe((o,s,l,d,u)=>{if(!o)return new Map;var c=new Map(s);return l.forEach((m,v)=>{c.delete(v)}),u.forEach((m,v)=>{c.delete(v)}),d.forEach((m,v)=>{c.delete(v)}),c})),Jr(this,"getInputFilterColumnMap",fe((o,s)=>{for(var l=new Map,d=0;d<s.length;d+=1){var u=s[d],{name:c,type:m}=u,v=o.get(c);v!=null&&v.type===m&&l.set(c,u)}return l})),Jr(this,"getLinkedColumnMap",fe((o,s)=>{for(var l=new Map,d=Q.getIdFromPanel(this),u=0;u<s.length;u+=1){var c=s[u],m=null;if(c.start!=null&&c.start.panelId===d&&o.has(c.start.columnName)?m=c.start.columnName:c.end&&c.end.panelId===d&&o.has(c.end.columnName)&&(m=c.end.columnName),m!=null&&o.has(m)){var v=o.get(m);L(v),l.set(m,v)}}return l})),Jr(this,"getSelectorColumns",fe((o,s,l)=>Array.from(o.values()).map(d=>({name:d.name,type:d.type,isValid:l?l(this,d):!1,isActive:s.has(d.name)})))),this.handleColumnSelected=this.handleColumnSelected.bind(this),this.handleColumnMouseEnter=this.handleColumnMouseEnter.bind(this),this.handleColumnMouseLeave=this.handleColumnMouseLeave.bind(this),this.handleDisconnect=this.handleDisconnect.bind(this),this.handleReconnect=this.handleReconnect.bind(this),this.handleFilterAdd=this.handleFilterAdd.bind(this),this.handleHide=this.handleHide.bind(this),this.handleError=this.handleError.bind(this),this.handleLoadError=this.handleLoadError.bind(this),this.handleLoadSuccess=this.handleLoadSuccess.bind(this),this.handleResize=this.handleResize.bind(this),this.handleSettingsChanged=this.handleSettingsChanged.bind(this),this.handleOpenLinker=this.handleOpenLinker.bind(this),this.handleShow=this.handleShow.bind(this),this.handleSourceColumnChange=this.handleSourceColumnChange.bind(this),this.handleSourceFilterChange=this.handleSourceFilterChange.bind(this),this.handleSourceSortChange=this.handleSourceSortChange.bind(this),this.handleTabBlur=this.handleTabBlur.bind(this),this.handleTabFocus=this.handleTabFocus.bind(this),this.handleUpdate=this.handleUpdate.bind(this),this.updateModelFromSource=rt(this.updateModelFromSource.bind(this),g1),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.panelContainer=h.createRef(),this.chart=h.createRef(),this.pending=new hi;var{metadata:t,panelState:r}=e,{filterValueMap:i=[],settings:a={}}=r??{};this.state={settings:a,error:void 0,isActive:!1,isDisconnected:!1,isLoading:!1,isLoaded:!1,isLinked:t!=null&&Tl(t)&&t.settings.isLinked,filterMap:new Map(i),filterValueMap:new Map(i),model:void 0,columnMap:new Map,panelState:r}}componentDidMount(){this.isHidden()||(this.setState({isActive:!0}),this.initModel())}componentDidUpdate(e,t){var{inputFilters:r,source:i}=this.props,{columnMap:a,model:o,filterMap:s,filterValueMap:l,isLinked:d,settings:u}=this.state;o&&(a!==t.columnMap&&this.pruneFilterMaps(),r!==e.inputFilters&&this.updateChangedInputFilters(r,e.inputFilters),s!==t.filterMap?this.updateFilters():l!==t.filterValueMap&&this.updatePanelState(),u!==t.settings&&jm(o)&&(o.updateSettings(u),this.updatePanelState()),d!==t.isLinked?i&&(d?(this.startListeningToSource(i),this.updateModelFromSource()):this.stopListeningToSource(i)):d&&i!==e.source&&(e.source&&this.stopListeningToSource(e.source),i&&(this.startListeningToSource(i),this.updateModelFromSource())))}componentWillUnmount(){this.pending.cancel();var{model:e}=this.state,{source:t}=this.props;e!=null&&t&&this.stopListeningToSource(t)}initModel(){this.setState({isLoading:!0,isLoaded:!1,error:void 0});var{makeModel:e}=this.props;this.pending.add(e(),t=>{t.close()}).then(this.handleLoadSuccess,this.handleLoadError)}startListeningToSource(e){ur.debug("startListeningToSource",e);var{model:t}=this.state;L(t);var{dh:r}=t;e.addEventListener(r.Table.EVENT_CUSTOMCOLUMNSCHANGED,this.handleSourceColumnChange),e.addEventListener(r.Table.EVENT_FILTERCHANGED,this.handleSourceFilterChange),e.addEventListener(r.Table.EVENT_SORTCHANGED,this.handleSourceSortChange)}stopListeningToSource(e){ur.debug("stopListeningToSource",e);var{model:t}=this.state;L(t);var{dh:r}=t;e.removeEventListener(r.Table.EVENT_CUSTOMCOLUMNSCHANGED,this.handleSourceColumnChange),e.removeEventListener(r.Table.EVENT_FILTERCHANGED,this.handleSourceFilterChange),e.removeEventListener(r.Table.EVENT_SORTCHANGED,this.handleSourceSortChange)}loadModelIfNecessary(){var{isActive:e,isLoaded:t,isLoading:r}=this.state;e&&!t&&!r&&this.initModel()}isHidden(){var{glContainer:e}=this.props,{isHidden:t}=e;return t}handleColumnSelected(e){var{glEventHub:t}=this.props,{columnMap:r}=this.state;t.emit(Th.COLUMN_SELECTED,this,r.get(e))}handleColumnMouseEnter(e){var{type:t,name:r}=e,{columnSelectionValidator:i}=this.props;ur.debug("handleColumnMouseEnter",i,t,r),i&&i(this,{type:t,name:r})}handleColumnMouseLeave(){var{columnSelectionValidator:e}=this.props;ur.debug("handleColumnMouseLeave",e),e&&e(this,void 0)}handleDisconnect(){this.setState({error:new Error("Figure disconnected"),isDisconnected:!0})}handleFilterAdd(e){for(var t=0;t<e.length;t+=1)this.openInputFilter(e[t])}handleOpenLinker(){var{localDashboardId:e,setActiveTool:t,setDashboardIsolatedLinkerPanelId:r}=this.props;r(e,void 0),t(Sr.LINKER)}handleReconnect(){this.setState({isDisconnected:!1,error:void 0}),this.sendColumnChange(),this.updateColumnFilters()}handleLoadSuccess(e){ur.debug("handleLoadSuccess");var{model:t}=this.state;this.setState({model:e,isLoaded:!0},()=>{var{inputFilters:r,source:i}=this.props,{filterMap:a,isLinked:o}=this.state;e!==t&&(this.sendColumnChange(),this.updateColumnFilters(),this.updateInputFilters(r,a.size>0||e.isFilterRequired()),i&&o&&(this.startListeningToSource(i),this.updateModelFromSource()))})}handleLoadError(e){Te.isCanceled(e)||(ur.error("handleLoadError",e),this.setState({error:e,isLoading:!1}))}handleSourceColumnChange(){this.updateModelFromSource()}handleSourceFilterChange(){this.updateModelFromSource()}handleSourceSortChange(){this.updateModelFromSource()}updateModelFromSource(){var{metadata:e,source:t}=this.props,{isLinked:r,model:i}=this.state;if(!r||!i||!t){ur.debug2("updateModelFromSource ignoring",r,i,t);return}var{dh:a}=i;if(this.pending.cancel(),Tl(e)){var{settings:o}=e;this.pending.add(a.plot.Figure.create(new kt(a).makeFigureSettings(o,t))).then(s=>{jm(i)&&i.setFigure(s)}).catch(this.handleLoadError)}this.updatePanelState()}updatePanelState(){var{sourcePanel:e}=this.props,{panelState:t,filterValueMap:r,settings:i}=this.state,{tableSettings:a}=t??{};if(e&&f1(e.props)&&p1(e.state)){var{inputFilters:o}=e.props,{panelState:s}=e.state;s!=null&&(a=ye.extractTableSettings(s,o))}this.setState({panelState:{settings:i,tableSettings:a,filterValueMap:Array.from(r)}})}handleError(){this.setState({isLoading:!1})}handleResize(){this.updateChart()}handleSettingsChanged(e){this.setState(t=>{var{settings:r}=t,i=Ig(Ig({},r),e);return ur.debug("Updated settings",i),{settings:i}})}handleHide(){this.setActive(!1)}handleShow(){this.setActive(!0)}handleTabBlur(){this.setActive(!1)}handleTabFocus(){var e=this.isHidden();this.setActive(!e)}handleUpdate(){this.setState({isLoading:!1})}handleClearAllFilters(){this.setState({filterValueMap:new Map,filterMap:new Map}),this.updatePanelState()}openInputFilter(e){var{glEventHub:t}=this.props,{name:r,type:i}=e;t.emit(it.OPEN_INPUT,{title:"".concat(r," Filter"),panelState:{name:r,type:i,isValueShown:!0},createNewStack:!0,focusElement:"input"})}setActive(e){this.setState({isActive:e},()=>{e&&(this.loadModelIfNecessary(),this.updateChart())})}sendColumnChange(){var{model:e}=this.state;if(e){var{glEventHub:t}=this.props;t.emit(it.COLUMNS_CHANGED,this,Array.from(e.getFilterColumnMap().values()))}}getCoordinateForColumn(e){var t,r=cs.makeButtonClassName(e);if(!this.panelContainer.current)return null;var i=this.panelContainer.current.querySelector(".".concat(r)),a=(t=i?.getBoundingClientRect())!==null&&t!==void 0?t:null;if(a==null||a.width<=0||a.height<=0)return null;var o=a.left+a.width/2,s=a.bottom;return[o,s]}setFilterMap(e){ur.debug("setFilterMap",e),this.setState(t=>{var r,{columnMap:i,filterMap:a}=t,o=null,s=new Map(t.filterValueMap);return e.forEach((l,d)=>{var{columnType:u,filterList:c}=l,m=i.get(d);if(!(m==null||m.type!==u)){if(c.length<1){ur.debug("Ignoring empty filterList for column",d);return}var{value:v}=c[0];s.set(d,v),a.get(d)!==v&&(o===null&&(o=new Map(a)),o.set(d,v))}}),{filterValueMap:s,filterMap:(r=o)!==null&&r!==void 0?r:a}})}unsetFilterValue(e){this.setState(t=>{var{inputFilters:r}=this.props,{columnMap:i}=t,{filterMap:a,filterValueMap:o}=t;if(!o.has(e))return null;o=new Map(t.filterValueMap),o.delete(e);var s=this.getInputFilterColumnMap(i,r);if(s.has(e)){var l,d=a.get(e),u=(l=s.get(e))===null||l===void 0?void 0:l.value;u!=null&&d!==u&&(a=new Map(t.filterMap),u.length>0?a.set(e,u):a.delete(e))}else a=new Map(t.filterMap),a.delete(e);return{filterMap:a,filterValueMap:o}})}updateChangedInputFilters(e,t){var r=t.filter(a=>e.find(o=>o.name===a.name&&o.type===a.type)===void 0);r.length>0&&this.deleteInputFilters(r);var i=e.filter(a=>!t.includes(a));i.length>0&&this.updateInputFilters(i)}updateInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;this.setState(r=>{for(var{columnMap:i}=r,a=new Map(r.filterValueMap),o=new Map(r.filterMap),s=t?{filterMap:o,filterValueMap:a}:{},l=0;l<e.length;l+=1){var{name:d,type:u,value:c}=e[l],m=i.get(d);m!=null&&m.type===u&&(c!=null&&o.get(d)!==c&&(c===""?o.delete(d):o.set(d,c),s.filterMap=o),a.has(d)&&(a.delete(d),s.filterValueMap=a))}return ur.debug("updateInputFilters",s),s})}deleteInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;this.setState(r=>{for(var{columnMap:i,filterValueMap:a}=r,o=new Map(r.filterMap),s=t,l=0;l<e.length;l+=1){var{name:d,type:u}=e[l],c=i.get(d);if(c!=null&&c.type===u&&o.has(d)){var m=o.get(d);if(a.has(d)){var v=a.get(d);v!==m&&v!=null&&(s=!0,o.set(d,v))}else s=!0,o.delete(d)}}return ur.debug("deleteInputFilters",s),s?{filterMap:o}:null})}updateColumnFilters(){this.setState(e=>{var{model:t}=e;return t?{columnMap:t.getFilterColumnMap()}:null})}updateFilters(){var{columnMap:e,filterMap:t,model:r}=this.state;L(r);var i=this.getWaitingInputMap(r.isFilterRequired(),e,t);if(r.setFilter(t),t.size>0&&i.size===0){var a=r.getDefaultTitle(),o=Zr.join(Array.from(t.entries()).map(s=>{var[l,d]=s;return"".concat(l,": ").concat(d)}));a?r.setTitle("".concat(a,'<br><span style="font-size: smaller">').concat(o,"</span>")):r.setTitle(o),ur.debug2("updateFilters filters set",t),this.setState({isLoading:!0})}else ur.debug2("updateFilters waiting on inputs",i),r.setTitle(r.getDefaultTitle()),this.setState({isLoading:!1});this.updatePanelState()}pruneFilterMaps(){this.setState(e=>{var{columnMap:t}=e,r=new Map(e.filterMap),i=new Map(e.filterValueMap),a={};return e.filterValueMap.forEach((o,s)=>{t.has(s)||(i.delete(s),a.filterValueMap=i)}),e.filterMap.forEach((o,s)=>{t.has(s)||(r.delete(s),a.filterMap=r)}),a})}updateChart(){this.chart.current&&this.chart.current.updateDimensions()}render(){var{columnSelectionValidator:e,glContainer:t,glEventHub:r,inputFilters:i,isLinkerActive:a,links:o,metadata:s,settings:l,Plotly:d}=this.props,{columnMap:u,filterMap:c,error:m,model:v,isActive:g,isDisconnected:f,isLoaded:p,isLoading:C}=this.state,b;Tl(s)?b=s.table:b=s.figure;var S=this.getInputFilterColumnMap(u,i),E=this.getLinkedColumnMap(u,o),y=v!=null?this.getWaitingInputMap(v.isFilterRequired(),u,c):new Map,T=v!=null?this.getWaitingFilterMap(v.isFilterRequired(),u,c,E,S):new Map,O=m!=null?"Unable to open chart. ".concat(m):void 0,D=y.size>0,P=u.size>0&&a;return h.createElement(fc,{className:te("iris-chart-panel",{"input-required":D}),componentPanel:this,glContainer:t,glEventHub:r,onHide:this.handleHide,onClearAllFilters:this.handleClearAllFilters,onResize:this.handleResize,onShow:this.handleShow,onTabBlur:this.handleTabBlur,onTabFocus:this.handleTabFocus,errorMessage:O,isDisconnected:f,isLoading:C,isLoaded:p,widgetName:b,widgetType:"Chart"},h.createElement("div",{ref:this.panelContainer,className:"chart-panel-container h-100 w-100"},h.createElement("div",{className:"chart-container h-100 w-100"},p&&v&&h.createElement(tT,{isActive:g,model:v,settings:l,ref:this.chart,onDisconnect:this.handleDisconnect,onReconnect:this.handleReconnect,onUpdate:this.handleUpdate,onError:this.handleError,onSettingsChanged:this.handleSettingsChanged,Plotly:d})),h.createElement(kr,{in:D&&!P&&!C,timeout:et.transitionMs,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0},h.createElement(ib,{inputFilterMap:S,linkedColumnMap:E,onAdd:this.handleFilterAdd,onOpenLinker:this.handleOpenLinker,columnMap:u,waitingFilterMap:T,waitingInputMap:y})),h.createElement(kr,{in:P,timeout:et.transitionMs,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0},h.createElement(cs,{columns:this.getSelectorColumns(u,E,e),onColumnSelected:this.handleColumnSelected,onMouseEnter:this.handleColumnMouseEnter,onMouseLeave:this.handleColumnMouseLeave}))))}}Jr(_d,"defaultProps",{columnSelectionValidator:null,isLinkerActive:!1,source:null,sourcePanel:null,panelState:null,settings:{}});Jr(_d,"displayName","ChartPanel");Jr(_d,"COMPONENT","ChartPanel");var C1=(n,e)=>{var{localDashboardId:t,metadata:r}=e,i;r!=null&&(i=r.sourcePanelId);var a=Cc(n,t),o=sC(n,t),s=wd(n),l=bc(n,t),d=s===Sr.LINKER&&l===void 0;return{columnSelectionValidator:Sc(n,t),isLinkerActive:d,inputFilters:pc(n,t),links:Eo(n,t),source:i!=null?a.get(i):void 0,sourcePanel:i!=null?o.get(i):void 0,settings:Bt(n)}},b1=$t(C1,{setActiveTool:yd,setDashboardIsolatedLinkerPanelId:nb},null,{forwardRef:!0})(_d);const eo=b1;function ql(n,e,t){return e=S1(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function S1(n){var e=w1(n,"string");return typeof e=="symbol"?e:String(e)}function w1(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 ll=ie.module("CommandHistoryPanel");class Ds extends w.Component{static handleError(e){ll.error(e)}constructor(e){super(e),ql(this,"container",void 0),ql(this,"pending",void 0),this.handleFocusHistory=this.handleFocusHistory.bind(this),this.handleSessionOpened=this.handleSessionOpened.bind(this),this.handleSessionClosed=this.handleSessionClosed.bind(this),this.handleShow=this.handleShow.bind(this),this.handleSendToConsole=this.handleSendToConsole.bind(this),this.handleSendToNotebook=this.handleSendToNotebook.bind(this),this.container=h.createRef(),this.pending=new hi;var{session:t,sessionId:r,language:i}=e;this.state={panelState:{},session:t,sessionId:r,language:i,contextActions:[{action:this.handleFocusHistory,shortcut:nr.COMMAND_HISTORY.FOCUS_HISTORY}]}}componentDidMount(){var{glEventHub:e,session:t}=this.props;e.on(Lr.FOCUS_HISTORY,this.handleFocusHistory),t!=null&&this.loadTable()}componentWillUnmount(){var{glEventHub:e}=this.props;e.off(Lr.FOCUS_HISTORY,this.handleFocusHistory),this.pending.cancel()}handleFocusHistory(){this.container.current&&this.container.current.focus()}handleShow(){var e;(e=this.container.current)===null||e===void 0||e.restoreScrollPosition()}handleSessionOpened(e,t){var{language:r,sessionId:i}=t;this.setState({session:e,sessionId:i,language:r},()=>{this.loadTable()})}handleSessionClosed(){this.pending.cancel(),this.setState({session:void 0,language:void 0,table:void 0})}handleSendToNotebook(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,{session:r,language:i}=this.state;if(ll.debug("handleSendToNotebook",r,e),!r){ll.error("Session is not connected.");return}var{glEventHub:a}=this.props;a.emit(t?Ye.CREATE_NOTEBOOK:Ye.SEND_TO_NOTEBOOK,r,i,e)}handleSendToConsole(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;ll.debug("handleSendToConsole",e);var{glEventHub:i}=this.props;i.emit(Lr.SEND_COMMAND,e,t,r)}loadTable(){var{commandHistoryStorage:e}=this.props,{language:t,sessionId:r}=this.state;L(t),L(r),this.pending.add(e.getTable(t,r,Date.now()),i=>i.close()).then(i=>{this.setState({table:i})}).catch(Ds.handleError)}render(){var{glContainer:e,glEventHub:t,commandHistoryStorage:r}=this.props,{language:i,contextActions:a,table:o}=this.state;return h.createElement(vi,{className:"command-history-pane",componentPanel:this,glContainer:e,glEventHub:t,onSessionOpen:this.handleSessionOpened,onSessionClose:this.handleSessionClosed,onShow:this.handleShow},!o&&h.createElement("div",{className:"command-history-disconnected-message"},"Waiting for console connection"),o&&i!=null&&h.createElement(h.Fragment,null,h.createElement(I0,{ref:this.container,language:i,sendToNotebook:this.handleSendToNotebook,sendToConsole:this.handleSendToConsole,table:o,commandHistoryStorage:r}),h.createElement(le,{actions:a})))}}ql(Ds,"COMPONENT","CommandHistoryPanel");ql(Ds,"TITLE","Command History");var E1=(n,e)=>{var t=Cp(n),r=Ta(n,e.localDashboardId),{session:i,config:a}=r??{},{type:o,id:s}=a??{};return{commandHistoryStorage:t,language:o,session:i,sessionId:s}},y1=$t(E1,null,null,{forwardRef:!0})(Ds);const Xl=y1;function _g(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 Mg(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?_g(Object(t),!0).forEach(function(r){to(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):_g(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function to(n,e,t){return e=T1(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function T1(n){var e=P1(n,"string");return typeof e=="symbol"?e:String(e)}function P1(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var dl=ie.module("ConsolePanel"),O1=500,D1=Object.freeze({consoleSettings:{},itemIds:[]});class Ec extends w.PureComponent{constructor(e){super(e),to(this,"consoleRef",void 0),to(this,"objectSubscriptionCleanup",void 0),to(this,"savePanelState",rt(()=>{var{consoleSettings:o,itemIds:s}=this.state,l={consoleSettings:o,itemIds:[...s]};dl.debug("Saving panel state",l),this.setState({panelState:l})},O1)),this.handleFocusCommandHistory=this.handleFocusCommandHistory.bind(this),this.handleOpenObject=this.handleOpenObject.bind(this),this.handleCloseObject=this.handleCloseObject.bind(this),this.handleResize=this.handleResize.bind(this),this.handleSettingsChange=this.handleSettingsChange.bind(this),this.handleShow=this.handleShow.bind(this),this.handlePanelMount=this.handlePanelMount.bind(this),this.consoleRef=h.createRef();var{panelState:t}=e,r=Mg(Mg({},D1),t||{}),{consoleSettings:i,itemIds:a}=r;this.state={consoleSettings:i,itemIds:new Map(a),objectMap:new Map,error:void 0,panelState:r}}componentDidMount(){var{glEventHub:e}=this.props;this.closeDisconnectedPanels(),e.on(Ee.MOUNT,this.handlePanelMount),this.subscribeToFieldUpdates()}componentDidUpdate(e,t){var{consoleSettings:r,itemIds:i}=this.state;(t.consoleSettings!==r||t.itemIds!==i)&&this.savePanelState()}componentWillUnmount(){var e,{glEventHub:t}=this.props;this.savePanelState.flush(),t.off(Ee.MOUNT,this.handlePanelMount),(e=this.objectSubscriptionCleanup)===null||e===void 0||e.call(this)}subscribeToFieldUpdates(){var{sessionWrapper:e}=this.props,{session:t}=e;this.objectSubscriptionCleanup=t.subscribeToFieldUpdates(r=>{dl.debug("Got updates",r),this.setState(i=>{var{objectMap:a}=i,{updated:o,created:s,removed:l}=r,d=[...o,...l],u=new Map(a);d.forEach(m=>{var{title:v}=m;v!==void 0&&u.delete(v)});var c=[...o,...s];return c.forEach(m=>{m.title!==void 0&&u.set(m.title,m)}),{objectMap:u}})})}setItemId(e,t){this.setState(r=>{var{itemIds:i}=r,a=new Map(i);return a.set(e,t),{itemIds:a}})}getItemId(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,{itemIds:r}=this.state,i=r.get(e);return i==null&&t&&(i=Xe.generate(),this.setItemId(e,i)),i}handleTabFocus(){var e;(e=this.consoleRef.current)===null||e===void 0||e.focus()}handlePanelMount(e){var t,r,i,{itemIds:a}=this.state,o=e==null||(t=e.props)===null||t===void 0?void 0:t.id,s=e==null||(r=e.props)===null||r===void 0||(i=r.metadata)===null||i===void 0?void 0:i.sourcePanelId;if(o&&s){var l=new Set(a.values());l.has(s)&&this.setItemId(o,o)}}handleFocusCommandHistory(){var{glEventHub:e}=this.props;e.emit(Lr.FOCUS_HISTORY)}handleResize(){this.updateDimensions()}handleShow(){this.updateDimensions()}handleOpenObject(e){var{sessionWrapper:t}=this.props,{session:r}=t;this.openWidget(e,r)}handleCloseObject(e){var{title:t}=e;if(t!==void 0){var r=this.getItemId(t,!1),{glEventHub:i}=this.props;i.emit(Ee.CLOSE,r)}}handleSettingsChange(e){var{glEventHub:t}=this.props;dl.debug("handleSettingsChange",e),this.setState({consoleSettings:e}),t.emit(Lr.SETTINGS_CHANGED,e)}openWidget(e,t){var{glEventHub:r}=this.props,{title:i}=e;L(i);var a=this.getItemId(i),o={fetch:()=>t.getObject(e),panelId:a,widget:e};dl.debug("openWidget",o),r.emit(Ee.OPEN,o)}addCommand(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;(t=this.consoleRef.current)===null||t===void 0||t.addCommand(e,r,i)}closeDisconnectedPanels(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,{consoleSettings:t,itemIds:r}=this.state,{isClosePanelsOnDisconnectEnabled:i=!0}=t;if(!(!i&&!e)){var a=[...r.values()],{glEventHub:o}=this.props;a.forEach(s=>{o.emit(Ee.CLOSE,s)}),this.setState({itemIds:new Map})}}updateDimensions(){var e;(e=this.consoleRef.current)===null||e===void 0||e.updateDimensions()}render(){var{commandHistoryStorage:e,glContainer:t,glEventHub:r,sessionWrapper:i,timeZone:a,unzip:o}=this.props,{consoleSettings:s,error:l,objectMap:d}=this.state,{config:u,session:c,connection:m,details:v={},dh:g}=i,{workerName:f,processInfoId:p}=v,{id:C,type:b}=u;return h.createElement(vi,{className:"iris-panel-console",componentPanel:this,glContainer:t,glEventHub:r,onResize:this.handleResize,onShow:this.handleShow,onTabFocus:this.handleTabFocus,errorMessage:l!=null?"".concat(l):void 0},c!=null&&h.createElement(h0,{dh:g,ref:this.consoleRef,settings:s,session:c,focusCommandHistory:this.handleFocusCommandHistory,openObject:this.handleOpenObject,closeObject:this.handleCloseObject,commandHistoryStorage:e,onSettingsChange:this.handleSettingsChange,language:b,statusBarChildren:h.createElement(h.Fragment,null,h.createElement("div",null," "),h.createElement("div",null,ep.LANGUAGE_MAP.get(b)),f!=null&&h.createElement(h.Fragment,null,h.createElement("div",null," • "),f),p!=null&&h.createElement(h.Fragment,null,h.createElement("div",null," • "),p,h.createElement("div",null," •")),h.createElement("div",null," "),h.createElement("div",null,h.createElement(sT,{connection:m,defaultUpdateInterval:10*1e3,hoverUpdateInterval:3*1e3,monitorDuration:10*60*1e3})),h.createElement("div",null," ")),scope:C,timeZone:a,objectMap:d,unzip:o}))}}to(Ec,"COMPONENT","ConsolePanel");to(Ec,"TITLE","Console");var R1=(n,e)=>({commandHistoryStorage:Cp(n),sessionWrapper:Ta(n,e.localDashboardId),timeZone:Ss(n)}),N1=$t(R1,null,null,{forwardRef:!0})(Ec);const qa=N1;function gn(n,e,t){return e=F1(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function F1(n){var e=I1(n,"string");return typeof e=="symbol"?e:String(e)}function I1(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 ul=ie.module("DropdownFilter"),_1=150;class di extends w.Component{constructor(e){super(e),gn(this,"dropdownRef",void 0),gn(this,"getCompatibleColumns",fe((a,o)=>a!=null?o.filter(s=>{var{type:l}=s;return l!==void 0&&H.isCompatibleType(l,a.columnType)}):[])),gn(this,"getColumnOptions",fe((a,o)=>{var s=-1,l=[];return l.push(h.createElement("option",{key:"placeholder",value:"-1"},"Select a column")),a.forEach((d,u)=>{l.push(h.createElement("option",{key:"".concat(d.name,"/").concat(d.type),value:u},this.getItemLabel(a,u))),o!==null&&d.name===o.name&&d.type===o.type&&(s=u)}),[l,s]})),gn(this,"getSelectedOptionIndex",fe((a,o)=>a.indexOf(o))),gn(this,"getValueOptions",fe(a=>[h.createElement("option",{value:"-1",key:"-1"},di.PLACEHOLDER),...a.map((o,s)=>h.createElement("option",{value:s,key:"".concat(s,"/").concat(o)},o??"(null)"))])),gn(this,"getItemLabel",Pe((a,o)=>{var{name:s,type:l}=a[o];if(o>0&&a[o-1].name===s||o<a.length-1&&a[o+1].name===s){var d=l.substring(l.lastIndexOf(".")+1);return"".concat(s," (").concat(d,")")}return s})),gn(this,"sendUpdate",rt(()=>{var{onChange:a}=this.props,{column:o,value:s,isValueShown:l}=this.state;a({column:o,isValueShown:l,value:s??void 0})},_1)),this.handleColumnChange=this.handleColumnChange.bind(this),this.handleSettingsCancel=this.handleSettingsCancel.bind(this),this.handleSettingsClick=this.handleSettingsClick.bind(this),this.handleSettingsSave=this.handleSettingsSave.bind(this),this.handleBackgroundClick=this.handleBackgroundClick.bind(this),this.handleDropdownKeyPress=this.handleDropdownKeyPress.bind(this),this.handleValueChange=this.handleValueChange.bind(this),this.dropdownRef=h.createRef();var{column:t,isValueShown:r,value:i}=e;this.state={column:t,id:Xe(),selectedColumn:t,disableCancel:!r,isValueShown:r,value:i}}componentDidUpdate(e,t){var{source:r,values:i,isLoaded:a}=this.props,{column:o,value:s,isValueShown:l}=this.state;a&&(r!==e.source&&this.sourceUpdated(),i!==e.values&&s!==""&&!i.includes(s)&&this.resetValue(),l!==t.isValueShown&&l&&this.focusInput(),(o!==t.column||s!==t.value||l!==t.isValueShown)&&this.sendUpdate())}componentWillUnmount(){this.sendUpdate.flush()}handleColumnChange(e){var{value:t}=e.target;if(ul.debug2("handleColumnChange",t),t!=null&&parseInt(t,10)<0){this.setState({selectedColumn:null});return}var{columns:r,source:i}=this.props,a=this.getCompatibleColumns(i,r);this.setState({selectedColumn:a[parseInt(t,10)]})}handleDropdownKeyPress(e){e.key==="Enter"&&(e.preventDefault(),e.stopPropagation(),ul.debug2("handleDropdownKeyPress"),this.sendUpdate(),this.sendUpdate.flush())}handleValueChange(e){var{value:t}=e.target,r=parseInt(t,10),i="",{values:a}=this.props;r>=0&&r<a.length?i=a[r]:ul.debug2("Selected default item"),ul.debug2("handleValueChange",i),this.setState({value:i})}handleSettingsCancel(){this.setState(e=>{var{column:t}=e;return{selectedColumn:t,isValueShown:!0}})}handleSettingsSave(){this.setState(e=>{var{column:t,selectedColumn:r,value:i}=e;return{column:r,value:t===r?i:"",isValueShown:!0,disableCancel:!1}})}handleSettingsClick(e){e.stopPropagation(),this.showSettings()}handleBackgroundClick(e){e.target!==this.dropdownRef.current&&this.focusInput()}sourceUpdated(){this.setState({column:null,selectedColumn:null,isValueShown:!1,disableCancel:!0,value:""})}showSettings(){var{column:e}=this.state;this.setState({selectedColumn:e,isValueShown:!1})}focusInput(){var e;(e=this.dropdownRef.current)===null||e===void 0||e.focus()}resetValue(){this.setState({value:""})}clearFilter(){this.resetValue()}setFilterState(e){var{name:t,type:r,value:i,isValueShown:a}=e,o=t!=null&&r!=null?{name:t,type:r}:null;this.setState(s=>{var{value:l,isValueShown:d}=s;return{column:o,value:i??l,isValueShown:a??d}})}render(){var e,{columns:t,disableLinking:r,isLinkerActive:i,isLoaded:a,source:o,onColumnSelected:s,onSourceMouseEnter:l,onSourceMouseLeave:d,values:u,settingsError:c}=this.props,{column:m,disableCancel:v,id:g,isValueShown:f,selectedColumn:p,value:C}=this.state,b=o===null,S=this.getCompatibleColumns(o,t),E=o!=null,y=(e=o?.columnName)!==null&&e!==void 0?e:di.SOURCE_BUTTON_PLACEHOLDER,T=m!=null?"".concat(m.name," Filter"):null,[O,D]=this.getColumnOptions(S,p),P=this.getValueOptions(u),R=this.getSelectedOptionIndex(u,C),_=!E||p==null,M=f&&!i,A="source-column-btn-".concat(g),B="filter-column-select-".concat(g);return h.createElement(Bh,{className:"dropdown-filter fill-parent-absolute",isFlipped:M},h.createElement("div",{className:"dropdown-filter-settings-card"},h.createElement("div",{className:"dropdown-filter-card-content"},h.createElement("div",{className:"dropdown-filter-settings-grid"},h.createElement("label",{htmlFor:A},"Source Column"),h.createElement(Yf,{id:A,isLinked:E,onClick:s,onMouseEnter:l,onMouseLeave:d,className:di.SOURCE_BUTTON_CLASS_NAME,disabled:r},y),h.createElement("div",{className:"text-muted small"},"Select a source column for the list by linking to a table."),h.createElement("label",{htmlFor:B},"Filter Column"),h.createElement("select",{id:B,value:D,className:"custom-select",onChange:this.handleColumnChange,disabled:b},O),h.createElement("div",{className:"text-muted small"},"Dropdown filter control will apply its filter to all columns matching this name in this dashboard.")),c&&h.createElement("div",{className:"error-message text-center"},c),E&&h.createElement("div",{className:"dropdown-filter-settings-buttons"},h.createElement(j,{kind:"secondary",type:"button",onClick:this.handleSettingsCancel,disabled:v||f||i,tooltip:i?"Cancel disabled while linker open":void 0},"Cancel"),h.createElement(j,{kind:"primary",type:"button",className:"ml-2",onClick:this.handleSettingsSave,disabled:_||f||i,tooltip:i?"Save disabled while linker open":void 0},"Save")))),h.createElement("div",{className:"dropdown-filter-value-card",onClick:this.handleBackgroundClick,"data-testid":"dropdown-filter-value-background"},a&&h.createElement(h.Fragment,null,h.createElement("div",{className:"dropdown-filter-column"},h.createElement("div",{className:"dropdown-filter-column-title"},T)),h.createElement("div",{className:"dropdown-filter-card-content"},h.createElement("div",{className:"dropdown-filter-value-input d-flex flex-column justify-content-center"},h.createElement("select",{className:"custom-select",value:R,ref:this.dropdownRef,onChange:this.handleValueChange,onKeyPress:this.handleDropdownKeyPress,title:"Select Value"},P)),c&&h.createElement("div",{className:"error-message mt-3 text-center"},c)),h.createElement("div",{className:"dropdown-filter-menu"},h.createElement(j,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:h.createElement(re,{icon:fs,transform:"grow-4"}),tooltip:"Dropdown Filter Settings"})))))}}gn(di,"defaultProps",{column:null,disableLinking:!1,isLinkerActive:!1,isLoaded:!1,isValueShown:!1,settingsError:null,source:null,value:"",values:[],onColumnSelected:()=>{},onSourceMouseEnter:()=>{},onSourceMouseLeave:()=>{}});gn(di,"PLACEHOLDER","Select a value...");gn(di,"SOURCE_BUTTON_CLASS_NAME","btn-dropdown-filter-selector");gn(di,"SOURCE_BUTTON_PLACEHOLDER","Select a column");const Ag=di;function er(n,e,t){return e=M1(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function M1(n){var e=A1(n,"string");return typeof e=="symbol"?e:String(e)}function A1(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ut=ie.module("DropdownFilterPanel"),L1=250,k1=(n,e)=>{var{localDashboardId:t}=e,r=Q.getIdFromPanel({props:e}),i=Cc(n,t),a=Eo(n,t),o=wd(n),s=bc(n,t),l=o===Sr.LINKER&&(s===void 0||s===r),d=o===Sr.LINKER&&s!==void 0&&s!==r;return{columns:rb(n,t),columnSelectionValidator:Sc(n,t),dh:bd(n),isLinkerActive:l,disableLinking:d,settings:Bt(n),panelTableMap:i,dashboardLinks:a}},x1=$t(k1,null,null,{forwardRef:!0});class pn extends w.Component{constructor(e){super(e),er(this,"dateTimeFormatter",void 0),er(this,"dropdownFilterRef",void 0),er(this,"panelContainer",void 0),er(this,"pending",void 0),er(this,"cleanup",void 0),er(this,"columnFormats",void 0),er(this,"getCachedValues",Pe((c,m,v)=>{var{type:g,name:f}=m;return g!==void 0&&H.isDateType(g)?c.map(p=>this.dateTimeFormatter.format(p)):c.map(p=>p!=null&&g!=null?v.getFormattedString(p,g,f):null)})),er(this,"getCachedPanelLinks",Pe((c,m)=>{var v=Q.getIdFromPanel(m);return ut.debug("getCachedPanelLinks",c,v),c.filter(g=>{var f;return((f=g.end)===null||f===void 0?void 0:f.panelId)===v})})),er(this,"getCachedSource",Pe(c=>{ut.debug("getCachedSource",c);var m;if(c.length>0){var[v]=c;m=v.start,c.length>1&&ut.error("Filter has more that one link",c)}return m})),er(this,"getCachedSourceTable",Pe((c,m)=>{var v;if(ut.debug("getCachedSourceTable",c,m),m==null)return null;var{panelId:g}=m;return(v=c.get(g))!==null&&v!==void 0?v:null})),er(this,"getCachedSourceColumn",Pe((c,m)=>{var v;return ut.debug("getCachedSourceColumn",c,m),c==null||m==null?null:(v=c.columns.find(g=>{var{name:f,type:p}=g;return f===m.columnName&&p===m.columnType}))!==null&&v!==void 0?v:null})),this.handleChange=rt(this.handleChange.bind(this),L1),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.handleDisconnect=this.handleDisconnect.bind(this),this.handleReconnect=this.handleReconnect.bind(this),this.handleColumnSelected=this.handleColumnSelected.bind(this),this.handleSourceFilterChange=this.handleSourceFilterChange.bind(this),this.handleSourceSortChange=this.handleSourceSortChange.bind(this),this.handleSourceSizeChange=this.handleSourceSizeChange.bind(this),this.handleSourceMouseEnter=this.handleSourceMouseEnter.bind(this),this.handleSourceMouseLeave=this.handleSourceMouseLeave.bind(this),this.handleValuesTableUpdate=this.handleValuesTableUpdate.bind(this),this.dropdownFilterRef=h.createRef(),this.panelContainer=h.createRef(),this.pending=new hi;var{dh:t,panelState:r,settings:i}=e;this.columnFormats=oi.getColumnFormats(i),this.dateTimeFormatter=new Tt(t,{showTimeZone:!1,showTSeparator:!0,defaultDateTimeFormatString:"yyyy-MM-dd HH:mm:ss.SSSSSSSSS"});var{value:a="",isValueShown:o=!1,name:s,type:l,timestamp:d}=r??{},u=s!=null&&l!=null?{name:s,type:l}:void 0;this.state={column:u,formatter:new wn(t,this.columnFormats),valuesTable:void 0,valuesColumn:void 0,sourceSize:0,value:a,timestamp:d,values:[],isValueShown:o,wasFlipped:!1,skipUpdate:!1,panelState:r,isDisconnected:!1,isLoading:!1,isLoaded:!1,error:null}}componentDidMount(){this.updateValuesTable();var{dashboardLinks:e,panelTableMap:t}=this.props,{column:r,value:i,timestamp:a}=this.state,o=this.getSourceTable(t,e);if(o!==null&&this.startListeningToSource(o),r!=null){var{name:s,type:l}=r;this.sendUpdate(s,l,i,a)}}componentDidUpdate(e,t){var{dashboardLinks:r,panelTableMap:i,settings:a}=this.props,{valuesTable:o}=this.state,s=this.getSource(r),l=this.getSourceTable(i,r),d=this.getSource(e.dashboardLinks),u=this.getSourceTable(e.panelTableMap,e.dashboardLinks);a!==e.settings&&a!==void 0&&this.updateFormatterSettings(a),o!==t.valuesTable&&t.valuesTable!=null&&(ut.debug("Table in state modified, closing the old table."),t.valuesTable.close()),(l!==u||s!==d)&&this.updateValuesTable(),l!==u&&(u!==null&&this.stopListeningToSource(u),l!==null&&this.startListeningToSource(l))}componentWillUnmount(){var{dashboardLinks:e,panelTableMap:t}=this.props,{valuesTable:r}=this.state,i=this.getSourceTable(t,e);this.pending.cancel(),i!==null&&this.stopListeningToSource(i),this.cleanup&&this.cleanup(),r?.close()}getCoordinateForColumn(){var e;if(this.panelContainer.current==null)return null;var t=this.panelContainer.current.querySelector(".".concat(Ag.SOURCE_BUTTON_CLASS_NAME)),r=(e=t?.getBoundingClientRect())!==null&&e!==void 0?e:null;if(r==null||r.width<=0||r.height<=0)return null;var i=r.left+r.width/2,a=r.bottom;return[i,a]}getSettingsErrorMessage(){var{sourceSize:e}=this.state;if(e>pn.MAX_TABLE_SIZE)return"Table too large, must have fewer than ".concat(pn.MAX_TABLE_SIZE," options.")}getPanelErrorMessage(){var{error:e}=this.state;return e!=null?"".concat(e):void 0}getSource(e){var t=this.getCachedPanelLinks(e,this);return this.getCachedSource(t)}getSourceTable(e,t){var r=this.getSource(t);return this.getCachedSourceTable(e,r)}getValuesColumn(e,t){var r=this.getSource(t);return this.getCachedSourceColumn(e,r)}startListeningToSource(e){var{dh:t}=this.props;ut.debug("startListeningToSource"),e.addEventListener(t.Table.EVENT_FILTERCHANGED,this.handleSourceFilterChange),e.addEventListener(t.Table.EVENT_SORTCHANGED,this.handleSourceSortChange),e.addEventListener(t.Table.EVENT_SIZECHANGED,this.handleSourceSizeChange),e.addEventListener(t.Table.EVENT_DISCONNECT,this.handleDisconnect),e.addEventListener(t.Table.EVENT_RECONNECT,this.handleReconnect)}stopListeningToSource(e){var{dh:t}=this.props;ut.debug("stopListeningToSource"),e.removeEventListener(t.Table.EVENT_FILTERCHANGED,this.handleSourceFilterChange),e.removeEventListener(t.Table.EVENT_SORTCHANGED,this.handleSourceSortChange),e.removeEventListener(t.Table.EVENT_SIZECHANGED,this.handleSourceSizeChange),e.removeEventListener(t.Table.EVENT_DISCONNECT,this.handleDisconnect),e.removeEventListener(t.Table.EVENT_RECONNECT,this.handleReconnect)}handleChange(e){var{column:t,isValueShown:r=!1,value:i}=e,{name:a=void 0,type:o=void 0}=t??{},s=!0,l=Date.now();this.setState(d=>{var u,c,{panelState:m,timestamp:v,wasFlipped:g,skipUpdate:f}=d,p=m!=null&&r!==m.isValueShown&&a===m.name&&o===m.type&&i===m.value;return s=(u=!f&&r&&(!p||!g))!==null&&u!==void 0?u:!1,s||(l=v),{panelState:{isValueShown:r,name:a,type:o,value:i,timestamp:(c=l)!==null&&c!==void 0?c:void 0},timestamp:l,wasFlipped:p,skipUpdate:!1}},()=>{s&&this.sendUpdate(a??null,o,i,l)})}handleDisconnect(){this.setState({error:new Error("Table disconnected"),isDisconnected:!0,isLoading:!1})}handleReconnect(){this.setState({isDisconnected:!1,error:null})}handleSourceFilterChange(){this.applySourceFilters()}handleSourceSortChange(){this.applySourceSorts()}handleSourceSizeChange(e){var{detail:t}=e;this.setState({sourceSize:t})}handleColumnSelected(){ut.debug("handleColumnSelected");var{glEventHub:e}=this.props;e.emit(it.COLUMN_SELECTED,this,pn.SOURCE_COLUMN)}handleClearAllFilters(){var e,t;(e=this.dropdownFilterRef)===null||e===void 0||(t=e.current)===null||t===void 0||t.clearFilter()}setPanelState(e){var t,r,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,{dashboardLinks:a}=this.props;if(this.getSource(a)==null){ut.debug("Ignore state update for unlinked filter",e);return}this.setState({skipUpdate:!i}),(t=this.dropdownFilterRef)===null||t===void 0||(r=t.current)===null||r===void 0||r.setFilterState(e)}sendUpdate(e,t,r,i){var a,{dashboardLinks:o,glEventHub:s}=this.props,l=(a=this.getSource(o))===null||a===void 0?void 0:a.panelId,d=l===null?[]:[l];ut.debug("sendUpdate",{name:e,type:t,value:r,timestamp:i,excludePanelIds:d}),s.emit(it.FILTERS_CHANGED,this,{name:e,type:t,value:r??"=null",timestamp:i,excludePanelIds:d})}updateValuesTable(){var{dashboardLinks:e,panelTableMap:t}=this.props,r=this.getSource(e),i=this.getSourceTable(t,e);if(ut.debug("updateValuesTable",r,i),this.setState({values:[],valuesTable:void 0,error:null}),r==null){ut.debug("Filter unlinked."),this.setState({isLoading:!1,isLoaded:!0,isValueShown:!1,sourceSize:0});return}this.setState({isLoading:!0}),i!=null&&(this.setState({isLoaded:!1,sourceSize:i.size}),this.pending.add(i.copy(),a=>a.close()).then(a=>{this.updateViewportListener(a),this.setState({valuesTable:a})}).catch(a=>{Te.isCanceled(a)||(ut.error(a),this.setState({isLoading:!1,error:a}))}))}applySourceSorts(){var{dashboardLinks:e,panelTableMap:t}=this.props,{valuesTable:r}=this.state,i=this.getSourceTable(t,e);if(ut.debug("applySourceSorts",i?.sort),r==null||i==null){ut.debug("Table not initialized");return}var a=[...i.sort];r.applySort(a),this.setViewport(r)}applySourceFilters(){var{dashboardLinks:e,panelTableMap:t}=this.props,{valuesTable:r}=this.state,i=this.getSourceTable(t,e);if(ut.debug("applySourceFilters",i?.filter),r==null||i==null){ut.debug("Table not initialized");return}var a=[...i.filter];r.applyFilter(a),this.setViewport(r)}updateViewportListener(e){var{dh:t}=this.props;if(ut.debug("updateViewportListener",e?.size),this.cleanup&&this.cleanup(),e==null){this.cleanup=void 0;return}this.cleanup=e.addEventListener(t.Table.EVENT_UPDATED,this.handleValuesTableUpdate),this.setViewport(e)}setViewport(e){var{dashboardLinks:t}=this.props,r=this.getValuesColumn(e,t);if(!r){ut.error("values column is null");return}e.setViewport(0,pn.MAX_TABLE_SIZE-1,[r])}updateFormatterSettings(e){var{dh:t}=this.props,r=oi.getColumnFormats(e);ct(this.columnFormats,r)||(this.columnFormats=r,this.setState({formatter:new wn(t,r)}))}handleValuesTableUpdate(e){var{detail:t}=e,{rows:r}=t,{dashboardLinks:i}=this.props,{valuesTable:a}=this.state;if(!a){ut.error("valuesTable is null");return}var o=this.getValuesColumn(a,i);if(!o){ut.error("Values column not found");return}var s=r.map(l=>l.get(o));this.setState({values:s,isLoading:!1,isLoaded:!0,valuesColumn:o})}handleSourceMouseEnter(){var{columnSelectionValidator:e}=this.props;e&&e(this,pn.SOURCE_COLUMN)}handleSourceMouseLeave(){var{columnSelectionValidator:e}=this.props;e&&e(this,void 0)}render(){var{columns:e,dashboardLinks:t,disableLinking:r,glContainer:i,glEventHub:a,isLinkerActive:o}=this.props,{column:s,formatter:l,isDisconnected:d,isValueShown:u,value:c,values:m,valuesColumn:v,isLoading:g,isLoaded:f}=this.state,p=this.getSource(t),C=this.getSettingsErrorMessage(),b=this.getPanelErrorMessage(),S=f&&v!=null?this.getCachedValues(m,v,l):[];return h.createElement(fc,{errorMessage:b,isLoading:g,isLoaded:f,isDisconnected:d,className:"iris-dropdown-filter-panel",componentPanel:this,glContainer:i,glEventHub:a,onClearAllFilters:this.handleClearAllFilters,widgetName:"Dropdown Filter",widgetType:"DropdownFilter"},h.createElement("div",{ref:this.panelContainer,className:"dropdown-filter-container h-100 w-100 container"},h.createElement(Ag,{ref:this.dropdownFilterRef,column:s,columns:e,isValueShown:u,isLinkerActive:o,disableLinking:r,isLoaded:f,settingsError:C,source:p,value:c,values:S,onChange:this.handleChange,onColumnSelected:this.handleColumnSelected,onSourceMouseEnter:this.handleSourceMouseEnter,onSourceMouseLeave:this.handleSourceMouseLeave})))}}er(pn,"displayName","DropdownFilterPanel");er(pn,"COMPONENT","DropdownFilterPanel");er(pn,"MAX_TABLE_SIZE",256);er(pn,"SOURCE_COLUMN",Object.freeze({name:"FilterSource",type:null}));var H1=x1(pn);const ba=H1;function xn(n){return n.type==="directory"}var Jn;(function(n){n.GROOVY="text/x-groovy",n.PLAIN_TEXT="text/plain",n.PYTHON="text/x-python",n.PYTHON_COMPILED="application/x-python-code",n.SCALA="text/x-scala",n.UNKNOWN=""})(Jn||(Jn={}));class ca{static fileExtensionToString(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"";return e.length===0?"":".".concat(e)}static getDepth(e){var t;if(!ca.hasPath(e))throw new Error("Invalid path provided: ".concat(e));var r=(t=e.match(/\//g))!==null&&t!==void 0?t:[];return r.length-1}static getExtension(e){var t=this.getBaseName(e).split(".");if(t.length>1){var r;return(r=t.pop())!==null&&r!==void 0?r:""}return""}static getBaseName(e){var t;return(t=e.split("/").pop())!==null&&t!==void 0?t:""}static getCopyFileName(e){var t=e.lastIndexOf("."),r=null,i=null;t<0?i=e:(i=e.substring(0,t),r=e.substring(t+1));var a=i?"".concat(i,"-copy"):"Copy";return r!==null?"".concat(a,".").concat(r):a}static getMimeType(e){var t=this.getExtension(e).toLowerCase();switch(t){case"groovy":return Jn.GROOVY;case"py":return Jn.PYTHON;case"pyc":return Jn.PYTHON_COMPILED;case"scala":return Jn.SCALA;case"txt":return Jn.PLAIN_TEXT;default:return Jn.UNKNOWN}}static getParent(e){if(!ca.hasPath(e))throw new Error("Invalid name provided: ".concat(e));for(var t=e.split("/");t.pop()==="";);if(t.length===0)throw new Error("No parent for path provided: ".concat(e));return"".concat(t.join("/"),"/")}static getPath(e){if(!ca.hasPath(e))throw new Error("Invalid filename provided: ".concat(e));var t=e.split("/");return t.pop(),"".concat(t.join("/"),"/")}static hasPath(e){return e.startsWith("/")}static isPath(e){return e.startsWith("/")&&e.endsWith("/")}static makePath(e){return e.endsWith("/")?e:"".concat(e,"/")}static replaceExtension(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"",r=e.lastIndexOf("."),i=r>-1?e.substring(0,r):e,a=ca.fileExtensionToString(t);return"".concat(i).concat(a)}static validateName(e){var t=[".",".."],r=/[\\/\0]/g,i=new Map([["\0","null"]]);if(!e)throw new Ja("Name cannot be empty");if(t.includes(e))throw new Ja('"'.concat(e,'" is a reserved name'));if(r.test(e)){var a,o;throw new Ja('Invalid characters in name: "'.concat((a=(o=e.match(r))===null||o===void 0?void 0:o.reduce((s,l)=>s.includes(l)?s:[...s,l],[]).map(s=>i.has(s)?i.get(s):s).join('", "'))!==null&&a!==void 0?a:"",'"'))}}static reducePaths(e){var t=e.filter(r=>ca.isPath(r));return e.filter(r=>!t.some(i=>r!==i&&r.startsWith(i)))}static removeRoot(e,t){if(e.length===0)return t;if(!t.startsWith(e))throw new Error("Filename ".concat(t," does not start with expected root ").concat(e));return t.substring(e.length)}static addRoot(e,t){return"".concat(e).concat(t)}}const be=ca;var yc=26;function Ph(n){return xn(n)?be.makePath(n.filename):be.getPath(n.filename)}function Lg(n,e){if(n.length===0||e==null)throw new Error("No items to move");var t=Ph(e);if(n.some(r=>{var{filename:i}=r;return be.getPath(i)===t}))throw new Error("File already in the destination folder");if(n.some(r=>xn(r)&&t.startsWith(be.makePath(r.filename))))throw new Error("Destination folder cannot be a child of a dragged folder");return{files:n,targetPath:t}}function U1(n){if(xn(n))return n.isExpanded?cw:mw;var e=be.getMimeType(n.basename);switch(e){case Jn.PYTHON:return gw;default:return vw}}function Oh(n){var e,{children:t,draggedItems:r,isDragInProgress:i,isDropTargetValid:a,isSelected:o,item:s,itemIndex:l,dropTargetItem:d,onDragStart:u,onDragOver:c,onDragEnd:m,onDrop:v}=n,g=(e=r?.some(O=>O.id===s.id))!==null&&e!==void 0?e:!1,f=Ph(s),p=i&&d?Ph(d):null,C=i&&a&&xn(s)&&p===f,b=i&&a&&p===f,S=i&&!a&&p===f,E=U1(s),y=be.getDepth(s.filename),T=Array(y).fill(null).map((O,D)=>h.createElement("span",{className:"file-list-depth-line",key:D}));return h.createElement("div",{className:te("d-flex w-100 align-items-center","file-list-item",{"is-dragged":g,"is-exact-drop-target":C,"is-in-drop-target":b,"is-invalid-drop-target":S,"is-selected":o}),onDragStart:function(O){function D(P){return O.apply(this,arguments)}return D.toString=function(){return O.toString()},D}(O=>u(l,O)),onDragOver:function(O){function D(P){return O.apply(this,arguments)}return D.toString=function(){return O.toString()},D}(O=>c(l,O)),onDragEnd:function(O){function D(P){return O.apply(this,arguments)}return D.toString=function(){return O.toString()},D}(O=>m(l,O)),onDrop:function(O){function D(P){return O.apply(this,arguments)}return D.toString=function(){return O.toString()},D}(O=>v(l,O)),draggable:!0,role:"presentation","aria-label":s.basename},T," ",h.createElement(re,{icon:E,className:"item-icon",fixedWidth:!0})," ",h.createElement("span",{className:"truncation-wrapper"},t??s.basename,h.createElement(pt,{options:{placement:"left"}},t??s.basename)))}function kg(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 hl(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?kg(Object(t),!0).forEach(function(r){$1(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):kg(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function $1(n,e,t){return e=B1(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function B1(n){var e=V1(n,"string");return typeof e=="symbol"?e:String(e)}function V1(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Zt=ie.module("FileList"),G1=500,xg="item-list-scroll-pane";function W1(n){var{isMultiSelect:e=!1,table:t,onFocusChange:r=()=>{},onMove:i,onSelect:a,onSelectionChange:o=()=>{},renderItem:s=Oh,rowHeight:l=yc,overscanCount:d=io.DEFAULT_OVERSCAN}=n,[u,c]=w.useState(()=>({items:[],offset:0,itemCount:0})),[m,v]=w.useState({top:0,bottom:0}),[g,f]=w.useState(),[p,C]=w.useState(),[b,S]=w.useState(),[E,y]=w.useState([]),T=w.useRef(null),O=w.useRef(null),D=w.useCallback(W=>{if(W.length===0||u==null)return[];for(var ee=[],oe=0;oe<W.length;oe+=1)for(var ae=W[oe],se=ae[0];se<=ae[1];se+=1)se>=u.offset&&se<u.offset+u.items.length&&ee.push(u.items[se-u.offset]);return ee},[u]),P=w.useCallback(W=>{var ee=D([[W,W]]);if(ee.length>0)return ee[0]},[D]),R=w.useCallback(()=>{var W=hm.count(E);if(W===0)return null;if(W===1){var ee=E[0][0],oe=P(ee);if(oe!=null)return oe.filename}return"".concat(W," items")},[P,E]),_=w.useCallback(W=>{if(!(!p||!g)){Zt.debug("dropItems",p,"to",W);try{var{files:ee,targetPath:oe}=Lg(p,g);if(i?.(ee,oe),W!=null){var ae;y([[W,W]]),(ae=T.current)===null||ae===void 0||ae.focusItem(W)}}catch(se){Zt.error("Unable to complete move",se)}}},[p,g,i]),M=w.useCallback((W,ee)=>{var oe=u.items[W-u.offset];oe!==void 0&&(Zt.debug("handleItemClick",oe),a(oe,ee),xn(oe)&&t?.setExpanded(oe.filename,!oe.isExpanded))},[u,a,t]),A=w.useCallback((W,ee)=>{var oe;Zt.debug2("handleItemDragStart",W,E);var ae=E;hm.isSelected(E,W)||(ae=[[W,W]],y(ae)),C(D(ae)),(oe=T.current)===null||oe===void 0||oe.resetMouseState();var se=document.createElement("div");se.innerHTML='<div class="dnd-placeholder-content">'.concat(R(),"</div>"),se.className="file-list-dnd-placeholder",document.body.appendChild(se),ee.dataTransfer.setDragImage(se,0,0),ee.dataTransfer.effectAllowed="move",S(se)},[R,D,E]),B=w.useCallback((W,ee)=>{ee.preventDefault(),Zt.debug2("handleItemDragOver",ee),f(P(W))},[P]),$=w.useCallback((W,ee)=>{Zt.debug("handleItemDragEnd",W),b?.remove(),C(void 0),f(void 0),S(void 0)},[b]),z=w.useCallback((W,ee)=>{_(W)},[_]),G=w.useCallback(()=>{Zt.debug2("handleItemDragExit"),f(void 0)},[]),K=w.useCallback(W=>{W.target instanceof Element&&W.target.classList.contains(xg)&&(W.preventDefault(),Zt.debug2("handleListDragOver",W),f({type:"directory",filename:"/",basename:"/",id:"/"}))},[]),X=w.useCallback(W=>{W.target instanceof Element&&W.target.classList.contains(xg)&&(Zt.debug("handleListDrop"),_())},[_]),J=w.useCallback(W=>{if(Zt.debug2("handleSelectionChange",W),W!==E){y(W);var ee=D(W);o(ee)}},[D,o,E]),I=w.useCallback(W=>{if(Zt.debug2("handleFocusChange",W),W!=null){var[ee]=D([[W,W]]);r(ee)}else r()},[D,r]),N=w.useCallback((W,ee)=>{Zt.debug("handleViewportChange",W,ee),(W!==m.top||ee!==m.bottom)&&v({top:W,bottom:ee})},[m]),k=w.useMemo(()=>{if(!p||!g)return!1;try{return Lg(p,g),Zt.debug("handleValidateDropTarget true"),!0}catch{return Zt.debug("handleValidateDropTarget false"),!1}},[p,g]),{focusedPath:x}=n;w.useEffect(()=>{x!==void 0&&(x==="/"?t.collapseAll():(t.setExpanded(x,!1),t.setExpanded(x,!0)))},[t,x]),w.useEffect(function(){Zt.debug("updating table viewport",m),t?.setViewport({top:Math.max(0,m.top-d),bottom:m.bottom+d})},[d,t,m]),w.useEffect(function(){var ee=t.onUpdate(oe=>{c({items:oe.items.map(ae=>hl(hl({},ae),{},{itemName:ae.basename})),offset:oe.offset,itemCount:t.size})});return()=>{ee()}},[t]),w.useEffect(function(){if(g!=null&&xn(g)&&g.filename!=="/"){var ee=setTimeout(()=>{g.isExpanded||t?.setExpanded(g.filename,!0)},G1);return()=>clearTimeout(ee)}},[g,t]);var Y=w.useCallback(W=>s(hl(hl({},W),{},{isDragInProgress:p!=null,dropTargetItem:g,draggedItems:p,isDropTargetValid:k,onDragStart:A,onDragEnd:$,onDragOver:B,onDragExit:G,onDrop:z})),[$,G,B,A,z,p,g,k,s]);return h.createElement("div",{ref:O,className:te("file-list",{"is-dragging":p!=null}),onDragOver:K,onDrop:X},h.createElement(io,{ref:T,items:u.items,itemCount:u.itemCount,offset:u.offset,onFocusChange:I,onSelect:M,onSelectionChange:J,onViewportChange:N,selectedRanges:E,renderItem:Y,rowHeight:l,isMultiSelect:e,isDragSelect:!1,isDeselectOnClick:!1}))}var j1={name:"File Explorer",DELETE:qe.createAndAdd({id:"FILE_EXPLORER.DELETE",name:"Delete",shortcut:[Oe.DELETE],macShortcut:[we.CMD,Oe.BACKSPACE]}),RENAME:qe.createAndAdd({id:"FILE_EXPLORER.RENAME",name:"Rename",shortcut:[Oe.ENTER],macShortcut:[Oe.ENTER]})};const Hg={FILE_EXPLORER:j1};var Ug=ie.module("FileListItemEditor"),z1=()=>Promise.resolve();function K1(n){var{item:e,onCancel:t,onSubmit:r,validate:i=z1}=n,a=w.useRef(null),[o,s]=w.useState(e.basename),[l,d]=w.useState(),[u,c]=w.useState(Promise.resolve()),m=w.useCallback(()=>{var b;(b=a.current)===null||b===void 0||b.focus()},[a]),v=w.useCallback(b=>b.stopPropagation(),[]),g=w.useCallback(()=>{u.then(()=>{r(o)}).catch(b=>Ug.info("Unable to validate name",b))},[r,o,u]);w.useEffect(function(){var S=Te.makeCancelable(i(o));return S.then(()=>d(void 0)).catch(E=>{Te.isCanceled(E)||d(E)}),c(S),()=>S.cancel()},[i,o]),w.useEffect(function(){m()},[m]);var f=w.useCallback(()=>{Ug.debug2("handleBlur"),g()},[g]),p=w.useCallback(b=>{var{value:S}=b.target;s(S)},[]),C=w.useCallback(b=>{b.stopPropagation();var{key:S}=b;switch(S){case"Enter":{g();break}case"Escape":{t();break}}},[t,g]);return h.createElement("div",{className:"file-list-item-editor"},h.createElement("input",{type:"text",className:te("form-control file-list-item-editor-input",{"is-invalid":l}),value:o,ref:a,onBlur:f,onKeyDown:C,onChange:p,onClick:v,onDoubleClick:v,onMouseDown:v}),l&&h.createElement("div",{className:"invalid-feedback"},"".concat(l)))}function ab(n){var{isMultiSelect:e=!1,focusedPath:t,showContextMenu:r=!1,onCreateFile:i,onCreateFolder:a,onCopy:o,onDelete:s,onMove:l,onRename:d,onSelect:u,onSelectionChange:c,table:m,rowHeight:v=yc,validateRename:g=()=>Promise.resolve()}=n,[f,p]=w.useState(),[C,b]=w.useState([]),[S,E]=w.useState(),y=w.useCallback(G=>{b(G),c?.(G)},[c]),T=w.useCallback(G=>{E(G)},[]),O=w.useCallback(()=>{S&&o?.(S)},[S,o]),D=w.useCallback(()=>{C.length>0&&s?.(C)},[s,C]),P=w.useCallback(()=>{i?.()},[i]),R=w.useCallback(()=>{S&&a?.(be.getPath(S.filename))},[S,a]),_=w.useCallback(()=>{S&&p(S)},[S]),M=w.useCallback(()=>{p(void 0)},[]),A=w.useCallback(G=>{f&&(d?.(f,G),p(void 0))},[d,f]),B=w.useMemo(()=>{if(f)return[];var G=[];return i&&G.push({title:"New File",description:"Create new file",action:P,group:le.groups.medium}),a&&G.push({title:"New Folder",description:"Create new folder",action:R,group:le.groups.medium}),o&&G.push({title:"Copy",description:"Copy",action:O,group:le.groups.low,disabled:S==null||xn(S)}),s&&C.length>0&&G.push({title:"Delete",description:"Delete",shortcut:Hg.FILE_EXPLORER.DELETE,action:D,group:le.groups.low}),d&&G.push({title:"Rename",description:"Rename",shortcut:Hg.FILE_EXPLORER.RENAME,action:_,group:le.groups.low,disabled:S==null}),G},[O,D,P,R,_,S,o,i,a,s,d,C,f]),$=w.useCallback(G=>(L(f),g(f,G)),[f,g]),z=w.useCallback(G=>{var{item:K}=G;return f&&f.filename===K.filename?h.createElement(Oh,G,h.createElement(K1,{item:K,validate:$,onSubmit:A,onCancel:M})):h.createElement(Oh,G)},[M,A,f,$]);return h.createElement("div",{className:"file-list-container"},m!=null&&h.createElement(W1,{onMove:l,onSelect:u,onSelectionChange:y,onFocusChange:T,renderItem:z,rowHeight:v,table:m,isMultiSelect:e,focusedPath:t}),r&&h.createElement(le,{actions:B}))}ab.displayName="FileListContainer";function $g(n,e,t){return e=Y1(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Y1(n){var e=q1(n,"string");return typeof e=="symbol"?e:String(e)}function q1(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 X1 extends Ja{constructor(e){super("Name already exists"),$g(this,"isExistingFile",!0),$g(this,"info",void 0),this.info=e}}const Pl=X1;function Q1(n,e,t){return e=Z1(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Z1(n){var e=J1(n,"string");return typeof e=="symbol"?e:String(e)}function J1(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 ek extends Error{constructor(){super("No file exists at the path specified"),Q1(this,"isFileNotFound",!0)}}const Tc=ek;function Bg(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 Vg(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){Bg(a,r,i,o,s,"next",l)}function s(l){Bg(a,r,i,o,s,"throw",l)}o(void 0)})}}var ia=ie.module("FileExplorer");function Pc(n){var{storage:e,isMultiSelect:t=!1,focusedPath:r,onDelete:i=()=>{},onRename:a=()=>{},onSelect:o,onSelectionChange:s,rowHeight:l=yc}=n,[d,u]=w.useState([]),[c,m]=w.useState();w.useEffect(function(){var O;function D(){return P.apply(this,arguments)}function P(){return P=Vg(function*(){ia.debug("initTable"),O=Te.makeCancelable(e.getTable(),R=>R.close());try{m(yield O)}catch(R){Te.isCanceled(R)||ia.error("Unable to initialize table",R)}}),P.apply(this,arguments)}return D(),()=>{O.cancel()}},[e]);var v=w.useCallback(T=>{Te.isCanceled(T)||ia.error(T)},[]),g=w.useCallback(T=>{ia.debug("handleDelete, pending confirmation",T),u(T)},[]),f=w.useCallback(()=>{ia.debug("handleDeleteConfirm",d),d.forEach(T=>e.deleteFile(xn(T)?be.makePath(T.filename):T.filename)),i(d),u([])},[d,i,e]),p=w.useCallback(()=>{ia.debug("handleDeleteCancel"),u([])},[]),C=w.useCallback((T,O)=>{var D=be.reducePaths(T.map(P=>xn(P)?be.makePath(P.filename):P.filename));D.forEach(P=>{var R=be.isPath(P)?"".concat(O).concat(be.getBaseName(P.substring(0,P.length-1)),"/"):"".concat(O).concat(be.getBaseName(P));e.moveFile(P,R).then(()=>{a(P,R)}).catch(v)})},[v,a,e]),b=w.useCallback((T,O)=>{var D=T.filename,P=xn(T);P&&!D.endsWith("/")&&(D="".concat(D,"/"));var R="".concat(be.getParent(D)).concat(O);P&&!R.endsWith("/")&&(R="".concat(R,"/")),ia.debug2("handleRename",D,R),e.moveFile(D,R).catch(v),a(D,R)},[v,a,e]),S=w.useCallback(function(){var T=Vg(function*(O,D){if(D!==O.basename){be.validateName(D);var P="".concat(be.getPath(O.filename)).concat(D);try{var R=yield e.info(P);throw new Pl(R)}catch(_){if(!(_ instanceof Tc))throw _}}});return function(O,D){return T.apply(this,arguments)}}(),[e]),E=d.length>0,y=w.useMemo(()=>d.length===1?'Are you sure you want to delete "'.concat(d[0].filename,'"?'):"Are you sure you want to delete the selected files?",[d]);return h.createElement("div",{className:"file-explorer"},c&&h.createElement(ab,{isMultiSelect:t,focusedPath:r,showContextMenu:!0,onMove:C,onDelete:g,onRename:b,onSelect:o,onSelectionChange:s,rowHeight:l,table:c,validateRename:S}),h.createElement(ss,{isOpen:E,headerText:y,bodyText:"You cannot undo this action.",onCancel:p,onConfirm:f,confirmButtonText:"Delete"}))}Pc.displayName="FileExplorer";function Gg(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 tk(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){Gg(a,r,i,o,s,"next",l)}function s(l){Gg(a,r,i,o,s,"throw",l)}o(void 0)})}}function ki(n,e,t){return e=rk(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function rk(n){var e=nk(n,"string");return typeof e=="symbol"?e:String(e)}function nk(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 aa=ie.module("NewItemModal");class Sa extends w.PureComponent{static getValidationMessage(e){return e instanceof Pl&&e.info.type==="directory"?"Error: Cannot overwrite existing directory":"".concat(e)}static handleError(e){Te.isCanceled(e)||aa.error(e)}constructor(e){super(e),ki(this,"inputRef",h.createRef()),ki(this,"cancelableValidatePromise",void 0),ki(this,"cancelableExistingItemPromise",void 0),ki(this,"pending",new hi),ki(this,"pathMap",new Map),ki(this,"isInitialLoad",!0),this.handleModalSubmit=this.handleModalSubmit.bind(this),this.handleModalOpened=this.handleModalOpened.bind(this),this.handleSelect=this.handleSelect.bind(this),this.handleChange=this.handleChange.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleValidationError=this.handleValidationError.bind(this),this.handleOverwriteCancel=this.handleOverwriteCancel.bind(this),this.handleOverwriteConfirm=this.handleOverwriteConfirm.bind(this),this.handleExtensionChangeCancel=this.handleExtensionChangeCancel.bind(this),this.handleExtensionChangeConfirm=this.handleExtensionChangeConfirm.bind(this),this.handleBreadcrumbSelect=this.handleBreadcrumbSelect.bind(this);var{defaultValue:t}=e,r=be.hasPath(t)?be.getPath(t):"/";this.state={isSubmitting:!1,path:r,prevExtension:be.getExtension(t),showExtensionChangeModal:!1,showOverwriteModal:!1,value:be.getBaseName(t)}}componentDidUpdate(e,t){var{isOpen:r}=this.props,{isOpen:i}=e,{value:a,path:o}=this.state;!i&&r&&(this.resetValue(),this.isInitialLoad=!0),i&&r&&(!this.isInitialLoad&&(o!==t.path||a!==t.value)&&this.updateValidationStatus(o,a),this.isInitialLoad=!1)}componentWillUnmount(){this.pending.cancel(),this.cancelableValidatePromise&&this.cancelableValidatePromise.cancel(),this.cancelableExistingItemPromise&&this.cancelableExistingItemPromise.cancel()}resetValue(){var{defaultValue:e}=this.props,t=be.hasPath(e)?be.getPath(e):"/";this.setState({path:t,value:be.getBaseName(e),validationError:void 0,prevExtension:be.getExtension(e),isSubmitting:!1})}getValidationPromise(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;return this.cancelableValidatePromise&&this.cancelableValidatePromise.cancel(),this.cancelableValidatePromise=Te.makeCancelable(this.validateName(e,t,r)),this.cancelableValidatePromise}validateName(e,t,r){var i=this;return tk(function*(){be.validateName(t);var{defaultValue:a,storage:o}=i.props;if(r){var s="".concat(e).concat(t);if(s!==a)try{var l=yield o.info(s);throw new Pl(l)}catch(d){if(!(d instanceof Tc))throw d}}return t})()}updateValidationStatus(e,t){this.getValidationPromise(e,t).then(()=>{this.setState({validationError:void 0})}).catch(this.handleValidationError).catch(Sa.handleError)}handleModalOpened(){this.focusRenameInput()}handleModalSubmit(){this.submitModal()}handleChange(e){var{value:t}=e.target;this.setState({value:t})}handleSelect(e){if(aa.debug("handleSelect",e),e.type==="directory")this.setState({path:be.makePath(e.filename)});else{var t=e.basename,r=be.getPath(e.filename);this.setState({value:t,path:r},()=>{this.focusRenameInput()})}}handleKeyDown(e){var{key:t}=e;switch(e.stopPropagation(),t){case"Enter":{e.preventDefault(),this.submitModal();break}case"Escape":{e.preventDefault();var{onCancel:r}=this.props;r();break}}}handleValidationError(e){if(!(e instanceof Ja))throw e;aa.debug("Validation error",e),this.setState({validationError:e})}handleOverwriteCancel(){this.setState({showOverwriteModal:!1,isSubmitting:!1})}handleOverwriteConfirm(){this.setState({showOverwriteModal:!1});var{onSubmit:e}=this.props,{path:t,value:r}=this.state;aa.debug("handleOverwriteConfirm",t,r),e("".concat(t).concat(r),!0)}handleExtensionChangeCancel(){aa.debug("handleExtensionChangeCancel"),this.setState(e=>{var{value:t,prevExtension:r}=e,i=be.replaceExtension(t,r);return{showExtensionChangeModal:!1,value:i}}),this.submitModal(!0)}handleExtensionChangeConfirm(){aa.debug("handleExtensionChangeConfirm"),this.setState({showExtensionChangeModal:!1}),this.submitModal(!0)}focusRenameInput(){var e=this.inputRef.current;if(e){var{type:t}=this.props,{value:r}=e,i=t==="directory"?r.length:r.lastIndexOf(".");e.focus(),e.setSelectionRange(0,i>0?i:r.length)}}submitModal(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;this.setState(t=>{var{prevExtension:r,value:i,path:a}=t,{notifyOnExtensionChange:o,type:s}=this.props;aa.debug("submitModal",r,i);var l=be.getExtension(i);return o&&!e&&r!==null&&r!==l?{isSubmitting:!1,showExtensionChangeModal:!0,newExtension:l}:(this.getValidationPromise(a,i,!0).then(d=>{var{onSubmit:u}=this.props;u("".concat(a).concat(i))}).catch(d=>{if(d instanceof Pl&&s!=="directory"&&d.info.type!=="directory"){this.setState({showOverwriteModal:!0});return}throw d}).catch(d=>{throw Te.isCanceled(d)&&this.setState({isSubmitting:!1}),d}).catch(this.handleValidationError).catch(Sa.handleError),{isSubmitting:!0,showExtensionChangeModal:!1,newExtension:void 0})})}handleBreadcrumbSelect(e){this.setState({path:e})}renderPathButtons(e){var t=e.split("/");return t.pop(),t.map((r,i)=>{for(var a="",o=0;o<i;o+=1)a+="".concat(t[o],"/");return a+="".concat(r,"/"),h.createElement(h.Fragment,{key:a},h.createElement(j,{kind:"ghost",className:"directory-breadcrumbs",onClick:()=>this.handleBreadcrumbSelect(a),"aria-label":i===0?"Home":void 0,icon:i===0?h.createElement(re,{icon:fw,transform:"right-1.6"}):void 0,tooltip:i===0?"Home":void 0},r),"/")})}render(){var{storage:e,isOpen:t,onCancel:r,placeholder:i,title:a,type:o}=this.props,{isSubmitting:s,path:l,showExtensionChangeModal:d,showOverwriteModal:u,validationError:c,value:m,prevExtension:v,newExtension:g}=this.state,f=o==="directory",p=be.fileExtensionToString(v),C=be.fileExtensionToString(g),b=f?"Create":"Save",S=f?"New folder name":"Save file as";return h.createElement(h.Fragment,null,h.createElement(od,{isOpen:t,toggle:r,onOpened:this.handleModalOpened,className:"modal-dialog-centered new-file-modal theme-bg-dark"},h.createElement(sd,{toggle:r},a),h.createElement(ld,null,h.createElement("form",null,h.createElement("div",{className:"d-flex flex-column new-file-modal-content"},h.createElement("div",{className:"flex-grow-0 mb-4"},h.createElement("label",{htmlFor:"file-name-input"},S),h.createElement("input",{id:"file-name-input",type:"text",autoComplete:"off",autoCapitalize:"none",autoCorrect:"off",spellCheck:"false",className:te("form-control",{"is-invalid":c}),value:m,placeholder:i,ref:this.inputRef,onKeyDown:this.handleKeyDown,onChange:this.handleChange}),c&&h.createElement("div",{className:"invalid-feedback"},Sa.getValidationMessage(c))),h.createElement("div",{className:"flex-grow-0"},h.createElement("label",null,"Directory: /"),this.renderPathButtons(l)),h.createElement("div",{className:"flex-grow-1 file-explorer-container"},h.createElement(Pc,{onSelect:this.handleSelect,storage:e,focusedPath:l}))))),h.createElement(qf,null,h.createElement(j,{kind:"secondary",onClick:r},"Cancel"),h.createElement(j,{kind:"primary",disabled:s,onClick:this.handleModalSubmit},b))),h.createElement(ss,{isOpen:u,headerText:"Confirm overwrite",bodyText:"File with this name already exists, are you sure you want to overwrite it?",onCancel:this.handleOverwriteCancel,onConfirm:this.handleOverwriteConfirm,cancelButtonText:"Cancel",confirmButtonText:"Overwrite"}),h.createElement(ss,{isOpen:d,headerText:"Confirm extension change",bodyText:'Are you sure you want to change extension from "'.concat(p,'" to "').concat(C,'"?'),onCancel:this.handleExtensionChangeCancel,onConfirm:this.handleExtensionChangeConfirm,cancelButtonText:'Keep "'.concat(p,'"'),confirmButtonText:'Use "'.concat(C,'"')}))}}ki(Sa,"propTypes",{isOpen:q.bool,title:q.string.isRequired,defaultValue:q.string,type:q.oneOf(["file","directory"]).isRequired,onSubmit:q.func,onCancel:q.func,placeholder:q.string,storage:q.shape({}).isRequired,notifyOnExtensionChange:q.bool});ki(Sa,"defaultProps",{isOpen:!1,defaultValue:"/",notifyOnExtensionChange:!1,placeholder:"",onSubmit:(n,e)=>{},onCancel:()=>{}});const ob=Sa;function ik(n){var{createFile:e,createFolder:t,onSearchChange:r,defaultSearchText:i=""}=n;return h.createElement("div",{className:"file-explorer-toolbar"},h.createElement("div",{className:"file-explorer-toolbar-buttons"},h.createElement(j,{kind:"ghost",icon:Uf,tooltip:"New notebook",onClick:e,"aria-label":"New notebook"}),h.createElement(j,{kind:"ghost",icon:pw,tooltip:"New folder",onClick:t,"aria-label":"New folder"})),r&&h.createElement("div",{className:"file-explorer-toolbar-search"},h.createElement(Bw,{value:i,onChange:r,placeholder:"Search by name"})))}function sb(n,e,t){return e=ak(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ak(n){var e=ok(n,"string");return typeof e=="symbol"?e:String(e)}function ok(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Ga=ie.module("FileExplorerPanel"),sk=(n,e)=>{var t=bp(n),r=Ta(n,e.localDashboardId),{session:i,config:a}=r??{},o=a?.type;return{fileStorage:t,language:o,session:i}},lk=$t(sk,null,null,{forwardRef:!0});function dk(n){var e=n;return e!=null&&typeof e.button=="number"}class uo extends h.Component{static handleError(e){Ga.error(e)}static isFocusEvent(e){return dk(e)?e.detail>=2:!0}constructor(e){super(e),this.handleFileSelect=this.handleFileSelect.bind(this),this.handleCreateFile=this.handleCreateFile.bind(this),this.handleCreateDirectory=this.handleCreateDirectory.bind(this),this.handleCreateDirectoryCancel=this.handleCreateDirectoryCancel.bind(this),this.handleCreateDirectorySubmit=this.handleCreateDirectorySubmit.bind(this),this.handleDelete=this.handleDelete.bind(this),this.handleRename=this.handleRename.bind(this),this.handleSessionOpened=this.handleSessionOpened.bind(this),this.handleSessionClosed=this.handleSessionClosed.bind(this),this.handleShow=this.handleShow.bind(this),this.handleSelectionChange=this.handleSelectionChange.bind(this);var{session:t,language:r}=e;this.state={isShown:!1,language:r,session:t,showCreateFolder:!1,focusedFilePath:"/"}}componentDidMount(){this.isHidden()||this.setState({isShown:!0})}handleCreateFile(){var{glEventHub:e}=this.props,{session:t,language:r}=this.state,i={language:r,value:""};Ga.debug("handleCreateFile",t,r,i),e.emit(Ye.CREATE_NOTEBOOK,t,r,i)}handleCreateDirectory(e){this.setState({showCreateFolder:!0})}handleCreateDirectoryCancel(){Ga.debug("handleCreateDirectoryCancel"),this.setState({showCreateFolder:!1})}handleCreateDirectorySubmit(e){Ga.debug("handleCreateDirectorySubmit",e),this.setState({showCreateFolder:!1});var{fileStorage:t}=this.props;t.createDirectory(e).catch(uo.handleError)}handleDelete(e){var{glEventHub:t}=this.props;e.forEach(r=>{t.emit(Ye.CLOSE_FILE,{id:r.filename,itemName:r.filename})})}handleSelectionChange(e){var t="/";e.length===1&&(e[0].type==="directory"?t=be.makePath(e[0].filename):t=be.getPath(e[0].filename)),this.setState({focusedFilePath:t})}handleFileSelect(e,t){if(Ga.debug("fileSelect",e),e.type!=="directory"){var r=uo.isFocusEvent(t),i={id:e.filename,itemName:e.filename},{glEventHub:a}=this.props,{session:o,language:s}=this.state,l={value:null,language:s};a.emit(Ye.SELECT_NOTEBOOK,o,s,l,i,r)}}handleRename(e,t){var{glEventHub:r}=this.props;Ga.debug("handleRename",e,t),r.emit(Ye.RENAME_FILE,e,t)}handleSessionOpened(e,t){var{language:r}=t;this.setState({session:e,language:r})}handleSessionClosed(){this.setState({session:void 0,language:void 0})}handleShow(){this.setState({isShown:!0})}isHidden(){var{glContainer:e}=this.props,{isHidden:t}=e;return t}render(){var{fileStorage:e,glContainer:t,glEventHub:r}=this.props,{isShown:i,showCreateFolder:a,focusedFilePath:o}=this.state;return h.createElement(vi,{className:"file-explorer-panel",componentPanel:this,glContainer:t,glEventHub:r,onSessionOpen:this.handleSessionOpened,onSessionClose:this.handleSessionClosed,onShow:this.handleShow},h.createElement(ik,{createFile:this.handleCreateFile,createFolder:this.handleCreateDirectory}),i&&h.createElement(Pc,{isMultiSelect:!0,storage:e,onDelete:this.handleDelete,onRename:this.handleRename,onSelect:this.handleFileSelect,onSelectionChange:this.handleSelectionChange}),h.createElement(ob,{isOpen:a,type:"directory",title:"Create New Folder",storage:e,onSubmit:this.handleCreateDirectorySubmit,onCancel:this.handleCreateDirectoryCancel,defaultValue:o}))}}sb(uo,"COMPONENT","FileExplorerPanel");sb(uo,"TITLE","File Explorer");var uk=lk(uo);const Ql=uk;function Wg(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 cl(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Wg(Object(t),!0).forEach(function(r){Xo(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Wg(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Xo(n,e,t){return e=hk(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function hk(n){var e=ck(n,"string");return typeof e=="symbol"?e:String(e)}function ck(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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=ie.module("FilterSetManager"),mk="Enter name...",jg="No Available Filter Sets";class Zl extends w.Component{static animateScreenFlash(){var e,t=document.createElement("div");t.classList.add("screen-flash-overlay"),t.addEventListener("animationend",()=>{t.remove()}),(e=document.querySelector("body"))===null||e===void 0||e.appendChild(t)}constructor(e){super(e),Xo(this,"renameInputRef",h.createRef()),Xo(this,"dropdownRef",h.createRef()),Xo(this,"editDropdownRef",h.createRef()),Xo(this,"isRenamingExistingSet",fe((t,r)=>r!==void 0&&t.some(i=>{var{id:a}=i;return a===r.id}))),this.handleSettingsCancel=this.handleSettingsCancel.bind(this),this.handleSettingsClick=this.handleSettingsClick.bind(this),this.handleSettingsSave=this.handleSettingsSave.bind(this),this.handleBackgroundClick=this.handleBackgroundClick.bind(this),this.handleEditDropdownChange=this.handleEditDropdownChange.bind(this),this.handleFilterChange=this.handleFilterChange.bind(this),this.handleFilterApply=this.handleFilterApply.bind(this),this.handleCaptureNewSet=this.handleCaptureNewSet.bind(this),this.handleNameInputChange=this.handleNameInputChange.bind(this),this.handleNameInputKeyPress=this.handleNameInputKeyPress.bind(this),this.handleRenameConfirm=this.handleRenameConfirm.bind(this),this.handleRenameCancel=this.handleRenameCancel.bind(this),this.handleRestoreFullStateChange=this.handleRestoreFullStateChange.bind(this),this.handleSetDelete=this.handleSetDelete.bind(this),this.handleSetEdit=this.handleSetEdit.bind(this),this.handleSetUpdate=this.handleSetUpdate.bind(this),this.state={editId:void 0,renameSet:void 0,nameInputValue:"",nameInputError:void 0,modifiedFilterSets:[],restoreFullState:!1}}componentDidMount(){var{isValueShown:e}=this.props;e?this.updateSelectedId():this.initSettingsScreen()}componentDidUpdate(e,t){var{isValueShown:r,filterSets:i}=this.props,{modifiedFilterSets:a}=this.state;if(e.isValueShown&&!r&&this.initSettingsScreen(),this.isNameInputScreen()&&!this.isNameInputScreen(t)&&this.focusRenameInput(),i!==e.filterSets)if(!r&&i.length>0&&e.filterSets.length===0&&a.length===0){var{onChange:o}=this.props;o({isValueShown:!0,selectedId:i[0].id})}else this.updateSelectedId()}initSettingsScreen(){var{filterSets:e,selectedId:t}=this.props;vt.debug("initSettingsScreen",e,t),this.setState({modifiedFilterSets:[...e],editId:t})}updateSelectedId(){var{isValueShown:e,filterSets:t,selectedId:r,onChange:i}=this.props;if(vt.debug("updateSelectedId",t,r),!!e&&!t.some(o=>{var{id:s}=o;return s===r})){var a=t.length===0;i({isValueShown:!a,selectedId:a?void 0:t[0].id})}}handleEditDropdownChange(e){var{value:t}=e.target;this.setState({editId:t})}handleFilterChange(e){var{value:t}=e.target,{isValueShown:r,onChange:i}=this.props;this.applyFilterSet(t),i({isValueShown:r,selectedId:t})}handleFilterApply(){var{selectedId:e}=this.props;this.applyFilterSet(e)}handleSettingsCancel(){var{onChange:e,selectedId:t,filterSets:r}=this.props;this.setState({modifiedFilterSets:[]}),r.length>0&&e({isValueShown:!0,selectedId:t})}handleSettingsSave(){var{onChange:e,onUpdateSets:t}=this.props,{modifiedFilterSets:r,editId:i}=this.state;this.setState({modifiedFilterSets:[]}),vt.debug("Update sets",r,i),t(r),r.length>0&&e({isValueShown:!0,selectedId:i})}handleCaptureNewSet(){var{getFilterState:e}=this.props;Zl.animateScreenFlash();var t=Xe(),r=e(),i={id:t,title:"",panels:r};vt.debug("handleSetCreate",i),this.setState({nameInputValue:"",nameInputError:void 0,renameSet:i})}handleRenameCancel(){this.setState({renameSet:void 0})}handleRestoreFullStateChange(e){this.setState({restoreFullState:e.target.value==="true"})}getNameError(e){var t,{renameSet:r,modifiedFilterSets:i}=this.state,a=(t=e?.trim())!==null&&t!==void 0?t:"";if(a.length===0)return vt.debug("Name cannot be empty",a),"Name cannot be empty";if(r!==void 0&&i.some(o=>{var{title:s,id:l}=o;return s===a&&l!==r.id}))return vt.debug("Set with this name already exists",a),"Set with this name already exists"}handleRenameConfirm(){var e,{nameInputValue:t,renameSet:r,modifiedFilterSets:i,restoreFullState:a}=this.state;if(r===void 0){vt.error("Renamed set undefined.");return}var o=this.getNameError(t);if(vt.debug("handleRenameConfirm",t,o),o!==void 0){this.setState({nameInputError:o});return}var s=(e=t?.trim())!==null&&e!==void 0?e:"",l=cl(cl({},r),{},{title:s,restoreFullState:a}),d=i.findIndex(c=>{var{id:m}=c;return m===r.id}),u=[...i];d>=0?(u[d]=l,vt.debug("Renamed existing set",u)):(u.push(l),vt.debug("Added new set to modified sets",u)),this.setState({editId:l.id,modifiedFilterSets:u,renameSet:void 0})}handleSetDelete(){this.setState(e=>{var{editId:t,modifiedFilterSets:r}=e,i=r.findIndex(l=>{var{id:d}=l;return d===t});if(i<0)return vt.error("Unable to find selected filterSet index",r,t),null;var a=r.filter(l=>{var{id:d}=l;return d!==t}),o=Math.max(0,Math.min(a.length-1,i-1)),s=a.length>0?a[o].id:void 0;return vt.debug("Deleted selected set",t,r,a),vt.debug("New selection",o,s),{modifiedFilterSets:a,editId:s}})}handleSetUpdate(){var{getFilterState:e}=this.props;Zl.animateScreenFlash();var t=e();this.setState(r=>{var{modifiedFilterSets:i,editId:a}=r;if(a===void 0)return vt.error("Filter for update not selected."),null;var o=[...i],s=o.findIndex(l=>{var{id:d}=l;return d===a});return s<0?(vt.error("Selected set for update not found."),null):(o[s]=cl(cl({},o[s]),{},{panels:t}),vt.debug("Update set",o,t),{modifiedFilterSets:o})})}handleSetEdit(){this.setState(e=>{var{editId:t,modifiedFilterSets:r}=e,i=r.find(s=>{var{id:l}=s;return l===t});if(i===void 0)return vt.error("Could not find selected set",t,r),null;var{title:a,restoreFullState:o=!1}=i;return{nameInputValue:a,nameInputError:void 0,renameSet:i,restoreFullState:o}})}handleSettingsClick(e){e.stopPropagation();var{onChange:t,selectedId:r}=this.props;t({isValueShown:!1,selectedId:r})}handleBackgroundClick(e){vt.debug("handleBackgroundClick"),e.target!==this.dropdownRef.current&&this.focusInput()}handleNameInputChange(e){var{value:t}=e.target,r=this.getNameError(t);this.setState({nameInputValue:t,nameInputError:r})}handleNameInputKeyPress(e){var{key:t}=e;t==="Enter"&&(e.preventDefault(),this.handleRenameConfirm())}isNameInputScreen(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.state,{renameSet:t}=e;return t!==void 0}applyFilterSet(e){var{onApply:t,filterSets:r}=this.props;if(e===void 0){vt.debug("No filter selected");return}var i=r.find(a=>{var{id:o}=a;return o===e});if(i===void 0){vt.debug("Selected id not found in filterSets",e,r);return}vt.debug("Apply filterSet",i),t(i)}focusInput(){var e;(e=this.dropdownRef.current)===null||e===void 0||e.focus()}focusRenameInput(){var e;(e=this.renameInputRef.current)===null||e===void 0||e.focus()}render(){var{nameInputValue:e,nameInputError:t,editId:r,renameSet:i,modifiedFilterSets:a,restoreFullState:o}=this.state,{isValueShown:s,filterSets:l,selectedId:d}=this.props,u=this.isNameInputScreen(),c=this.isRenamingExistingSet(a,i),m=a.length===0,v=!u&&m&&l.length===0,g=!u&&!v,f=h.createElement("div",{className:"fa-layers mr-3"},h.createElement(re,{icon:no,mask:Gu,transform:"shrink-1 down-5 right-7"}),h.createElement(re,{icon:Yi,className:"text-primary",transform:"shrink-6 down-5 right-7"})),p=h.createElement("div",{className:"fa-layers"},h.createElement(re,{icon:no,mask:Gu,transform:"shrink-1 down-5 right-7"}),h.createElement(re,{icon:Wu,transform:"shrink-1 down-5 right-7"}));return h.createElement("div",{className:"filter-set-manager fill-parent-absolute"},h.createElement(Bh,{className:"w-100 h-100",isFlipped:s},h.createElement("div",{className:"filter-set-manager-settings-card fill-parent-absolute",key:"front"},h.createElement("div",{className:"filter-set-manager-card-content"},v&&h.createElement("div",null,h.createElement(j,{kind:"ghost",className:"btn btn-link no-underline",onClick:this.handleCaptureNewSet,icon:f},"Capture filter set"),h.createElement("div",{className:"py-3 text-muted small"},"Takes a snapshot of the currently applied filters on all panels, allowing you to restore saved filter sets later.")),u&&h.createElement("div",{className:"d-flex flex-column justify-content-center","data-testid":"edit-filter-set-container"},h.createElement("div",{className:"form-group"},h.createElement("label",null,c?"Edit set":"Name captured set"),h.createElement("div",{className:"name-input-container"},h.createElement("input",{type:"text",className:"input-set-name form-control",placeholder:mk,value:e,ref:this.renameInputRef,onChange:this.handleNameInputChange,onKeyPress:this.handleNameInputKeyPress,spellCheck:"false"}),h.createElement(j,{"data-testid":"rename-confirm-button",kind:"ghost",className:"btn btn-link no-underline pt-2 pb-2",onClick:this.handleRenameConfirm,tooltip:"Save","test-id":"button-save",icon:jf}),h.createElement(j,{"data-testid":"rename-cancel-button",kind:"ghost",className:"btn btn-link no-underline pt-2 pb-2",onClick:this.handleRenameCancel,tooltip:"Cancel",icon:Cw})),t!==void 0&&h.createElement("div",{className:"error-message"},t)),h.createElement("div",{className:"form-group"},h.createElement(cd,{onChange:this.handleRestoreFullStateChange,value:"".concat(o)},h.createElement(si,{value:"false"},"Restore only filters"),h.createElement(si,{value:"true"},"Restore full table state")))),g&&h.createElement("div",{className:"filter-set-manager-settings-grid-1"},h.createElement("div",{className:"form-group"},h.createElement("label",null,"Edit filter sets"),h.createElement("div",{className:"filter-select-container"},h.createElement("select",{"data-testid":"settings-card-filter-select",ref:this.editDropdownRef,value:r??"-1",className:"custom-select filter-value-select",onChange:this.handleEditDropdownChange,disabled:m},m&&h.createElement("option",{value:"-1",disabled:!0},jg),a.map(C=>{var{id:b,title:S}=C;return h.createElement("option",{key:b,value:b},S)})),h.createElement(j,{kind:"ghost",onClick:this.handleSetUpdate,disabled:m,icon:p,tooltip:"Update"}),h.createElement(j,{kind:"ghost",onClick:this.handleSetEdit,disabled:m,icon:ps,tooltip:"Edit"}),h.createElement(j,{kind:"ghost",onClick:this.handleSetDelete,disabled:m,icon:Hr,tooltip:"Delete"}))),h.createElement("div",null,h.createElement(j,{kind:"ghost",className:"btn btn-link no-underline",onClick:this.handleCaptureNewSet,icon:f},"Capture new filter set")),h.createElement("div",{className:"py-3 text-right"},h.createElement(j,{kind:"secondary",onClick:this.handleSettingsCancel},"Cancel")," ",h.createElement(j,{kind:"primary",onClick:this.handleSettingsSave},"Save"))))),h.createElement("div",{className:"filter-set-manager-value-card fill-parent-absolute",key:"back",onClick:this.handleBackgroundClick},h.createElement("div",{className:"filter-set-manager-column"},h.createElement("div",{className:"filter-set-manager-column-title"},"Filter sets")),h.createElement("div",{className:"filter-set-manager-card-content"},h.createElement("div",{className:"filter-set-manager-value-input"},h.createElement("div",{className:"filter-select-container"},h.createElement("select",{"data-testid":"value-card-filter-select",ref:this.dropdownRef,value:d,className:"custom-select filter-value-select",onChange:this.handleFilterChange},l.length===0&&h.createElement("option",{value:"-1",disabled:!0},jg),l.map(C=>{var{id:b,title:S}=C;return h.createElement("option",{key:b,value:b},S)})),h.createElement(j,{"data-testid":"filter-apply-button",kind:"ghost",onClick:this.handleFilterApply,icon:kh,tooltip:"Apply Filter Set"})))),h.createElement("div",{className:"filter-set-manager-menu"},h.createElement(j,{kind:"ghost",className:"btn btn-link btn-link-icon m-2 px-2",onClick:this.handleSettingsClick,tooltip:"Settings",icon:h.createElement(re,{icon:fs,transform:"grow-4"})})))))}}const vk=Zl;function Oc(n){var e,t,r,{model:i,widgetName:a,glContainer:o,description:s}=n,l=((e=i?.rowCount)!==null&&e!==void 0?e:0)-((t=i?.pendingRowCount)!==null&&t!==void 0?t:0),d=i?.displayString(l,"long"),u=(r=i?.columnCount)!==null&&r!==void 0?r:0,c=i?.displayString(u,"long");return h.createElement(Fd,{widgetType:"Table",widgetName:a,glContainer:o,description:s},h.createElement("hr",{className:"tab-tooltip-divider"}),h.createElement("span",null,"Number of Columns"),h.createElement("span",{className:"tab-tooltip-statistic-value"},c),h.createElement("span",null,"Number of Rows"),h.createElement("span",{className:"tab-tooltip-statistic-value"},d))}Oc.propTypes={glContainer:nc.Container.isRequired,widgetName:q.string.isRequired,description:q.string};Oc.defaultProps={description:null};function zg(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function oa(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?zg(Object(t),!0).forEach(function(r){Dt(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):zg(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Dt(n,e,t){return e=gk(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function gk(n){var e=fk(n,"string");return typeof e=="symbol"?e:String(e)}function fk(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Dn=ie.module("IrisGridPanel"),pk=500,Ck={IrisGrid:jC,IrisGridTableModel:zC,ContextMenuRoot:Xf};class ho extends w.PureComponent{constructor(e){super(e),Dt(this,"irisGrid",void 0),Dt(this,"pluginRef",void 0),Dt(this,"modelPromise",void 0),Dt(this,"irisGridState",void 0),Dt(this,"gridState",void 0),Dt(this,"pluginState",void 0),Dt(this,"irisGridUtils",void 0),Dt(this,"getGridInputFilters",fe((r,i)=>ye.getInputFiltersForColumns(r,i.filter(a=>{var{value:o,excludePanelIds:s}=a,l=Q.getIdFromPanel(this);return o!=null&&(s==null||l!=null&&!s.includes(l))})))),Dt(this,"getAlwaysFetchColumns",fe((r,i)=>{for(var a=Q.getIdFromPanel(this),o=new Set(i),s=0;s<r.length;s+=1){var{start:l}=r[s];l!=null&&l.panelId===a&&o.add(l.columnName)}return[...o]})),Dt(this,"getPluginContent",fe((r,i,a,o,s)=>!i||!Ca(i)||r==null||i.table==null?null:h.createElement("div",{className:"iris-grid-plugin"},h.createElement(r,{ref:this.pluginRef,filter:this.handlePluginFilter,onFilter:this.handlePluginFilter,fetchColumns:this.handlePluginFetchColumns,onFetchColumns:this.handlePluginFetchColumns,table:i.table,user:a,panel:this,workspace:o,components:Ck,onStateChange:this.handlePluginStateChange,pluginState:s})))),Dt(this,"getDehydratedIrisGridPanelState",fe((r,i,a,o,s)=>ye.dehydrateIrisGridPanelState(r,{isSelectingPartition:i,partition:a,partitionColumn:o,advancedSettings:s}))),Dt(this,"getDehydratedIrisGridState",fe((r,i,a,o,s,l,d,u,c,m,v,g,f,p,C,b,S,E,y,T,O)=>(L(this.irisGridUtils),this.irisGridUtils.dehydrateIrisGridState(r,{advancedFilters:a,aggregationSettings:S,customColumnFormatMap:o,isFilterBarShown:s,metrics:{userColumnWidths:C,userRowHeights:b},quickFilters:l,customColumns:d,reverseType:u,rollupConfig:c,showSearchBar:m,searchValue:v,selectDistinctColumns:g,selectedSearchColumns:f,sorts:i,invertSearchColumns:p,pendingDataMap:E,frozenColumns:y,conditionalFormats:T,columnHeaderGroups:O})))),Dt(this,"getDehydratedGridState",fe((r,i,a,o,s)=>ye.dehydrateGridState(r,{isStuckToBottom:o,isStuckToRight:s,movedColumns:i,movedRows:a}))),Dt(this,"getCachedPanelState",fe((r,i,a,o)=>({irisGridPanelState:r,irisGridState:i,gridState:a,pluginState:o}))),Dt(this,"savePanelState",rt(()=>{var{irisGridState:r,gridState:i,pluginState:a}=this;L(r);var{onPanelStateUpdate:o}=this.props,{model:s,panelState:l,isSelectingPartition:d,partition:u,partitionColumn:c,advancedSettings:m}=this.state,{advancedFilters:v,aggregationSettings:g,customColumnFormatMap:f,isFilterBarShown:p,quickFilters:C,customColumns:b,reverseType:S,rollupConfig:E,showSearchBar:y,searchValue:T,selectDistinctColumns:O,selectedSearchColumns:D,sorts:P,invertSearchColumns:R,metrics:_,pendingDataMap:M,frozenColumns:A,conditionalFormats:B,columnHeaderGroups:$}=r;L(s),L(_);var{userColumnWidths:z,userRowHeights:G}=_;L(i);var{isStuckToBottom:K,isStuckToRight:X,movedColumns:J,movedRows:I}=i,N=this.getCachedPanelState(this.getDehydratedIrisGridPanelState(s,d,u,c,m),this.getDehydratedIrisGridState(s,P,v,f,p,C,b,S,E,y,T,O,D,R,z,G,g,M,A,B,$),this.getDehydratedGridState(s,J,I,K,X),a);N!==l&&(Dn.debug("Saving panel state",this,N),this.setState({panelState:N}),o?.(N))},pk)),this.handleAdvancedSettingsChange=this.handleAdvancedSettingsChange.bind(this),this.handleColumnsChanged=this.handleColumnsChanged.bind(this),this.handleTableChanged=this.handleTableChanged.bind(this),this.handleColumnSelected=this.handleColumnSelected.bind(this),this.handleDataSelected=this.handleDataSelected.bind(this),this.handleError=this.handleError.bind(this),this.handleGridStateChange=this.handleGridStateChange.bind(this),this.handlePluginStateChange=this.handlePluginStateChange.bind(this),this.handlePartitionAppend=this.handlePartitionAppend.bind(this),this.handleCreateChart=this.handleCreateChart.bind(this),this.handleResize=this.handleResize.bind(this),this.handleShow=this.handleShow.bind(this),this.handleTabClicked=this.handleTabClicked.bind(this),this.handleDisconnect=this.handleDisconnect.bind(this),this.handleReconnect=this.handleReconnect.bind(this),this.handleLoadSuccess=this.handleLoadSuccess.bind(this),this.handleLoadError=this.handleLoadError.bind(this),this.isColumnSelectionValid=this.isColumnSelectionValid.bind(this),this.handleContextMenu=this.handleContextMenu.bind(this),this.handlePluginFilter=this.handlePluginFilter.bind(this),this.handlePluginFetchColumns=this.handlePluginFetchColumns.bind(this),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.irisGrid=h.createRef(),this.pluginRef=h.createRef();var{panelState:t}=e;this.pluginState=null,this.irisGridUtils=null,this.state={error:null,isDisconnected:!1,isLoaded:!1,isLoading:!0,isModelReady:!1,model:void 0,advancedFilters:new Map,aggregationSettings:{aggregations:[],showOnTop:!1},advancedSettings:new Map(yC.DEFAULTS),customColumns:[],customColumnFormatMap:new Map,isFilterBarShown:!1,quickFilters:new Map,sorts:[],userColumnWidths:new Map,userRowHeights:new Map,reverseType:H.REVERSE_TYPE.NONE,movedColumns:[],movedRows:[],isSelectingPartition:!1,partition:null,partitionColumn:null,rollupConfig:void 0,showSearchBar:!1,searchValue:"",selectedSearchColumns:void 0,invertSearchColumns:!0,Plugin:void 0,pluginFilters:[],pluginFetchColumns:[],modelQueue:[],pendingDataMap:new Map,frozenColumns:void 0,panelState:t,irisGridStateOverrides:{},gridStateOverrides:{},isStuckToBottom:!1,isStuckToRight:!1,conditionalFormats:[],selectDistinctColumns:[]}}componentDidMount(){this.initModel()}componentDidUpdate(e,t){var{model:r}=this.state;r!==t.model&&(t.model!=null&&(this.stopModelListening(t.model),t.model.close()),r!=null&&this.startModelListening(r))}componentWillUnmount(){this.savePanelState.cancel(),this.modelPromise!=null&&(this.modelPromise.cancel(),this.modelPromise=void 0);var{model:e}=this.state;e&&(this.stopModelListening(e),e.close())}getTableName(){var{metadata:e}=this.props;return e.table}initModel(){this.setState({isModelReady:!1,isLoading:!0,error:null});var{makeModel:e}=this.props;this.modelPromise!=null&&this.modelPromise.cancel(),this.modelPromise=Te.makeCancelable(e(),t=>t.close()),this.modelPromise.then(this.handleLoadSuccess).catch(this.handleLoadError)}handleLoadSuccess(e){var t=e,{panelState:r,irisGridStateOverrides:i}=this.state,a=[];if(this.irisGridUtils=new ye(t.dh),r!=null){var{irisGridState:o}=r,{aggregationSettings:s,customColumns:l,selectDistinctColumns:d=[],rollupConfig:u}=oa(oa({},o),i);l.length>0&&a.push(c=>{c.customColumns=l}),u!=null&&u.columns.length>0&&a.push(c=>{c.rollupConfig=ye.getModelRollupConfig(c.originalColumns,u,s)}),d.length>0&&a.push(c=>{c.selectDistinctColumns=d})}this.setState({model:t,modelQueue:a}),this.initModelQueue(t,a)}initModelQueue(e,t){var r=e;if(t.length===0){this.modelInitialized(r);return}var i=t.shift();Dn.debug("initModelQueue",i),i&&i(r),this.setState({modelQueue:t})}handleAdvancedSettingsChange(e,t){Dn.debug("handleAdvancedSettingsChange",e,t),this.setState(r=>{var{advancedSettings:i}=r;return i.get(e)===t?null:{advancedSettings:new Map(i).set(e,t)}})}handlePluginFilter(e){var t,r,{model:i}=this.state;L(i);var{columns:a,formatter:o}=i,s=(t=(r=this.irisGridUtils)===null||r===void 0?void 0:r.getFiltersFromInputFilters(a,e,o.timeZone))!==null&&t!==void 0?t:[];this.setState({pluginFilters:s})}handlePluginFetchColumns(e){this.setState({pluginFetchColumns:e})}handleContextMenu(e){var t,r,i;return(t=(r=this.pluginRef.current)===null||r===void 0||(i=r.getMenu)===null||i===void 0?void 0:i.call(r,e))!==null&&t!==void 0?t:[]}isColumnSelectionValid(e){var{columnSelectionValidator:t}=this.props;return t&&e?t(this,e):!1}handleGridStateChange(e,t){this.irisGridState=e,this.gridState=t,this.setState({isLoaded:!0,isLoading:!1}),this.savePanelState();var{glEventHub:r,onStateChange:i}=this.props;r.emit(fn.STATE_CHANGED,this),i?.(e,t)}handlePluginStateChange(e){var{irisGridState:t,gridState:r}=this;this.pluginState=e,t!==null&&r!==null&&this.savePanelState()}handleColumnsChanged(e){var{isModelReady:t,model:r,modelQueue:i}=this.state;t?this.sendColumnsChange(e.detail):(L(r),this.initModelQueue(r,i))}handleTableChanged(e){Dn.debug("handleTableChanged",e);var{glEventHub:t}=this.props,{detail:r}=e;t.emit(it.TABLE_CHANGED,this,r)}handlePartitionAppend(e,t){var{glEventHub:r}=this.props,{name:i}=e,a=this.getTableName(),o="".concat(a," = ").concat(a,'.where("').concat(i,"=`").concat(t,'`")');r.emit(Lr.SEND_COMMAND,o,!1,!0)}handleCreateChart(e,t){this.savePanelState.flush(),this.setState(()=>null,()=>{var{glEventHub:r,inputFilters:i,metadata:a}=this.props,{table:o}=a,{panelState:s}=this.state,l=Q.getIdFromPanel(this),d;s&&(d=ye.extractTableSettings(s,i)),r.emit(fn.CREATE_CHART,{metadata:{settings:e,sourcePanelId:l,table:o,tableSettings:d},table:Ca(t)?t.table:void 0})})}handleColumnSelected(e){var{glEventHub:t}=this.props;t.emit(fn.COLUMN_SELECTED,this,e)}handleDataSelected(e,t){var{glEventHub:r}=this.props;r.emit(fn.DATA_SELECTED,this,t)}handleResize(){this.updateGrid()}handleShow(){this.updateGrid()}handleTabClicked(){this.irisGrid.current&&this.irisGrid.current.focus()}handleError(e){Dn.error(e),this.setState({error:e,isLoading:!1})}handleDisconnect(){this.setState({error:new Error("Table disconnected"),isDisconnected:!0,isLoading:!1})}handleReconnect(){this.setState({isDisconnected:!1,error:null})}handleLoadError(e){Te.isCanceled(e)||this.handleError(e)}modelInitialized(e){var{glEventHub:t,loadPlugin:r}=this.props;if(this.modelPromise=void 0,this.loadPanelState(e),this.setState({isModelReady:!0}),Ca(e)){var{table:i}=e,{pluginName:a}=i;if(a!==""&&r!=null&&a!=null){var o=r(a);this.setState({Plugin:o})}t.emit(it.TABLE_CHANGED,this,i)}this.sendColumnsChange(e.columns)}handleClearAllFilters(){var e=this.irisGrid.current,{isDisconnected:t}=this.state;e!=null&&!t&&e.clearAllFilters()}sendColumnsChange(e){Dn.debug2("sendColumnsChange",e);var{glEventHub:t}=this.props;t.emit(it.COLUMNS_CHANGED,this,e)}startModelListening(e){e.addEventListener(Se.EVENT.DISCONNECT,this.handleDisconnect),e.addEventListener(Se.EVENT.RECONNECT,this.handleReconnect),e.addEventListener(Se.EVENT.COLUMNS_CHANGED,this.handleColumnsChanged),e.addEventListener(Se.EVENT.TABLE_CHANGED,this.handleTableChanged)}stopModelListening(e){e.removeEventListener(Se.EVENT.DISCONNECT,this.handleDisconnect),e.removeEventListener(Se.EVENT.RECONNECT,this.handleReconnect),e.removeEventListener(Se.EVENT.COLUMNS_CHANGED,this.handleColumnsChanged),e.removeEventListener(Se.EVENT.TABLE_CHANGED,this.handleTableChanged)}getCoordinateForColumn(e){var t,r,i,{model:a}=this.state;if(!a)return null;var o=this.irisGrid.current,{gridWrapper:s}=o||{},l=(t=s?.getBoundingClientRect())!==null&&t!==void 0?t:null;if(l==null||l.width<=0||l.height<=0)return null;L(o);var{metrics:d}=o.state;L(d);var{columnHeaderHeight:u,allColumnXs:c,allColumnWidths:m,right:v,columnHeaderMaxDepth:g}=d,f=a.getColumnIndexByName(e);L(f);var p=o.getVisibleColumn(f),C=(r=c.get(p))!==null&&r!==void 0?r:0,b=(i=m.get(p))!==null&&i!==void 0?i:0,S=Math.max(l.left,Math.min(p>v?l.right:l.left+C+b*.5,l.right)),E=l.top+u*g;return[S,E]}setFilterMap(e){var t=this.irisGrid.current;t?.setFilterMap(e)}setAdvancedFilterMap(e){var t=this.irisGrid.current;t?.setAdvancedFilterMap(e)}setFilters(e){var{quickFilters:t,advancedFilters:r}=e;Dn.debug("setFilters",t,r);var{model:i,isDisconnected:a}=this.state,o=this.irisGrid.current;if(o==null||a){Dn.debug("Ignore setFilters, model disconnected");return}L(i);var{columns:s,formatter:l}=i,d=ye.changeFilterColumnNamesToIndexes(i.columns,t).filter(c=>{var[m]=c;return i.isFilterable(m)}),u=ye.changeFilterColumnNamesToIndexes(i.columns,r).filter(c=>{var[m]=c;return i.isFilterable(m)});L(this.irisGridUtils),o.clearAllFilters(),o.setFilters({quickFilters:this.irisGridUtils.hydrateQuickFilters(s,d,l.timeZone),advancedFilters:this.irisGridUtils.hydrateAdvancedFilters(s,u,l.timeZone)})}setStateOverrides(e){Dn.debug("setStateOverrides",e);var{irisGridState:t,gridState:r}=e;this.setState({irisGridStateOverrides:t,gridStateOverrides:r},()=>{this.initModel()})}unsetFilterValue(){}loadPanelState(e){var{panelState:t,irisGridStateOverrides:r,gridStateOverrides:i}=this.state;if(t!=null)try{var{gridState:a,irisGridState:o,irisGridPanelState:s}=t,l=oa({},r),{quickFilters:d,advancedFilters:u}=l;d&&(l.quickFilters=ye.changeFilterColumnNamesToIndexes(e.columns,d)),u&&(l.advancedFilters=ye.changeFilterColumnNamesToIndexes(e.columns,u));var{isSelectingPartition:c,partition:m,partitionColumn:v,advancedSettings:g}=ye.hydrateIrisGridPanelState(e,s);L(this.irisGridUtils);var{advancedFilters:f,customColumns:p,customColumnFormatMap:C,isFilterBarShown:b,quickFilters:S,reverseType:E,rollupConfig:y,aggregationSettings:T,sorts:O,userColumnWidths:D,userRowHeights:P,showSearchBar:R,searchValue:_,selectDistinctColumns:M,selectedSearchColumns:A,invertSearchColumns:B,pendingDataMap:$,frozenColumns:z,conditionalFormats:G,columnHeaderGroups:K}=this.irisGridUtils.hydrateIrisGridState(e,oa(oa({},o),l)),{isStuckToBottom:X,isStuckToRight:J,movedColumns:I,movedRows:N}=ye.hydrateGridState(e,oa(oa({},a),i),o.customColumns);this.setState({advancedFilters:f,advancedSettings:g,conditionalFormats:G,customColumns:p,customColumnFormatMap:C,isFilterBarShown:b,isSelectingPartition:c,movedColumns:I,movedRows:N,partition:m,partitionColumn:v,quickFilters:S,reverseType:E,rollupConfig:y,aggregationSettings:T,sorts:O,userColumnWidths:D,userRowHeights:P,showSearchBar:R,searchValue:_,selectDistinctColumns:M,selectedSearchColumns:A,invertSearchColumns:B,pendingDataMap:$,frozenColumns:z,isStuckToBottom:X,isStuckToRight:J,columnHeaderGroups:K})}catch(k){Dn.error("loadPanelState failed to load panelState",t,k)}}updateGrid(){var e,t,r=(e=(t=this.irisGrid.current)===null||t===void 0?void 0:t.grid)!==null&&e!==void 0?e:null;r&&r.handleResize()}render(){var e,t,{children:r,glContainer:i,glEventHub:a,columnSelectionValidator:o,getDownloadWorker:s,inputFilters:l,links:d,metadata:u,panelState:c,user:m,workspace:v,settings:g,theme:f}=this.props,{advancedFilters:p,aggregationSettings:C,advancedSettings:b,conditionalFormats:S,customColumns:E,customColumnFormatMap:y,error:T,isDisconnected:O,isFilterBarShown:D,isSelectingPartition:P,isStuckToBottom:R,isStuckToRight:_,isLoaded:M,isLoading:A,isModelReady:B,model:$,movedColumns:z,movedRows:G,partition:K,partitionColumn:X,quickFilters:J,reverseType:I,rollupConfig:N,sorts:k,userColumnWidths:x,userRowHeights:Y,showSearchBar:W,searchValue:ee,selectDistinctColumns:oe,selectedSearchColumns:ae,invertSearchColumns:se,Plugin:pe,pluginFilters:He,pluginFetchColumns:at,pendingDataMap:ot,frozenColumns:Qe,columnHeaderGroups:lt}=this.state,Ot=T!=null?"Unable to open table. ".concat(T):void 0,{table:Le}=u,_t=(e=$?.description)!==null&&e!==void 0?e:void 0,Vt=(t=c?.pluginState)!==null&&t!==void 0?t:null,yr=r??this.getPluginContent(pe,$,m,v,Vt),{permissions:Tr}=m,{canCopy:an,canDownloadCsv:Tn}=Tr;return h.createElement(fc,{errorMessage:Ot,isDisconnected:O,isLoading:A,isLoaded:M,className:"iris-grid-panel",glContainer:i,glEventHub:a,onClearAllFilters:this.handleClearAllFilters,onResize:this.handleResize,onShow:this.handleShow,onTabFocus:this.handleShow,onTabClicked:this.handleTabClicked,widgetName:Le,widgetType:"Table",description:_t,componentPanel:this,renderTabTooltip:()=>h.createElement(Oc,{model:$,widgetName:Le,glContainer:i,description:_t})},B&&$&&h.createElement(jC,{advancedFilters:p,aggregationSettings:C,advancedSettings:b,alwaysFetchColumns:this.getAlwaysFetchColumns(d,at),columnAllowedCursor:"linker",columnNotAllowedCursor:"linker-not-allowed",customColumns:E,customColumnFormatMap:y,columnSelectionValidator:this.isColumnSelectionValid,conditionalFormats:S,inputFilters:this.getGridInputFilters($.columns,l),applyInputFiltersOnInit:c==null,isFilterBarShown:D,isSelectingColumn:o!=null,isSelectingPartition:P,isStuckToBottom:R,isStuckToRight:_,movedColumns:z,movedRows:G,partition:K,partitionColumn:X,quickFilters:J,reverseType:I,rollupConfig:N,settings:g,sorts:k,userColumnWidths:x,userRowHeights:Y,model:$,showSearchBar:W,searchValue:ee,selectedSearchColumns:ae,selectDistinctColumns:oe,invertSearchColumns:se,onColumnSelected:this.handleColumnSelected,onCreateChart:this.handleCreateChart,onDataSelected:this.handleDataSelected,onError:this.handleError,onPartitionAppend:this.handlePartitionAppend,onStateChange:this.handleGridStateChange,onContextMenu:this.handleContextMenu,onAdvancedSettingsChange:this.handleAdvancedSettingsChange,customFilters:He,pendingDataMap:ot,canCopy:an,canDownloadCsv:Tn,ref:this.irisGrid,getDownloadWorker:s,frozenColumns:Qe,theme:f,columnHeaderGroups:lt},yr))}}Dt(ho,"defaultProps",{onStateChange:()=>{},onPanelStateUpdate:()=>{}});Dt(ho,"displayName","IrisGridPanel");Dt(ho,"COMPONENT","IrisGridPanel");var bk=(n,e)=>{var{localDashboardId:t=Sn}=e;return{inputFilters:pc(n,t),links:Eo(n,t),columnSelectionValidator:Sc(n,t),user:pp(n),workspace:Sd(n),settings:Bt(n)}},Sk=$t(bk,null,null,{forwardRef:!0})(ho);const wa=Sk;function rs(n,e,t){return e=wk(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function wk(n){var e=Ek(n,"string");return typeof e=="symbol"?e:String(e)}function Ek(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Kg=ie.module("InputFilter"),yk=150;class co extends w.Component{constructor(e){super(e),rs(this,"inputRef",void 0),rs(this,"getItemLabel",Pe((a,o)=>{var{name:s,type:l}=a[o];if(o>0&&a[o-1].name===s||o<a.length-1&&a[o+1].name===s){var d=l.substring(l.lastIndexOf(".")+1);return"".concat(s," (").concat(d,")")}return s})),rs(this,"sendUpdate",rt(()=>{var{onChange:a}=this.props,{column:o,value:s,isValueShown:l}=this.state;a({column:o,isValueShown:l,value:s})},yk)),this.handleColumnChange=this.handleColumnChange.bind(this),this.handleInputKeyPress=this.handleInputKeyPress.bind(this),this.handleValueChange=this.handleValueChange.bind(this),this.handleSettingsCancel=this.handleSettingsCancel.bind(this),this.handleSettingsClick=this.handleSettingsClick.bind(this),this.handleSettingsSave=this.handleSettingsSave.bind(this),this.handleBackgroundClick=this.handleBackgroundClick.bind(this),this.inputRef=h.createRef();var{column:t,isValueShown:r,value:i}=e;this.state={column:t,selectedColumn:t,value:i,isValueShown:r}}componentDidUpdate(e,t){var{column:r}=this.props,{column:i,value:a,isValueShown:o}=this.state;r!==e.column&&this.setState({column:r,selectedColumn:r}),o!==void 0&&o&&o!==t.isValueShown&&this.focusInput(),(i!==t.column||a!==t.value||o!==t.isValueShown)&&this.sendUpdate()}componentWillUnmount(){this.sendUpdate.flush()}handleColumnChange(e){var{columns:t}=this.props,{value:r}=e.target,i=t[parseInt(r,10)];Kg.debug2("handleColumnChange",i),this.setState({selectedColumn:i,value:void 0})}handleInputKeyPress(e){e.key==="Enter"&&(e.preventDefault(),e.stopPropagation(),this.setState(t=>{var{value:r}=t;return r==null?{value:""}:null},()=>{this.sendUpdate(),this.sendUpdate.flush()}))}handleValueChange(e){var{value:t}=e.target;Kg.debug2("handleValueChange",t),this.setState({value:t})}handleSettingsCancel(){var{column:e}=this.state;this.setState({selectedColumn:e,isValueShown:!0})}handleSettingsSave(){var{selectedColumn:e}=this.state;this.setState({column:e,isValueShown:!0})}handleSettingsClick(e){var{column:t}=this.state;this.setState({selectedColumn:t,isValueShown:!1}),e.stopPropagation()}handleBackgroundClick(e){e.target!==this.inputRef.current&&this.focusInput()}focusInput(){this.inputRef.current!==null&&(this.inputRef.current.select(),this.inputRef.current.focus())}clearFilter(){this.setState({value:""})}setFilterState(e){var{name:t,type:r,value:i,isValueShown:a}=e,o=t!=null&&r!=null?{name:t,type:r}:void 0,s=a===void 0?{column:o,value:i}:{column:o,value:i,isValueShown:a};this.setState(s)}render(){var{columns:e}=this.props,{column:t,isValueShown:r,selectedColumn:i,value:a}=this.state,o=a==null||a.length===0?co.PLACEHOLDER.length:a.length,s=null;if(t!=null){var l=e.findIndex(d=>d.name===t.name&&d.type===t.type);s=l>=0?this.getItemLabel(e,l):t.name}return h.createElement(Bh,{className:"input-filter fill-parent-absolute",isFlipped:r??!1},h.createElement("div",{className:"input-filter-settings-card"},h.createElement("div",{className:"input-filter-settings-content"},h.createElement("div",{className:"input-filter-settings-grid"},h.createElement("label",null,"Filter Column"),h.createElement("select",{value:e.findIndex(d=>d.name===i?.name&&d.type===i?.type),className:"custom-select",onChange:this.handleColumnChange},e.map((d,u)=>h.createElement("option",{key:"".concat(d.name,"/").concat(d.type),value:u},this.getItemLabel(e,u))),e.length===0&&h.createElement("option",{value:"-1",disabled:!0},"No Available Columns")),h.createElement("div",{className:"text-muted small"},"Input filter control will apply its filter to all columns matching this name in this dashboard.")),h.createElement("div",{className:"input-filter-settings-buttons"},h.createElement(j,{kind:"secondary",onClick:this.handleSettingsCancel,disabled:t==null},"Cancel"),h.createElement(j,{kind:"primary",className:"ml-2",onClick:this.handleSettingsSave,disabled:i==null},"Save")))),h.createElement("div",{className:"input-filter-value-card",onClick:this.handleBackgroundClick},h.createElement("div",{className:"input-filter-column"},h.createElement("div",{className:"input-filter-column-title"},s," Filter")),h.createElement("div",{className:"d-flex justify-content-center align-items-center h-100 w-100"},h.createElement("div",{className:"input-filter-value-input d-flex flex-column justify-content-center"},h.createElement("input",{type:"text",ref:this.inputRef,placeholder:co.PLACEHOLDER,value:a??"",onChange:this.handleValueChange,onKeyPress:this.handleInputKeyPress,style:{width:"".concat(o+3,"ch")},spellCheck:"false"}))),h.createElement("div",{className:"input-filter-menu"},h.createElement(j,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:h.createElement(re,{icon:fs,transform:"grow-4"}),tooltip:"Input Filter Settings"}))))}}rs(co,"PLACEHOLDER","Enter value...");rs(co,"defaultProps",{column:null,isValueShown:!1,value:null});const Tk=co;function Md(n,e,t){return e=Pk(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Pk(n){var e=Ok(n,"string");return typeof e=="symbol"?e:String(e)}function Ok(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Dk=250;class Ad extends w.Component{constructor(e){super(e),Md(this,"inputFilterRef",void 0),this.handleChange=rt(this.handleChange.bind(this),Dk),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.inputFilterRef=h.createRef();var{panelState:t}=e,{value:r,isValueShown:i=!1,name:a,type:o,timestamp:s}=t??{};this.state={columns:[],column:a!=null&&o!=null?{name:a,type:o}:void 0,value:r,timestamp:s,isValueShown:i,wasFlipped:!1,skipUpdate:!1,panelState:t}}componentDidMount(){this.updateColumns();var{column:e,value:t,timestamp:r}=this.state;if(e!=null){var{name:i,type:a}=e;this.sendUpdate(i,a,t,r)}}componentDidUpdate(e){var{columns:t}=this.props;t!==e.columns&&this.updateColumns()}handleChange(e){var{column:t,isValueShown:r=!1,value:i}=e,a,o;t!=null&&({name:a,type:o}=t);var s=!0,l=Date.now();this.setState(d=>{var u,{panelState:c,timestamp:m,wasFlipped:v,skipUpdate:g}=d,f=c!=null&&r!==c.isValueShown&&a===c.name&&o===c.type&&i===c.value;return s=(u=!g&&r&&(!f||!v))!==null&&u!==void 0?u:!1,s||(l=m),{panelState:{isValueShown:r,name:a,type:o,value:i,timestamp:l},timestamp:l,wasFlipped:f,skipUpdate:!1}},()=>{s&&this.sendUpdate(a,o,i,l)})}handleClearAllFilters(){var e;(e=this.inputFilterRef.current)===null||e===void 0||e.clearFilter()}sendUpdate(e,t,r,i){var{glEventHub:a}=this.props;a.emit(it.FILTERS_CHANGED,this,{name:e,type:t,value:r,timestamp:i})}setPanelState(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;this.setState({skipUpdate:!r}),(t=this.inputFilterRef.current)===null||t===void 0||t.setFilterState(e)}updateColumns(){var{columns:e}=this.props;e!=null&&this.setState(t=>{var{column:r}=t;return r==null&&e.length>0?{columns:[...e],column:e[0]}:r!=null&&!e.find(i=>{var{name:a,type:o}=i;return r.name===a&&r.type===o})?{columns:[...e,r]}:{columns:[...e]}})}render(){var{glContainer:e,glEventHub:t}=this.props,{column:r,columns:i,isValueShown:a,value:o}=this.state;return h.createElement(vi,{className:"iris-input-filter-panel",componentPanel:this,glContainer:e,glEventHub:t,onClearAllFilters:this.handleClearAllFilters,isClonable:!0,isRenamable:!0},h.createElement(Tk,{ref:this.inputFilterRef,column:r,columns:i,onChange:this.handleChange,isValueShown:a,value:o}))}}Md(Ad,"defaultProps",{panelState:null});Md(Ad,"COMPONENT","InputFilterPanel");Md(Ad,"displayName","InputFilterPanel");var Rk=(n,e)=>{var{localDashboardId:t}=e;return{columns:rb(n,t)}},Nk=$t(Rk,null,null,{forwardRef:!0})(Ad);const ns=Nk;function Yg(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 ml(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Yg(Object(t),!0).forEach(function(r){Dc(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Yg(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Dc(n,e,t){return e=Fk(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Fk(n){var e=Ik(n,"string");return typeof e=="symbol"?e:String(e)}function Ik(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var jt=ie.module("FilterSetManagerPanel");function _k(n){return n.setPanelState!=null}class mo extends w.Component{static changeFilterIndexesToColumnNames(e,t){return t.map(r=>{var[i,a]=r;if(i>=e.columns.length)return null;var{name:o}=e.columns[i];return{name:o,filter:a}}).filter(r=>r!=null)}constructor(e){super(e),this.handleChange=this.handleChange.bind(this),this.handleFilterApply=this.handleFilterApply.bind(this),this.handleSetsUpdate=this.handleSetsUpdate.bind(this),this.handleGetFilterState=this.handleGetFilterState.bind(this);var{panelState:t,filterSets:r}=e,{selectedId:i=r.length>0?r[0].id:void 0,isValueShown:a=!1}=t??{};this.state={selectedId:i,isValueShown:a,panelState:t}}getFilterState(){var{dashboardOpenedPanelMap:e}=this.props,t=[];return[...e.keys()].forEach(r=>{var i=e.get(r);if(i===void 0){jt.error("Could not get panel",i);return}var a=Q.getComponentNameFromPanel(i),o=Q.getIdFromPanel(i);jt.debug("Panel:",i,a);var{glContainer:s=null}=i.props;if(s==null){jt.error("Could not get panel container",i);return}var l=Q.getComponentConfigFromContainer(s);if(l==null){jt.error("Could not get component config from container",s);return}var d=Q.getPanelComponentState(l);if(d==null){jt.debug("Panel state is null ".concat(o));return}switch(a){case Q.getComponentName(ho):{var u;o!=null&&(u=this.getIrisGridPanelFilters(o,d)),u!=null&&t.push({panelId:o,type:a,state:u});break}case Q.getComponentName(ns):case Q.getComponentName(ba):{var{isValueShown:c,name:m,type:v,value:g}=d;t.push({panelId:o,type:a,state:{isValueShown:c,name:m,type:v,value:g}});break}}}),t}getIrisGridPanelFilters(e,t){var{panelTableMap:r}=this.props,i=r.get(e);if(i==null)return jt.error("Unable to get table for panel ".concat(e,".")),null;var{irisGridState:a={advancedFilters:void 0,quickFilters:void 0},gridState:o={}}=t,{advancedFilters:s,quickFilters:l}=a,d;s&&(d=mo.changeFilterIndexesToColumnNames(i,s));var u;return l&&(u=mo.changeFilterIndexesToColumnNames(i,l)),{irisGridState:ml(ml({},a),{},{advancedFilters:d,quickFilters:u}),gridState:ml({},o)}}handleGetFilterState(){return this.getFilterState()}handleChange(e){var{isValueShown:t,selectedId:r}=e;jt.debug("handleChange",t,r),this.setState({isValueShown:t,selectedId:r}),this.updatePanelState()}handleFilterApply(e){var{dashboardOpenedPanelMap:t}=this.props,{panels:r,restoreFullState:i=!1}=e;jt.debug("Apply filters from filter set",e),r.forEach(a=>{var{panelId:o,type:s,state:l}=a;if(o==null){jt.debug("panel is null",o);return}if(!t.has(o)){jt.debug("Ignore closed panel",o);return}jt.debug("Apply panel filters",o,s,l);var d=t.get(o);switch(s){case Q.getComponentName(ho):this.restoreIrisGridFilters(d,l,i);break;case Q.getComponentName(ns):case Q.getComponentName(ba):this.restoreInputFilterState(d,l);break}})}handleSetsUpdate(e){var{setDashboardFilterSets:t,localDashboardId:r}=this.props;jt.debug("Saving updated sets",e),t(r,[...e])}updatePanelState(){this.setState(e=>{var{selectedId:t,isValueShown:r}=e;return{panelState:{selectedId:t,isValueShown:r}}})}restoreIrisGridFilters(e,t,r){var{irisGridState:i={},advancedFilters:a=[],quickFilters:o=[]}=t,{advancedFilters:s=a,quickFilters:l=o}=i,{panelTableMap:d}=this.props,u=Q.getIdFromPanel(e);if(u==null){jt.error("Panel Id is null.");return}var c=d.get(u);if(c==null){jt.error("Unable to get table for panel ".concat(u,"."));return}jt.debug("restoreIrisGridFilters",u,t,r),r?e.setStateOverrides(t):e.setFilters({quickFilters:l,advancedFilters:s})}restoreInputFilterState(e,t){var r=ml({},t);delete r.isValueShown,jt.debug("restoreInputFilterState",e,r),e&&_k(e)&&e.setPanelState(r)}render(){var{glContainer:e,glEventHub:t,filterSets:r}=this.props,{isValueShown:i,selectedId:a}=this.state;return h.createElement(vi,{className:"filter-set-manager-panel",componentPanel:this,glContainer:e,glEventHub:t,isClonable:!0,isRenamable:!0},h.createElement("div",{className:"input-filter-container h-100 w-100 container"},h.createElement(vk,{onChange:this.handleChange,onApply:this.handleFilterApply,onUpdateSets:this.handleSetsUpdate,isValueShown:i,filterSets:r,selectedId:a,getFilterState:this.handleGetFilterState})))}}Dc(mo,"defaultProps",{panelState:null});Dc(mo,"COMPONENT","FilterSetManagerPanel");var Mk=(n,e)=>{var{localDashboardId:t}=e;return{filterSets:i1(n,t),dashboardOpenedPanelMap:sC(n,t),dashboardInputFilters:pc(n,t),panelTableMap:Cc(n,t)}},Ak=$t(Mk,{setDashboardFilterSets:c1},null,{forwardRef:!0})(mo);const Iu=Ak;function ms(n,e,t){return e=Lk(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Lk(n){var e=kk(n,"string");return typeof e=="symbol"?e:String(e)}function kk(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 qg=ie.module("LogPanel");class Ld extends w.PureComponent{constructor(e){super(e),ms(this,"isBottomVisible",void 0),ms(this,"logView",void 0),this.handleResize=this.handleResize.bind(this),this.handleShow=this.handleShow.bind(this),this.handleHide=this.handleHide.bind(this),this.handleSessionOpened=this.handleSessionOpened.bind(this),this.handleSessionClosed=this.handleSessionClosed.bind(this),this.isBottomVisible=!0,this.logView=null;var{session:t}=this.props;this.state={session:t}}handleResize(){this.updateDimensions()}handleShow(){this.updateDimensions(),this.logView&&(this.logView.triggerFindWidget(),this.isBottomVisible&&this.logView.scrollToBottom())}handleHide(){this.logView&&(this.isBottomVisible=this.logView.isBottomVisible())}handleSessionOpened(e){qg.debug("Session opened",[e]),this.setState({session:e})}handleSessionClosed(e){qg.debug("Session closed",e)}updateDimensions(){this.logView&&this.logView.updateDimensions()}render(){var{glContainer:e,glEventHub:t}=this.props,{session:r}=this.state;return h.createElement(vi,{componentPanel:this,glContainer:e,glEventHub:t,onResize:this.handleResize,onHide:this.handleHide,onShow:this.handleShow,onSessionOpen:this.handleSessionOpened,onSessionClose:this.handleSessionClosed},r==null&&h.createElement("div",{className:"log-panel-disconnected-message"},"Waiting for session connection"),r!=null&&h.createElement(k0,{session:r,ref:i=>{this.logView=i}}))}}ms(Ld,"defaultProps",{session:null});ms(Ld,"COMPONENT","LogPanel");ms(Ld,"TITLE","Log");var xk=(n,e)=>{var t;return{session:(t=Ta(n,e.localDashboardId))===null||t===void 0?void 0:t.session}},Hk=$t(xk,null,null,{forwardRef:!0})(Ld);const Jl=Hk;function Uk(n,e,t){return e=$k(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function $k(n){var e=Bk(n,"string");return typeof e=="symbol"?e:String(e)}function Bk(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 lb extends w.PureComponent{render(){var{isEditing:e,children:t,onDoubleClick:r}=this.props;return h.createElement("div",{className:"markdown-editor-container h-100 w-100",onDoubleClick:r},h.createElement("div",{className:te("text-muted","edit-hint",{viewing:e===void 0||!e})},h.createElement("span",null,"double-click to edit ",h.createElement(re,{icon:ps}))),t)}}Uk(lb,"defaultProps",{isEditing:!1});function Vk(n,e,t){return e=Gk(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Gk(n){var e=Wk(n,"string");return typeof e=="symbol"?e:String(e)}function Wk(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 jk=ie.module("MarkdownStartPage");class db extends w.PureComponent{constructor(e){super(e),this.handleDeleteButtonClick=this.handleDeleteButtonClick.bind(this),this.handleDeleteModalClose=this.handleDeleteModalClose.bind(this),this.state={isDeleteModalShown:!1}}handleDeleteButtonClick(e){this.setState({isDeleteModalShown:!0,toBeDeleted:e})}handleDeleteModalClose(){this.setState({isDeleteModalShown:!1,toBeDeleted:void 0})}handleDeleteMarkdown(e){if(jk.debug("delete markdown: ",e),e!==void 0){var{onDelete:t}=this.props;t(e)}this.setState({isDeleteModalShown:!1,toBeDeleted:void 0})}render(){var{closedMarkdowns:e,onOpen:t,onCreate:r}=this.props,{isDeleteModalShown:i,toBeDeleted:a}=this.state;return h.createElement("div",{className:"markdown-panel-start-page h-100 w-100"},h.createElement("div",{className:"markdown-panel-start-page-container"},h.createElement("div",{className:"markdown-panel-start-list"},h.createElement("h3",{className:"list-title"},"Start"),h.createElement("div",{className:"list-item"},h.createElement(j,{kind:"ghost",className:"title",onClick:r},"New Markdown Note"))),h.createElement("div",{className:"markdown-panel-start-list"},h.createElement("h3",{className:"list-title"},"Recently Closed from Dashboard"),e.map(o=>h.createElement("div",{className:"list-item",key:o.id},h.createElement(j,{kind:"ghost",className:"title",onClick:()=>t(o)},o.title),h.createElement("button",{className:"btn-link icon",type:"button",onClick:()=>{this.handleDeleteButtonClick(o)}},h.createElement(re,{icon:Hr})))),h.createElement(od,{isOpen:i,toggle:this.handleDeleteModalClose,className:"modal-dialog-centered markdown-delete-modal theme-bg-light"},h.createElement(sd,null,"Are you sure you want to permanently delete this note?"),h.createElement(ld,null,"You can't undo this action."),h.createElement(qf,null,h.createElement(j,{kind:"secondary",onClick:this.handleDeleteModalClose},"Cancel"),h.createElement(j,{kind:"danger",onClick:()=>{this.handleDeleteMarkdown(a)}},"Delete"))))))}}Vk(db,"defaultProps",{closedMarkdowns:[],onOpen:()=>{},onCreate:()=>{},onDelete:()=>{}});const zk=db;function ub(n,e,t){return e=Kk(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Kk(n){var e=Yk(n,"string");return typeof e=="symbol"?e:String(e)}function Yk(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 qk=n=>{var{children:e,className:t}=n,r=t!=null&&t!==void 0&&t.startsWith("language-")?t.substring(9):"plaintext";return h.createElement("pre",null,h.createElement("code",null,h.createElement(vd,{language:r},h.Children.map(e,i=>typeof i=="string"?i.trim():i))))};class hb extends w.PureComponent{constructor(e){super(e),ub(this,"container",void 0),this.container=null}render(){var{isEditing:e,content:t,onEditorInitialized:r}=this.props;return h.createElement("div",{className:"markdown-editor-container",ref:i=>{this.container=i}},e?h.createElement(Wh,{settings:{language:"markdown",value:t,lineNumbers:"off"},onEditorInitialized:r}):h.createElement(Mf,{components:{code:qk}},t))}}ub(hb,"defaultProps",{isEditing:!1,content:""});function is(n,e,t){return e=Xk(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Xk(n){var e=Qk(n,"string");return typeof e=="symbol"?e:String(e)}function Qk(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 vl=ie.module("MarkdownPanel");class Rc extends w.Component{constructor(e){super(e),is(this,"markdownEditor",void 0),is(this,"editor",void 0),is(this,"getClosedMarkdowns",fe(i=>i.filter(a=>a.component==="MarkdownPanel").reverse())),this.handleContainerDoubleClick=this.handleContainerDoubleClick.bind(this),this.handleCreateMarkdown=this.handleCreateMarkdown.bind(this),this.handleDeleteMarkdown=this.handleDeleteMarkdown.bind(this),this.handleOpenMarkdown=this.handleOpenMarkdown.bind(this),this.handleEditorInitialized=this.handleEditorInitialized.bind(this),this.handleEditorBlur=this.handleEditorBlur.bind(this),this.handleEditorResize=this.handleEditorResize.bind(this);var{panelState:t}=e,r=null;t!=null&&t.content!=null&&({content:r}=t),this.state={isStartPageShown:r==null,isEditing:!1,content:r,panelState:t},this.markdownEditor=null}setEditorPosition(e){L(this.markdownEditor);var{container:t}=this.markdownEditor;if(this.editor&&t){var r,i,a=t.getBoundingClientRect().top,o=t.scrollTop,s=t.scrollHeight,l=(r=(i=this.editor.getModel())===null||i===void 0?void 0:i.getLineCount())!==null&&r!==void 0?r:0,d=Math.round((o+e-a)/s*l);d>l&&(d=l),this.editor.revealLine(d),this.editor.setPosition({lineNumber:d,column:1}),this.editor.focus()}}handleContainerDoubleClick(e){var{isEditing:t}=this.state,r=e.clientY;t||this.setState({isEditing:!0},()=>{this.setEditorPosition(r)})}handleEditorInitialized(e){vl.debug("Markdown Editor Initialized..."),this.editor=e}handleCreateMarkdown(){vl.debug("create markdown..."),this.setState({isStartPageShown:!1,content:"",isEditing:!0,panelState:{content:""}},()=>{this.editor!=null&&this.editor.focus!=null&&this.editor.focus()})}handleOpenMarkdown(e){vl.debug("open markdown...",e);var{glContainer:t,glEventHub:r}=this.props,i=Q.getComponentConfigFromContainer(t);r.emit(Ee.REOPEN,e,i)}handleDeleteMarkdown(e){var{glEventHub:t}=this.props;t.emit(Ee.DELETE,e)}handleEditorBlur(e){var t;vl.debug("markdown content changed, saving...");var{isEditing:r}=this.state;if(!(!r||this.markdownEditor!=null&&this.markdownEditor.container!=null&&this.markdownEditor.container.contains(e.relatedTarget))){var i=(t=this.editor)===null||t===void 0?void 0:t.getValue();this.setState({content:i,isEditing:!1,panelState:{content:i}})}}handleEditorResize(){var{isEditing:e}=this.state;e&&this.editor&&this.editor.layout()}render(){var{glContainer:e,glEventHub:t,closedPanels:r}=this.props,{isEditing:i,isStartPageShown:a,content:o}=this.state,s=this.getClosedMarkdowns(r);return h.createElement(vi,{glContainer:e,glEventHub:t,className:"markdown-panel",componentPanel:this,onResize:this.handleEditorResize,onBlur:this.handleEditorBlur,isClonable:!0,isRenamable:!0},a?h.createElement(zk,{closedMarkdowns:s,onCreate:this.handleCreateMarkdown,onOpen:this.handleOpenMarkdown,onDelete:this.handleDeleteMarkdown}):h.createElement(lb,{isEditing:i,onDoubleClick:this.handleContainerDoubleClick},h.createElement(hb,{ref:l=>{this.markdownEditor=l},isEditing:i,content:o??void 0,onEditorInitialized:this.handleEditorInitialized})))}}is(Rc,"defaultProps",{panelState:null});is(Rc,"COMPONENT","MarkdownPanel");var Zk=(n,e)=>{var{localDashboardId:t}=e;return{closedPanels:nD(n,t)}},Jk=$t(Zk,null,null,{forwardRef:!0})(Rc);const Uo=Jk;function Ol(n,e,t){return e=ex(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ex(n){var e=tx(n,"string");return typeof e=="symbol"?e:String(e)}function tx(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 cb extends w.PureComponent{constructor(e){super(e),Ol(this,"commands",void 0),Ol(this,"codeElements",void 0),Ol(this,"editorScrollView",void 0),this.handleRunSelected=this.handleRunSelected.bind(this),this.renderCodeBlock=this.renderCodeBlock.bind(this),this.renderLink=this.renderLink.bind(this),this.commands=new Map,this.codeElements=new Map,this.editorScrollView=h.createRef(),this.state={hasCode:!1,hasRunCode:!1,nextStartLine:null}}componentDidMount(){this.updateHasCode()}componentDidUpdate(){this.updateHasCode()}updateHasCode(){var{hasCode:e}=this.state;this.commands.size===0&&e?this.setState({hasCode:!1}):this.commands.size>0&&!e&&this.setState({hasCode:!0})}getNextStartLine(e){var t=[...this.commands.keys()],r=t.findIndex(i=>i===e)+1;return r>=t.length?null:t[r]}handleRunSelected(e){var t,r;e.preventDefault(),e.stopPropagation();var{nextStartLine:i}=this.state,a=[...this.commands.keys()],o=a.findIndex(f=>f===i||i==null);if(!(o<0)){var s=a[o],l=this.commands.get(s),d=this.getNextStartLine(s),u=(t=this.codeElements.get(s))===null||t===void 0?void 0:t.current,c=u==null||(r=u.parentElement)===null||r===void 0?void 0:r.nextElementSibling;if(c!=null){var m,{offsetTop:v}=c,g=v;(m=this.editorScrollView.current)===null||m===void 0||m.scroll({top:g,left:0})}this.runCode(l),this.setState({nextStartLine:d})}}runCode(e){var{onRunCode:t}=this.props;t(e),this.setState({hasRunCode:!0})}renderCodeBlock(e){var{children:t,className:r,inline:i,node:a}=e,{hasRunCode:o,nextStartLine:s}=this.state,{children:l,position:d}=a;L(d);var{start:u}=d,{line:c}=u,m=l[0].value,v=h.createRef(),g=this.commands.size===0,f=s===c||g&&s==null&&!o,p=r!==void 0&&r.startsWith("language-")?r.substring(9):"plaintext";return i!=null&&i?h.createElement("code",{className:r},t):(this.commands.set(c,m),this.codeElements.set(c,v),h.createElement("div",{className:te("markdown-notebook-code-block",{"is-selected":f}),ref:v,onClick:()=>{this.setState({nextStartLine:c})},role:"presentation"},h.createElement(j,{kind:"ghost",icon:Rl,className:"btn-play-block",onClick:C=>{C.stopPropagation(),C.preventDefault(),this.runCode(m),this.setState({nextStartLine:c})},tooltip:"Run code"}),h.createElement("code",null,h.createElement(vd,{language:p},h.Children.map(t,C=>typeof C=="string"?C.trim():C)))))}renderLink(e){var{onLinkClick:t}=this.props,{href:r,children:i,target:a}=e;return h.createElement("a",{href:r,onClick:t,target:a},i)}render(){var{content:e,transformImageUri:t,transformLinkUri:r}=this.props,{hasCode:i,hasRunCode:a,nextStartLine:o}=this.state;return h.createElement("div",{className:"markdown-notebook"},h.createElement("div",{className:"markdown-notebook-toolbar"},h.createElement(j,{className:te("btn-play-selected-cell",{flashing:i&&!a}),kind:"ghost",icon:Rl,onClick:this.handleRunSelected,tooltip:"Run code and select next",disabled:a&&o==null||!i},"Run Selected Code")),h.createElement("div",{className:"markdown-notebook-content",ref:this.editorScrollView},h.createElement(Mf,{components:{code:this.renderCodeBlock,a:this.renderLink},linkTarget:"_blank",remarkPlugins:[fS],transformLinkUri:r,transformImageUri:t,includeElementIndex:!0},e)))}}Ol(cb,"defaultProps",{onRunCode:()=>{}});const rx=cb;function Xg(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 zt(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Xg(Object(t),!0).forEach(function(r){gr(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Xg(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function gr(n,e,t){return e=nx(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function nx(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)}var je=ie.module("NotebookPanel"),Qg=400;class Cn extends w.Component{static handleError(e){Te.isCanceled(e)||je.error(e)}static languageFromFileName(e){var t=be.getExtension(e).toLowerCase();switch(t){case"py":case"python":return"python";case"groovy":return"groovy";case"scala":return"scala";default:return null}}constructor(e){super(e),gr(this,"pending",void 0),gr(this,"debouncedSavePanelState",void 0),gr(this,"debouncedLoad",void 0),gr(this,"notebook",void 0),gr(this,"tabTitleElement",void 0),gr(this,"tabInitOnce",void 0),gr(this,"editor",void 0),gr(this,"getSettings",fe((m,v)=>zt(zt({},m),{},{minimap:{enabled:v}}))),gr(this,"getOverflowActions",fe((m,v)=>[{title:"Find",icon:bw,action:this.handleFind,group:le.groups.high,shortcut:nr.NOTEBOOK.FIND,order:10},{title:"Show Minimap",icon:m?ii:void 0,action:this.handleMinimapChange,group:le.groups.medium,shortcut:nr.NOTEBOOK.MINIMAP,order:20},{title:"Word Wrap",icon:v?ii:void 0,action:this.handleWordWrapChange,group:le.groups.medium,shortcut:nr.NOTEBOOK.WORDWRAP,order:30}])),this.handleBlur=this.handleBlur.bind(this),this.handleCloseCancel=this.handleCloseCancel.bind(this),this.handleCloseDiscard=this.handleCloseDiscard.bind(this),this.handleCloseSave=this.handleCloseSave.bind(this),this.handleCopy=this.handleCopy.bind(this),this.handleEditorInitialized=this.handleEditorInitialized.bind(this),this.handleEditorWillDestroy=this.handleEditorWillDestroy.bind(this),this.handleEditorChange=this.handleEditorChange.bind(this),this.handleFind=this.handleFind.bind(this),this.handleMinimapChange=this.handleMinimapChange.bind(this),this.handleWordWrapChange=this.handleWordWrapChange.bind(this),this.handleFocus=this.handleFocus.bind(this),this.handleLinkClick=this.handleLinkClick.bind(this),this.handleLoadSuccess=this.handleLoadSuccess.bind(this),this.handleLoadError=this.handleLoadError.bind(this),this.handlePanelDropped=this.handlePanelDropped.bind(this),this.handleRenameFile=this.handleRenameFile.bind(this),this.handleResize=this.handleResize.bind(this),this.handleRunCommand=this.handleRunCommand.bind(this),this.handleRunAll=this.handleRunAll.bind(this),this.handleRunSelected=this.handleRunSelected.bind(this),this.handleSave=this.handleSave.bind(this),this.handleSaveAsCancel=this.handleSaveAsCancel.bind(this),this.handleSaveAsSubmit=this.handleSaveAsSubmit.bind(this),this.handleSaveError=this.handleSaveError.bind(this),this.handleSaveSuccess=this.handleSaveSuccess.bind(this),this.handleSessionOpened=this.handleSessionOpened.bind(this),this.handleSessionClosed=this.handleSessionClosed.bind(this),this.handleShow=this.handleShow.bind(this),this.handleShowRename=this.handleShowRename.bind(this),this.handleTab=this.handleTab.bind(this),this.handleTabBlur=this.handleTabBlur.bind(this),this.handleTabClick=this.handleTabClick.bind(this),this.handleTabFocus=this.handleTabFocus.bind(this),this.handleTransformLinkUri=this.handleTransformLinkUri.bind(this),this.handleOverwrite=this.handleOverwrite.bind(this),this.handlePreviewPromotion=this.handlePreviewPromotion.bind(this),this.getDropdownOverflowActions=this.getDropdownOverflowActions.bind(this),this.pending=new hi,this.debouncedSavePanelState=rt(this.savePanelState.bind(this),Qg),this.debouncedLoad=rt(this.load.bind(this),Qg),this.notebook=null,this.tabTitleElement=null,this.tabInitOnce=!1;var{isDashboardActive:t,session:r,sessionLanguage:i,panelState:a}=e,o={value:"",language:"",wordWrap:"off"},s=null,{isPreview:l}=e;a!=null&&({fileMetadata:s=s,isPreview:l=l,settings:o=o}=a);var d=s!=null&&be.hasPath(s.itemName),u=d===!0&&o.value!=null||!d&&o.value!=null&&o.value.length>0,c=u?1:0;this.state={error:void 0,isDashboardActive:t,isFocused:!1,isLoading:!0,isLoaded:!1,isPreview:l,savedChangeCount:0,changeCount:c,fileMetadata:s,settings:o,session:r,sessionLanguage:i,panelState:{fileMetadata:s,settings:o},showCloseModal:!1,showSaveAsModal:!1,scriptCode:""},je.debug("constructor",e,this.state)}componentDidMount(){var{glContainer:e,glEventHub:t}=this.props,{tab:r}=e;r!=null&&this.initTab(r),this.initNotebookContent(),t.on(Ye.RENAME_FILE,this.handleRenameFile),t.on(Ee.DROPPED,this.handlePanelDropped),e.on(Ye.PROMOTE_FROM_PREVIEW,this.handlePreviewPromotion)}componentDidUpdate(e,t){var{isPreview:r,settings:i}=this.state,{wordWrap:a}=i,{defaultNotebookSettings:o}=this.props;r!==t.isPreview&&this.setPreviewStatus(),a!==t.settings.wordWrap&&(this.updateEditorWordWrap(),this.debouncedSavePanelState()),o.isMinimapEnabled!==e.defaultNotebookSettings.isMinimapEnabled&&this.updateEditorMinimap()}componentWillUnmount(){this.debouncedSavePanelState.flush(),this.pending.cancel();var{glEventHub:e,glContainer:t}=this.props,{fileMetadata:r,isPreview:i}=this.state;e.off(Ye.RENAME_FILE,this.handleRenameFile),e.off(Ee.DROPPED,this.handlePanelDropped),t.off(Ye.PROMOTE_FROM_PREVIEW,this.handlePreviewPromotion),e.emit(Ye.UNREGISTER_FILE,r,i)}initTab(e){this.tabInitOnce||(this.tabInitOnce=!0,this.initTabCloseOverride()),this.initTabClasses(e)}initTabCloseOverride(){var{glContainer:e}=this.props;e.beforeClose(t=>{if(t?.force===!0)return!0;var{changeCount:r,savedChangeCount:i}=this.state;return r!==i?(this.setState({showCloseModal:!0}),!1):!0})}initTabClasses(e){var t=e.element.get(0);L(t);var r=t.querySelector(".lm_title");this.tabTitleElement=r,r?.classList.add("notebook-title"),this.setPreviewStatus()}getNotebookValue(){var{changeCount:e,savedChangeCount:t,settings:r}=this.state,{value:i}=r;if(e!==t&&this.notebook){var a=this.notebook.getValue();return a??i}return i}initNotebookContent(){var{fileMetadata:e,settings:t,isPreview:r}=this.state;if(e&&e.id){je.debug("Init content from file"),this.registerFileMetadata(e,r),this.load();return}if(t.value!=null){je.debug("Use content passed in the settings prop"),this.handleLoadSuccess();return}this.handleLoadError(new Error("Missing file metadata"))}closeFileTabById(e){var{glEventHub:t}=this.props;t.emit(Ye.CLOSE_FILE,{id:e})}registerFileMetadata(e,t){var{glEventHub:r,metadata:i}=this.props,{id:a}=i;r.emit(Ye.REGISTER_FILE,a,e,t)}renameTab(e,t){var{glEventHub:r}=this.props;r.emit(Ye.RENAME,e,t)}load(){var{fileMetadata:e,settings:t}=this.state;L(e);var{id:r}=e,{fileStorage:i}=this.props;this.pending.add(i.loadFile(r)).then(a=>{var o;je.debug("Loaded file",a);var{filename:s}=a,{itemName:l}=this.state;if(s!==l){var{metadata:d}=this.props,{id:u}=d;this.renameTab(u,be.getBaseName(s))}var c=zt(zt({},t),{},{language:(o=Cn.languageFromFileName(s))!==null&&o!==void 0?o:""});t.value==null&&(c.value=a.content),t.wordWrap===void 0&&(t.wordWrap="off"),this.setState({fileMetadata:{id:s,itemName:s},settings:c}),this.debouncedSavePanelState()}).then(this.handleLoadSuccess).catch(this.handleLoadError)}save(){var{fileMetadata:e}=this.state;if(e&&be.hasPath(e.itemName)){var t=this.getNotebookValue();return t!==void 0?(this.saveContent(e.itemName,t),!0):!1}return this.setState({showSaveAsModal:!0}),!1}saveContent(e,t){je.debug("saveContent",e,t),this.updateSavedChangeCount();var{fileStorage:r}=this.props;this.pending.add(r.saveFile({filename:e,content:t,basename:e})).then(this.handleSaveSuccess).catch(this.handleSaveError)}updateSavedChangeCount(){this.setState(e=>{var{changeCount:t}=e;return{savedChangeCount:t}})}setPreviewStatus(){if(this.tabTitleElement){var{isPreview:e}=this.state;je.debug("setPreviewStatus",this.tabTitleElement,e),e?this.tabTitleElement.classList.add("is-preview"):this.tabTitleElement.classList.remove("is-preview")}}handlePreviewPromotion(){this.removePreviewStatus()}savePanelState(){this.setState(e=>{var{changeCount:t,savedChangeCount:r,fileMetadata:i,isPreview:a,settings:o}=e,s=this.getNotebookValue(),l=t!==r?s:void 0,d=zt(zt({},o),{},{value:s}),u=zt(zt({},o),{},{value:l}),c={settings:u,fileMetadata:i,isPreview:a};return je.debug("Saving panel state",c),{settings:d,panelState:c}})}handleCloseDiscard(){this.setState({showCloseModal:!1});var{glContainer:e}=this.props;e.close({force:!0})}handleCloseSave(){if(this.setState({showCloseModal:!1}),this.save()){var{glContainer:e}=this.props;e.close({force:!0})}}handleCloseCancel(){this.setState({showCloseModal:!1})}handleOverwrite(e){var{glEventHub:t}=this.props;t.emit(Ye.CLOSE_FILE,{id:e,itemName:e},{force:!0}),this.focus()}handleCopy(){var{fileMetadata:e,settings:t}=this.state;L(e);var r=this.getNotebookValue(),{language:i}=t,{itemName:a}=e,o=be.getCopyFileName(a);je.debug("handleCopy",e,a,o),this.createNotebook(o,i,r)}handleEditorInitialized(e){this.editor=e}handleEditorWillDestroy(){this.editor=void 0}handleEditorChange(e){je.debug2("handleEditorChanged",e),this.removePreviewStatus(),this.setState(t=>{var{changeCount:r,savedChangeCount:i}=t,{isUndoing:a,isRedoing:o}=e;return a?{changeCount:r-1,savedChangeCount:i}:!o&&r<i?{changeCount:r+1,savedChangeCount:0}:{changeCount:r+1,savedChangeCount:i}}),this.debouncedSavePanelState()}handleFind(){this.notebook&&this.notebook.toggleFind()}updateEditorMinimap(){if(this.editor){var{defaultNotebookSettings:e}=this.props;this.editor.updateOptions({minimap:{enabled:e.isMinimapEnabled}})}}handleMinimapChange(){var{settings:e,defaultNotebookSettings:t,saveSettings:r}=this.props,i=zt(zt({},e),{},{defaultNotebookSettings:{isMinimapEnabled:!t.isMinimapEnabled}});r(i)}updateEditorWordWrap(){if(this.editor){var{settings:e}=this.state,{wordWrap:t}=e;this.editor.updateOptions({wordWrap:t})}}handleWordWrapChange(){this.editor&&this.setState(e=>{var{settings:t}=e,r=t.wordWrap==="on"?"off":"on";return{settings:zt(zt({},t),{},{wordWrap:r})}})}handleBlur(){je.debug("handleBlur"),this.setState({isFocused:!1})}handleFocus(){je.debug("handleFocus"),this.setState({isFocused:!0})}handleLinkClick(e){var{notebooksUrl:t,session:r,sessionLanguage:i}=this.props,{href:a}=e.currentTarget;if(!(!a||!a.startsWith(t))){e.stopPropagation(),e.preventDefault();var o="/".concat(a.substring(t.length)).replace(/%20/g," ");if(o==="/"){je.debug("Ignoring invalid notebook link",o);return}je.debug("Notebook link clicked, opening",o);var{glEventHub:s}=this.props,l={value:null,language:i},d={id:o,itemName:o};s.emit(Ye.SELECT_NOTEBOOK,r,i,l,d)}}handleLoadSuccess(){this.setState({error:void 0,isLoaded:!0,isLoading:!1})}handleLoadError(e){var t=e;Te.isCanceled(t)||(Te.isTimedOut(t)&&(t=new Error("File not found.")),je.error(t),this.setState({error:t,isLoading:!1}))}handleSave(){je.debug("handleSave"),this.save()}handleSaveSuccess(e){var t,{fileStorage:r}=this.props,i={id:e.filename,itemName:e.filename},a=(t=Cn.languageFromFileName(e.filename))!==null&&t!==void 0?t:"";this.setState(o=>{var{fileMetadata:s}=o,l=zt(zt({},o.settings),{},{language:a});return je.debug("handleSaveSuccess",i,s,l),s&&be.hasPath(s.itemName)&&s.itemName!==i.itemName&&(je.debug("handleSaveSuccess deleting old file",s.itemName),r.deleteFile(s.itemName).catch(Cn.handleError)),{fileMetadata:i,settings:l,isPreview:!1}}),this.debouncedSavePanelState(),this.registerFileMetadata(i,!1)}handleSaveError(e){Te.isCanceled(e)||(this.setState({savedChangeCount:0}),je.error(e))}handleSaveAsCancel(){this.setState({showSaveAsModal:!1})}handleSaveAsSubmit(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;r&&this.handleOverwrite(e),je.debug("handleSaveAsSubmit",e);var{fileMetadata:i}=this.state;if(i){var{itemName:a}=i,o=(t=this.getNotebookValue())!==null&&t!==void 0?t:"";if(this.setState({showSaveAsModal:!1}),be.getBaseName(a)!==be.getBaseName(e)){var{metadata:s}=this.props,{id:l}=s;this.renameTab(l,be.getBaseName(e))}this.saveContent(e,o)}}handleRenameFile(e,t,r){var{fileMetadata:i,panelState:a}=this.state,{glContainer:o}=this.props;if(i?.itemName==="/".concat(t)&&r&&JSON.stringify(a)!==JSON.stringify(r)){o.close();return}i&&i.id===e&&(this.setState({fileMetadata:{id:t,itemName:t}}),this.debouncedSavePanelState())}handleResize(){var e;(e=this.notebook)===null||e===void 0||e.updateDimensions()}handleRunCommand(e){this.runCommand(e)}handleRunAll(){var e;if(!this.notebook){je.error("Editor is not initialized.");return}this.runCommand((e=this.notebook.getValue())!==null&&e!==void 0?e:void 0)}handleRunSelected(){if(!this.notebook){je.error("Editor is not initialized.");return}this.runCommand(this.notebook.getSelectedCommand())}handleSessionOpened(e,t){var{language:r}=t;this.setState({session:e,sessionLanguage:r})}handleSessionClosed(){this.setState({session:void 0,sessionLanguage:void 0})}handleShow(){var e;je.debug("handleShow"),(e=this.notebook)===null||e===void 0||e.updateDimensions()}handlePanelDropped(e){var{metadata:{id:t}}=this.props;e===t&&this.forceUpdate()}handleShowRename(){this.setState({showSaveAsModal:!0})}handleTab(e){je.debug("NotebookPanel tab event",e),this.initTab(e)}handleTabFocus(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];je.debug("handleTabFocus",...t);var{glContainer:i}=this.props;this.setState({isDashboardActive:!0}),this.notebook&&!i.isHidden&&this.notebook.updateDimensions()}handleTabBlur(){je.debug("handleTabBlur"),this.setState({isDashboardActive:!1})}handleTabClick(e){je.debug("handle NotebookPanel tab click"),this.focus(),e.detail===2&&this.removePreviewStatus()}handleTransformLinkUri(e){var{notebooksUrl:t}=this.props,{fileMetadata:r}=this.state;if(e.endsWith("/"))return e;if(e.startsWith("/"))return"".concat(t).concat(e.substring(1));var i=r?.itemName;if(i===void 0)return e;i.charAt(0)==="/"&&(i=i.substring(1));var a=new URL(i,t);return new URL(e,a).href}focus(){requestAnimationFrame(()=>{this.notebook&&this.notebook.focus()})}createNotebook(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"",{glEventHub:i}=this.props,{session:a,sessionLanguage:o,settings:s}=this.state,l=zt(zt({},s),{},{language:t,value:r}),d={id:null,itemName:e};je.debug("handleCreateNotebook",a,o,l,d),i.emit(Ye.CREATE_NOTEBOOK,a,o,l,d)}runCommand(e){if(e===void 0||e===""){je.debug("Ignoring empty command.");return}this.removePreviewStatus();var{glEventHub:t}=this.props;t.emit(Lr.SEND_COMMAND,e,!1,!0)}removePreviewStatus(){this.setState(e=>{var{isPreview:t}=e;if(t){var{fileMetadata:r}=this.state;return r&&this.registerFileMetadata(r,!1),{isPreview:!1}}return null})}getDropdownOverflowActions(){var{defaultNotebookSettings:e}=this.props,{settings:t}=this.state;return this.getOverflowActions(e.isMinimapEnabled,this.getSettings(t,e.isMinimapEnabled).wordWrap==="on")}render(){var e,t,{fileStorage:r,glContainer:i,glContainer:{tab:a},glEventHub:o,defaultNotebookSettings:s}=this.props,{changeCount:l,savedChangeCount:d,error:u,isDashboardActive:c,isLoaded:m,isLoading:v,isPreview:g,fileMetadata:f,session:p,sessionLanguage:C,settings:b,showCloseModal:S,showSaveAsModal:E}=this.state,y=c&&!i.isHidden&&!g,T=(e=f?.itemName)!==null&&e!==void 0?e:Cn.DEFAULT_NAME,O=T.endsWith(".md"),D=f?.id!=null,P=this.getSettings(b,s.isMinimapEnabled),R=p!=null,_=C===P.language,M=!m||!R||!_,A=!m,B=[{action:this.handleSave,shortcut:ui.SAVE},{action:this.handleMinimapChange,shortcut:nr.NOTEBOOK.MINIMAP},{action:this.handleWordWrapChange,shortcut:nr.NOTEBOOK.WORDWRAP}],$=Ku.getDisabledRunTooltip(R,_,"Notebook extension","Run"),z=Ku.getDisabledRunTooltip(R,_,"Notebook extension","Run Selected"),G=[{title:D?"Rename":"Save As…",order:10,group:le.groups.high,action:this.handleShowRename},{title:"Copy File",action:this.handleCopy,group:le.groups.high,order:20}],K=a?.element.find(".lm_title_before").get(0);return h.createElement(h.Fragment,null,K&&Fh.createPortal(h.createElement("span",{className:te("editor-unsaved-indicator",{"is-unsaved":l!==d})}),K),h.createElement(vi,{className:"notebook-container",componentPanel:this,glContainer:i,glEventHub:o,onTab:this.handleTab,onResize:this.handleResize,onShow:this.handleShow,onTabClicked:this.handleTabClick,onTabFocus:this.handleTabFocus,onTabBlur:this.handleTabBlur,onSessionOpen:this.handleSessionOpened,onSessionClose:this.handleSessionClosed,onFocus:this.handleFocus,onBlur:this.handleBlur,additionalActions:G,renderTabTooltip:()=>T},!O&&h.createElement(h.Fragment,null,h.createElement("div",{className:"notebook-toolbar"},h.createElement("span",null,h.createElement(j,{kind:"ghost",className:"btn-play",onClick:this.handleRunAll,disabled:M,icon:h.createElement(re,{icon:Rl,transform:"grow-4"}),tooltip:"Run ".concat(nr.NOTEBOOK.RUN.getDisplayText()),"aria-label":"Run"}),$!=null&&h.createElement(pt,null,$)),h.createElement("span",null,h.createElement(j,{kind:"ghost",className:"btn-play",onClick:this.handleRunSelected,disabled:M,icon:h.createElement(re,{icon:Sw,transform:"grow-4"}),tooltip:"Run Selected ".concat(nr.NOTEBOOK.RUN_SELECTED.getDisplayText()),"aria-label":"Run Selected"}),z!=null&&h.createElement(pt,null,z)),h.createElement(j,{kind:"ghost",className:"mr-auto",disabled:A,onClick:this.handleSave,icon:jf,tooltip:"Save ".concat(ui.SAVE.getDisplayText()),"aria-label":"Save"}),h.createElement(j,{kind:"ghost",className:"btn-overflow btn-link-icon",disabled:A,icon:Hf,tooltip:"More Actions...",onClick:()=>{}},h.createElement(ai,{actions:this.getDropdownOverflowActions,popperOptions:Cn.POPPER_OPTIONS}))),h.createElement(b0,{isLoaded:m,isLoading:v,error:u,onChange:this.handleEditorChange,onRunCommand:this.handleRunCommand,session:p,sessionLanguage:C,onEditorInitialized:this.handleEditorInitialized,onEditorWillDestroy:this.handleEditorWillDestroy,settings:P,focusOnMount:y,ref:X=>{this.notebook=X}})),O&&h.createElement(rx,{content:(t=P.value)!==null&&t!==void 0?t:"",onLinkClick:this.handleLinkClick,onRunCode:this.handleRunCommand,transformImageUri:this.handleTransformLinkUri,transformLinkUri:this.handleTransformLinkUri}),h.createElement(ob,{isOpen:E,type:"file",defaultValue:T,title:D?"Rename":"Save file as",onSubmit:this.handleSaveAsSubmit,onCancel:this.handleSaveAsCancel,notifyOnExtensionChange:!0,storage:r}),h.createElement(ss,{isOpen:S,headerText:"Do you want to save the changes you made to ".concat(T,"?"),bodyText:"Your changes will be lost if you don't save them.",onCancel:this.handleCloseCancel,onDiscard:this.handleCloseDiscard,onConfirm:this.handleCloseSave,discardButtonText:"Discard Changes",confirmButtonText:"Save"}),h.createElement(le,{actions:B})))}}gr(Cn,"COMPONENT","NotebookPanel");gr(Cn,"POPPER_OPTIONS",{placement:"bottom-end"});gr(Cn,"DEFAULT_NAME","Untitled");gr(Cn,"defaultProps",{isDashboardActive:!0,isPreview:!1,session:null,sessionLanguage:null,defaultNotebookSettings:null});var ax=(n,e)=>{var t=bp(n),r=Bt(n),i=hT(n),a=Ta(n,e.localDashboardId),{session:o,config:s}=a??{},{type:l}=s??{};return{fileStorage:t,settings:r,defaultNotebookSettings:i,session:o,sessionLanguage:l}},ox=$t(ax,{saveSettings:Ed},null,{forwardRef:!0})(Cn);const Ni=ox;function sx(n){if(n==null)throw new TypeError("Cannot destructure "+n)}function ed(){return ed=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},ed.apply(this,arguments)}function td(n,e,t){return e=lx(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function lx(n){var e=dx(n,"string");return typeof e=="symbol"?e:String(e)}function dx(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Nc extends w.Component{constructor(e){super(e),td(this,"buttonRef",void 0),td(this,"irisGridRef",void 0),this.irisGridRef=h.createRef(),this.buttonRef=h.createRef(),this.handleReload=this.handleReload.bind(this),this.handleGridStateChange=this.handleGridStateChange.bind(this),this.handlePanelStateUpdate=this.handlePanelStateUpdate.bind(this);var{panelState:t}=e;this.state={shouldFocusGrid:!1,panelState:t}}handleReload(){var e,t;(e=this.irisGridRef.current)===null||e===void 0||e.initModel(),(t=this.buttonRef.current)===null||t===void 0||t.blur(),this.setState({shouldFocusGrid:!0})}handleGridStateChange(){var e,t,r,{shouldFocusGrid:i}=this.state;i&&(e=this.irisGridRef.current)!==null&&e!==void 0&&(t=e.irisGrid)!==null&&t!==void 0&&(r=t.current)!==null&&r!==void 0&&r.grid&&(this.irisGridRef.current.irisGrid.current.grid.focus(),this.setState({shouldFocusGrid:!1}))}handlePanelStateUpdate(e){this.setState({panelState:e})}render(){var e=this.props,t=ed({},(sx(e),e));return h.createElement(wa,ed({ref:this.irisGridRef,onStateChange:this.handleGridStateChange,onPanelStateUpdate:this.handlePanelStateUpdate},t),h.createElement(j,{ref:this.buttonRef,kind:"primary",className:"btn-pandas",onClick:this.handleReload,tooltip:"Click to refresh pandas dataframe, updates do not occur automatically."},"pandas dataframe",h.createElement("span",null,h.createElement(re,{icon:kh,transform:"shrink-1",className:"mr-1"}),"Reload")))}}td(Nc,"defaultProps",{panelState:null});td(Nc,"COMPONENT","PandasPanel");const _u=Nc;function ux(n){Qi(n);var{id:e,layout:t,registerComponent:r,hydrate:i}=n,a=Pa(),o=w.useCallback(s=>{var{dragEvent:l,fetch:d,panelId:u=Xe.generate(),widget:c}=s,{name:m,type:v}=c;if(v===a.VariableType.FIGURE){var g={name:m,figure:m},f=()=>d().then(b=>kl.makeModel(a,void 0,b)),p={type:"react-component",component:eo.COMPONENT,props:{localDashboardId:e,id:u,metadata:g,makeModel:f},title:m,id:u},{root:C}=t;Q.openComponent({root:C,config:p,dragEvent:l})}},[a,e,t]);return w.useEffect(function(){var l=[r(eo.COMPONENT,eo,i)];return()=>{l.forEach(d=>d())}},[i,r]),Ke(t.eventHub,Ee.OPEN,o),null}function hx(n){Qi(n);var{id:e,layout:t}=n,r=Pa(),i=w.useCallback(a=>{var{metadata:o,panelId:s=Xe.generate(),table:l}=a,{settings:d}=o,u=()=>kl.makeModelFromSettings(r,d,l),c=kt.titleFromSettings(d),m={type:"react-component",component:eo.COMPONENT,props:{localDashboardId:e,id:s,metadata:o,makeModel:u},title:c,id:s},{root:v}=t;Q.openComponent({root:v,config:m})},[r,e,t]);return Ke(t.eventHub,fn.CREATE_CHART,i),null}function Zg(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 Jg(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Zg(Object(t),!0).forEach(function(r){cx(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Zg(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)}var bt=ie.module("ConsolePlugin");function ef(n){return n.notebook!==void 0}function gx(n){Qi(n)}function fx(n){gx(n);var{id:e,hydrateConsole:t,layout:r,panelManager:i,registerComponent:a,notebooksUrl:o}=n,s=w.useRef(0),[l,d]=w.useState(new Map),[u,c]=w.useState(new Map),m=Ih(),v=w.useCallback(()=>i.getLastUsedPanelOfType(qa),[i]),g=w.useCallback((I,N)=>{d(k=>new Map(k.set(I,N)))},[d]),f=w.useCallback(I=>{d(N=>(N.delete(I),new Map(N)))},[d]),p=w.useCallback((I,N)=>{c(k=>new Map(k.set(I,N)))},[c]),C=w.useCallback(I=>{c(N=>(N.delete(I),new Map(N)))},[c]),b=w.useCallback(function(I){var N=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,k=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,x=I&&I.trim();if(!x)bt.info("Ignoring empty code");else{var Y=v();if(!Y||!(Y instanceof qa.WrappedComponent)){bt.error("Console panel not found");return}bt.debug("Send command: ",I,N,k),Y.addCommand(I,N,k)}},[v]),S=w.useCallback(I=>{m(h1(e,I))},[m,e]),E=w.useCallback(I=>{var{language:N}=I,k=N==="python"?"py":N,x=null;return k==null?(bt.debug("No extension for language",N),x="Untitled-".concat(s.current)):x="Untitled-".concat(s.current,".").concat(k),s.current+=1,x},[]),y=w.useCallback(function(I){var N=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,{id:k}=I;if(k!=null&&l.has(k))return l.get(k);if(k!=null&&u.has(k))return u.get(k);if(N)return Xe.generate()},[l,u]),T=w.useCallback((I,N)=>{Q.renameComponent(r.root,{id:I},N)},[r.root]),O=w.useCallback((I,N)=>{bt.debug("Rename file panel",I,N);var k;if(l.has(I)&&(k=l.get(I),f(I),k!=null&&g(N,k)),u.has(I)&&(k=u.get(I),C(I),k!=null&&p(N,k)),k===void 0){bt.debug2("File ".concat(I," isn't open, no need to rename the tab"));return}T(k,be.getBaseName(N))},[l,u,T,g,p,f,C]),D=w.useCallback(I=>{var N=y(I,!1);if(N==null){bt.error("Could not find panel id for file metadata",I);return}Q.activateTab(r.root,{id:N})},[y,r.root]),P=w.useCallback((I,N,k)=>{if(bt.debug("registerFilePanel",I,N,k),N==null||N.id==null){bt.debug("Ignore empty file id",N);return}var{id:x}=N;if(k){p(x,I);return}if(l.has(x)){var Y=l.get(x);if(I===Y){bt.debug("Update tab title for file ".concat(x));var{itemName:W}=N;O(x,W)}else bt.error("File ".concat(x," already associated with a different tab ").concat(Y));return}g(x,I),u.has(x)&&C(x)},[l,u,O,g,p,C]),R=w.useCallback((I,N)=>{if(bt.debug("unregisterFileTab",I,N),I==null||I.id==null){bt.debug("Ignore empty file id",I);return}var{id:k}=I;if(N){C(k);return}f(k)},[f,C]),_=w.useCallback((I,N)=>{bt.debug("closeFilePanel",I);var{id:k}=I,x=null,Y=!1;if(l.has(k))x=l.get(k);else if(u.has(k))x=u.get(k),Y=!0;else{bt.debug("File ".concat(k," isn't open, ignore close event"));return}R(I,Y),Q.closeComponent(r.root,{id:x},N)},[r.root,l,u,R]),M=w.useCallback(I=>{var{itemName:N}=I;return be.getBaseName(N)},[]),A=w.useCallback(I=>{var{id:N}=I;return bt.debug("fileIsOpen",I,N,l),N!=null&&l.has(N)},[l]),B=w.useCallback(I=>{var{id:N}=I;return bt.debug("fileIsOpenAsPreview",I,N,u),N!=null&&u.has(N)},[u]),$=w.useCallback(I=>{if(I!=null){var N=i.getOpenedPanelById(I);N&&ef(N)&&N.focus()}},[i]),z=w.useCallback(I=>{var{id:N,settings:k,fileMetadata:x,session:Y,sessionLanguage:W,isPreview:ee=!1}=I,oe={settings:k,fileMetadata:x},ae=M(x);return{type:"react-component",component:Ni.COMPONENT,isFocusOnShow:!1,props:{localDashboardId:e,metadata:{id:N},session:Y,sessionLanguage:W,panelState:oe,isPreview:ee,notebooksUrl:o},title:ae,id:N}},[M,e,o]),G=w.useCallback(function(I,N,k){var x=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{id:null,itemName:E(k)},Y=y(x);if(A(x)&&Y!=null){bt.debug("File is already open, focus panel"),D(x),$(Y);return}var W=Q.getStackForComponentTypes(r.root,[Ni.COMPONENT]),ee=z({id:Y,settings:k,fileMetadata:x,session:I,sessionLanguage:N});bt.debug("createNotebook",ee,l),Q.openComponentInStack(W,ee)},[A,$,E,y,r.root,z,l,D]),K=w.useCallback(function(I,N,k,x){var Y=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;bt.debug("selectNotebook",x,Y);var W=A(x),ee=B(x),[oe]=[...u.values()],ae=!Y,se=ae&&oe?oe:y(x);if(se==null||se==="")throw new Error("Unable to retrieve or create panelId for metadata",x);if(W||ee)D(x);else{var pe=Q.getStackForComponentTypes(r.root,[Ni.COMPONENT]),He=z({id:se,settings:k,fileMetadata:x,session:I,sessionLanguage:N,isPreview:ae});Q.openComponentInStack(pe,He)}if(ee&&Y){var at=x.id,ot=Q.getStackForConfig(r.root,{component:Ni.COMPONENT,id:se}),Qe=Q.getContentItemInStack(ot,{component:Ni.COMPONENT,id:se});Qe&&Ir(Qe)&&(Qe.container.emit(Ye.PROMOTE_FROM_PREVIEW),C(at),g(at,se))}Y&&$(se)},[D,A,B,$,y,r.root,z,u,C,g]),X=w.useCallback(function(I,N){var k=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},x=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,Y=i.getLastUsedPanelOfType(Ni);Y&&ef(Y)?k!=null&&k.value!=null&&Y.notebook!=null&&Y.notebook.append(k.value):x&&G(I,N,k)},[G,i]),J=w.useCallback((I,N)=>th.hydrate(Jg(Jg({},I),{},{notebooksUrl:o}),N),[o]);return w.useEffect(function(){var N=[a(qa.COMPONENT,qa,t),a(Xl.COMPONENT,Xl),a(Ql.COMPONENT,Ql),a(Jl.COMPONENT,Jl),a(Ni.COMPONENT,Ni,J)];return()=>{N.forEach(k=>k())}},[a,t,J]),Ke(r.eventHub,Lr.SEND_COMMAND,b),Ke(r.eventHub,Lr.SETTINGS_CHANGED,S),Ke(r.eventHub,Ye.CLOSE_FILE,_),Ke(r.eventHub,Ye.CREATE_NOTEBOOK,G),Ke(r.eventHub,Ye.SELECT_NOTEBOOK,K),Ke(r.eventHub,Ye.RENAME,T),Ke(r.eventHub,Ye.RENAME_FILE,O),Ke(r.eventHub,Ye.SEND_TO_NOTEBOOK,X),Ke(r.eventHub,Ye.REGISTER_FILE,P),Ke(r.eventHub,Ye.UNREGISTER_FILE,R),null}var $o=ie.module("FilterPlugin");function tf(n,e){return n.concat(e)}function px(n){Qi(n);var{id:e,layout:t,registerComponent:r}=n,i=Ih(),[a]=w.useState(()=>new Map),[o]=w.useState(()=>new Map),[s]=w.useState(()=>new Map),l=w.useCallback(()=>{var p=Array.from(a.values()).reduce(tf,[]).sort((S,E)=>{var y=Zr.toLower(S.name),T=Zr.toLower(E.name);if(y!==T)return y>T?1:-1;var O=Zr.toLower(S.type),D=Zr.toLower(E.type);return O!==D?O>D?1:-1:0}).reduce((S,E)=>((S.length===0||Zr.toLower(S[S.length-1].name)!==Zr.toLower(E.name)||Zr.toLower(S[S.length-1].type)!==Zr.toLower(E.type))&&S.push(E),S),[]),C=Array.from(o.values()).reduce(tf,[]).sort((S,E)=>S.timestamp-E.timestamp),b=new Map(s);$o.debug("sendUpdate",{columns:p,filters:C,tableMap:b}),i(Un(e,{columns:p,filters:C,tableMap:b}))},[i,e,a,o,s]),d=w.useCallback((p,C)=>{$o.debug2("handleColumnsChanged",p,C),a.set(p,[].concat(C)),l()},[a,l]),u=w.useCallback((p,C)=>{$o.debug2("handleFiltersChanged",p,C),o.set(p,[].concat(C)),l()},[o,l]),c=w.useCallback((p,C)=>{$o.debug2("handleTableChanged",p,C),s.set(Q.getIdFromPanel(p),C),l()},[s,l]),m=w.useCallback(p=>{$o.debug2("handlePanelUnmount",p),a.delete(p),o.delete(p),s.delete(Q.getIdFromPanel(p)),l()},[a,o,s,l]),v=w.useCallback(p=>{var{title:C="DropdownFilter",metadata:b={},panelState:S=null,id:E=Xe.generate(),focusElement:y=Q.DEFAULT_FOCUS_SELECTOR,createNewStack:T=!1,dragEvent:O=null}=p,D={type:"react-component",component:ba.COMPONENT,props:{id:E,metadata:b,panelState:S,localDashboardId:e},title:C,id:E},{root:P}=t;Q.openComponent({root:P,config:D,focusElement:y,createNewStack:T,dragEvent:O})},[t,e]),g=w.useCallback(p=>{var{title:C="InputFilter",metadata:b={},panelState:S=null,id:E=Xe.generate(),focusElement:y=Q.DEFAULT_FOCUS_SELECTOR,createNewStack:T=!1,dragEvent:O=void 0}=p,D={type:"react-component",component:ns.COMPONENT,props:{id:E,metadata:b,panelState:S,localDashboardId:e},title:C,id:E},{root:P}=t;Q.openComponent({root:P,config:D,focusElement:y,createNewStack:T,dragEvent:O})},[t,e]),f=w.useCallback(p=>{var{title:C="FilterSets",metadata:b={},panelState:S=null,id:E=Xe.generate(),focusElement:y=Q.DEFAULT_FOCUS_SELECTOR,createNewStack:T=!1,dragEvent:O=null}=p,D={type:"react-component",component:Iu.COMPONENT,props:{id:E,metadata:b,panelState:S,localDashboardId:e},title:C,id:E},{root:P}=t;Q.openComponent({root:P,config:D,focusElement:y,createNewStack:T,dragEvent:O})},[t,e]);return w.useEffect(function(){var C=[r(ba.COMPONENT,ba),r(ns.COMPONENT,ns),r(Iu.COMPONENT,Iu)];return()=>{C.forEach(b=>b())}},[r]),Ke(t.eventHub,it.COLUMNS_CHANGED,d),Ke(t.eventHub,it.FILTERS_CHANGED,u),Ke(t.eventHub,it.TABLE_CHANGED,c),Ke(t.eventHub,it.OPEN_DROPDOWN,v),Ke(t.eventHub,it.OPEN_INPUT,g),Ke(t.eventHub,it.OPEN_FILTER_SET_MANAGER,f),Ke(t.eventHub,Ee.UNMOUNT,m),null}function Cx(n){Qi(n);var{getDownloadWorker:e,loadPlugin:t,id:r,layout:i,registerComponent:a,hydrate:o,theme:s}=n,l=Pa(),d=w.useMemo(()=>[l.VariableType.TABLE,l.VariableType.TREETABLE,l.VariableType.HIERARCHICALTABLE],[l]),u=w.useCallback(c=>{var{dragEvent:m,fetch:v,panelId:g=Xe.generate(),widget:f}=c,{name:p,type:C}=f;if(d.includes(C)){var b={name:p,table:p,type:f.type},S=()=>v().then(T=>vc.makeModel(l,T)),E={type:"react-component",component:wa.COMPONENT,props:{getDownloadWorker:e,loadPlugin:t,localDashboardId:r,id:g,metadata:b,makeModel:S,theme:s},title:p,id:g},{root:y}=i;Q.openComponent({root:y,config:E,dragEvent:m})}},[l,e,r,i,t,d,s]);return w.useEffect(function(){var m=[a(wa.COMPONENT,wa,o)];return()=>{m.forEach(v=>v())}},[o,a]),Ke(i.eventHub,Ee.OPEN,u),null}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 Fi(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){mb(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 mb(n,e,t){return e=bx(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function bx(n){var e=Sx(n,"string");return typeof e=="symbol"?e:String(e)}function Sx(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function vb(n){var e=n;return typeof e.getCoordinateForColumn=="function"}function nf(n){var e=n;return vb(n)&&typeof e.setFilterMap=="function"&&typeof e.unsetFilterValue=="function"}function af(n){var e;return n.description===void 0||!((e=n.description)!==null&&e!==void 0&&e.startsWith("Preview of type: "))}var Bo=ie.module("LinkerUtils");class kd{static getLinkType(e,t,r){var i;if(e?.panelId==null||t?.panelId==null||e.panelId===t.panelId||r!=null&&r!==e.panelId&&r!==t.panelId)return Bo.debug2("Incompatible panel ids",e,t,r),"invalid";if(e.panelComponent==null||t.panelComponent==null)return Bo.error("PanelComponent should not be null",e,t),"invalid";var a=(i=kd.ALLOWED_LINKS.get(e.panelComponent))===null||i===void 0?void 0:i.includes(t.panelComponent);if(a===void 0||!a)return Bo.debug2("Incompatible panel components",e,t),"invalid";var{columnType:o}=e,{columnType:s}=t,l=s===null||H.isCompatibleType(o,s);if(!l)return Bo.debug2("Incompatible type",o,s),"invalid";switch(t.panelComponent){case Q.getComponentName(eo):return"chartLink";case Q.getComponentName(wa):return"tableLink";case Q.getComponentName(ba):return"filterSource"}return Bo.debug2("Incompatible target panel component",t.panelComponent),"invalid"}static findColumn(e,t){var{columnName:r,columnType:i}=t;return e.find(a=>{var{name:o,type:s}=a;return o===r&&s===i})}static cloneLinksForPanel(e,t,r){var i=[];return e.forEach(a=>{var o;a.start.panelId===t&&a.type!=="filterSource"?i.push(Fi(Fi({},a),{},{id:Xe.generate(),start:Fi(Fi({},a.start),{},{panelId:r})})):((o=a.end)===null||o===void 0?void 0:o.panelId)===t&&i.push(Fi(Fi({},a),{},{id:Xe.generate(),end:Fi(Fi({},a.end),{},{panelId:r})}))}),i}}mb(kd,"ALLOWED_LINKS",new Map([[Q.getComponentName(wa),[Q.getComponentName(wa),Q.getComponentName(eo),Q.getComponentName(ba)]]]));const Wa=kd;function gb(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=Ex(n,"string");return typeof e=="symbol"?e:String(e)}function Ex(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 yx=ie.module("LinkerLink"),of=.015,sf=1.5,fb=12,pb=12,lf=2,gl=Math.sqrt((pb*.5)**2+fb**2),df=Math.asin(pb*.5/fb),uf=15,Ii=Math.PI*.5;class ro extends w.Component{static makeCirclePath(e,t,r){return"M ".concat(e," ").concat(t," m -").concat(r,",0 a ").concat(r,",").concat(r," 0 1,0 ").concat(r*2,",0 a ").concat(r,",").concat(r," 0 1,0 -").concat(r*2,",0 z")}static getLabelForLinkFilter(e,t){try{if(H.isNumberType(e)||H.isCharType(e))return gp(t);if(H.isTextType(e))return vp(t);if(H.isDateType(e))return fp(t);if(H.isBooleanType(e)){if(t===ge.eq)return"is equal to";if(t===ge.notEq)return"is not equal to"}throw new Error("Unrecognized column type: ".concat(e))}catch(r){return yx.warn(r),""}}constructor(e){super(e),gb(this,"getOperators",fe((t,r)=>{var{onOperatorChanged:i}=this.props,a=H.getFilterTypes(r);return H.isBooleanType(r)&&(a=[ge.eq,ge.notEq]),a.flatMap((o,s)=>{if(o==="eqIgnoreCase"||o==="notEqIgnoreCase")return[];var l="";return o==="startsWith"?l="a*":o==="endsWith"?l="*z":l=H.getFilterOperatorString(o),[{title:ro.getLabelForLinkFilter(r,o),icon:h.createElement("b",null,l),action:()=>i(t,o),order:s}]})})),this.handleClick=this.handleClick.bind(this),this.handleMouseEnter=this.handleMouseEnter.bind(this),this.handleMouseLeave=this.handleMouseLeave.bind(this),this.handleDelete=this.handleDelete.bind(this),this.getDropdownActions=this.getDropdownActions.bind(this),this.state={isHovering:void 0}}handleClick(e){e.stopPropagation(),e.preventDefault();var{id:t,onClick:r,onDelete:i}=this.props;e.altKey?i(t):r(t)}handleMouseEnter(){this.setState({isHovering:!0})}handleMouseLeave(){this.setState({isHovering:!1})}handleDelete(){var{id:e,onDelete:t}=this.props;t(e)}getDropdownActions(){var{id:e,startColumnType:t}=this.props;return t!=null?this.getOperators(e,t):[]}render(){var{className:e,operator:t,isSelected:r,x1:i,y1:a,x2:o,y2:s,id:l,startColumnType:d,type:u}=this.props,{isHovering:c}=this.state,m=Math.sqrt((i-o)**2+(a-s)**2),v=Math.atan2(s-a,o-i),g=Math.sin(v),f=Math.cos(v)+2,p=window.innerWidth,C=window.innerHeight,b=0,S=0,E=Math.max(b,Math.min(i+(o-i)/2+g*(m*of)**sf,p)),y=Math.max(S,Math.min(a+(s-a)/2+f*(m*of)**sf,C)),T="M ".concat(i," ").concat(a," Q ").concat(E," ").concat(y," ").concat(o," ").concat(s),O="M ".concat(b," ").concat(S," L ").concat(b," ").concat(C," L ").concat(p," ").concat(C," L ").concat(p," ").concat(S,` z
|
|
36
36
|
`).concat(ro.makeCirclePath(i,a,uf),`
|
|
37
37
|
`).concat(ro.makeCirclePath(o,s,uf)),D="link-select-clip-".concat(l),P=Math.atan2(s-y,o-E),R=P-df+Math.PI,_=P+df+Math.PI,M=o+Math.cos(P)*lf,A=s+Math.sin(P)*lf,B=M+Math.cos(R)*gl,$=A+Math.sin(R)*gl,z=M+Math.cos(_)*gl,G=A+Math.sin(_)*gl,K="".concat(M,",").concat(A," ").concat(B,",").concat($," ").concat(z,",").concat(G),X=.25*i+.5*E+.25*o,J=.25*a+.5*y+.25*s,I=E-i+(o-E),N=y-a+(s-y),k=N/I,x=20,Y=x/Math.sqrt(1+k**2),W=Y*k,ee=Y*-1,oe=W*-1;Number.isFinite(k)?k>0?(Y*=-1,W*=-1,ee*=-1,oe*=-1,ee-=50-10*(Math.abs(v)%Ii),oe+=10*(Math.abs(v)%Ii),Y-=50-10*(Math.abs(v)%Ii),W+=10*(Math.abs(v)%Ii)):k<0?(ee+=10*(Math.abs(v)%Ii),oe+=10*(Math.abs(v)%Ii),Y+=10*(Math.abs(v)%Ii),W+=10*(Math.abs(v)%Ii)):(ee=15,oe=10,Y=-25,W=10):(ee=10,oe=5,Y=10,W=-35);var ae="";t!==void 0&&(t==="startsWith"?ae="a*":t==="endsWith"?ae="*z":ae=H.getFilterOperatorString(t));var se=u!=="chartLink"&&u!=="filterSource";return h.createElement(h.Fragment,null,h.createElement("svg",{className:te(e,{hovering:c})},h.createElement("clipPath",{id:D},h.createElement("path",{d:O,clipRule:"evenodd"})),h.createElement("path",{className:"link-select",d:T,onClick:this.handleClick,onMouseEnter:this.handleMouseEnter,onMouseLeave:this.handleMouseLeave,clipPath:"url(#".concat(D,")"),"data-testid":"link-select"}),h.createElement("path",{className:"link-background",d:T}),h.createElement("path",{className:"link-foreground",d:T}),h.createElement("circle",{className:"link-dot",cx:i,cy:a,r:"5"}),h.createElement("polygon",{className:"link-triangle",points:K})),d!=null&&r&&h.createElement(h.Fragment,null,se&&h.createElement(j,{kind:"primary",className:"btn-fab btn-operator",style:{top:J+(k>=0?W:oe),left:X+(k>=0?Y:ee)},onClick:()=>{},icon:h.createElement("div",{className:"fa-md fa-layers"},h.createElement("b",null,ae),h.createElement(re,{icon:ti,transform:"right-8 down-9 shrink-5"})),tooltip:"Change comparison operator"},h.createElement(ai,{actions:this.getDropdownActions,popperOptions:{placement:"bottom-start"}})),h.createElement(j,{kind:"primary",className:"btn-fab btn-delete",style:{top:J+(k<0?W:oe),left:X+(k<0?Y:ee)},onClick:this.handleDelete,icon:Hr,tooltip:"Delete"})))}}gb(ro,"defaultProps",{className:"",isSelected:!1,onClick(){},onDelete(){}});const Tx=ro;function hf(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 cf(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?hf(Object(t),!0).forEach(function(r){Fc(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):hf(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Fc(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)}var Mu=ie.module("LinkerOverlayContent");class Cb extends w.Component{constructor(e){super(e),Fc(this,"dialogRef",void 0),this.handleBlur=this.handleBlur.bind(this),this.handleResize=this.handleResize.bind(this),this.handleMouseMove=this.handleMouseMove.bind(this),this.handleMouseDown=this.handleMouseDown.bind(this),this.handleMouseUp=this.handleMouseUp.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleKeyUp=this.handleKeyUp.bind(this),this.handleEscapePressed=this.handleEscapePressed.bind(this),this.handleOperatorChanged=this.handleOperatorChanged.bind(this),this.dialogRef=h.createRef(),this.state={mouse:void 0,dialog:void 0,offset:{x:0,y:0},isDragging:!1,mode:"select"}}componentDidMount(){window.addEventListener("blur",this.handleBlur,!0),window.addEventListener("mousemove",this.handleMouseMove,!0),window.addEventListener("mouseup",this.handleMouseUp,!0),window.addEventListener("keydown",this.handleKeyDown,!0),window.addEventListener("keyup",this.handleKeyUp,!0),window.addEventListener("resize",this.handleResize,!0)}componentDidCatch(e,t){Mu.error("componentDidCatch",e,t)}componentWillUnmount(){window.removeEventListener("blur",this.handleBlur,!0),window.removeEventListener("mousemove",this.handleMouseMove,!0),window.removeEventListener("mouseup",this.handleMouseUp,!0),window.removeEventListener("keydown",this.handleKeyDown,!0),window.removeEventListener("keyup",this.handleKeyUp,!0),window.removeEventListener("resize",this.handleResize,!0)}getPointFromLinkPoint(e){var{panelManager:t}=this.props,{panelId:r,columnName:i}=e,a=t.getOpenedPanelById(r);if(a!=null){if(!vb(a))throw new Error("Panel does not have getCoordinateForColumn method: ".concat(r));try{var o=a.getCoordinateForColumn(i);if(o!=null)return o}catch{Mu.error("Could not get coordinate for column",i,a)}}var s=t.getContainerByPanelId(r);if(s==null)throw new Error("Unable to find panel container for id: ".concat(r));return Q.getTabPoint(s)}handleOperatorChanged(e,t){var{links:r,onLinksUpdated:i}=this.props,a=r.map(o=>o.id===e?cf(cf({},o),{},{operator:t}):o);i(a)}handleBlur(){this.setState({mode:"select"})}handleResize(){var{dialog:e}=this.state;if(e&&this.dialogRef.current){var t=this.dialogRef.current.getBoundingClientRect(),r=Ve(e.x,0,window.innerWidth-t.width),i=Ve(e.y,0,window.innerHeight-t.height);this.setState({dialog:{x:r,y:i}})}}handleMouseMove(e){var{offset:t,isDragging:r}=this.state;if(this.setState({mouse:{x:e.clientX,y:e.clientY}}),r&&this.dialogRef.current){var i=this.dialogRef.current.getBoundingClientRect(),a=Ve(window.innerWidth-(e.clientX+i.width+t.x),0,window.innerWidth-i.width),o=Ve(window.innerHeight-(e.clientY+i.height+t.y),0,window.innerHeight-i.height);this.setState({dialog:{x:a,y:o}})}}handleMouseDown(e){var t={x:0,y:0};if(this.dialogRef.current){var r=this.dialogRef.current.getBoundingClientRect();t.x=r.right-(r.width+e.clientX),t.y=r.bottom-(r.height+e.clientY)}this.setState({isDragging:!0,offset:t})}handleMouseUp(){this.setState({isDragging:!1})}handleKeyDown(e){if(e.key==="Alt")e.preventDefault(),this.setState({mode:"delete"});else if(e.key==="Delete"||e.key==="Backspace"){var{selectedIds:t,onLinkDeleted:r}=this.props;e.preventDefault(),t.forEach(i=>r(i))}}handleKeyUp(e){e.key==="Alt"&&(e.preventDefault(),this.setState({mode:"select"}))}handleEscapePressed(){var{onCancel:e}=this.props;e()}render(){var{disabled:e,links:t,selectedIds:r,messageText:i,onLinkSelected:a,onLinkDeleted:o,onAllLinksDeleted:s,onDone:l}=this.props,{mouse:d,dialog:u,isDragging:c,mode:m}=this.state,v=t.map(g=>{try{var f,p,{id:C,type:b,isReversed:S,start:E,end:y,operator:T}=g,O=E.columnType,[D,P]=this.getPointFromLinkPoint(E),R=(f=d?.x)!==null&&f!==void 0?f:D,_=(p=d?.y)!==null&&p!==void 0?p:P;if(y!=null&&([R,_]=this.getPointFromLinkPoint(y)),S!=null&&S){var[M,A]=[D,P];[D,P]=[R,_],[R,_]=[M,A]}var B=te("linker-link",{disabled:e},{"link-filter-source":b==="filterSource"},{"link-invalid":b==="invalid"},{interactive:g.end==null},{"link-is-selected":r.has(C)},{"danger-delete":m==="delete"});return{x1:D,y1:P,x2:R,y2:_,id:C,className:B,operator:T,startColumnType:O,type:b}}catch($){return Mu.warn("Unable to get point for link",g,$),null}}).filter(g=>g!=null);return h.createElement("div",{className:te("linker-overlay",{"danger-delete":m==="delete"})},v.map(g=>{var{x1:f,y1:p,x2:C,y2:b,id:S,className:E,operator:y,startColumnType:T,type:O}=g;return h.createElement(Tx,{className:E,id:S,x1:f,y1:p,x2:C,y2:b,key:S,onClick:a,onDelete:o,isSelected:r.has(S),operator:y,startColumnType:T,type:O,onOperatorChanged:this.handleOperatorChanged})}),h.createElement("div",{className:te("linker-toast-dialog",{dragging:c}),ref:this.dialogRef,style:{bottom:u?.y,right:u?.x},"data-testid":"linker-toast-dialog"},h.createElement(j,{draggable:!0,kind:"inline",className:"btn-drag-handle",icon:ad,onClick:()=>{},onMouseDown:this.handleMouseDown},!c&&h.createElement(pt,null,"Drag to reposition")),h.createElement("div",{className:"toast-body"},i),h.createElement("div",{className:"toast-footer"},h.createElement(j,{kind:"secondary",onClick:s},"Clear All"),h.createElement(j,{kind:"primary",onClick:l},"Done"))),h.createElement(le,{actions:[{action:this.handleEscapePressed,shortcut:ui.LINKER_CLOSE,isGlobal:!0}]}))}}Fc(Cb,"defaultProps",{disabled:"false"});const Dx=Cb;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){bb(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 bb(n,e,t){return e=Rx(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Rx(n){var e=Nx(n,"string");return typeof e=="symbol"?e:String(e)}function Nx(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var At=ie.module("Linker"),Fx=(n,e)=>({activeTool:wd(n),dh:bd(n),isolatedLinkerPanelId:bc(n,e.localDashboardId),links:Eo(n,e.localDashboardId),timeZone:Ss(n)}),Ix=$t(Fx,{setActiveTool:yd,setDashboardLinks:wc,addDashboardLinks:l1,deleteDashboardLinks:d1,setDashboardIsolatedLinkerPanelId:nb,setDashboardColumnSelectionValidator:u1});class _x extends w.Component{constructor(e){super(e),bb(this,"getCachedLinks",fe((t,r,i)=>{var a=[...t];return r!=null&&r.start!=null&&a.push(r),i!==void 0?a.filter(o=>{var s,l;return(o==null||(s=o.start)===null||s===void 0?void 0:s.panelId)===i||(o==null||(l=o.end)===null||l===void 0?void 0:l.panelId)===i||o?.end==null}):a})),this.handleCancel=this.handleCancel.bind(this),this.handleDone=this.handleDone.bind(this),this.handlePanelCloned=this.handlePanelCloned.bind(this),this.handleFilterColumnSelect=this.handleFilterColumnSelect.bind(this),this.handleColumnsChanged=this.handleColumnsChanged.bind(this),this.handlePanelClosed=this.handlePanelClosed.bind(this),this.handleLayoutStateChanged=this.handleLayoutStateChanged.bind(this),this.handleAllLinksDeleted=this.handleAllLinksDeleted.bind(this),this.handleLinkDeleted=this.handleLinkDeleted.bind(this),this.handleLinksUpdated=this.handleLinksUpdated.bind(this),this.handleChartColumnSelect=this.handleChartColumnSelect.bind(this),this.handleGridColumnSelect=this.handleGridColumnSelect.bind(this),this.handleUpdateValues=this.handleUpdateValues.bind(this),this.handleStateChange=this.handleStateChange.bind(this),this.handleExited=this.handleExited.bind(this),this.handleLinkSelected=this.handleLinkSelected.bind(this),this.handlePanelDragging=this.handlePanelDragging.bind(this),this.handlePanelDropped=this.handlePanelDropped.bind(this),this.isColumnSelectionValid=this.isColumnSelectionValid.bind(this),this.state={linkInProgress:void 0,selectedIds:new Set,isDraggingPanel:!1}}componentDidMount(){var{layout:e}=this.props;this.startListening(e),this.updateSelectionValidators()}componentDidUpdate(e){var{activeTool:t,layout:r}=this.props;r!==e.layout&&(this.stopListening(e.layout),this.startListening(r)),t!==e.activeTool&&(this.updateSelectionValidators(),t===Sr.DEFAULT&&this.reset())}componentDidCatch(e,t){At.error("componentDidCatch",e,t)}componentWillUnmount(){var{layout:e}=this.props;this.stopListening(e)}startListening(e){e.on("stateChanged",this.handleLayoutStateChanged);var{eventHub:t}=e;t.on(fn.COLUMN_SELECTED,this.handleGridColumnSelect),t.on(fn.DATA_SELECTED,this.handleUpdateValues),t.on(fn.STATE_CHANGED,this.handleStateChange),t.on(Th.COLUMN_SELECTED,this.handleChartColumnSelect),t.on(Ee.CLONED,this.handlePanelCloned),t.on(it.COLUMN_SELECTED,this.handleFilterColumnSelect),t.on(it.COLUMNS_CHANGED,this.handleColumnsChanged),t.on(Ee.CLOSE,this.handlePanelClosed),t.on(Ee.CLOSED,this.handlePanelClosed),t.on(Ee.DRAGGING,this.handlePanelDragging),t.on(Ee.DROPPED,this.handlePanelDropped)}stopListening(e){e.off("stateChanged",this.handleLayoutStateChanged);var{eventHub:t}=e;t.off(fn.COLUMN_SELECTED,this.handleGridColumnSelect),t.off(fn.DATA_SELECTED,this.handleUpdateValues),t.off(fn.STATE_CHANGED,this.handleStateChange),t.off(Th.COLUMN_SELECTED,this.handleChartColumnSelect),t.off(Ee.CLONED,this.handlePanelCloned),t.off(it.COLUMN_SELECTED,this.handleFilterColumnSelect),t.off(it.COLUMNS_CHANGED,this.handleColumnsChanged),t.off(Ee.CLOSE,this.handlePanelClosed),t.off(Ee.CLOSED,this.handlePanelClosed),t.off(Ee.DRAGGING,this.handlePanelDragging),t.off(Ee.DROPPED,this.handlePanelDropped)}reset(){this.setState({linkInProgress:void 0,selectedIds:new Set})}handleCancel(){var{linkInProgress:e}=this.state;if(e==null){var{setActiveTool:t}=this.props;t(Sr.DEFAULT)}this.setState({linkInProgress:void 0})}handleDone(){var{setActiveTool:e}=this.props;e(Sr.DEFAULT)}handleChartColumnSelect(e,t){this.columnSelected(e,t,!0)}handleFilterColumnSelect(e,t){At.debug("handleFilterColumnSelect",this.isOverlayShown());var{links:r,localDashboardId:i,setActiveTool:a,setDashboardIsolatedLinkerPanelId:o}=this.props,s=Q.getIdFromPanel(e),l=r.filter(d=>{var u,c;return((u=d.start)===null||u===void 0?void 0:u.panelId)===s||((c=d.end)===null||c===void 0?void 0:c.panelId)===s});if(!this.isOverlayShown()&&s!=null){a(Sr.LINKER),o(i,s),l.length===0&&this.columnSelected(e,t,!0,s);return}this.columnSelected(e,t,!0)}handleColumnsChanged(e,t){At.debug("handleColumnsChanged",e,t);var{links:r}=this.props,i=Q.getIdFromPanel(e);if(i==null){At.error("Invalid panelId",e);return}var a=r.filter(o=>{var{start:s,end:l}=o;return s.panelId===i&&Wa.findColumn(t,s)==null||l!=null&&l.panelId===i&&Wa.findColumn(t,l)==null});this.deleteLinks(a)}handleGridColumnSelect(e,t){if(!af(t)){At.debug2("Column is not filterable");return}this.columnSelected(e,t)}columnSelected(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3?arguments[3]:void 0;if(!(i===void 0&&!this.isOverlayShown())){var{isolatedLinkerPanelId:a}=this.props,{linkInProgress:o}=this.state,s=Q.getIdFromPanel(e);if(s!=null){var l=Q.getComponentNameFromPanel(e),{name:d,type:u}=t;if(o==null||o.start==null){var c={id:Xe.generate(),start:{panelId:s,panelComponent:l,columnName:d,columnType:u},type:"invalid",isReversed:r};At.debug("starting link",c),this.setState({linkInProgress:c})}else{var{links:m}=this.props,{start:v,id:g,isReversed:f}=o,p={panelId:s,panelComponent:l,columnName:d,columnType:u},C=Wa.getLinkType(f!==void 0&&f?p:v,f!==void 0&&f?v:p,i??a);switch(C){case"invalid":At.debug("Ignore invalid link connection",o,p);return;case"filterSource":{var b=f!==void 0&&f?v.panelId:p.panelId,S=m.filter(D=>{var{end:P}=D;return P?.panelId===b});this.deleteLinks(S);break}case"chartLink":{var E=f===!0?v:p,y=f===!0?p:v;At.debug("creating chartlink",{existingLinkEnd:E,start:v,end:p});var T=m.filter(D=>{var{end:P,start:R}=D;return R?.panelId===y.panelId&&P?.panelId===E.panelId&&P?.columnName===E.columnName&&P?.columnType===E.columnType});this.deleteLinks(T);break}}var O={start:f!==void 0&&f?p:v,end:f!==void 0&&f?v:p,id:g,type:C,operator:ge.eq};At.info("creating link",O),this.setState({linkInProgress:void 0,selectedIds:new Set([g])},()=>{this.addLinks([O])})}}}}unsetFilterValueForLink(e){var{panelManager:t}=this.props;if(e.end){var{end:r}=e,{panelId:i,columnName:a,columnType:o}=r,s=t.getOpenedPanelById(i);s?nf(s)?s.unsetFilterValue(a,o):At.debug("endPanel.unsetFilterValue not implemented",s):At.debug("endPanel no longer exists, ignoring unsetFilterValue",i)}}setPanelFilterMap(e,t){At.debug("Set filter data for panel:",e,t);var{panelManager:r}=this.props,i=r.getOpenedPanelById(e);i?nf(i)?i.setFilterMap(t):At.debug("panel.setFilterMap not implemented",e,i):At.debug("panel no longer exists, ignoring setFilterMap",e)}addLinks(e){var{addDashboardLinks:t,localDashboardId:r}=this.props;t(r,e)}deleteLinks(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,{localDashboardId:r}=this.props;if(e.forEach(o=>this.unsetFilterValueForLink(o)),t){var{setDashboardLinks:i}=this.props;i(r,[])}else if(e.length>0){var{deleteDashboardLinks:a}=this.props;a(r,e.map(o=>{var{id:s}=o;return s}))}}handleAllLinksDeleted(){var{links:e,isolatedLinkerPanelId:t}=this.props;if(t===void 0)this.deleteLinks(e,!0);else{var r=e.filter(i=>{var a,o;return(i==null||(a=i.start)===null||a===void 0?void 0:a.panelId)===t||(i==null||(o=i.end)===null||o===void 0?void 0:o.panelId)===t});this.deleteLinks(r)}this.reset()}handleLinkDeleted(e){var{links:t}=this.props,r=t.find(i=>i.id===e);r?this.deleteLinks([r]):At.error("Unable to find link to delete",e)}handleUpdateValues(e,t){for(var r=Q.getIdFromPanel(e),{dh:i,links:a,timeZone:o}=this.props,s=new Map,l=0;l<a.length;l+=1){var{start:d,end:u,operator:c}=a[l];if(d.panelId===r&&u!=null){var{panelId:m,columnName:v,columnType:g}=u,f=s.has(m)?s.get(m):new Map,p=f.has(v)===!0?f.get(v).filterList:[],{visibleIndex:C,isExpandable:b,isGrouped:S}=t[d.columnName],{value:E}=t[d.columnName],y="".concat(E);if(E===null&&b&&S&&(E=void 0),g!=null&&H.isDateType(g)){var T=new Tt(i,{timeZone:o,showTimeZone:!1,showTSeparator:!0,defaultDateTimeFormatString:Ea.FULL_DATE_FORMAT});y=T.format(E)}var O={operator:c,text:y,value:E,startColumnIndex:C};p.push(O),f.set(v,{columnType:g,filterList:p}),s.set(m,f)}}s.forEach((D,P)=>{this.setPanelFilterMap(P,D)})}handlePanelCloned(e,t){var{links:r}=this.props,i=Q.getIdFromPanel(e),a=t.id;if(i!=null){var o=Wa.cloneLinksForPanel(r,i,a);this.addLinks(o)}}handlePanelDragging(e){for(var{links:t}=this.props,r=0;r<t.length;r+=1){var i=t[r],{start:a,end:o}=i;if(a.panelId===e||o?.panelId===e){this.setState({isDraggingPanel:!0});return}}}handlePanelDropped(){this.setState({isDraggingPanel:!1})}handlePanelClosed(e){At.debug("Panel ".concat(e," closed, deleting links.")),this.deleteLinksForPanelId(e)}handleLinkSelected(e){this.setState({selectedIds:new Set([e])})}handleLinksUpdated(e){var{localDashboardId:t,setDashboardLinks:r}=this.props;r(t,e)}handleLayoutStateChanged(){this.forceUpdate()}handleStateChange(){this.forceUpdate()}handleExited(){var{localDashboardId:e,setDashboardIsolatedLinkerPanelId:t}=this.props;t(e,void 0)}deleteLinksForPanelId(e){for(var{links:t}=this.props,r=0;r<t.length;r+=1){var i=t[r],{start:a,end:o,id:s}=i;(a.panelId===e||o?.panelId===e)&&this.handleLinkDeleted(s)}}isOverlayShown(){var{activeTool:e}=this.props;return e===Sr.LINKER}updateSelectionValidators(){var{activeTool:e,setDashboardColumnSelectionValidator:t,localDashboardId:r}=this.props;switch(e){case Sr.LINKER:t(r,this.isColumnSelectionValid);break;default:t(r,void 0);break}}updateLinkInProgressType(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"invalid";this.setState(t=>{var{linkInProgress:r}=t;return r!==void 0?{linkInProgress:vf(vf({},r),{},{type:e})}:null})}isColumnSelectionValid(e,t){var{linkInProgress:r}=this.state,{isolatedLinkerPanelId:i}=this.props;if(t==null)return r?.start!=null&&this.updateLinkInProgressType(),!1;if(!af(t))return At.debug2("Column is not filterable",t.description),r?.start!=null&&this.updateLinkInProgressType("invalid"),!1;if(r?.start==null)return!0;var{isReversed:a,start:o}=r,s=Q.getIdFromPanel(e);if(s==null)return!1;var l={panelId:s,panelComponent:Q.getComponentNameFromPanel(e),columnName:t.name,columnType:t.type},d=a!==void 0&&a?Wa.getLinkType(l,o,i):Wa.getLinkType(o,l,i);return this.updateLinkInProgressType(d),d!=="invalid"}render(){var{links:e,isolatedLinkerPanelId:t,panelManager:r}=this.props,{linkInProgress:i,selectedIds:a,isDraggingPanel:o}=this.state,s=this.isOverlayShown(),l=i!=null&&i.start!=null,d=t===void 0?"Click a column source, then click a column target to create a filter link. The filter comparison operator used by a selected link can be changed. Delete a filter link by clicking the delete button or with alt+click. Click done when finished.":"Create a link between the source column button and a table column by clicking on one, then the other. Delete a filter link by clicking the delete button or with alt+click. Click done when finished.";return o?null:h.createElement(kr,{in:s,timeout:et.transitionMs,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0,onExited:this.handleExited},h.createElement(Dx,{disabled:l,panelManager:r,links:this.getCachedLinks(e,i,t),selectedIds:a,messageText:d,onLinkSelected:this.handleLinkSelected,onLinkDeleted:this.handleLinkDeleted,onAllLinksDeleted:this.handleAllLinksDeleted,onLinksUpdated:this.handleLinksUpdated,onDone:this.handleDone,onCancel:this.handleCancel}))}}var Mx=Ix(_x);const Ax=Mx;function Lx(n){Qi(n);var{id:e,layout:t,panelManager:r}=n;return h.createElement(Ax,{layout:t,localDashboardId:e,panelManager:r})}function Sb(n,e,t){return e=kx(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function kx(n){var e=xx(n,"string");return typeof e=="symbol"?e:String(e)}function xx(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 vo{static getNewMarkdownTitle(e){for(var t="".concat(vo.DEFAULT_TITLE),r=0;e.indexOf(t)>=0;)r+=1,t="".concat(vo.DEFAULT_TITLE,"-").concat(r);return t}}Sb(vo,"DEFAULT_TITLE","Note");Sb(vo,"DEFAULT_CONTENT",`# Markdown Note
|
|
38
38
|
|
|
39
|
-
This note can be edited using **markdown** for styling.`);const Au=vo;function Hx(n){Qi(n);var{id:e,layout:t,panelManager:r,registerComponent:i}=n,a=w.useCallback(s=>{var{title:l,componentState:d,props:u}=s,{panelState:c=null}=u;return d!=null&&({panelState:c=null}=d),l==null||c==null||c.content==null||c.content.length===0||c.content===Au.DEFAULT_CONTENT?null:tc(s)},[]),o=w.useCallback(function(){var{title:s="",metadata:l={},id:d=Xe.generate(),focusElement:u=Q.DEFAULT_FOCUS_SELECTOR,createNewStack:c=!1,dragEvent:m=null}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},v=r.getOpenedPanelConfigsOfType(Uo.COMPONENT),g=r.getClosedPanelConfigsOfType(Uo.COMPONENT),f=v.map(E=>{var y;return(y=E.title)!==null&&y!==void 0?y:""}),p=s!=null&&s!==""?s:Au.getNewMarkdownTitle(f),C=g.length>0?null:Au.DEFAULT_CONTENT,b={type:"react-component",component:Uo.COMPONENT,props:{id:d,metadata:l,panelState:{content:C},localDashboardId:e},title:p,id:d},{root:S}=t;Q.openComponent({root:S,config:b,focusElement:u,createNewStack:c,dragEvent:m})},[e,t,r]);return w.useEffect(function(){var l=[i(Uo.COMPONENT,Uo,rc,a)];return()=>{l.forEach(d=>d())}},[a,i]),Ke(t.eventHub,YC.OPEN,o),null}function Ux(n){Qi(n);var{hydrate:e,id:t,layout:r,registerComponent:i}=n,a=Pa(),o=w.useCallback(s=>{var{dragEvent:l,fetch:d,panelId:u=Xe.generate(),widget:c}=s,{name:m,type:v}=c;if(v===a.VariableType.PANDAS){var g={name:m,table:m},f=()=>d().then(b=>vc.makeModel(a,b)),p={type:"react-component",component:_u.COMPONENT,props:{localDashboardId:t,id:u,metadata:g,makeModel:f},title:m,id:u},{root:C}=r;Q.openComponent({root:C,config:p,dragEvent:l})}},[a,t,r]);return w.useEffect(function(){var l=[i(_u.COMPONENT,_u,e)];return()=>{l.forEach(d=>d())}},[e,i]),Ke(r.eventHub,Ee.OPEN,o),null}function xd(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=Bx(n,"string");return typeof e=="symbol"?e:String(e)}function Bx(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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{}xd(Rs,"DROPDOWN_FILTER","ControlType.DROPDOWN_FILTER");xd(Rs,"INPUT_FILTER","ControlType.INPUT_FILTER");xd(Rs,"MARKDOWN","ControlType.MARKDOWN");xd(Rs,"FILTER_SET_MANAGER","ControlType.FILTER_SET_MANAGER");const Vi=Rs;class gf{static makeSortConfig(e,t){return{column:e,direction:t}}static makeFilterConfig(e){var t=[],r=[];return e.forEach((i,a)=>{t.push(i),a>0&&r.push(ei.and)}),{filterItems:t,filterOperators:r}}static combineFilterConfigs(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:ei.and;return{filterItems:[...e.filterItems,...t.filterItems],filterOperators:[...e.filterOperators,r,...t.filterOperators]}}static makeFilterItem(e,t,r){return{columnName:e,type:t,value:r}}}function Vx(n,e,t){if(n.length>e){var r=n.length-t;return{toKeep:n.slice(r),toPrune:n.slice(0,r)}}return{toKeep:n,toPrune:[]}}function ff(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 pf(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ff(Object(t),!0).forEach(function(r){Dr(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ff(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}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 qn(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 Dr(n,e,t){return e=Gx(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Gx(n){var e=Wx(n,"string");return typeof e=="symbol"?e:String(e)}function Wx(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Lu=ie.module("PouchStorageTable"),jx="Deephaven.";Af.plugin(pS);function zx(n,e){switch(n){case ge.in:case ge.contains:return{$regex:new RegExp("".concat(e))};case ge.inIgnoreCase:return{$regex:new RegExp("".concat(e),"i")};case ge.eq:return{$eq:e};case ge.notEq:return{$neq:e};case ge.greaterThan:return{$gt:e};case ge.greaterThanOrEqualTo:return{$gte:e};case ge.lessThan:return{$lt:e};case ge.lessThanOrEqualTo:return{$lte:e};case ge.startsWith:return{$regex:new RegExp("^(?".concat(e,").*"))};default:throw new Error("Unsupported type: ".concat(n))}}function Kx(n){for(var{filterItems:e,filterOperators:t}=n,r=null,i=0;i<e.length;i+=1){var a=e[i],{columnName:o,type:s,value:l}=a,d={[o]:zx(s,l)};if(i===0)r=d;else if(r!==null&&i-1<t.length){var u=t[i-1];if(u===ei.and)r={$and:[r,d]};else if(u===ei.or)r={$or:[r,d]};else throw new Error("Unexpected filter operator ".concat(u,", ").concat(d))}}if(r==null)throw new Error("Invalid filter config ".concat(n));return r}function ku(){var n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];return{$and:[...n.map(e=>Kx(e)),{name:{$gt:null}},{id:{$gt:null}}]}}function Yx(n){var e,t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;return[{id:t?"desc":"asc"},...(e=n?.map(r=>({[r.column]:r.direction})))!==null&&e!==void 0?e:[]]}class qx{constructor(e,t){Dr(this,"db",void 0),Dr(this,"changes",void 0),Dr(this,"listeners",[]),Dr(this,"itemListeners",new Map),Dr(this,"currentSize",0),Dr(this,"currentViewport",void 0),Dr(this,"currentReverse",!1),Dr(this,"currentFilter",null),Dr(this,"currentSort",null),Dr(this,"infoUpdatePromise",void 0),Dr(this,"viewportUpdatePromise",void 0),Dr(this,"currentViewportData",void 0),this.db=new Af("".concat(jx).concat(e),t),this.db._remote=!1,this.listenForChanges(),this.db.createIndex({index:{fields:["id","name"]}}),this.refreshInfo()}listenForChanges(){this.changes=this.db.changes({live:!0,since:"now",include_docs:!0}).on("change",this.dbUpdate.bind(this))}onUpdate(e){return this.listeners=[...this.listeners,e],()=>{this.listeners=this.listeners.filter(t=>t!==e)}}onItemUpdate(e,t){return this.itemListeners.has(e)||this.itemListeners.set(e,[]),this.itemListeners.set(e,[...this.itemListeners.get(e),t]),this.refreshItem(e),()=>{this.itemListeners.set(e,this.itemListeners.get(e).filter(r=>r!==t))}}close(){this.listeners=[]}get size(){return this.currentSize}get viewport(){return this.currentViewport}setReversed(e){this.currentReverse=e,this.currentViewportData=void 0,this.refreshData()}setViewport(e){this.currentViewport=e,this.refreshInfo(),this.refreshData()}setSorts(e){this.currentSort=e,this.currentViewportData=void 0,this.refreshData()}setFilters(e){this.currentFilter=e,this.currentViewportData=void 0,this.refreshInfo(),this.refreshData()}get data(){return this.currentViewportData}getViewportData(){var e=this;return qn(function*(){var t;return e.viewportUpdatePromise||e.refreshData(),(t=e.viewportUpdatePromise)!==null&&t!==void 0?t:Promise.resolve({items:[],offset:0})})()}put(e){var t=this;return qn(function*(){var r=pf(pf({},e),{},{_id:e.id});return yield t.db.put(r),r})()}sendUpdate(){for(var e,{listeners:t}=this,r=(e=this.currentViewportData)!==null&&e!==void 0?e:{items:[],offset:0},i=0;i<t.length;i+=1)t[i](r)}sendItemUpdate(e){var t=this.itemListeners.get(e.id);if(t!==void 0)for(var r=0;r<t.length;r+=1)t[r](e)}dbUpdate(e){Lu.debug("Update received",e),this.refreshInfo(),e.doc!==void 0&&this.sendItemUpdate(e.doc),this.refreshData()}fetchInfo(e){var t=this;return qn(function*(){return t.db.find({selector:e,fields:[]})})()}refreshInfo(){var e=this;return qn(function*(){try{var t,r;(t=e.infoUpdatePromise)===null||t===void 0||t.cancel(),e.infoUpdatePromise=Te.makeCancelable(e.fetchInfo(ku((r=e.currentFilter)!==null&&r!==void 0?r:[])));var i=yield e.infoUpdatePromise;e.currentSize=i.docs.length,e.sendUpdate()}catch(a){if(!Te.isCanceled(a))throw Lu.error("Unable to refreshInfo",a),a}})()}fetchViewportData(e,t,r){var i=this;return qn(function*(){return i.db.find({selector:t,skip:e.top,limit:e.bottom-e.top+1,sort:r,fields:["id","name"]}).then(a=>({items:a.docs,offset:e.top}))})()}refreshData(){var e=this;return qn(function*(){if(e.currentViewport)try{var t,r,i=ku((t=e.currentFilter)!==null&&t!==void 0?t:[]),a=Yx(e.currentSort,e.currentReverse);(r=e.viewportUpdatePromise)===null||r===void 0||r.cancel(),e.viewportUpdatePromise=Te.makeCancelable(e.fetchViewportData(e.currentViewport,i,a));var o=yield e.viewportUpdatePromise;return e.currentViewportData=o,e.sendUpdate(),o}catch(s){if(!Te.isCanceled(s))throw Lu.error("Unable to refreshData",s),s}})()}refreshItem(e){var t=this;return qn(function*(){var r=yield t.db.find({selector:{id:e},limit:1}),i=r.docs[0];return i!==void 0&&t.sendItemUpdate(i),i})()}getSnapshot(e){var t=this;return qn(function*(){var r=new Map,i=[{id:t.currentReverse?"desc":"asc"}];return yield Promise.all(e.map(function(){var a=qn(function*(o){var s,[l,d]=o,u=d-l+1;return t.db.find({selector:ku((s=t.currentFilter)!==null&&s!==void 0?s:[]),skip:l,limit:u,sort:i,fields:["id","name"]}).then(c=>{for(var m=0;m<u;m+=1){var v=l+m;r.set(v,c.docs[m])}})});return function(o){return a.apply(this,arguments)}}())),r})()}}const Xx=qx;function bf(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 fl(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?bf(Object(t),!0).forEach(function(r){wb(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):bf(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Sf(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 Vo(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){Sf(a,r,i,o,s,"next",l)}function s(l){Sf(a,r,i,o,s,"throw",l)}o(void 0)})}}function wb(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 Jx=2500,eH=2e3,zr=ie.module("PouchCommandHistoryTable");class tH extends Xx{constructor(e,t){var r;super("CommandHistoryStorage.".concat(e),{auto_compaction:!0,revs_limit:1}),wb(this,"searchText",void 0),this.cache=t,this.cache.tableRegistry.has(this.cacheKey)||this.cache.tableRegistry.set(this.cacheKey,new Set),zr.debug("Adding table to registry",this.cacheKey),(r=this.cache.tableRegistry.get(this.cacheKey))===null||r===void 0||r.add(this)}get cacheKey(){return this.db.name}setSearch(e){zr.debug("Setting search filters",e),this.searchText=e.trim().toLowerCase(),this.setFilters(e?[gf.makeFilterConfig([gf.makeFilterItem("name",ge.contains,e)])]:[])}dbUpdate(e){zr.debug("Clearing cache and refreshing data",e),this.cache.response.delete(this.cacheKey),super.dbUpdate(e)}fetchData(e){var t=this;return Vo(function*(){return Te.withTimeout(0,Vo(function*(){t.cache.response.has(t.cacheKey)?zr.debug("Fetching from cache",t.searchText,t.viewport):(zr.debug("Fetching from PouchDB",t.searchText,t.viewport),t.cache.response.set(t.cacheKey,t.db.allDocs({include_docs:!0}).then(i=>{var a=i.rows.map(l=>l.doc).filter(l=>{var{name:d}=l;return d});zr.debug("Fetched ".concat(a.length," command history items"));var{toKeep:o,toPrune:s}=Vx(a,Jx,eH);return s.length&&t.pruneItems(s),{docs:o}})));var r=t.cache.response.get(t.cacheKey);return t.searchText==null||t.searchText===""?r:fl(fl({},r),{},{docs:(yield r).docs.filter(i=>{var{name:a}=i;return a.toLowerCase().includes(t.searchText)})})}))})()}fetchInfo(e){var t=this;return Vo(function*(){return t.fetchData(e)})()}fetchViewportData(e,t,r){var i=this;return Vo(function*(){var a=yield i.fetchData(t);zr.debug("Fetching viewport data",e.top,e.bottom+1,r,a);var o=typeof r[0]=="object"&&r[0].id==="desc",s=o?a.docs.slice(0).reverse():a.docs,l=s.slice(e.top,e.bottom+1);return{items:l,offset:e.top}})()}pruneItems(e){var t=this;return Vo(function*(){if(t.cache.isPruning.get(t.cacheKey)===!0){zr.debug("Pruning already in progress. Skipping.");return}try{zr.debug("Pruning ".concat(e.length," command history items"));var r=t.cache.pauseChangeListeners(t.cacheKey);t.cache.isPruning.set(t.cacheKey,!0),yield t.db.bulkDocs(e.map(i=>fl(fl({},i),{},{_deleted:!0}))),t.cache.isPruning.set(t.cacheKey,!1),r(),zr.debug("Finished pruning command history items")}catch(i){zr.error("An error occurred while pruning db",i)}})()}close(){var e,t,r;zr.debug("Closing table",this,(e=this.cache.tableRegistry.get(this.cacheKey))===null||e===void 0?void 0:e.size),(t=this.cache.tableRegistry.get(this.cacheKey))===null||t===void 0||t.delete(this),(r=this.changes)===null||r===void 0||r.cancel(),super.close()}}const wf=tH;function xu(n,e,t){return e=rH(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function rH(n){var e=nH(n,"string");return typeof e=="symbol"?e:String(e)}function nH(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Ef=ie.module("PouchCommandHistoryCache");class iH{constructor(){xu(this,"isPruning",void 0),xu(this,"response",void 0),xu(this,"tableRegistry",void 0),this.isPruning=new Map,this.response=new Map,this.tableRegistry=new Map}pauseChangeListeners(e){var t,r=[];return(t=this.tableRegistry.get(e))===null||t===void 0||t.forEach(i=>{i.changes&&(Ef.debug("Pausing event listeners on '".concat(e,"' table"),i),i.changes.cancel(),r.push(i))}),()=>{r.forEach(i=>{var a,o;(a=(o=this.tableRegistry.get(e))===null||o===void 0?void 0:o.has(i))!==null&&a!==void 0&&a&&(Ef.debug("Resuming event listeners on '".concat(e,"' table"),i),i.listenForChanges())})}}}const aH=iH;function yf(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?yf(Object(t),!0).forEach(function(r){Dh(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):yf(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Pf(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 Hu(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){Pf(a,r,i,o,s,"next",l)}function s(l){Pf(a,r,i,o,s,"throw",l)}o(void 0)})}}function Dh(n,e,t){return e=oH(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function oH(n){var e=sH(n,"string");return typeof e=="symbol"?e:String(e)}function sH(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Of=ie.module("PouchCommandHistoryStorage");class lH{constructor(){Dh(this,"cache",new aH),Dh(this,"updateTableMap",new Map)}getUpdateTable(e){return this.updateTableMap.has(e)||this.updateTableMap.set(e,new wf(e,this.cache)),this.updateTableMap.get(e)}getTable(e){var t=this;return Hu(function*(){return new wf(e,t.cache)})()}addItem(e,t,r,i){var a=this;return Hu(function*(){return a.updateItem(e,{id:"".concat(new Date().getTime()),name:r,data:i})})()}updateItem(e,t){var r=this;return Hu(function*(){var i=r.getUpdateTable(e),a=yield i.refreshItem(t.id),o=Tf(Tf({},a??{}),t);return Of.debug("Updating item",o),yield i.put(o),Of.debug("Update saved"),t})()}listenItem(e,t,r){var i=this.getUpdateTable(e);return i.onItemUpdate(t,r)}}const Eb="SET_LAYOUT_STORAGE",dH=n=>({type:Eb,payload:n});var{dh:uH}=globalThis;const Rr=uH,yb=""+new URL("community-wordmark-app-d2c5c1eb.svg",import.meta.url).href;const hH=ie.module("SettingsUtils");function cH(n){return n.formatString!=null}function Rh(n){const e=n?.querySelector("input, select, textarea");e&&e.focus()}function Tb(n,e){return n.defaultFormatString===e.defaultFormatString}function mH(n,e){return Tb(n,e)}function vH(n,e){return Tb(n,e)}function Pb(n){return n!==""&&po.isValidColumnName(n)}function Gi(n,e,t){if(!e||t.formatString==null||!cH(t))return!1;switch(e){case"datetime":return Tt.isValid(n,t);case"decimal":return tt.isValid(n,t);case"int":return yt.isValid(n,t);default:return hH.warn("Trying to validate format of unknown type"),!0}}function Ob(n){const{id:e,isNewRule:t,...r}=n;return r}function Db(n,e){return Pb(e.columnName)&&Gi(n,e.columnType,e.format)}function Rb(n){const{timestamp:e,timeZone:t,showTimeZone:r,showTSeparator:i,isGlobalOptions:a,legacyGlobalFormat:o}=n,s=Pa(),l=w.useMemo(()=>new wn(s,[],{timeZone:t,showTimeZone:r,showTSeparator:i}),[s,r,i,t]),d=a?Tt.getGlobalFormats(r,i):Tt.getFormats(r,i);return o!=null&&!d.includes(o)&&d.unshift(o),F.jsx(F.Fragment,{children:d.map(u=>{const c=Tt.makeFormat("",u,Tt.TYPE_GLOBAL);return F.jsx("option",{value:u,"data-testid":"time-format",children:l.getFormattedString(e,H.dataType.DATETIME,"",c)},u)})})}function gH(){return F.jsx(F.Fragment,{children:dd.TIME_ZONES.map(n=>{const{label:e,value:t}=n;return F.jsx("option",{value:t,children:e},t)})})}const sa=ie.module("FormattingSectionContent");class Ic extends w.PureComponent{static defaultProps={scrollTo:()=>{},defaults:{defaultDateTimeFormat:Tt.DEFAULT_DATETIME_FORMAT_STRING,defaultDecimalFormatOptions:{defaultFormatString:tt.DEFAULT_FORMAT_STRING},defaultIntegerFormatOptions:{defaultFormatString:yt.DEFAULT_FORMAT_STRING},showTimeZone:!1,showTSeparator:!0,timeZone:Tt.DEFAULT_TIME_ZONE_ID}};static inputDebounceTime=250;constructor(e){super(e),this.debouncedCommitChanges=rt(this.commitChanges.bind(this),Ic.inputDebounceTime),this.handleDefaultDateTimeFormatChange=this.handleDefaultDateTimeFormatChange.bind(this),this.handleDefaultDecimalFormatChange=this.handleDefaultDecimalFormatChange.bind(this),this.handleDefaultIntegerFormatChange=this.handleDefaultIntegerFormatChange.bind(this),this.handleShowTimeZoneChange=this.handleShowTimeZoneChange.bind(this),this.handleShowTSeparatorChange=this.handleShowTSeparatorChange.bind(this),this.handleTimeZoneChange=this.handleTimeZoneChange.bind(this),this.handleResetDateTimeFormat=this.handleResetDateTimeFormat.bind(this),this.handleResetDecimalFormat=this.handleResetDecimalFormat.bind(this),this.handleResetIntegerFormat=this.handleResetIntegerFormat.bind(this),this.handleResetTimeZone=this.handleResetTimeZone.bind(this),this.handleTruncateNumbersWithPoundChange=this.handleTruncateNumbersWithPoundChange.bind(this);const{formatter:t,defaultDateTimeFormat:r,defaultDecimalFormatOptions:i,defaultIntegerFormatOptions:a,showTimeZone:o,showTSeparator:s,timeZone:l,truncateNumbersWithPound:d}=e,u=t.map((c,m)=>({...c,id:m}));this.containerRef=h.createRef(),this.state={formatSettings:u,showTimeZone:o,showTSeparator:s,timeZone:l,defaultDateTimeFormat:r,defaultDecimalFormatOptions:i,defaultIntegerFormatOptions:a,truncateNumbersWithPound:d,timestampAtMenuOpen:new Date}}componentDidMount(){Rh(this.containerRef.current)}componentWillUnmount(){this.debouncedCommitChanges.flush()}debouncedCommitChanges;containerRef;getCachedDateTimeFormatOptions=Pe((e,t,r,i=!1,a)=>{const{timestampAtMenuOpen:o}=this.state;return F.jsx(Rb,{timestamp:o,timeZone:e,showTimeZone:t,showTSeparator:r,isGlobalOptions:i,legacyGlobalFormat:a})});handleDefaultDateTimeFormatChange(e){sa.debug("handleDefaultDateTimeFormatChange",e.target.value),this.setState({defaultDateTimeFormat:e.target.value},()=>{this.debouncedCommitChanges()})}handleDefaultDecimalFormatChange(e){sa.debug("handleDefaultDecimalFormatChange",e.target.value),this.setState({defaultDecimalFormatOptions:{defaultFormatString:e.target.value}},()=>{this.debouncedCommitChanges()})}handleDefaultIntegerFormatChange(e){sa.debug("handleDefaultIntegerFormatChange",e.target.value),this.setState({defaultIntegerFormatOptions:{defaultFormatString:e.target.value}},()=>{this.debouncedCommitChanges()})}handleShowTimeZoneChange(){this.setState(e=>({showTimeZone:!e.showTimeZone}),()=>{this.debouncedCommitChanges()})}handleShowTSeparatorChange(){this.setState(e=>({showTSeparator:!e.showTSeparator}),()=>{this.debouncedCommitChanges()})}handleTimeZoneChange(e){this.setState({timeZone:e.target.value},()=>{this.debouncedCommitChanges()})}handleResetDateTimeFormat(){const{defaults:e}=this.props,{defaultDateTimeFormat:t,showTimeZone:r,showTSeparator:i}=e;sa.debug("handleResetDateTimeFormat"),this.setState({defaultDateTimeFormat:t,showTimeZone:r,showTSeparator:i},()=>{this.debouncedCommitChanges()})}handleResetTimeZone(){const{defaults:e}=this.props,{timeZone:t}=e;sa.debug("handleResetTimeZone"),this.setState({timeZone:t},()=>{this.debouncedCommitChanges()})}handleResetDecimalFormat(){const{defaults:e}=this.props,{defaultDecimalFormatOptions:t}=e;sa.debug("handleResetDecimalFormat"),this.setState({defaultDecimalFormatOptions:t},()=>{this.debouncedCommitChanges()})}handleResetIntegerFormat(){const{defaults:e}=this.props,{defaultIntegerFormatOptions:t}=e;sa.debug("handleResetIntegerFormat"),this.setState({defaultIntegerFormatOptions:t},()=>{this.debouncedCommitChanges()})}handleTruncateNumbersWithPoundChange(){this.setState(e=>({truncateNumbersWithPound:!e.truncateNumbersWithPound}),()=>{this.debouncedCommitChanges()})}commitChanges(){const{formatSettings:e,defaultDateTimeFormat:t,showTimeZone:r,showTSeparator:i,timeZone:a,defaultDecimalFormatOptions:o,defaultIntegerFormatOptions:s,truncateNumbersWithPound:l}=this.state,{dh:d}=this.props,u=e.filter(g=>Db(d,g)).map(Ob)??[],{settings:c,saveSettings:m}=this.props,v={...c,formatter:u,defaultDateTimeFormat:t,showTimeZone:r,showTSeparator:i,timeZone:a,truncateNumbersWithPound:l};Gi(d,H.dataType.DECIMAL,tt.makeCustomFormat(o.defaultFormatString))&&(v.defaultDecimalFormatOptions=o),Gi(d,H.dataType.INT,yt.makeCustomFormat(s.defaultFormatString))&&(v.defaultIntegerFormatOptions=s),m(v)}render(){const{defaults:e,dh:t}=this.props,{defaultDateTimeFormat:r,defaultDecimalFormatOptions:i,defaultIntegerFormatOptions:a,timeZone:o,showTimeZone:s,showTSeparator:l,truncateNumbersWithPound:d}=this.state,{defaultFormatString:u=tt.DEFAULT_FORMAT_STRING}=i??{},{defaultFormatString:c=yt.DEFAULT_FORMAT_STRING}=a??{},m=o===e.timeZone,v=l===e.showTSeparator&&s===e.showTimeZone&&r===e.defaultDateTimeFormat,g=mH(i,e.defaultDecimalFormatOptions),f=vH(a,e.defaultIntegerFormatOptions);return F.jsx("div",{className:"app-settings-formatting-section",ref:this.containerRef,children:F.jsxs("div",{className:"container-fluid p-0",children:[F.jsx("div",{className:"app-settings-menu-description mb-3",children:"Choose the default formatting rule to apply to all table columns based on their type."}),F.jsxs("div",{className:"form-row mb-2",children:[F.jsx("label",{className:"col-form-label col-3",htmlFor:"select-reset-timezone",children:"Time zone"}),F.jsx("div",{className:"col pr-0",children:F.jsx("select",{className:"custom-select",value:o,onChange:this.handleTimeZoneChange,id:"select-reset-timezone",children:F.jsx(gH,{})})}),F.jsx("div",{className:"col-1 btn-col",children:F.jsx(j,{kind:"ghost",icon:ma,onClick:this.handleResetTimeZone,tooltip:"Reset Time Zone",className:te("btn-reset","btn-reset-time-zone",{hidden:m})})})]}),F.jsxs("div",{className:"form-row mb-2",children:[F.jsx("label",{className:"col-form-label col-3",htmlFor:"select-default-time-format",children:"DateTime"}),F.jsx("div",{className:"col pr-0",children:F.jsx("select",{className:"custom-select",value:r,onChange:this.handleDefaultDateTimeFormatChange,id:"select-default-time-format",children:this.getCachedDateTimeFormatOptions(o,s,l,!0,r)})}),F.jsx("div",{className:"col-1 btn-col",children:F.jsx(j,{kind:"ghost",icon:ma,onClick:this.handleResetDateTimeFormat,tooltip:"Reset DateTime Options",className:te("btn-reset","btn-reset-date-time",{hidden:v})})})]}),F.jsx("div",{className:"form-row",children:F.jsx("div",{className:"offset-3 col-9",children:F.jsx(rn,{checked:s??null,onChange:this.handleShowTimeZoneChange,children:"Show time zone in dates"})})}),F.jsx("div",{className:"form-row mb-3",children:F.jsx("div",{className:"offset-3 col-9",children:F.jsx(rn,{checked:l??null,onChange:this.handleShowTSeparatorChange,children:"Show 'T' separator"})})}),F.jsxs("div",{className:"form-row mb-2",children:[F.jsx("label",{className:"col-form-label col-3",htmlFor:"default-decimal-format-input",children:"Decimal"}),F.jsx("div",{className:"col pr-0",children:F.jsx("input",{className:te("form-control","flex-grow-1","default-decimal-format-input",{"is-invalid":!Gi(t,H.dataType.DECIMAL,tt.makeCustomFormat(u))}),"data-lpignore":!0,placeholder:tt.DEFAULT_FORMAT_STRING,type:"text",id:"default-decimal-format-input",value:u,onChange:this.handleDefaultDecimalFormatChange})}),F.jsx("div",{className:"col-1 btn-col",children:F.jsx(j,{kind:"ghost",icon:ma,onClick:this.handleResetDecimalFormat,tooltip:"Reset Decimal Formatting",className:te("btn-reset","btn-reset-decimal",{hidden:g}),"data-testid":"btn-reset-decimal"})})]}),F.jsxs("div",{className:"form-row mb-2",children:[F.jsx("label",{className:"col-form-label col-3",htmlFor:"default-integer-format-input",children:"Integer"}),F.jsx("div",{className:"col pr-0",children:F.jsx("input",{className:te("form-control","flex-grow-1","default-integer-format-input",{"is-invalid":!Gi(t,H.dataType.INT,yt.makeCustomFormat(c))}),"data-lpignore":!0,placeholder:yt.DEFAULT_FORMAT_STRING,type:"text",id:"default-integer-format-input",value:c,onChange:this.handleDefaultIntegerFormatChange})}),F.jsx("div",{className:"col-1 btn-col",children:F.jsx(j,{kind:"ghost",icon:ma,onClick:this.handleResetIntegerFormat,tooltip:"Reset Integer Formatting",className:te("btn-reset","btn-reset-integer",{hidden:f}),"data-testid":"btn-reset-integer"})})]}),F.jsx("div",{className:"form-row mb-3",children:F.jsx("div",{className:"offset-3 col-9",children:F.jsx(rn,{checked:d??null,onChange:this.handleTruncateNumbersWithPoundChange,children:"Truncate numbers with #"})})})]})})}}const fH=n=>({formatter:yp(n),defaultDateTimeFormat:Sp(n),defaultDecimalFormatOptions:wp(n),defaultIntegerFormatOptions:Ep(n),dh:bd(n),showTimeZone:Tp(n),showTSeparator:Pp(n),truncateNumbersWithPound:Op(n),timeZone:Ss(n),settings:Bt(n)}),pH=$t(fH,{saveSettings:Ed})(Ic);function CH(){const[n,e]=w.useState(!1),t=()=>{e(!n)};return F.jsxs(j,{kind:"ghost",onClick:t,icon:ww,children:["Legal Notices",F.jsxs(od,{isOpen:n,toggle:t,className:"theme-bg-light",children:[F.jsx(sd,{toggle:t,children:"Legal Notice"}),F.jsxs(ld,{children:[F.jsx("p",{children:"Deephaven software is protected by U.S. Patent Nos. 9,612,959; 9,613,018; 9,613,109; 9,619,210; 9,633,060; 9,639,570; 9,672,238; 9,679,006; 9,690,821; 9,710,511; 9,760,591; 9,805,084; 9,836,494; 9,836,495; 9,886,469; 9,898,496; 9,934,266; 10,002,153; 10,002,154; 10,002,155; 10,003,673; 10,019,138; 10,069,943; 10,176,211; 10,198,465; 10,198,466; 10,198,469; 10,212,257; 10,241,960; 10,241,965; 10,242,040; 10,242,041; 10,346,394; 10,353,893; 10,452,649; 10,496,639; 10,540,351; 10,552,412; 10,565,194; 10,565,206; 10,572,474; 10,621,168; 10,642,829; 10,657,184; 10,678,787; 10,691,686; 10,783,191; 10,866,943; 10,909,183; 10,915,526; 10,922,311; 10,929,394; 11,023,462; 11,126,662; 11,151,133; 11,238,036; 11,249,994; 11,263,211; 11,449,557; 11,514,037; 11,556,528; and 11,574,018. Other patents pending."}),F.jsxs("p",{children:["© 2016-",new Date().getFullYear()," Deephaven Data Labs LLC. Patent Pending."]})]})]})]})}function as(n){const{children:e,isExpanded:t,sectionKey:r,title:i,onToggle:a}=n;return F.jsxs(F.Fragment,{children:[F.jsx("div",{children:F.jsxs(j,{kind:"ghost",className:"btn-collapse-trigger",onClick:()=>a(r),children:[F.jsx("div",{className:"flex-grow-1",children:i}),F.jsx("div",{className:"flex-shrink-0",children:F.jsx(re,{transform:t?"flip-v":"",icon:ti})})]})}),F.jsx(Vw,{in:t,autoFocusOnShow:!0,children:e})]})}as.propTypes={children:q.node,isExpanded:q.bool.isRequired,sectionKey:q.string.isRequired,title:q.node.isRequired,onToggle:q.func};as.defaultProps={children:null,onToggle:()=>{}};function bH({shortcut:n,displayText:e,categoryName:t,onChange:r}){const[i,a]=w.useState(e),[o,s]=w.useState(n.getKeyState()),[l,d]=w.useState(!1),[u,c]=w.useState("");w.useEffect(function(){a(e),s(n.getKeyState())},[e,n]),w.useEffect(function(){a(hn.getDisplayText(o)),n.matchesKeyState(o)&&d(!1)},[o,n]),w.useEffect(function(){if(l){if(!hn.isValidKeyState(o)){hn.isAllowedKey(o.keyValue)?c("Must contain a modifier key"):c("Must contain an allowed action key");return}const E=qe.getConflictingShortcuts(o).filter(y=>y.id.startsWith(t)&&y!==n).map(y=>y.name);if(E.length){c(`Conflicts with ${E.join(", ")}`);return}c("")}else c("")},[l,o,t,n]);function m(S){if(S.stopPropagation(),S.preventDefault(),n.isEditable&&!S.repeat){const E=hn.getKeyStateFromEvent(S),y=hn.createKeyState([Oe.BACKSPACE]);hn.doKeyStatesMatch(E,y)?s(hn.NULL_KEY_STATE):s(E)}}function v(S){S.stopPropagation(),S.preventDefault(),n.matchesKeyState(o)||d(!0)}function g(){Ki.disableAllActions()}function f(){Ki.enableAllActions()}function p(){n.setKeyState(o),d(!1),r(n)}function C(){const S=n.getKeyState();s(S),d(!1)}function b(){d(!0),s(n.getDefaultKeyState())}return F.jsxs(F.Fragment,{children:[F.jsxs("div",{className:"shortcut-item-container",children:[F.jsxs("label",{className:"shortcut-item-name",children:[n.name,n.tooltip!==void 0&&F.jsx(pt,{children:n.tooltip})]}),F.jsxs("div",{className:"shortcut-item-input-container",children:[F.jsx("input",{className:te("form-control",{"is-invalid":u}),onKeyDown:m,onKeyUp:v,onFocus:g,onBlur:f,disabled:!n.isEditable,value:i,readOnly:!0}),!hn.doKeyStatesMatch(o,n.getDefaultKeyState())&&!u&&F.jsx(j,{className:"reset-to-default-button",kind:"ghost",icon:F.jsx(re,{icon:ma,transform:{rotate:90,flipX:!0}}),tooltip:"Reset to default",onClick:b})]})]}),l&&F.jsxs("div",{className:te("shortcut-item-message-container",{"is-invalid":u}),children:[F.jsx("div",{className:"shortcut-item-message",children:u}),F.jsxs("div",{className:"shortcut-item-message-buttons",children:[hn.isValidKeyState(o)&&F.jsx(j,{kind:"ghost",onClick:p,children:"Confirm"}),F.jsx(j,{kind:"ghost",onClick:C,children:"Undo"})]})]})]})}function SH({shortcutOverrides:n={},settings:e,saveSettings:t}){const r=w.useCallback(s=>{const l=hn.isMacPlatform,d={mac:{...n.mac},windows:{...n.windows}},u=l?d.mac:d.windows;s.forEach(c=>{c.isDefault()?delete u[c.id]:u[c.id]=c.getKeyState()}),t({...e,shortcutOverrides:d})},[e,t,n]);let i=Array.from(qe.shortcutsByCategory.entries()).map(([s,l])=>({name:s,shortcuts:l}));const a=i.findIndex(s=>s.name.toUpperCase()==="GLOBAL"),o=i.splice(a,1);return i=i.concat(o),F.jsxs(F.Fragment,{children:[F.jsx("div",{className:"app-settings-menu-description",children:"Customize shortcuts below. To prevent unexpected results, avoid conflicting shortcuts with the browser or IDE editor."}),i.map(s=>F.jsx(wH,{name:s.name,shortcuts:s.shortcuts,saveShortcutOverrides:r},s.name))]})}function wH({name:n,shortcuts:e,saveShortcutOverrides:t}){function r(l){return l.split("_").map(d=>`${d[0].toUpperCase()}${d.slice(1).toLowerCase()}`).join(" ")}const[i,a]=w.useState(e);function o(l){const d=i.filter(c=>c!==l&&!c.isNull()&&c.matchesKeyState(l.getKeyState()));d.forEach(c=>c.setToNull());const u=[l,...d];t(u),a(c=>[...c])}const s=w.useMemo(()=>i.map(l=>l.getDisplayText()),[i]);return F.jsxs("div",{className:"mt-3",children:[F.jsx("div",{className:"font-weight-bold",children:r(n)}),i.map((l,d)=>F.jsx(bH,{shortcut:l,displayText:s[d],categoryName:n,onChange:o},l.id))]})}const EH=n=>({settings:Bt(n),shortcutOverrides:uT(n)}),yH={saveSettings:Ed},TH=$t(EH,yH)(SH),PH="yyyy-MM-dd-HHmmss";function Nb(n,e="root",t=new Map([[n,""]])){const r={};return Object.entries(n).forEach(([i,a])=>{try{JSON.stringify(a),r[i]=a}catch{const s=a;if(typeof a=="bigint")r[i]=a.toString();else if(t.has(s))r[i]=`Circular ref to ${t.get(s)}`;else{const l=`${e}.${i}`;t.set(s,l),r[i]=Nb(a,l,t)}}}),r}function OH(){const n=Yh.getState();return JSON.stringify(Nb(n),null,2)}function DH(n){const e={uiVersion:"0.44.0",userAgent:navigator.userAgent,...n};return JSON.stringify(e,null,2)}async function RH(n=`${Rr.i18n.DateTimeFormat.format(PH,new Date)}_support_logs`,e){const t=new Lf,r=t.folder(n);r.file("console.txt",Ew.getFormattedHistory()),r.file("redux.json",OH()),r.file("metadata.json",DH(e));const i=await t.generateAsync({type:"blob"}),a=document.createElement("a");a.href=URL.createObjectURL(i),a.download=`${n}.zip`,a.click()}const NH=[{value:H.dataType.DATETIME,label:"DateTime"},{value:H.dataType.DECIMAL,label:"Decimal"},{value:H.dataType.INT,label:"Integer"}];function FH(){const n=NH.map(e=>F.jsx("option",{value:e.value,children:e.label},`key-columnType-${e.value}`));return F.jsxs(F.Fragment,{children:[F.jsx("option",{disabled:!0,value:"",children:"Select Type"},"key-columnType-placeholder"),n]})}class _c extends w.PureComponent{static defaultProps={scrollTo:()=>{},defaults:{defaultDateTimeFormat:Tt.DEFAULT_DATETIME_FORMAT_STRING,defaultDecimalFormatOptions:{defaultFormatString:tt.DEFAULT_FORMAT_STRING},defaultIntegerFormatOptions:{defaultFormatString:yt.DEFAULT_FORMAT_STRING},showTimeZone:!1,showTSeparator:!0,timeZone:Tt.DEFAULT_TIME_ZONE_ID}};static inputDebounceTime=250;constructor(e){super(e),this.debouncedCommitChanges=rt(this.commitChanges.bind(this),_c.inputDebounceTime),this.handleFormatRuleEntered=this.handleFormatRuleEntered.bind(this),this.handleFormatRuleChange=this.handleFormatRuleChange.bind(this),this.handleFormatRuleCreate=this.handleFormatRuleCreate.bind(this),this.handleFormatRuleDelete=this.handleFormatRuleDelete.bind(this);const{formatter:t,defaultDateTimeFormat:r,defaultDecimalFormatOptions:i,defaultIntegerFormatOptions:a,showTimeZone:o,showTSeparator:s,timeZone:l,truncateNumbersWithPound:d}=e,u=t.map((c,m)=>({...c,id:m}));this.containerRef=h.createRef(),this.addFormatRuleButtonRef=h.createRef(),this.lastFormatRuleIndex=u.length,this.state={formatSettings:u,formatRulesChanged:!1,showTimeZone:o,showTSeparator:s,timeZone:l,defaultDateTimeFormat:r,defaultDecimalFormatOptions:i,defaultIntegerFormatOptions:a,truncateNumbersWithPound:d,timestampAtMenuOpen:new Date}}componentDidMount(){Rh(this.containerRef.current)}componentWillUnmount(){this.debouncedCommitChanges.flush()}debouncedCommitChanges;containerRef;addFormatRuleButtonRef;lastFormatRuleIndex;isDuplicateRule(e){const{formatSettings:t}=this.state;return t.some(r=>r.id!==e.id&&r.columnName===e.columnName&&r.columnType===e.columnType)??!1}getAutoIncrementFormatRuleIndex(){const{lastFormatRuleIndex:e}=this;return this.lastFormatRuleIndex+=1,e}getCachedColumnTypeOptions=Pe(()=>F.jsx(FH,{}));getCachedDateTimeFormatOptions=Pe((e,t,r,i=!1,a)=>{const{timestampAtMenuOpen:o}=this.state;return F.jsx(Rb,{timestamp:o,timeZone:e,showTimeZone:t,showTSeparator:r,isGlobalOptions:i,legacyGlobalFormat:a})});handleFormatRuleChange(e,t,r){this.setState(i=>{const{formatSettings:a}=i;L(a);const o=[...a];let s={};t==="columnType"&&(s={format:""});const l={...o[e],...s,[t]:r};return o[e]=l,{formatSettings:o}},()=>{this.debouncedCommitChanges()})}handleFormatRuleCreate(){this.setState(e=>{const{formatSettings:t}=e,r={columnType:H.dataType.DATETIME,columnName:"",format:{},id:this.getAutoIncrementFormatRuleIndex(),isNewRule:!0};return{formatSettings:[...t,r],formatRulesChanged:!0}})}handleFormatRuleDelete(e){this.setState(t=>{const{formatSettings:r}=t;return{formatSettings:r.filter((a,o)=>o!==e),formatRulesChanged:!0}},()=>{this.debouncedCommitChanges()})}handleFormatRuleEntered(e){this.scrollToFormatBlockBottom(),Rh(e)}commitChanges(){const{formatSettings:e,defaultDateTimeFormat:t,showTimeZone:r,showTSeparator:i,timeZone:a,defaultDecimalFormatOptions:o,defaultIntegerFormatOptions:s,truncateNumbersWithPound:l}=this.state,{dh:d}=this.props,u=e.filter(g=>Db(d,g)).map(Ob)??[],{settings:c,saveSettings:m}=this.props,v={...c,formatter:u,defaultDateTimeFormat:t,showTimeZone:r,showTSeparator:i,timeZone:a,truncateNumbersWithPound:l};Gi(d,H.dataType.DECIMAL,tt.makeCustomFormat(o.defaultFormatString))&&(v.defaultDecimalFormatOptions=o),Gi(d,H.dataType.INT,yt.makeCustomFormat(s.defaultFormatString))&&(v.defaultIntegerFormatOptions=s),m(v)}scrollToFormatBlockBottom(){const{scrollTo:e}=this.props;e(0,(this.addFormatRuleButtonRef.current?.offsetHeight??0)+(this.addFormatRuleButtonRef.current?.offsetTop??0))}getRuleError(e){const{dh:t}=this.props,r={hasColumnNameError:!1,hasFormatError:!1,message:""},i=[];return e.isNewRule!==void 0&&e.isNewRule||(this.isDuplicateRule(e)&&(r.hasColumnNameError=!0,i.push("Duplicate column name/type combo.")),Pb(e.columnName)||(r.hasColumnNameError=!0,i.push("Column names must start with a letter or underscore and contain only alphanumeric characters or underscores.")),e.format.formatString!==void 0&&e.format.formatString.length===0?(r.hasFormatError=!0,i.push("Empty formatting rule.")):Gi(t,e.columnType,e.format)||(r.hasFormatError=!0,i.push("Invalid formatting rule.")),r.message=i.join(`
|
|
40
|
-
`)),r}renderFormatRule(e,t){const r=`input-${e}-columnName`,i=`input-${e}-columnType`,a=`input-${e}-format`,o=this.getCachedColumnTypeOptions(),s=c=>this.handleFormatRuleChange(e,"columnName",c.target.value),l=()=>this.handleFormatRuleChange(e,"isNewRule",!1),d=c=>this.handleFormatRuleChange(e,"columnType",c.target.value),u=this.getRuleError(t);return F.jsxs("fieldset",{className:"container-fluid format-rule-container",children:[F.jsxs("div",{className:"form-row",children:[F.jsxs("div",{className:"form-group col-7 mb-2",children:[F.jsx("label",{htmlFor:r,children:"Column Name"}),F.jsx("input",{id:r,className:te("form-control",{"is-invalid":u.hasColumnNameError}),"data-lpignore":!0,type:"text",value:t.columnName,onChange:s,onBlur:l})]}),F.jsxs("div",{className:"form-group col mb-2",children:[F.jsx(j,{kind:"ghost",className:"btn-delete-format-rule float-right",tabIndex:-1,onClick:()=>this.handleFormatRuleDelete(e),icon:Hr,tooltip:"Delete","aria-label":"Delete Format Rule"}),F.jsx("label",{htmlFor:i,children:"Column Type"}),F.jsx("select",{id:i,className:"custom-select",value:t.columnType,onChange:d,children:o})]})]}),F.jsx("div",{className:"form-row",children:F.jsxs("div",{className:"form-group col-12 d-flex mb-2",children:[F.jsx("label",{className:"flex-shrink-0 col-form-label mr-3",htmlFor:a,children:"Formatting Rule"}),this.renderFormatRuleInput(e,t.columnType,a,t.format,u.hasFormatError)]})}),F.jsx("div",{className:"form-row",children:F.jsx("div",{className:"form-group col-12 d-flex mb-2",children:u.message&&F.jsx("p",{className:"text-danger",children:u.message})})})]},e)}renderFormatRuleInput(e,t,r,i,a){switch(H.getNormalizedType(t)){case H.dataType.DATETIME:return this.renderDateTimeFormatRuleInput(e,r,i,a);case H.dataType.DECIMAL:return this.renderDecimalFormatRuleInput(e,r,i,a);case H.dataType.INT:return this.renderIntegerFormatRuleInput(e,r,i,a);default:throw new Error(`Unrecognized column type: ${t}`)}}renderDateTimeFormatRuleInput(e,t,r,i){const{showTimeZone:a,showTSeparator:o,timeZone:s}=this.state,l=r.formatString??"";return F.jsxs("select",{className:te("custom-select",{"is-invalid":i}),value:l,id:t,onChange:d=>{const u=Tt.makeFormat("",d.target.value,Tt.TYPE_GLOBAL);this.handleFormatRuleChange(e,"format",u)},children:[F.jsx("option",{value:"",disabled:!0,children:"Select format"},"default"),this.getCachedDateTimeFormatOptions(s,a,o)]})}renderIntegerFormatRuleInput(e,t,r,i){const a=r.formatString??"";return F.jsx("input",{className:te("form-control","flex-grow-1",{"is-invalid":i}),"data-lpignore":!0,id:t,placeholder:yt.DEFAULT_FORMAT_STRING,type:"text",value:a,onChange:o=>{const s=yt.makeFormat("",o.target.value,yt.TYPE_GLOBAL,void 0);this.handleFormatRuleChange(e,"format",s)}})}renderDecimalFormatRuleInput(e,t,r,i){const a=r.formatString??"";return F.jsx("input",{className:te("form-control","flex-grow-1",{"is-invalid":i}),"data-lpignore":!0,id:t,placeholder:tt.DEFAULT_FORMAT_STRING,type:"text",value:a,onChange:o=>{const s=tt.makeFormat("",o.target.value,tt.TYPE_GLOBAL,void 0);this.handleFormatRuleChange(e,"format",s)}})}render(){const{formatRulesChanged:e,formatSettings:t}=this.state,r=t.map((a,o)=>F.jsx(kr,{classNames:"fade",timeout:et.transitionMs,onEnter:this.handleFormatRuleEntered,children:this.renderFormatRule(o,a)},a.id)),i=F.jsx(j,{kind:"ghost",className:"mb-3",onClick:this.handleFormatRuleCreate,ref:this.addFormatRuleButtonRef,icon:Yi,children:"Add New Rule"});return F.jsxs("div",{className:"app-settings-formatting-section",ref:this.containerRef,children:[F.jsx("div",{className:"app-settings-menu-description mb-3",children:"Customize the formatting of table columns by applying rules based on matching both a column name and column type."}),F.jsx(CS,{appear:e,enter:e,exit:e,children:r}),i]})}}const IH=n=>({formatter:yp(n),defaultDateTimeFormat:Sp(n),defaultDecimalFormatOptions:wp(n),defaultIntegerFormatOptions:Ep(n),dh:bd(n),showTimeZone:Tp(n),showTSeparator:Pp(n),truncateNumbersWithPound:Op(n),timeZone:Ss(n),settings:Bt(n)}),_H=$t(IH,{saveSettings:Ed})(_c);class Nn extends w.Component{static defaultProps={onDone:()=>{}};static FORMATTING_SECTION_KEY="SettingsMenu.formatting";static COLUMN_SPECIFIC_SECTION_KEY="SettingsMenu.columnFormatting";static APPLICATION_SECTION_KEY="ApplicationMenu.settings";static SHORTCUT_SECTION_KEY="SettingsMenu.shortcuts";static focusFirstInputInContainer(e){const t=e?.querySelector("input, select, textarea");t&&t.focus()}constructor(e){super(e),this.handleClose=this.handleClose.bind(this),this.handleScrollTo=this.handleScrollTo.bind(this),this.handleSectionToggle=this.handleSectionToggle.bind(this),this.handleExportSupportLogs=this.handleExportSupportLogs.bind(this),this.handleLogout=this.handleLogout.bind(this),this.menuContentRef=h.createRef(),this.broadcastChannel=new BroadcastChannel(Gw),this.state={expandedSectionKey:Nn.FORMATTING_SECTION_KEY}}componentDidMount(){Nn.focusFirstInputInContainer(this.menuContentRef.current)}componentWillUnmount(){this.broadcastChannel.close()}menuContentRef;broadcastChannel;isSectionExpanded(e){const{expandedSectionKey:t}=this.state;return t===e}handleLogout(){this.broadcastChannel.postMessage(Ww(jw))}handleScrollTo(e,t){this.menuContentRef.current?.scrollTo(e,t)}handleSectionToggle(e){this.setState(t=>({expandedSectionKey:t.expandedSectionKey===e?void 0:e}))}handleClose(){const{onDone:e}=this.props;e()}handleExportSupportLogs(){const{serverConfigValues:e}=this.props;RH(void 0,Object.fromEntries(e))}render(){const e="0.44.
|
|
39
|
+
This note can be edited using **markdown** for styling.`);const Au=vo;function Hx(n){Qi(n);var{id:e,layout:t,panelManager:r,registerComponent:i}=n,a=w.useCallback(s=>{var{title:l,componentState:d,props:u}=s,{panelState:c=null}=u;return d!=null&&({panelState:c=null}=d),l==null||c==null||c.content==null||c.content.length===0||c.content===Au.DEFAULT_CONTENT?null:tc(s)},[]),o=w.useCallback(function(){var{title:s="",metadata:l={},id:d=Xe.generate(),focusElement:u=Q.DEFAULT_FOCUS_SELECTOR,createNewStack:c=!1,dragEvent:m=null}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},v=r.getOpenedPanelConfigsOfType(Uo.COMPONENT),g=r.getClosedPanelConfigsOfType(Uo.COMPONENT),f=v.map(E=>{var y;return(y=E.title)!==null&&y!==void 0?y:""}),p=s!=null&&s!==""?s:Au.getNewMarkdownTitle(f),C=g.length>0?null:Au.DEFAULT_CONTENT,b={type:"react-component",component:Uo.COMPONENT,props:{id:d,metadata:l,panelState:{content:C},localDashboardId:e},title:p,id:d},{root:S}=t;Q.openComponent({root:S,config:b,focusElement:u,createNewStack:c,dragEvent:m})},[e,t,r]);return w.useEffect(function(){var l=[i(Uo.COMPONENT,Uo,rc,a)];return()=>{l.forEach(d=>d())}},[a,i]),Ke(t.eventHub,YC.OPEN,o),null}function Ux(n){Qi(n);var{hydrate:e,id:t,layout:r,registerComponent:i}=n,a=Pa(),o=w.useCallback(s=>{var{dragEvent:l,fetch:d,panelId:u=Xe.generate(),widget:c}=s,{name:m,type:v}=c;if(v===a.VariableType.PANDAS){var g={name:m,table:m},f=()=>d().then(b=>vc.makeModel(a,b)),p={type:"react-component",component:_u.COMPONENT,props:{localDashboardId:t,id:u,metadata:g,makeModel:f},title:m,id:u},{root:C}=r;Q.openComponent({root:C,config:p,dragEvent:l})}},[a,t,r]);return w.useEffect(function(){var l=[i(_u.COMPONENT,_u,e)];return()=>{l.forEach(d=>d())}},[e,i]),Ke(r.eventHub,Ee.OPEN,o),null}function xd(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=Bx(n,"string");return typeof e=="symbol"?e:String(e)}function Bx(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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{}xd(Rs,"DROPDOWN_FILTER","ControlType.DROPDOWN_FILTER");xd(Rs,"INPUT_FILTER","ControlType.INPUT_FILTER");xd(Rs,"MARKDOWN","ControlType.MARKDOWN");xd(Rs,"FILTER_SET_MANAGER","ControlType.FILTER_SET_MANAGER");const Vi=Rs;class gf{static makeSortConfig(e,t){return{column:e,direction:t}}static makeFilterConfig(e){var t=[],r=[];return e.forEach((i,a)=>{t.push(i),a>0&&r.push(ei.and)}),{filterItems:t,filterOperators:r}}static combineFilterConfigs(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:ei.and;return{filterItems:[...e.filterItems,...t.filterItems],filterOperators:[...e.filterOperators,r,...t.filterOperators]}}static makeFilterItem(e,t,r){return{columnName:e,type:t,value:r}}}function Vx(n,e,t){if(n.length>e){var r=n.length-t;return{toKeep:n.slice(r),toPrune:n.slice(0,r)}}return{toKeep:n,toPrune:[]}}function ff(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 pf(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ff(Object(t),!0).forEach(function(r){Dr(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ff(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}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 qn(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 Dr(n,e,t){return e=Gx(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Gx(n){var e=Wx(n,"string");return typeof e=="symbol"?e:String(e)}function Wx(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Lu=ie.module("PouchStorageTable"),jx="Deephaven.";Af.plugin(pS);function zx(n,e){switch(n){case ge.in:case ge.contains:return{$regex:new RegExp("".concat(e))};case ge.inIgnoreCase:return{$regex:new RegExp("".concat(e),"i")};case ge.eq:return{$eq:e};case ge.notEq:return{$neq:e};case ge.greaterThan:return{$gt:e};case ge.greaterThanOrEqualTo:return{$gte:e};case ge.lessThan:return{$lt:e};case ge.lessThanOrEqualTo:return{$lte:e};case ge.startsWith:return{$regex:new RegExp("^(?".concat(e,").*"))};default:throw new Error("Unsupported type: ".concat(n))}}function Kx(n){for(var{filterItems:e,filterOperators:t}=n,r=null,i=0;i<e.length;i+=1){var a=e[i],{columnName:o,type:s,value:l}=a,d={[o]:zx(s,l)};if(i===0)r=d;else if(r!==null&&i-1<t.length){var u=t[i-1];if(u===ei.and)r={$and:[r,d]};else if(u===ei.or)r={$or:[r,d]};else throw new Error("Unexpected filter operator ".concat(u,", ").concat(d))}}if(r==null)throw new Error("Invalid filter config ".concat(n));return r}function ku(){var n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];return{$and:[...n.map(e=>Kx(e)),{name:{$gt:null}},{id:{$gt:null}}]}}function Yx(n){var e,t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;return[{id:t?"desc":"asc"},...(e=n?.map(r=>({[r.column]:r.direction})))!==null&&e!==void 0?e:[]]}class qx{constructor(e,t){Dr(this,"db",void 0),Dr(this,"changes",void 0),Dr(this,"listeners",[]),Dr(this,"itemListeners",new Map),Dr(this,"currentSize",0),Dr(this,"currentViewport",void 0),Dr(this,"currentReverse",!1),Dr(this,"currentFilter",null),Dr(this,"currentSort",null),Dr(this,"infoUpdatePromise",void 0),Dr(this,"viewportUpdatePromise",void 0),Dr(this,"currentViewportData",void 0),this.db=new Af("".concat(jx).concat(e),t),this.db._remote=!1,this.listenForChanges(),this.db.createIndex({index:{fields:["id","name"]}}),this.refreshInfo()}listenForChanges(){this.changes=this.db.changes({live:!0,since:"now",include_docs:!0}).on("change",this.dbUpdate.bind(this))}onUpdate(e){return this.listeners=[...this.listeners,e],()=>{this.listeners=this.listeners.filter(t=>t!==e)}}onItemUpdate(e,t){return this.itemListeners.has(e)||this.itemListeners.set(e,[]),this.itemListeners.set(e,[...this.itemListeners.get(e),t]),this.refreshItem(e),()=>{this.itemListeners.set(e,this.itemListeners.get(e).filter(r=>r!==t))}}close(){this.listeners=[]}get size(){return this.currentSize}get viewport(){return this.currentViewport}setReversed(e){this.currentReverse=e,this.currentViewportData=void 0,this.refreshData()}setViewport(e){this.currentViewport=e,this.refreshInfo(),this.refreshData()}setSorts(e){this.currentSort=e,this.currentViewportData=void 0,this.refreshData()}setFilters(e){this.currentFilter=e,this.currentViewportData=void 0,this.refreshInfo(),this.refreshData()}get data(){return this.currentViewportData}getViewportData(){var e=this;return qn(function*(){var t;return e.viewportUpdatePromise||e.refreshData(),(t=e.viewportUpdatePromise)!==null&&t!==void 0?t:Promise.resolve({items:[],offset:0})})()}put(e){var t=this;return qn(function*(){var r=pf(pf({},e),{},{_id:e.id});return yield t.db.put(r),r})()}sendUpdate(){for(var e,{listeners:t}=this,r=(e=this.currentViewportData)!==null&&e!==void 0?e:{items:[],offset:0},i=0;i<t.length;i+=1)t[i](r)}sendItemUpdate(e){var t=this.itemListeners.get(e.id);if(t!==void 0)for(var r=0;r<t.length;r+=1)t[r](e)}dbUpdate(e){Lu.debug("Update received",e),this.refreshInfo(),e.doc!==void 0&&this.sendItemUpdate(e.doc),this.refreshData()}fetchInfo(e){var t=this;return qn(function*(){return t.db.find({selector:e,fields:[]})})()}refreshInfo(){var e=this;return qn(function*(){try{var t,r;(t=e.infoUpdatePromise)===null||t===void 0||t.cancel(),e.infoUpdatePromise=Te.makeCancelable(e.fetchInfo(ku((r=e.currentFilter)!==null&&r!==void 0?r:[])));var i=yield e.infoUpdatePromise;e.currentSize=i.docs.length,e.sendUpdate()}catch(a){if(!Te.isCanceled(a))throw Lu.error("Unable to refreshInfo",a),a}})()}fetchViewportData(e,t,r){var i=this;return qn(function*(){return i.db.find({selector:t,skip:e.top,limit:e.bottom-e.top+1,sort:r,fields:["id","name"]}).then(a=>({items:a.docs,offset:e.top}))})()}refreshData(){var e=this;return qn(function*(){if(e.currentViewport)try{var t,r,i=ku((t=e.currentFilter)!==null&&t!==void 0?t:[]),a=Yx(e.currentSort,e.currentReverse);(r=e.viewportUpdatePromise)===null||r===void 0||r.cancel(),e.viewportUpdatePromise=Te.makeCancelable(e.fetchViewportData(e.currentViewport,i,a));var o=yield e.viewportUpdatePromise;return e.currentViewportData=o,e.sendUpdate(),o}catch(s){if(!Te.isCanceled(s))throw Lu.error("Unable to refreshData",s),s}})()}refreshItem(e){var t=this;return qn(function*(){var r=yield t.db.find({selector:{id:e},limit:1}),i=r.docs[0];return i!==void 0&&t.sendItemUpdate(i),i})()}getSnapshot(e){var t=this;return qn(function*(){var r=new Map,i=[{id:t.currentReverse?"desc":"asc"}];return yield Promise.all(e.map(function(){var a=qn(function*(o){var s,[l,d]=o,u=d-l+1;return t.db.find({selector:ku((s=t.currentFilter)!==null&&s!==void 0?s:[]),skip:l,limit:u,sort:i,fields:["id","name"]}).then(c=>{for(var m=0;m<u;m+=1){var v=l+m;r.set(v,c.docs[m])}})});return function(o){return a.apply(this,arguments)}}())),r})()}}const Xx=qx;function bf(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 fl(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?bf(Object(t),!0).forEach(function(r){wb(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):bf(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Sf(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 Vo(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){Sf(a,r,i,o,s,"next",l)}function s(l){Sf(a,r,i,o,s,"throw",l)}o(void 0)})}}function wb(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 Jx=2500,eH=2e3,zr=ie.module("PouchCommandHistoryTable");class tH extends Xx{constructor(e,t){var r;super("CommandHistoryStorage.".concat(e),{auto_compaction:!0,revs_limit:1}),wb(this,"searchText",void 0),this.cache=t,this.cache.tableRegistry.has(this.cacheKey)||this.cache.tableRegistry.set(this.cacheKey,new Set),zr.debug("Adding table to registry",this.cacheKey),(r=this.cache.tableRegistry.get(this.cacheKey))===null||r===void 0||r.add(this)}get cacheKey(){return this.db.name}setSearch(e){zr.debug("Setting search filters",e),this.searchText=e.trim().toLowerCase(),this.setFilters(e?[gf.makeFilterConfig([gf.makeFilterItem("name",ge.contains,e)])]:[])}dbUpdate(e){zr.debug("Clearing cache and refreshing data",e),this.cache.response.delete(this.cacheKey),super.dbUpdate(e)}fetchData(e){var t=this;return Vo(function*(){return Te.withTimeout(0,Vo(function*(){t.cache.response.has(t.cacheKey)?zr.debug("Fetching from cache",t.searchText,t.viewport):(zr.debug("Fetching from PouchDB",t.searchText,t.viewport),t.cache.response.set(t.cacheKey,t.db.allDocs({include_docs:!0}).then(i=>{var a=i.rows.map(l=>l.doc).filter(l=>{var{name:d}=l;return d});zr.debug("Fetched ".concat(a.length," command history items"));var{toKeep:o,toPrune:s}=Vx(a,Jx,eH);return s.length&&t.pruneItems(s),{docs:o}})));var r=t.cache.response.get(t.cacheKey);return t.searchText==null||t.searchText===""?r:fl(fl({},r),{},{docs:(yield r).docs.filter(i=>{var{name:a}=i;return a.toLowerCase().includes(t.searchText)})})}))})()}fetchInfo(e){var t=this;return Vo(function*(){return t.fetchData(e)})()}fetchViewportData(e,t,r){var i=this;return Vo(function*(){var a=yield i.fetchData(t);zr.debug("Fetching viewport data",e.top,e.bottom+1,r,a);var o=typeof r[0]=="object"&&r[0].id==="desc",s=o?a.docs.slice(0).reverse():a.docs,l=s.slice(e.top,e.bottom+1);return{items:l,offset:e.top}})()}pruneItems(e){var t=this;return Vo(function*(){if(t.cache.isPruning.get(t.cacheKey)===!0){zr.debug("Pruning already in progress. Skipping.");return}try{zr.debug("Pruning ".concat(e.length," command history items"));var r=t.cache.pauseChangeListeners(t.cacheKey);t.cache.isPruning.set(t.cacheKey,!0),yield t.db.bulkDocs(e.map(i=>fl(fl({},i),{},{_deleted:!0}))),t.cache.isPruning.set(t.cacheKey,!1),r(),zr.debug("Finished pruning command history items")}catch(i){zr.error("An error occurred while pruning db",i)}})()}close(){var e,t,r;zr.debug("Closing table",this,(e=this.cache.tableRegistry.get(this.cacheKey))===null||e===void 0?void 0:e.size),(t=this.cache.tableRegistry.get(this.cacheKey))===null||t===void 0||t.delete(this),(r=this.changes)===null||r===void 0||r.cancel(),super.close()}}const wf=tH;function xu(n,e,t){return e=rH(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function rH(n){var e=nH(n,"string");return typeof e=="symbol"?e:String(e)}function nH(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Ef=ie.module("PouchCommandHistoryCache");class iH{constructor(){xu(this,"isPruning",void 0),xu(this,"response",void 0),xu(this,"tableRegistry",void 0),this.isPruning=new Map,this.response=new Map,this.tableRegistry=new Map}pauseChangeListeners(e){var t,r=[];return(t=this.tableRegistry.get(e))===null||t===void 0||t.forEach(i=>{i.changes&&(Ef.debug("Pausing event listeners on '".concat(e,"' table"),i),i.changes.cancel(),r.push(i))}),()=>{r.forEach(i=>{var a,o;(a=(o=this.tableRegistry.get(e))===null||o===void 0?void 0:o.has(i))!==null&&a!==void 0&&a&&(Ef.debug("Resuming event listeners on '".concat(e,"' table"),i),i.listenForChanges())})}}}const aH=iH;function yf(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?yf(Object(t),!0).forEach(function(r){Dh(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):yf(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Pf(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 Hu(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){Pf(a,r,i,o,s,"next",l)}function s(l){Pf(a,r,i,o,s,"throw",l)}o(void 0)})}}function Dh(n,e,t){return e=oH(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function oH(n){var e=sH(n,"string");return typeof e=="symbol"?e:String(e)}function sH(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Of=ie.module("PouchCommandHistoryStorage");class lH{constructor(){Dh(this,"cache",new aH),Dh(this,"updateTableMap",new Map)}getUpdateTable(e){return this.updateTableMap.has(e)||this.updateTableMap.set(e,new wf(e,this.cache)),this.updateTableMap.get(e)}getTable(e){var t=this;return Hu(function*(){return new wf(e,t.cache)})()}addItem(e,t,r,i){var a=this;return Hu(function*(){return a.updateItem(e,{id:"".concat(new Date().getTime()),name:r,data:i})})()}updateItem(e,t){var r=this;return Hu(function*(){var i=r.getUpdateTable(e),a=yield i.refreshItem(t.id),o=Tf(Tf({},a??{}),t);return Of.debug("Updating item",o),yield i.put(o),Of.debug("Update saved"),t})()}listenItem(e,t,r){var i=this.getUpdateTable(e);return i.onItemUpdate(t,r)}}const Eb="SET_LAYOUT_STORAGE",dH=n=>({type:Eb,payload:n});var{dh:uH}=globalThis;const Rr=uH,yb=""+new URL("community-wordmark-app-d2c5c1eb.svg",import.meta.url).href;const hH=ie.module("SettingsUtils");function cH(n){return n.formatString!=null}function Rh(n){const e=n?.querySelector("input, select, textarea");e&&e.focus()}function Tb(n,e){return n.defaultFormatString===e.defaultFormatString}function mH(n,e){return Tb(n,e)}function vH(n,e){return Tb(n,e)}function Pb(n){return n!==""&&po.isValidColumnName(n)}function Gi(n,e,t){if(!e||t.formatString==null||!cH(t))return!1;switch(e){case"datetime":return Tt.isValid(n,t);case"decimal":return tt.isValid(n,t);case"int":return yt.isValid(n,t);default:return hH.warn("Trying to validate format of unknown type"),!0}}function Ob(n){const{id:e,isNewRule:t,...r}=n;return r}function Db(n,e){return Pb(e.columnName)&&Gi(n,e.columnType,e.format)}function Rb(n){const{timestamp:e,timeZone:t,showTimeZone:r,showTSeparator:i,isGlobalOptions:a,legacyGlobalFormat:o}=n,s=Pa(),l=w.useMemo(()=>new wn(s,[],{timeZone:t,showTimeZone:r,showTSeparator:i}),[s,r,i,t]),d=a?Tt.getGlobalFormats(r,i):Tt.getFormats(r,i);return o!=null&&!d.includes(o)&&d.unshift(o),F.jsx(F.Fragment,{children:d.map(u=>{const c=Tt.makeFormat("",u,Tt.TYPE_GLOBAL);return F.jsx("option",{value:u,"data-testid":"time-format",children:l.getFormattedString(e,H.dataType.DATETIME,"",c)},u)})})}function gH(){return F.jsx(F.Fragment,{children:dd.TIME_ZONES.map(n=>{const{label:e,value:t}=n;return F.jsx("option",{value:t,children:e},t)})})}const sa=ie.module("FormattingSectionContent");class Ic extends w.PureComponent{static defaultProps={scrollTo:()=>{},defaults:{defaultDateTimeFormat:Tt.DEFAULT_DATETIME_FORMAT_STRING,defaultDecimalFormatOptions:{defaultFormatString:tt.DEFAULT_FORMAT_STRING},defaultIntegerFormatOptions:{defaultFormatString:yt.DEFAULT_FORMAT_STRING},showTimeZone:!1,showTSeparator:!0,timeZone:Tt.DEFAULT_TIME_ZONE_ID}};static inputDebounceTime=250;constructor(e){super(e),this.debouncedCommitChanges=rt(this.commitChanges.bind(this),Ic.inputDebounceTime),this.handleDefaultDateTimeFormatChange=this.handleDefaultDateTimeFormatChange.bind(this),this.handleDefaultDecimalFormatChange=this.handleDefaultDecimalFormatChange.bind(this),this.handleDefaultIntegerFormatChange=this.handleDefaultIntegerFormatChange.bind(this),this.handleShowTimeZoneChange=this.handleShowTimeZoneChange.bind(this),this.handleShowTSeparatorChange=this.handleShowTSeparatorChange.bind(this),this.handleTimeZoneChange=this.handleTimeZoneChange.bind(this),this.handleResetDateTimeFormat=this.handleResetDateTimeFormat.bind(this),this.handleResetDecimalFormat=this.handleResetDecimalFormat.bind(this),this.handleResetIntegerFormat=this.handleResetIntegerFormat.bind(this),this.handleResetTimeZone=this.handleResetTimeZone.bind(this),this.handleTruncateNumbersWithPoundChange=this.handleTruncateNumbersWithPoundChange.bind(this);const{formatter:t,defaultDateTimeFormat:r,defaultDecimalFormatOptions:i,defaultIntegerFormatOptions:a,showTimeZone:o,showTSeparator:s,timeZone:l,truncateNumbersWithPound:d}=e,u=t.map((c,m)=>({...c,id:m}));this.containerRef=h.createRef(),this.state={formatSettings:u,showTimeZone:o,showTSeparator:s,timeZone:l,defaultDateTimeFormat:r,defaultDecimalFormatOptions:i,defaultIntegerFormatOptions:a,truncateNumbersWithPound:d,timestampAtMenuOpen:new Date}}componentDidMount(){Rh(this.containerRef.current)}componentWillUnmount(){this.debouncedCommitChanges.flush()}debouncedCommitChanges;containerRef;getCachedDateTimeFormatOptions=Pe((e,t,r,i=!1,a)=>{const{timestampAtMenuOpen:o}=this.state;return F.jsx(Rb,{timestamp:o,timeZone:e,showTimeZone:t,showTSeparator:r,isGlobalOptions:i,legacyGlobalFormat:a})});handleDefaultDateTimeFormatChange(e){sa.debug("handleDefaultDateTimeFormatChange",e.target.value),this.setState({defaultDateTimeFormat:e.target.value},()=>{this.debouncedCommitChanges()})}handleDefaultDecimalFormatChange(e){sa.debug("handleDefaultDecimalFormatChange",e.target.value),this.setState({defaultDecimalFormatOptions:{defaultFormatString:e.target.value}},()=>{this.debouncedCommitChanges()})}handleDefaultIntegerFormatChange(e){sa.debug("handleDefaultIntegerFormatChange",e.target.value),this.setState({defaultIntegerFormatOptions:{defaultFormatString:e.target.value}},()=>{this.debouncedCommitChanges()})}handleShowTimeZoneChange(){this.setState(e=>({showTimeZone:!e.showTimeZone}),()=>{this.debouncedCommitChanges()})}handleShowTSeparatorChange(){this.setState(e=>({showTSeparator:!e.showTSeparator}),()=>{this.debouncedCommitChanges()})}handleTimeZoneChange(e){this.setState({timeZone:e.target.value},()=>{this.debouncedCommitChanges()})}handleResetDateTimeFormat(){const{defaults:e}=this.props,{defaultDateTimeFormat:t,showTimeZone:r,showTSeparator:i}=e;sa.debug("handleResetDateTimeFormat"),this.setState({defaultDateTimeFormat:t,showTimeZone:r,showTSeparator:i},()=>{this.debouncedCommitChanges()})}handleResetTimeZone(){const{defaults:e}=this.props,{timeZone:t}=e;sa.debug("handleResetTimeZone"),this.setState({timeZone:t},()=>{this.debouncedCommitChanges()})}handleResetDecimalFormat(){const{defaults:e}=this.props,{defaultDecimalFormatOptions:t}=e;sa.debug("handleResetDecimalFormat"),this.setState({defaultDecimalFormatOptions:t},()=>{this.debouncedCommitChanges()})}handleResetIntegerFormat(){const{defaults:e}=this.props,{defaultIntegerFormatOptions:t}=e;sa.debug("handleResetIntegerFormat"),this.setState({defaultIntegerFormatOptions:t},()=>{this.debouncedCommitChanges()})}handleTruncateNumbersWithPoundChange(){this.setState(e=>({truncateNumbersWithPound:!e.truncateNumbersWithPound}),()=>{this.debouncedCommitChanges()})}commitChanges(){const{formatSettings:e,defaultDateTimeFormat:t,showTimeZone:r,showTSeparator:i,timeZone:a,defaultDecimalFormatOptions:o,defaultIntegerFormatOptions:s,truncateNumbersWithPound:l}=this.state,{dh:d}=this.props,u=e.filter(g=>Db(d,g)).map(Ob)??[],{settings:c,saveSettings:m}=this.props,v={...c,formatter:u,defaultDateTimeFormat:t,showTimeZone:r,showTSeparator:i,timeZone:a,truncateNumbersWithPound:l};Gi(d,H.dataType.DECIMAL,tt.makeCustomFormat(o.defaultFormatString))&&(v.defaultDecimalFormatOptions=o),Gi(d,H.dataType.INT,yt.makeCustomFormat(s.defaultFormatString))&&(v.defaultIntegerFormatOptions=s),m(v)}render(){const{defaults:e,dh:t}=this.props,{defaultDateTimeFormat:r,defaultDecimalFormatOptions:i,defaultIntegerFormatOptions:a,timeZone:o,showTimeZone:s,showTSeparator:l,truncateNumbersWithPound:d}=this.state,{defaultFormatString:u=tt.DEFAULT_FORMAT_STRING}=i??{},{defaultFormatString:c=yt.DEFAULT_FORMAT_STRING}=a??{},m=o===e.timeZone,v=l===e.showTSeparator&&s===e.showTimeZone&&r===e.defaultDateTimeFormat,g=mH(i,e.defaultDecimalFormatOptions),f=vH(a,e.defaultIntegerFormatOptions);return F.jsx("div",{className:"app-settings-formatting-section",ref:this.containerRef,children:F.jsxs("div",{className:"container-fluid p-0",children:[F.jsx("div",{className:"app-settings-menu-description mb-3",children:"Choose the default formatting rule to apply to all table columns based on their type."}),F.jsxs("div",{className:"form-row mb-2",children:[F.jsx("label",{className:"col-form-label col-3",htmlFor:"select-reset-timezone",children:"Time zone"}),F.jsx("div",{className:"col pr-0",children:F.jsx("select",{className:"custom-select",value:o,onChange:this.handleTimeZoneChange,id:"select-reset-timezone",children:F.jsx(gH,{})})}),F.jsx("div",{className:"col-1 btn-col",children:F.jsx(j,{kind:"ghost",icon:ma,onClick:this.handleResetTimeZone,tooltip:"Reset Time Zone",className:te("btn-reset","btn-reset-time-zone",{hidden:m})})})]}),F.jsxs("div",{className:"form-row mb-2",children:[F.jsx("label",{className:"col-form-label col-3",htmlFor:"select-default-time-format",children:"DateTime"}),F.jsx("div",{className:"col pr-0",children:F.jsx("select",{className:"custom-select",value:r,onChange:this.handleDefaultDateTimeFormatChange,id:"select-default-time-format",children:this.getCachedDateTimeFormatOptions(o,s,l,!0,r)})}),F.jsx("div",{className:"col-1 btn-col",children:F.jsx(j,{kind:"ghost",icon:ma,onClick:this.handleResetDateTimeFormat,tooltip:"Reset DateTime Options",className:te("btn-reset","btn-reset-date-time",{hidden:v})})})]}),F.jsx("div",{className:"form-row",children:F.jsx("div",{className:"offset-3 col-9",children:F.jsx(rn,{checked:s??null,onChange:this.handleShowTimeZoneChange,children:"Show time zone in dates"})})}),F.jsx("div",{className:"form-row mb-3",children:F.jsx("div",{className:"offset-3 col-9",children:F.jsx(rn,{checked:l??null,onChange:this.handleShowTSeparatorChange,children:"Show 'T' separator"})})}),F.jsxs("div",{className:"form-row mb-2",children:[F.jsx("label",{className:"col-form-label col-3",htmlFor:"default-decimal-format-input",children:"Decimal"}),F.jsx("div",{className:"col pr-0",children:F.jsx("input",{className:te("form-control","flex-grow-1","default-decimal-format-input",{"is-invalid":!Gi(t,H.dataType.DECIMAL,tt.makeCustomFormat(u))}),"data-lpignore":!0,placeholder:tt.DEFAULT_FORMAT_STRING,type:"text",id:"default-decimal-format-input",value:u,onChange:this.handleDefaultDecimalFormatChange})}),F.jsx("div",{className:"col-1 btn-col",children:F.jsx(j,{kind:"ghost",icon:ma,onClick:this.handleResetDecimalFormat,tooltip:"Reset Decimal Formatting",className:te("btn-reset","btn-reset-decimal",{hidden:g}),"data-testid":"btn-reset-decimal"})})]}),F.jsxs("div",{className:"form-row mb-2",children:[F.jsx("label",{className:"col-form-label col-3",htmlFor:"default-integer-format-input",children:"Integer"}),F.jsx("div",{className:"col pr-0",children:F.jsx("input",{className:te("form-control","flex-grow-1","default-integer-format-input",{"is-invalid":!Gi(t,H.dataType.INT,yt.makeCustomFormat(c))}),"data-lpignore":!0,placeholder:yt.DEFAULT_FORMAT_STRING,type:"text",id:"default-integer-format-input",value:c,onChange:this.handleDefaultIntegerFormatChange})}),F.jsx("div",{className:"col-1 btn-col",children:F.jsx(j,{kind:"ghost",icon:ma,onClick:this.handleResetIntegerFormat,tooltip:"Reset Integer Formatting",className:te("btn-reset","btn-reset-integer",{hidden:f}),"data-testid":"btn-reset-integer"})})]}),F.jsx("div",{className:"form-row mb-3",children:F.jsx("div",{className:"offset-3 col-9",children:F.jsx(rn,{checked:d??null,onChange:this.handleTruncateNumbersWithPoundChange,children:"Truncate numbers with #"})})})]})})}}const fH=n=>({formatter:yp(n),defaultDateTimeFormat:Sp(n),defaultDecimalFormatOptions:wp(n),defaultIntegerFormatOptions:Ep(n),dh:bd(n),showTimeZone:Tp(n),showTSeparator:Pp(n),truncateNumbersWithPound:Op(n),timeZone:Ss(n),settings:Bt(n)}),pH=$t(fH,{saveSettings:Ed})(Ic);function CH(){const[n,e]=w.useState(!1),t=()=>{e(!n)};return F.jsxs(j,{kind:"ghost",onClick:t,icon:ww,children:["Legal Notices",F.jsxs(od,{isOpen:n,toggle:t,className:"theme-bg-light",children:[F.jsx(sd,{toggle:t,children:"Legal Notice"}),F.jsxs(ld,{children:[F.jsx("p",{children:"Deephaven software is protected by U.S. Patent Nos. 9,612,959; 9,613,018; 9,613,109; 9,619,210; 9,633,060; 9,639,570; 9,672,238; 9,679,006; 9,690,821; 9,710,511; 9,760,591; 9,805,084; 9,836,494; 9,836,495; 9,886,469; 9,898,496; 9,934,266; 10,002,153; 10,002,154; 10,002,155; 10,003,673; 10,019,138; 10,069,943; 10,176,211; 10,198,465; 10,198,466; 10,198,469; 10,212,257; 10,241,960; 10,241,965; 10,242,040; 10,242,041; 10,346,394; 10,353,893; 10,452,649; 10,496,639; 10,540,351; 10,552,412; 10,565,194; 10,565,206; 10,572,474; 10,621,168; 10,642,829; 10,657,184; 10,678,787; 10,691,686; 10,783,191; 10,866,943; 10,909,183; 10,915,526; 10,922,311; 10,929,394; 11,023,462; 11,126,662; 11,151,133; 11,238,036; 11,249,994; 11,263,211; 11,449,557; 11,514,037; 11,556,528; and 11,574,018. Other patents pending."}),F.jsxs("p",{children:["© 2016-",new Date().getFullYear()," Deephaven Data Labs LLC. Patent Pending."]})]})]})]})}function as(n){const{children:e,isExpanded:t,sectionKey:r,title:i,onToggle:a}=n;return F.jsxs(F.Fragment,{children:[F.jsx("div",{children:F.jsxs(j,{kind:"ghost",className:"btn-collapse-trigger",onClick:()=>a(r),children:[F.jsx("div",{className:"flex-grow-1",children:i}),F.jsx("div",{className:"flex-shrink-0",children:F.jsx(re,{transform:t?"flip-v":"",icon:ti})})]})}),F.jsx(Vw,{in:t,autoFocusOnShow:!0,children:e})]})}as.propTypes={children:q.node,isExpanded:q.bool.isRequired,sectionKey:q.string.isRequired,title:q.node.isRequired,onToggle:q.func};as.defaultProps={children:null,onToggle:()=>{}};function bH({shortcut:n,displayText:e,categoryName:t,onChange:r}){const[i,a]=w.useState(e),[o,s]=w.useState(n.getKeyState()),[l,d]=w.useState(!1),[u,c]=w.useState("");w.useEffect(function(){a(e),s(n.getKeyState())},[e,n]),w.useEffect(function(){a(hn.getDisplayText(o)),n.matchesKeyState(o)&&d(!1)},[o,n]),w.useEffect(function(){if(l){if(!hn.isValidKeyState(o)){hn.isAllowedKey(o.keyValue)?c("Must contain a modifier key"):c("Must contain an allowed action key");return}const E=qe.getConflictingShortcuts(o).filter(y=>y.id.startsWith(t)&&y!==n).map(y=>y.name);if(E.length){c(`Conflicts with ${E.join(", ")}`);return}c("")}else c("")},[l,o,t,n]);function m(S){if(S.stopPropagation(),S.preventDefault(),n.isEditable&&!S.repeat){const E=hn.getKeyStateFromEvent(S),y=hn.createKeyState([Oe.BACKSPACE]);hn.doKeyStatesMatch(E,y)?s(hn.NULL_KEY_STATE):s(E)}}function v(S){S.stopPropagation(),S.preventDefault(),n.matchesKeyState(o)||d(!0)}function g(){Ki.disableAllActions()}function f(){Ki.enableAllActions()}function p(){n.setKeyState(o),d(!1),r(n)}function C(){const S=n.getKeyState();s(S),d(!1)}function b(){d(!0),s(n.getDefaultKeyState())}return F.jsxs(F.Fragment,{children:[F.jsxs("div",{className:"shortcut-item-container",children:[F.jsxs("label",{className:"shortcut-item-name",children:[n.name,n.tooltip!==void 0&&F.jsx(pt,{children:n.tooltip})]}),F.jsxs("div",{className:"shortcut-item-input-container",children:[F.jsx("input",{className:te("form-control",{"is-invalid":u}),onKeyDown:m,onKeyUp:v,onFocus:g,onBlur:f,disabled:!n.isEditable,value:i,readOnly:!0}),!hn.doKeyStatesMatch(o,n.getDefaultKeyState())&&!u&&F.jsx(j,{className:"reset-to-default-button",kind:"ghost",icon:F.jsx(re,{icon:ma,transform:{rotate:90,flipX:!0}}),tooltip:"Reset to default",onClick:b})]})]}),l&&F.jsxs("div",{className:te("shortcut-item-message-container",{"is-invalid":u}),children:[F.jsx("div",{className:"shortcut-item-message",children:u}),F.jsxs("div",{className:"shortcut-item-message-buttons",children:[hn.isValidKeyState(o)&&F.jsx(j,{kind:"ghost",onClick:p,children:"Confirm"}),F.jsx(j,{kind:"ghost",onClick:C,children:"Undo"})]})]})]})}function SH({shortcutOverrides:n={},settings:e,saveSettings:t}){const r=w.useCallback(s=>{const l=hn.isMacPlatform,d={mac:{...n.mac},windows:{...n.windows}},u=l?d.mac:d.windows;s.forEach(c=>{c.isDefault()?delete u[c.id]:u[c.id]=c.getKeyState()}),t({...e,shortcutOverrides:d})},[e,t,n]);let i=Array.from(qe.shortcutsByCategory.entries()).map(([s,l])=>({name:s,shortcuts:l}));const a=i.findIndex(s=>s.name.toUpperCase()==="GLOBAL"),o=i.splice(a,1);return i=i.concat(o),F.jsxs(F.Fragment,{children:[F.jsx("div",{className:"app-settings-menu-description",children:"Customize shortcuts below. To prevent unexpected results, avoid conflicting shortcuts with the browser or IDE editor."}),i.map(s=>F.jsx(wH,{name:s.name,shortcuts:s.shortcuts,saveShortcutOverrides:r},s.name))]})}function wH({name:n,shortcuts:e,saveShortcutOverrides:t}){function r(l){return l.split("_").map(d=>`${d[0].toUpperCase()}${d.slice(1).toLowerCase()}`).join(" ")}const[i,a]=w.useState(e);function o(l){const d=i.filter(c=>c!==l&&!c.isNull()&&c.matchesKeyState(l.getKeyState()));d.forEach(c=>c.setToNull());const u=[l,...d];t(u),a(c=>[...c])}const s=w.useMemo(()=>i.map(l=>l.getDisplayText()),[i]);return F.jsxs("div",{className:"mt-3",children:[F.jsx("div",{className:"font-weight-bold",children:r(n)}),i.map((l,d)=>F.jsx(bH,{shortcut:l,displayText:s[d],categoryName:n,onChange:o},l.id))]})}const EH=n=>({settings:Bt(n),shortcutOverrides:uT(n)}),yH={saveSettings:Ed},TH=$t(EH,yH)(SH),PH="yyyy-MM-dd-HHmmss";function Nb(n,e="root",t=new Map([[n,""]])){const r={};return Object.entries(n).forEach(([i,a])=>{try{JSON.stringify(a),r[i]=a}catch{const s=a;if(typeof a=="bigint")r[i]=a.toString();else if(t.has(s))r[i]=`Circular ref to ${t.get(s)}`;else{const l=`${e}.${i}`;t.set(s,l),r[i]=Nb(a,l,t)}}}),r}function OH(){const n=Yh.getState();return JSON.stringify(Nb(n),null,2)}function DH(n){const e={uiVersion:"0.44.1",userAgent:navigator.userAgent,...n};return JSON.stringify(e,null,2)}async function RH(n=`${Rr.i18n.DateTimeFormat.format(PH,new Date)}_support_logs`,e){const t=new Lf,r=t.folder(n);r.file("console.txt",Ew.getFormattedHistory()),r.file("redux.json",OH()),r.file("metadata.json",DH(e));const i=await t.generateAsync({type:"blob"}),a=document.createElement("a");a.href=URL.createObjectURL(i),a.download=`${n}.zip`,a.click()}const NH=[{value:H.dataType.DATETIME,label:"DateTime"},{value:H.dataType.DECIMAL,label:"Decimal"},{value:H.dataType.INT,label:"Integer"}];function FH(){const n=NH.map(e=>F.jsx("option",{value:e.value,children:e.label},`key-columnType-${e.value}`));return F.jsxs(F.Fragment,{children:[F.jsx("option",{disabled:!0,value:"",children:"Select Type"},"key-columnType-placeholder"),n]})}class _c extends w.PureComponent{static defaultProps={scrollTo:()=>{},defaults:{defaultDateTimeFormat:Tt.DEFAULT_DATETIME_FORMAT_STRING,defaultDecimalFormatOptions:{defaultFormatString:tt.DEFAULT_FORMAT_STRING},defaultIntegerFormatOptions:{defaultFormatString:yt.DEFAULT_FORMAT_STRING},showTimeZone:!1,showTSeparator:!0,timeZone:Tt.DEFAULT_TIME_ZONE_ID}};static inputDebounceTime=250;constructor(e){super(e),this.debouncedCommitChanges=rt(this.commitChanges.bind(this),_c.inputDebounceTime),this.handleFormatRuleEntered=this.handleFormatRuleEntered.bind(this),this.handleFormatRuleChange=this.handleFormatRuleChange.bind(this),this.handleFormatRuleCreate=this.handleFormatRuleCreate.bind(this),this.handleFormatRuleDelete=this.handleFormatRuleDelete.bind(this);const{formatter:t,defaultDateTimeFormat:r,defaultDecimalFormatOptions:i,defaultIntegerFormatOptions:a,showTimeZone:o,showTSeparator:s,timeZone:l,truncateNumbersWithPound:d}=e,u=t.map((c,m)=>({...c,id:m}));this.containerRef=h.createRef(),this.addFormatRuleButtonRef=h.createRef(),this.lastFormatRuleIndex=u.length,this.state={formatSettings:u,formatRulesChanged:!1,showTimeZone:o,showTSeparator:s,timeZone:l,defaultDateTimeFormat:r,defaultDecimalFormatOptions:i,defaultIntegerFormatOptions:a,truncateNumbersWithPound:d,timestampAtMenuOpen:new Date}}componentDidMount(){Rh(this.containerRef.current)}componentWillUnmount(){this.debouncedCommitChanges.flush()}debouncedCommitChanges;containerRef;addFormatRuleButtonRef;lastFormatRuleIndex;isDuplicateRule(e){const{formatSettings:t}=this.state;return t.some(r=>r.id!==e.id&&r.columnName===e.columnName&&r.columnType===e.columnType)??!1}getAutoIncrementFormatRuleIndex(){const{lastFormatRuleIndex:e}=this;return this.lastFormatRuleIndex+=1,e}getCachedColumnTypeOptions=Pe(()=>F.jsx(FH,{}));getCachedDateTimeFormatOptions=Pe((e,t,r,i=!1,a)=>{const{timestampAtMenuOpen:o}=this.state;return F.jsx(Rb,{timestamp:o,timeZone:e,showTimeZone:t,showTSeparator:r,isGlobalOptions:i,legacyGlobalFormat:a})});handleFormatRuleChange(e,t,r){this.setState(i=>{const{formatSettings:a}=i;L(a);const o=[...a];let s={};t==="columnType"&&(s={format:""});const l={...o[e],...s,[t]:r};return o[e]=l,{formatSettings:o}},()=>{this.debouncedCommitChanges()})}handleFormatRuleCreate(){this.setState(e=>{const{formatSettings:t}=e,r={columnType:H.dataType.DATETIME,columnName:"",format:{},id:this.getAutoIncrementFormatRuleIndex(),isNewRule:!0};return{formatSettings:[...t,r],formatRulesChanged:!0}})}handleFormatRuleDelete(e){this.setState(t=>{const{formatSettings:r}=t;return{formatSettings:r.filter((a,o)=>o!==e),formatRulesChanged:!0}},()=>{this.debouncedCommitChanges()})}handleFormatRuleEntered(e){this.scrollToFormatBlockBottom(),Rh(e)}commitChanges(){const{formatSettings:e,defaultDateTimeFormat:t,showTimeZone:r,showTSeparator:i,timeZone:a,defaultDecimalFormatOptions:o,defaultIntegerFormatOptions:s,truncateNumbersWithPound:l}=this.state,{dh:d}=this.props,u=e.filter(g=>Db(d,g)).map(Ob)??[],{settings:c,saveSettings:m}=this.props,v={...c,formatter:u,defaultDateTimeFormat:t,showTimeZone:r,showTSeparator:i,timeZone:a,truncateNumbersWithPound:l};Gi(d,H.dataType.DECIMAL,tt.makeCustomFormat(o.defaultFormatString))&&(v.defaultDecimalFormatOptions=o),Gi(d,H.dataType.INT,yt.makeCustomFormat(s.defaultFormatString))&&(v.defaultIntegerFormatOptions=s),m(v)}scrollToFormatBlockBottom(){const{scrollTo:e}=this.props;e(0,(this.addFormatRuleButtonRef.current?.offsetHeight??0)+(this.addFormatRuleButtonRef.current?.offsetTop??0))}getRuleError(e){const{dh:t}=this.props,r={hasColumnNameError:!1,hasFormatError:!1,message:""},i=[];return e.isNewRule!==void 0&&e.isNewRule||(this.isDuplicateRule(e)&&(r.hasColumnNameError=!0,i.push("Duplicate column name/type combo.")),Pb(e.columnName)||(r.hasColumnNameError=!0,i.push("Column names must start with a letter or underscore and contain only alphanumeric characters or underscores.")),e.format.formatString!==void 0&&e.format.formatString.length===0?(r.hasFormatError=!0,i.push("Empty formatting rule.")):Gi(t,e.columnType,e.format)||(r.hasFormatError=!0,i.push("Invalid formatting rule.")),r.message=i.join(`
|
|
40
|
+
`)),r}renderFormatRule(e,t){const r=`input-${e}-columnName`,i=`input-${e}-columnType`,a=`input-${e}-format`,o=this.getCachedColumnTypeOptions(),s=c=>this.handleFormatRuleChange(e,"columnName",c.target.value),l=()=>this.handleFormatRuleChange(e,"isNewRule",!1),d=c=>this.handleFormatRuleChange(e,"columnType",c.target.value),u=this.getRuleError(t);return F.jsxs("fieldset",{className:"container-fluid format-rule-container",children:[F.jsxs("div",{className:"form-row",children:[F.jsxs("div",{className:"form-group col-7 mb-2",children:[F.jsx("label",{htmlFor:r,children:"Column Name"}),F.jsx("input",{id:r,className:te("form-control",{"is-invalid":u.hasColumnNameError}),"data-lpignore":!0,type:"text",value:t.columnName,onChange:s,onBlur:l})]}),F.jsxs("div",{className:"form-group col mb-2",children:[F.jsx(j,{kind:"ghost",className:"btn-delete-format-rule float-right",tabIndex:-1,onClick:()=>this.handleFormatRuleDelete(e),icon:Hr,tooltip:"Delete","aria-label":"Delete Format Rule"}),F.jsx("label",{htmlFor:i,children:"Column Type"}),F.jsx("select",{id:i,className:"custom-select",value:t.columnType,onChange:d,children:o})]})]}),F.jsx("div",{className:"form-row",children:F.jsxs("div",{className:"form-group col-12 d-flex mb-2",children:[F.jsx("label",{className:"flex-shrink-0 col-form-label mr-3",htmlFor:a,children:"Formatting Rule"}),this.renderFormatRuleInput(e,t.columnType,a,t.format,u.hasFormatError)]})}),F.jsx("div",{className:"form-row",children:F.jsx("div",{className:"form-group col-12 d-flex mb-2",children:u.message&&F.jsx("p",{className:"text-danger",children:u.message})})})]},e)}renderFormatRuleInput(e,t,r,i,a){switch(H.getNormalizedType(t)){case H.dataType.DATETIME:return this.renderDateTimeFormatRuleInput(e,r,i,a);case H.dataType.DECIMAL:return this.renderDecimalFormatRuleInput(e,r,i,a);case H.dataType.INT:return this.renderIntegerFormatRuleInput(e,r,i,a);default:throw new Error(`Unrecognized column type: ${t}`)}}renderDateTimeFormatRuleInput(e,t,r,i){const{showTimeZone:a,showTSeparator:o,timeZone:s}=this.state,l=r.formatString??"";return F.jsxs("select",{className:te("custom-select",{"is-invalid":i}),value:l,id:t,onChange:d=>{const u=Tt.makeFormat("",d.target.value,Tt.TYPE_GLOBAL);this.handleFormatRuleChange(e,"format",u)},children:[F.jsx("option",{value:"",disabled:!0,children:"Select format"},"default"),this.getCachedDateTimeFormatOptions(s,a,o)]})}renderIntegerFormatRuleInput(e,t,r,i){const a=r.formatString??"";return F.jsx("input",{className:te("form-control","flex-grow-1",{"is-invalid":i}),"data-lpignore":!0,id:t,placeholder:yt.DEFAULT_FORMAT_STRING,type:"text",value:a,onChange:o=>{const s=yt.makeFormat("",o.target.value,yt.TYPE_GLOBAL,void 0);this.handleFormatRuleChange(e,"format",s)}})}renderDecimalFormatRuleInput(e,t,r,i){const a=r.formatString??"";return F.jsx("input",{className:te("form-control","flex-grow-1",{"is-invalid":i}),"data-lpignore":!0,id:t,placeholder:tt.DEFAULT_FORMAT_STRING,type:"text",value:a,onChange:o=>{const s=tt.makeFormat("",o.target.value,tt.TYPE_GLOBAL,void 0);this.handleFormatRuleChange(e,"format",s)}})}render(){const{formatRulesChanged:e,formatSettings:t}=this.state,r=t.map((a,o)=>F.jsx(kr,{classNames:"fade",timeout:et.transitionMs,onEnter:this.handleFormatRuleEntered,children:this.renderFormatRule(o,a)},a.id)),i=F.jsx(j,{kind:"ghost",className:"mb-3",onClick:this.handleFormatRuleCreate,ref:this.addFormatRuleButtonRef,icon:Yi,children:"Add New Rule"});return F.jsxs("div",{className:"app-settings-formatting-section",ref:this.containerRef,children:[F.jsx("div",{className:"app-settings-menu-description mb-3",children:"Customize the formatting of table columns by applying rules based on matching both a column name and column type."}),F.jsx(CS,{appear:e,enter:e,exit:e,children:r}),i]})}}const IH=n=>({formatter:yp(n),defaultDateTimeFormat:Sp(n),defaultDecimalFormatOptions:wp(n),defaultIntegerFormatOptions:Ep(n),dh:bd(n),showTimeZone:Tp(n),showTSeparator:Pp(n),truncateNumbersWithPound:Op(n),timeZone:Ss(n),settings:Bt(n)}),_H=$t(IH,{saveSettings:Ed})(_c);class Nn extends w.Component{static defaultProps={onDone:()=>{}};static FORMATTING_SECTION_KEY="SettingsMenu.formatting";static COLUMN_SPECIFIC_SECTION_KEY="SettingsMenu.columnFormatting";static APPLICATION_SECTION_KEY="ApplicationMenu.settings";static SHORTCUT_SECTION_KEY="SettingsMenu.shortcuts";static focusFirstInputInContainer(e){const t=e?.querySelector("input, select, textarea");t&&t.focus()}constructor(e){super(e),this.handleClose=this.handleClose.bind(this),this.handleScrollTo=this.handleScrollTo.bind(this),this.handleSectionToggle=this.handleSectionToggle.bind(this),this.handleExportSupportLogs=this.handleExportSupportLogs.bind(this),this.handleLogout=this.handleLogout.bind(this),this.menuContentRef=h.createRef(),this.broadcastChannel=new BroadcastChannel(Gw),this.state={expandedSectionKey:Nn.FORMATTING_SECTION_KEY}}componentDidMount(){Nn.focusFirstInputInContainer(this.menuContentRef.current)}componentWillUnmount(){this.broadcastChannel.close()}menuContentRef;broadcastChannel;isSectionExpanded(e){const{expandedSectionKey:t}=this.state;return t===e}handleLogout(){this.broadcastChannel.postMessage(Ww(jw))}handleScrollTo(e,t){this.menuContentRef.current?.scrollTo(e,t)}handleSectionToggle(e){this.setState(t=>({expandedSectionKey:t.expandedSectionKey===e?void 0:e}))}handleClose(){const{onDone:e}=this.props;e()}handleExportSupportLogs(){const{serverConfigValues:e}=this.props;RH(void 0,Object.fromEntries(e))}render(){const e="0.44.1",t="https://github.com/deephaven/web-client-ui/",r="https://deephaven.io/core/docs/",{serverConfigValues:i,user:a}=this.props,o=i.get("barrage.version"),s=i.get("java.version"),l=i.get("deephaven.version"),d=(v,g)=>F.jsxs(F.Fragment,{children:[F.jsx("div",{children:v}),F.jsx("div",{children:g})]}),u=a.displayName??a.name,c=a.image!=null&&a.image!=="",m=u!=="";return F.jsxs("div",{className:"app-settings-menu",children:[F.jsxs("header",{className:"app-settings-menu-header",children:[F.jsxs("div",{className:"user-info",children:[F.jsxs("div",{className:"user-image",children:[!c&&F.jsx(re,{icon:yw,transform:"grow-8"}),c&&F.jsx("img",{src:a.image,alt:u})]}),F.jsxs("div",{className:"user-details",children:[m&&F.jsxs("div",{className:"user-name",children:[u,a.operateAs!=null&&a.name!==a.operateAs&&F.jsxs(F.Fragment,{children:[F.jsxs("span",{className:"font-weight-light font-italic",children:[" ","as"," "]}),F.jsxs("span",{className:"operating-as-user",children:[F.jsx(re,{icon:Tw,className:"mr-1"}),a.operateAs]})]})]}),a.permissions.canLogout&&F.jsx("button",{type:"button",className:"btn btn-link",onClick:this.handleLogout,children:"logout"})]})]}),F.jsx(j,{kind:"ghost",className:"btn-close-settings-menu",onClick:this.handleClose,icon:F.jsx(re,{icon:gs,transform:"grow-4"}),tooltip:"Close"})]}),F.jsxs("div",{className:"app-settings-menu-content",ref:this.menuContentRef,children:[F.jsx("h5",{children:"Settings"}),F.jsx("hr",{className:"my-0"}),F.jsx(as,{sectionKey:Nn.FORMATTING_SECTION_KEY,isExpanded:this.isSectionExpanded(Nn.FORMATTING_SECTION_KEY),title:F.jsxs(F.Fragment,{children:[F.jsx(re,{icon:Pw,transform:"grow-4",className:"mr-2"}),"Default Format & Time zone"]}),onToggle:this.handleSectionToggle,children:F.jsx(pH,{})}),F.jsx(as,{sectionKey:Nn.COLUMN_SPECIFIC_SECTION_KEY,isExpanded:this.isSectionExpanded(Nn.COLUMN_SPECIFIC_SECTION_KEY),title:F.jsxs(F.Fragment,{children:[F.jsx(re,{icon:Ow,transform:"grow-4",className:"mr-2"}),"Format by Column Name & Type"]}),onToggle:this.handleSectionToggle,children:F.jsx(_H,{scrollTo:this.handleScrollTo})}),F.jsx(as,{sectionKey:Nn.SHORTCUT_SECTION_KEY,isExpanded:this.isSectionExpanded(Nn.SHORTCUT_SECTION_KEY),title:F.jsxs(F.Fragment,{children:[F.jsx(re,{icon:Dw,transform:"grow-2"})," ","Keyboard Shortcuts"]}),onToggle:this.handleSectionToggle,children:F.jsx(TH,{})}),F.jsxs("div",{className:"app-settings-footer",children:[F.jsxs("div",{className:"app-settings-footer-section",children:[F.jsxs("div",{className:"app-settings-footer-item",children:[F.jsx("div",{className:"font-weight-bold",children:"Support"}),F.jsxs("div",{children:["GitHub: ",F.jsx("a",{href:t,className:"custom-link",target:"_blank",rel:"noopener noreferrer",children:t})]}),F.jsx(j,{kind:"tertiary",className:"mt-2 py-2",onClick:this.handleExportSupportLogs,children:"Export Logs"})]}),F.jsxs("div",{className:"app-settings-footer-item",children:[F.jsx("div",{className:"font-weight-bold",children:"Documentation"}),F.jsx("a",{target:"_blank",rel:"noreferrer noopener",href:r,className:"custom-link",children:r})]}),F.jsxs("div",{className:"app-settings-footer-item",children:[F.jsx("div",{className:"font-weight-bold",children:"Version"}),F.jsxs("span",{className:"d-inline-block text-muted",children:[l," ",F.jsx(re,{icon:Rw}),F.jsxs(pt,{interactive:!0,children:[F.jsxs("div",{className:"detailed-server-config",children:[d("Engine Version",l),d("Web UI Version",e),d("Java Version",s),d("Barrage Version",o)]}),F.jsx(hd,{tooltip:"Copy version numbers",copy:`Engine Version: ${l}
|
|
41
41
|
Web UI Version: ${e}
|
|
42
42
|
Java Version: ${s}
|
|
43
43
|
Barrage Version: ${o}`,children:"Copy Versions"})]})]})]}),F.jsx("div",{className:"app-settings-footer-item",children:F.jsx(CH,{})})]}),F.jsx("div",{className:"app-settings-footer-section",children:F.jsx("div",{className:"logo",children:F.jsx("a",{target:"_blank",rel:"noreferrer noopener",href:"https://deephaven.io",className:"d-inline-block custom-link p-1",children:F.jsx("img",{src:yb,alt:"Deephaven Data Labs",width:"230px"})})})})]})]})]})}}const Df=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=w.useRef(),u=w.useRef(),c=w.useRef(null),[m,v]=w.useState(!1),g=w.useCallback(C=>{d.current!=null&&u.current!=null&&c.current&&(Math.abs(d.current-C.clientX)>=Df||Math.abs(u.current-C.clientY)>=Df)&&(v(!0),window.removeEventListener("mousemove",g),l(),e(C),c.current=null)},[e,l]);function f(C){d.current=C.clientX,u.current=C.clientY,c.current=C.target,window.addEventListener("mousemove",g)}function p(C){c.current===C.target&&(v(!0),l(),e(),window.removeEventListener("mousemove",g)),c.current=null}return w.useEffect(function(){return function(){return window.removeEventListener("mousemove",g)}},[g]),F.jsxs("button",{type:"button",className:te("btn-context-menu",{disabled:r},{active:o&&!r},{"keyboard-active":s&&!r}),onMouseDown:f,onMouseUp:p,disabled:m,children:[F.jsx("span",{className:te("icon"),children:i}),F.jsx("span",{className:"title",children:t}),F.jsx("span",{className:"shortcut",children:a})]})}function Mc(n){const{handleControlSelect:e,handleToolSelect:t,onClearFilter:r}=n,i=w.useMemo(()=>[{title:"Input Filter",icon:Nw,menuElement:F.jsx(Xa,{}),action:a=>{e(Vi.INPUT_FILTER,a)},order:10},{title:"Dropdown Filter",icon:Wf,menuElement:F.jsx(Xa,{}),action:a=>{e(Vi.DROPDOWN_FILTER,a)},order:15},{title:"Markdown Widget",icon:Fw,menuElement:F.jsx(Xa,{}),action:a=>{e(Vi.MARKDOWN,a)},order:20},{title:"Filter Sets",icon:Gu,menuElement:F.jsx(Xa,{}),action:a=>{e(Vi.FILTER_SET_MANAGER,a)},order:25},{disabled:!0,menuElement:F.jsx("div",{className:"context-menu-group-header",children:"Tools"}),order:30},{title:"Linker",icon:Bf,action:()=>{t(Sr.LINKER)},order:40,shortcut:ui.LINKER},{disabled:!0,menuElement:F.jsx("div",{className:"context-menu-group-header",children:"Actions"}),order:50},{title:"Clear All Filters",icon:Iw,action:()=>{r()},order:60,shortcut:Mr.TABLE.CLEAR_ALL_FILTERS}],[e,t,r]);return F.jsx(ai,{popperClassName:"controls-menu-popper",actions:i})}Mc.propTypes={handleControlSelect:q.func,handleToolSelect:q.func,onClearFilter:q.func};Mc.defaultProps={handleControlSelect:()=>{},handleToolSelect:()=>{},onClearFilter:()=>{}};Xa.propTypes={forwardedProps:q.shape({iconElement:q.node,displayShortcut:q.string,isMouseSelected:q.bool.isRequired,isKeyboardSelected:q.bool.isRequired,closeMenu:q.func.isRequired,menuItem:q.shape({action:q.func,title:q.string,disabled:q.bool}).isRequired})};Xa.defaultProps={forwardedProps:null};const MH=Xi(Eb,null),AH={layoutStorage:MH},LH=n=>n.layoutStorage,kH=n=>n.serverConfigValues;Object.entries(AH).map(([n,e])=>ws.register(n,e));const Rf=10;function xH(n){const{onExportLayout:e,onImportLayout:t,onResetLayout:r,onSelect:i,widgets:a=[]}=n,[o,s]=w.useState(!1),[l,d]=w.useState(""),u=w.useRef(null),c=w.useRef(),m=w.useCallback((E,y)=>{E!=null&&i(E,y)},[i]),v=w.useCallback(E=>{d(E.target.value)},[]),g=w.useCallback(E=>{c.current!=null&&(Math.abs(c.current.x-E.clientX)>=Rf||Math.abs(c.current.y-E.clientY)>=Rf)&&(s(!0),window.removeEventListener("mousemove",g),m(c.current.widget,E),c.current=void 0)},[c,m]),f=w.useCallback((E,y)=>{c.current={x:E.clientX,y:E.clientY,widget:y},window.addEventListener("mousemove",g)},[g]),p=w.useCallback((E,y)=>{window.removeEventListener("mousemove",g),c.current?.widget===y&&(s(!0),m(y)),c.current=void 0},[g,c,m]),C=w.useMemo(()=>a.filter(E=>l?E.name?.toLowerCase().includes(l.toLowerCase()):!0),[l,a]).sort((E,y)=>E.name?.localeCompare(y.name??"")??0),b=w.useMemo(()=>C.map(E=>F.jsx("li",{children:F.jsxs(j,{kind:"ghost","data-testid":`panel-list-item-${E.name??""}-button`,onMouseDown:y=>{f(y,E)},onMouseUp:y=>{p(y,E)},onKeyDown:y=>{(y.key==="Enter"||y.key===" ")&&m(E)},disabled:o,onClick:()=>{},children:[F.jsx(Jf,{type:E.type})," ",E.name??""]})},E.name)),[C,o,f,p,m]),S=w.useMemo(()=>b.length===0?F.jsx("span",{children:"No bound variables found."}):null,[b]);return F.jsxs("div",{className:"widget-list-container d-flex flex-column",children:[F.jsx("div",{className:"widget-list-header",children:F.jsx(go,{value:l,placeholder:"Find Table, Plot or Widget",onChange:v,ref:u})}),F.jsxs("ul",{className:"widget-list flex-grow-1",children:[S&&F.jsx("li",{className:"widget-list-message",children:S}),!S&&b]}),F.jsx("div",{children:F.jsx("hr",{})}),F.jsxs("div",{className:"widget-list-footer",children:[F.jsxs(j,{kind:"ghost",onClick:e,children:[F.jsxs("div",{className:"fa-md fa-layers",children:[F.jsx(re,{mask:Vu,icon:sm,transform:"right-5 down-5"}),F.jsx(re,{icon:sm,transform:"right-8 down-6"})]}),"Export Layout"]}),F.jsxs(j,{kind:"ghost",onClick:t,children:[F.jsxs("div",{className:"fa-md fa-layers",children:[F.jsx(re,{mask:Vu,icon:Wu,transform:"right-5 down-5"}),F.jsx(re,{icon:Wu,transform:"right-8 down-6"})]}),"Import Layout"]}),F.jsx(j,{kind:"ghost",icon:ma,onClick:r,tooltip:"Reset Layout"})]})]})}const HH=async(n,e,t,r)=>{let i,a,o,s;if(Tl(t)?(i=t.settings,a=t.table,o=void 0,s=t.tableSettings):(i={},a="",o=t.figure,s={}),r!==void 0&&(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!==void 0){const u={title:o,name:o,type:n.VariableType.FIGURE},c=await e.getObject(u);return kl.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,Ss(Yh.getState())),kl.makeModelFromSettings(n,i,d)},UH=async(n,e,t,r=n.VariableType.TABLE)=>{const{table:i}=t,a={title:i,name:i,type:r},o=await e.getObject(a);return vc.makeModel(n,o)};function $H({onAutoFillClick:n=()=>{}}){return F.jsxs("div",{className:"empty-dashboard-container",children:[F.jsxs("div",{className:"hint-container",children:[F.jsx(re,{icon:Gf})," ",F.jsx("br",{}),"Use the panel list to add objects from a query."]}),F.jsxs("div",{className:"empty-dashboard",children:[F.jsx("div",{className:"add-panels-hint",children:"Drag Panels Here"}),F.jsx(j,{kind:"tertiary",onClick:n,children:"Auto fill objects"})]})]})}function BH(n){return n.version===2}function VH(n){return Array.isArray(n)}const pl=ie.module("UserLayoutUtils"),GH={layoutConfig:[{type:"column",content:[{type:"row",height:40,content:[{type:"stack",content:[{type:"react-component",component:qa.COMPONENT,title:qa.TITLE,isClosable:!1},{type:"react-component",component:Jl.COMPONENT,title:Jl.TITLE,isClosable:!1}]},{type:"stack",width:25,content:[{type:"react-component",component:Xl.COMPONENT,title:Xl.TITLE,isClosable:!1},{type:"react-component",component:Ql.COMPONENT,title:Ql.TITLE,isClosable:!1}]}]},{type:"row",content:[{type:"stack",title:"Notebooks",content:[]}]}]}],links:[],filterSets:[],version:2},WH={layoutConfig:[],links:[],filterSets:[],version:2};function Fb(n){if(BH(n))return n;if(VH(n))return{layoutConfig:n,links:[],filterSets:[],version:2};throw new Error(`Unexpected layout import format: ${n}`)}async function jH(n,e=!0){try{const t=await n.getLayouts();if(t.length>0)try{const r=await n.getLayout(t[0]);return Fb(r)}catch(r){pl.error("Unable to load layout",t[0],":",r),pl.warn("No valid layouts found, falling back to default layout")}}catch(t){pl.error("Unable to fetch layout list",t),pl.warn("Falling back to default layout")}return e?GH:WH}function zH(n){const{filterSets:e,layoutConfig:t,links:r}=n;return{filterSets:e,layoutConfig:t,links:r,version:2}}const Dl={exportLayout:zH,getDefaultLayout:jH,normalizeLayout:Fb},Cl=ie.module("DownloadServiceWorkerUtils");class vs{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(),Cl.info("Registering service worker on ",t,r)}).catch(r=>{Cl.error("Failed to register service worker",r)})}):Cl.info("Service worker is not supported."))}static async getServiceWorker(){if("serviceWorker"in navigator){const t=(await navigator.serviceWorker.getRegistrations()).find(r=>r.scope.endsWith(vs.DOWNLOAD_PATH));if(t&&t.active)return Cl.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=ie.module("AppMainContainer");class Qa extends w.Component{static handleWindowBeforeUnload(e){e.preventDefault(),e.returnValue=""}static hydrateConsole(e,t){return th.hydrate({...e,unzip:r=>Lf.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.hydrateGrid=this.hydrateGrid.bind(this),this.hydratePandas=this.hydratePandas.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=h.createRef(),this.state={contextActions:[{action:()=>{this.handleToolSelect(Sr.LINKER)},shortcut:ui.LINKER,isGlobal:!0},{action:()=>{this.sendClearFilter()},shortcut:Mr.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(u=>!s.some(c=>c.name===u.name));return[...i,...a].forEach(u=>{u.name!=null&&u.name!==""&&l.push(u)}),{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(Ye.SELECT_NOTEBOOK,r,o,s,a,!0)}}sendClearFilter(){this.emitLayoutEvent(it.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 Vi.DROPDOWN_FILTER:this.emitLayoutEvent(it.OPEN_DROPDOWN,{title:"DropdownFilter",type:e,createNewStack:!0,dragEvent:t});break;case Vi.INPUT_FILTER:this.emitLayoutEvent(it.OPEN_INPUT,{title:"InputFilter",type:e,createNewStack:!0,dragEvent:t});break;case Vi.MARKDOWN:this.emitLayoutEvent(YC.OPEN,{title:"Markdown",type:e,dragEvent:t});break;case Vi.FILTER_SET_MANAGER:this.emitLayoutEvent(it.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=Dl.exportLayout(t);St.info("handleExportLayoutClick exportedConfig",r);const i=new Blob([JSON.stringify(r)],{type:"application/json"}),a=Rr.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}=Dl.normalizeLayout(a);r({layoutConfig:s}),t(Sn,{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 Dl.getDefaultLayout(e,t!==void 0),{updateDashboardData:o,updateWorkspaceData:s}=this.props;s({layoutConfig:i}),o(Sn,{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&&r.TablePlugin!=null)return r.TablePlugin;const i=`Unable to find table plugin ${e}.`;return St.error(i),F.jsx("div",{className:"error-message",children:`${i}`})}startListeningForDisconnect(){const{connection:e}=this.props;e.addEventListener(Rr.IdeConnection.EVENT_DISCONNECT,this.handleDisconnect),e.addEventListener(Rr.IdeConnection.EVENT_RECONNECT,this.handleReconnect),e.addEventListener(Rr.CoreClient.EVENT_RECONNECT_AUTH_FAILED,this.handleReconnectAuthFailed)}stopListeningForDisconnect(){const{connection:e}=this.props;e.removeEventListener(Rr.IdeConnection.EVENT_DISCONNECT,this.handleDisconnect),e.removeEventListener(Rr.IdeConnection.EVENT_RECONNECT,this.handleReconnect),e.removeEventListener(Rr.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),localDashboardId:t,...e}}return th.hydrate(e,t)}hydrateGrid(e,t){return this.hydrateTable(e,t,e.metadata.type??Rr.VariableType.TABLE)}hydratePandas(e,t){return this.hydrateTable(e,t,Rr.VariableType.PANDAS)}hydrateTable(e,t,r=Rr.VariableType.TABLE){const{connection:i}=this.props;return{...e,getDownloadWorker:vs.getServiceWorker,loadPlugin:this.handleLoadTablePlugin,localDashboardId:t,makeModel:()=>UH(Rr,i,e.metadata,r)}}hydrateChart(e,t){const{connection:r}=this.props;return{...e,localDashboardId:t,makeModel:()=>{const{metadata:i,panelState:a}=e;return HH(Rr,r,i,a)}}}openWidget(e,t){const{connection:r}=this.props;this.emitLayoutEvent(Ee.OPEN,{dragEvent:t,fetch:()=>r.getObject(e),widget:e})}getDashboardPlugins=fe(e=>[...e.entries()].filter(([,t])=>t.DashboardPlugin!=null).map(([t,{DashboardPlugin:r}])=>F.jsx(r,{},t)));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:u,isAuthFailed:c,isDisconnected:m,isPanelsMenuShown:v,isSettingsMenuShown:g,widgets:f}=this.state,p=this.getDashboardPlugins(t);return F.jsxs("div",{className:te("app-main-tabs","w-100","h-100","d-flex","flex-column",e?`active-tool-${e.toLowerCase()}`:""),onPaste:this.handlePaste,tabIndex:-1,children:[F.jsx("nav",{className:"nav-container",children:F.jsxs("div",{className:"app-main-top-nav-menus",children:[F.jsx("img",{src:yb,alt:"Deephaven Data Labs",width:"115px",className:"ml-1"}),F.jsxs("div",{children:[F.jsxs(j,{kind:"ghost",className:"btn-panels-menu",icon:_w,onClick:()=>{},children:["Controls",F.jsx(Mc,{handleControlSelect:this.handleControlSelect,handleToolSelect:this.handleToolSelect,onClearFilter:this.handleClearFilter})]}),d&&F.jsxs(j,{kind:"ghost",className:"btn-panels-menu btn-show-panels","data-testid":"app-main-panels-button",onClick:this.handleWidgetMenuClick,icon:Mw,children:["Panels",F.jsx(md,{isShown:v,className:"panels-menu-popper",onExited:this.handleWidgetsMenuClose,options:{placement:"bottom"},closeOnBlur:!0,interactive:!0,children:F.jsx(xH,{widgets:f,onExportLayout:this.handleExportLayoutClick,onImportLayout:this.handleImportLayoutClick,onResetLayout:this.handleResetLayoutClick,onSelect:this.handleWidgetSelect})})]}),F.jsx(j,{kind:"ghost",className:te("btn-settings-menu",{"text-warning":r.operateAs!=null&&r.operateAs!==r.name}),onClick:this.handleSettingsMenuShow,icon:F.jsxs("span",{className:"fa-layers",children:[F.jsx(re,{icon:fs,transform:"grow-3 right-1 down-1"}),m&&!c&&F.jsxs(F.Fragment,{children:[F.jsx(re,{icon:os,color:et.background,transform:"grow-2 right-8 down-8.5 rotate-45"}),F.jsx(re,{icon:lm,color:et.danger,transform:"shrink-5 right-6 down-6"})]})]}),tooltip:m&&!c?"Server disconnected":"User Settings"})]})]})}),F.jsxs(fD,{emptyDashboard:F.jsx($H,{onAutoFillClick:this.handleAutoFillClick}),id:Sn,layoutConfig:s,onGoldenLayoutChange:this.handleGoldenLayoutChange,onLayoutConfigChange:this.handleLayoutConfigChange,onLayoutInitialized:this.openNotebookFromURL,hydrate:this.hydrateDefault,children:[F.jsx(Cx,{hydrate:this.hydrateGrid,getDownloadWorker:vs.getServiceWorker,loadPlugin:this.handleLoadTablePlugin}),F.jsx(ux,{hydrate:this.hydrateChart}),F.jsx(hx,{}),F.jsx(fx,{hydrateConsole:Qa.hydrateConsole,notebooksUrl:new URL("notebooks/",document.baseURI).href}),F.jsx(px,{}),F.jsx(Ux,{hydrate:this.hydratePandas}),F.jsx(Hx,{}),F.jsx(Lx,{}),p]}),F.jsx(kr,{in:g,timeout:et.transitionMidMs,classNames:"slide-left",mountOnEnter:!0,unmountOnExit:!0,children:F.jsx(Nn,{serverConfigValues:a,onDone:this.handleSettingsMenuHide,user:r})}),F.jsx(le,{actions:u}),F.jsx("input",{ref:this.importElement,type:"file",accept:".json",style:{display:"none"},onChange:this.handleImportLayoutFiles}),F.jsx(zw,{isOpen:m&&!c,debounceMs:1e3,children:F.jsx(Kw,{icon:lm,title:F.jsxs(F.Fragment,{children:[F.jsx(Hn,{})," Attempting to reconnect..."]}),subtitle:"Please check your network connection."})}),F.jsx(ss,{confirmButtonText:"Refresh",onConfirm:Qa.handleRefresh,isOpen:c,headerText:"Authentication failed",bodyText:"Credentials are invalid. Please refresh your browser to try and reconnect."})]})}}const KH=n=>({activeTool:wd(n),dashboardData:Er(n,Sn),layoutStorage:LH(n),plugins:cT(n),connection:a1(n,Sn),session:Ta(n,Sn)?.session,sessionConfig:Ta(n,Sn)?.config,user:pp(n),workspace:Sd(n),serverConfigValues:kH(n)}),YH=$t(KH,{setActiveTool:yd,updateDashboardData:Un,updateWorkspaceData:xp})(bS(Qa));function qH(){return F.jsxs("div",{className:"app",children:[F.jsx(YH,{}),F.jsx(Xf,{})]})}const XH=ie.module("LocalWorkspaceStorage");class Za{static STORAGE_KEY="deephaven.WorkspaceStorage";static async makeDefaultWorkspaceData(e,t){const{filterSets:r,links:i,layoutConfig:a}=await Dl.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:tt.DEFAULT_FORMAT_STRING},defaultIntegerFormatOptions:{defaultFormatString:yt.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 XH.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 QH{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=ie.module("GrpcFileStorageTable");class rd{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=rt(this.doRefresh.bind(this),rd.REFRESH_DEBOUNCE))}removeBaseRoot(e){return be.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 rd(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 ud;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 ZH=ie.module("GrpcFileStorage");class Ac{static REFRESH_THROTTLE=150;storageService;tables=[];root;constructor(e,t=""){this.storageService=e,this.root=t}removeRoot(e){return be.removeRoot(this.root,e)}addRoot(e){return be.addRoot(this.root,e)}async createDirectory(e){return await this.storageService.createDirectory(this.addRoot(e)),this.refreshTables(),{type:"directory",id:e,filename:e,basename:be.getBaseName(e)}}async getTable(){const e=new rd(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:be.getBaseName(e),content:r}}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(be.getPath(e)),be.getBaseName(e));if(t.length===0)throw new Tc;if(t.length>1)throw ZH.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=zi(()=>{this.tables.forEach(e=>e.refresh())},Ac.REFRESH_THROTTLE)}const JH=ie.module("AppInit");function Lc(n){const{workspace:e,setActiveTool:t,setApi:r,setCommandHistoryStorage:i,setDashboardData:a,setFileStorage:o,setLayoutStorage:s,setDashboardConnection:l,setDashboardSessionWrapper:d,setPlugins:u,setUser:c,setWorkspace:m,setWorkspaceStorage:v,setServerConfigValues:g}=n,f=Pa(),p=Yw(),C=qw(),b=Xw(),S=Qw(),E=Zw(),[y,T]=w.useState();w.useEffect(function(){u(b)},[b,u]),w.useEffect(function(){async function _(){try{const M=await Jw(),A=await eE(f,C,M),B=p.getStorageService(),$=new QH(B,"/layouts"),z=new Ac(B,"/notebooks"),G=new Za($),K=new lH,X=await G.load({isConsoleAvailable:A!==void 0}),{data:J}=X,{settings:I}=J;I.defaultDecimalFormatOptions===void 0&&(I.defaultDecimalFormatOptions={defaultFormatString:tt.DEFAULT_FORMAT_STRING}),I.defaultIntegerFormatOptions===void 0&&(I.defaultIntegerFormatOptions={defaultFormatString:yt.DEFAULT_FORMAT_STRING}),I.truncateNumbersWithPound===void 0&&(I.truncateNumbersWithPound=!1);const{shortcutOverrides:N={}}=I,x=hn.isMacPlatform?N.mac??{}:N.windows??{};Object.entries(x).forEach(([W,ee])=>{qe.get(W)?.setKeyState(ee)});const Y={filterSets:J.filterSets,links:J.links};r(f),t(Sr.DEFAULT),g(S),i(K),a(Sn,Y),o(z),s($),l(Sn,C),A!==void 0&&d(Sn,A),c(E),v(G),m(X)}catch(M){JH.error(M),T(M)}}_()},[f,p,C,S,t,r,i,a,o,s,l,d,c,m,v,g,E]);const O=e==null&&y==null,D=!O&&y==null,P=y!=null?`${y}`:null;return F.jsxs(F.Fragment,{children:[D&&F.jsx(qH,{}),F.jsx(id,{isLoading:O&&P==null,isLoaded:D,errorMessage:P})]})}Lc.propTypes={workspace:q.shape({}),workspaceStorage:q.shape({close:q.func}),setActiveTool:q.func.isRequired,setApi:q.func.isRequired,setCommandHistoryStorage:q.func.isRequired,setDashboardData:q.func.isRequired,setFileStorage:q.func.isRequired,setLayoutStorage:q.func.isRequired,setDashboardConnection:q.func.isRequired,setDashboardSessionWrapper:q.func.isRequired,setPlugins:q.func.isRequired,setUser:q.func.isRequired,setWorkspace:q.func.isRequired,setWorkspaceStorage:q.func.isRequired};Lc.defaultProps={workspace:null,workspaceStorage:null};const eU=n=>({workspace:Sd(n),workspaceStorage:dT(n)}),Nf=$t(eU,{setActiveTool:yd,setApi:pT,setCommandHistoryStorage:bT,setDashboardData:lC,setFileStorage:ST,setLayoutStorage:dH,setDashboardConnection:o1,setDashboardSessionWrapper:s1,setPlugins:ET,setUser:fT,setWorkspace:kp,setWorkspaceStorage:CT,setServerConfigValues:yT})(Lc),tU=document.location.pathname;function rU(){return F.jsx(SS,{basename:tU,children:F.jsxs(wS,{children:[F.jsx(em,{exact:!0,path:"/",component:Nf}),F.jsx(em,{path:"/notebooks/:notebookPath+",component:Nf}),F.jsx(ES,{from:"*",to:"/"})]})})}function uU(){return vs.registerOnLoaded(),Cr.init({getWorker:()=>new PS}),window["__react-beautiful-dnd-disable-dev-warnings"]=!0,F.jsx(yS,{store:Yh,children:F.jsx(rU,{})})}export{uU as AppRoot,uU as default};
|
|
44
|
-
//# sourceMappingURL=AppRoot-
|
|
44
|
+
//# sourceMappingURL=AppRoot-3f29ebcb.js.map
|