@deephaven/code-studio 0.47.0 → 0.47.1-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/assets/{AppRoot-a6304043.js → AppRoot-cf779af5.js} +3 -3
- package/build/assets/{AppRoot-a6304043.js.map → AppRoot-cf779af5.js.map} +1 -1
- package/build/assets/{index-ee525ab8.js → index-71acd17c.js} +2 -2
- package/build/assets/{index-ee525ab8.js.map → index-71acd17c.js.map} +1 -1
- package/build/assets/{index-adc42ca8.js → index-8c99280f.js} +2 -2
- package/build/assets/{index-adc42ca8.js.map → index-8c99280f.js.map} +1 -1
- package/build/assets/{useUser-00b4e129.js → useUser-b93d1549.js} +2 -2
- package/build/assets/{useUser-00b4e129.js.map → useUser-b93d1549.js.map} +1 -1
- package/build/index.html +1 -1
- package/package.json +31 -31
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{C as u,G as re,r as y,I as gS,P as Y,F as J,J as tt,K as qg,H as he,L as Ce,M as Qo,N as Ki,O as rt,Q as Pe,S as Xg,T as ht,U as Sh,V as pS,W as CS,X as bS,Y as SS,$ as me,R as wh,Z as Bc,_ as yh,a0 as wS,a1 as Be,a2 as ju,E as yS,D as Lr,a3 as ed,a4 as Qg,a5 as Eh,a6 as ES,a7 as An,a8 as TS,a9 as PS,aa as OS,ab as DS,ac as Hu,ad as RS,ae as NS,af as FS,ag as Vc,ah as IS,ai as Gc,aj as _S,ak as xS,al as MS,am as AS,an as LS,ao as kS,ap as $t,aq as Zg,ar as jS,as as Jg,at as HS,au as ep,av as $S,aw as US,ax as BS,ay as VS,az as Wc,aA as GS,aB as WS}from"./vendor-bbdef791.js";import{e as pn,l as xn,K as Nr,a as ni,b as zc,R as zS,W as KS}from"./monaco-3857fcdf.js";import{v as $u,d as YS,a as tp,b as Th,L as jn,c as ps,e as ti,f as rp,g as ae,h as Kc,i as qS,j as XS,k as QS,l as ZS,m as jr,n as Wi,o as np,p as ii,q as td,r as ro,s as JS,t as ew,u as Yc,w as _l,x as qc,y as ip,z as tw,A as Cs,B as ap,C as rw,D as nw,T as Je,E as Ph,F as Oh,G as xl,H as Vn,I as iw,J as aw,K as ow,M as sw,N as lw,O as dw,P as Dh,Q as qi,R as Xc,S as bs,U as Rh,V as Nh,W as op,X as uw,Y as rd,Z as hw,_ as ss,$ as cw,a0 as Fh,a1 as sp,a2 as va,a3 as mw,a4 as vw,a5 as fw,a6 as gw,a7 as pw,a8 as Cw,a9 as Qc,aa as au,ab as bw,ac as Sw,ad as ww,ae as nd,af as id,ag as yw,ah as Ew,ai as ad,aj as lp,ak as Tw,al as Pw,am as Ow,an as dp,ao as Dw,ap as Rw,aq as Nw,ar as Fw,as as Iw,at as _w,au as xw,av as Mw,aw as Aw,ax as Lw,ay as kw,az as jw,aA as Hw,aB as up,aC as $w,aD as Uu,aE as Bu,aF as Uw,aG as Bw,aH as Vw,aI as Gw,aJ as Ww,aK as zw,aL as Kw,aM as Yw,aN as qw,aO as Xw,aP as Qw,aQ as Zw,aR as Jw,aS as Zc,aT as ey,aU as ty,aV as Jc}from"./index-adc42ca8.js";import{P as Te,u as Pa,T as od,B as G,a as A,S as qe,M as we,K as Oe,G as ui,C as se,b as Qr,c as tn,D as ai,d as fo,e as sd,f as pt,g as Ss,I as no,U as ry,h as pe,i as j,F as oi,j as yn,k as ya,l as ny,m as Ih,n as $,E as ke,o as Zn,p as Yi,q as El,r as Tt,s as et,t as Et,v as ld,w as iy,O as ei,x as ay,y as Sn,z as vn,A as oy,H as sy,R as dd,J as si,L as ud,N as hp,Q as cp,V as ly,W as dy,X as em,Y as Ze,Z as tm,_ as mp,$ as _h,a0 as rm,a1 as ls,a2 as vp,a3 as uy,a4 as fp,a5 as hy,a6 as hn,a7 as cy,a8 as my,a9 as vy,aa as fy,ab as gy,ac as py,ad as Cy,ae as by,af as Sy,ag as wy,ah as yy,ai as Ey,aj as Ty,ak as Py,al as Oy,am as Dy}from"./useUser-00b4e129.js";import{P as Ml,b as Ry,h as Ny,p as Fy,o as Iy,s as _y,t as xy,c as Tl}from"./plotly-5a6489ea.js";import"./helpers-042e6b4d.js";class xh{static isDark(e){var t=document.createElement("div");t.style.display="none",t.style.color=e;var r=getComputedStyle(document.body.appendChild(t)).color,i=r.match(/\d+/g),a=[];if(i)a=i.map(s=>parseInt(s,10));else throw new Error("Invalid color received. Got ".concat(r));document.body.removeChild(t);var o=xh.getBrightness(a);return o<125}static getBrightness(e){return Math.round((e[0]*299+e[1]*587+e[2]*114)/1e3)}}const gp=xh;function go(n,e,t){return e=My(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function My(n){var e=Ay(n,"string");return typeof e=="symbol"?e:String(e)}function Ay(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Ly="table_",pp="column_",ky=new Set(["in","not","i","ii","k"]),jy=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"]),Hy=/[^a-zA-Z0-9_$+@-]/g,$y=/[^A-Za-z0-9_$]/g;class rn{}go(rn,"legalize",(n,e,t,r,i)=>{var a=n.trim().replace(/[- ]/g,"_");return r&&(ky.has(a)||jy.has(a))&&(a=e+a),a=a.replace(t,""),a||(a=e+i),Number.isNaN(Number(a.charAt(0)))||(a=e+a),a});go(rn,"legalizeTableName",n=>rn.legalize(n,Ly,Hy,!1,0));go(rn,"legalizeColumnNames",n=>{var e=[];return n.forEach((t,r)=>{var i=rn.legalizeColumnName(t,r);e.includes(i)&&(i=pp+r),e.push(i)}),e});go(rn,"legalizeColumnName",function(n){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return rn.legalize(n,pp,$y,!0,e)});go(rn,"isValidTableName",n=>rn.legalizeTableName(n)===n);go(rn,"isValidColumnName",n=>rn.legalizeColumnName(n)===n);const po=rn;function Uy(n,e){return n?n.closest(".".concat(e)):null}const By={getClosestByClassName:Uy};function nm(n,e,t){return e=Vy(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Vy(n){var e=Gy(n,"string");return typeof e=="symbol"?e:String(e)}function Gy(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Wy{constructor(){nm(this,"pending",[]),nm(this,"resolved",[])}add(e,t){var r=Te.makeCancelable(e,t);return this.pending.push(r),r.then(()=>{this.resolve(r)},()=>{this.resolve(r)}),r}remove(e){for(var t=0;t<this.pending.length;t+=1)if(this.pending[t]===e){this.pending.splice(t,1);return}}resolve(e){this.remove(e),this.resolved.push(e)}cancel(){for(var e=[...this.pending,...this.resolved],t=0;t<e.length;t+=1)e[t].cancel();this.pending=[],this.resolved=[]}}const hi=Wy;function zy(n,e,t){return e=Ky(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ky(n){var e=Yy(n,"string");return typeof e=="symbol"?e:String(e)}function Yy(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class qy extends Error{constructor(){super(...arguments),zy(this,"isInvalid",!0)}}const Ja=qy;function Cp(n){var{type:e}=n,t=Pa();switch(e){case t.VariableType.TABLE:case t.VariableType.TABLEMAP:case t.VariableType.TREETABLE:case t.VariableType.HIERARCHICALTABLE:return u.jsx(re,{icon:Th});case t.VariableType.FIGURE:return u.jsx(re,{icon:tp});case t.VariableType.PANDAS:return u.jsx(re,{icon:YS});default:return u.jsx(re,{icon:$u})}}function Xy(n,e,t){return e=Qy(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Qy(n){var e=Zy(n,"string");return typeof e=="symbol"?e:String(e)}function Zy(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Jy extends y.Component{constructor(e){super(e),Xy(this,"container",void 0),this.container=null}componentDidMount(){this.colorize()}colorize(){var{children:e}=this.props;this.container&&e!=null&&pn.colorizeElement(this.container,{theme:"dh-dark"})}render(){var{children:e,language:t}=this.props;return u.jsx("div",{children:u.jsx("div",{"data-lang":t,ref:r=>{this.container=r},style:{pointerEvents:"none"},children:e})})}}const hd=Jy;class e0{static get LANGUAGE_MAP(){return new Map([["python","Python"],["groovy","Groovy"],["scala","Scala"]])}}const bp=e0;class Al{static hasComment(e){return e.comment!==void 0}static hasPattern(e){return e.pattern!==void 0}static hasOp(e){return e.op!==void 0}static parseArguments(e){return e==null||!(typeof e=="string"||e instanceof String)?[]:gS.parse(e).filter(t=>!this.hasComment(t)).map(t=>this.hasPattern(t)?t.pattern:this.hasOp(t)?t.op:"".concat(t))}static formatTimestamp(e){if(e==null||!(e instanceof Date))return null;var t="".concat(e.getHours()).padStart(2,"0"),r="".concat(e.getMinutes()).padStart(2,"0"),i="".concat(e.getSeconds()).padStart(2,"0"),a="".concat(e.getMilliseconds()).padStart(3,"0");return"".concat(t,":").concat(r,":").concat(i,".").concat(a)}static isTableType(e,t){return t===e.VariableType.TABLE||t===e.VariableType.TREETABLE||t===e.VariableType.HIERARCHICALTABLE}static isWidgetType(e,t){return t===e.VariableType.FIGURE||t===e.VariableType.OTHERWIDGET||t===e.VariableType.PANDAS}static isOpenableType(e,t){return Al.isTableType(e,t)||Al.isWidgetType(e,t)}static isFigureType(e,t){return t===e.VariableType.FIGURE}static isPandas(e,t){return t===e.VariableType.PANDAS}}const Vu=Al;function Sp(n){var{children:e}=n;return u.jsxs("div",{className:"console-history-item-result",children:[u.jsx("div",{className:"console-history-gutter",children:"-"}),u.jsx("div",{className:"console-history-content",children:e})]})}Sp.propTypes={children:Y.node.isRequired};function Gu(n,e,t){return e=t0(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function t0(n){var e=r0(n,"string");return typeof e=="symbol"?e:String(e)}function r0(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class wp extends y.Component{constructor(e){super(e),Gu(this,"timer",void 0),Gu(this,"startTime",void 0),this.updateElapsed=this.updateElapsed.bind(this),this.startTime=Date.now(),this.state={elapsed:0}}componentDidMount(){this.timer=setInterval(this.updateElapsed,1e3)}componentWillUnmount(){this.timer&&clearInterval(this.timer),this.timer=void 0}updateElapsed(){this.setState({elapsed:Math.round((Date.now()-this.startTime)/1e3)})}render(){var{disabled:e,onCancelClick:t}=this.props,{elapsed:r}=this.state;return u.jsx("div",{className:J("console-history-result-in-progress",{disabled:e}),children:u.jsxs("span",{className:"badge",children:[u.jsx(jn,{})," Running... ",od.formatElapsedTime(r)," ",u.jsx(G,{className:"console-history-result-in-progress-cancel",kind:"ghost",icon:ps,tooltip:"Cancel",onClick:t,disabled:e})]})})}}Gu(wp,"defaultProps",{disabled:!1});const n0=wp;function Zo(n,e,t){return e=i0(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function i0(n){var e=a0(n,"string");return typeof e=="symbol"?e:String(e)}function a0(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class io extends y.PureComponent{constructor(e){super(e),Zo(this,"mouseX",void 0),Zo(this,"mouseY",void 0),Zo(this,"isClicking",void 0),this.handleKeyPress=this.handleKeyPress.bind(this),this.handleMouseDown=this.handleMouseDown.bind(this),this.handleMouseMove=this.handleMouseMove.bind(this),this.handleMouseUp=this.handleMouseUp.bind(this),this.handleToggleError=this.handleToggleError.bind(this),this.handleMouseEnter=this.handleMouseEnter.bind(this),this.handleMouseLeave=this.handleMouseLeave.bind(this),this.mouseX=null,this.mouseY=null,this.isClicking=!1,this.state={isExpanded:!1,isTriggerHovered:!1}}handleKeyPress(e){switch(e.key){case"Enter":case" ":this.handleToggleError(),e.stopPropagation(),e.preventDefault();break}}handleMouseDown(e){this.mouseX=e.clientX,this.mouseY=e.clientY,this.isClicking=!0}handleMouseMove(e){this.mouseX!=null&&this.mouseY!=null?(Math.abs(e.clientX-this.mouseX)>=io.mouseDragThreshold||Math.abs(e.clientY-this.mouseY)>=io.mouseDragThreshold)&&(this.isClicking=!1):this.isClicking&&(this.isClicking=!1)}handleMouseUp(e){this.isClicking&&!e.shiftKey&&!e.metaKey&&!e.altKey&&this.handleToggleError(),this.mouseX=null,this.mouseY=null,this.isClicking=!1}handleToggleError(){this.setState(e=>({isExpanded:!e.isExpanded}))}handleMouseEnter(){this.setState({isTriggerHovered:!0})}handleMouseLeave(){this.setState({isTriggerHovered:!1})}render(){var{isExpanded:e,isTriggerHovered:t}=this.state,{message:r}=this.props;A(r);var i=r.indexOf(`
|
|
1
|
+
import{C as u,G as re,r as y,I as gS,P as Y,F as J,J as tt,K as qg,H as he,L as Ce,M as Qo,N as Ki,O as rt,Q as Pe,S as Xg,T as ht,U as Sh,V as pS,W as CS,X as bS,Y as SS,$ as me,R as wh,Z as Bc,_ as yh,a0 as wS,a1 as Be,a2 as ju,E as yS,D as Lr,a3 as ed,a4 as Qg,a5 as Eh,a6 as ES,a7 as An,a8 as TS,a9 as PS,aa as OS,ab as DS,ac as Hu,ad as RS,ae as NS,af as FS,ag as Vc,ah as IS,ai as Gc,aj as _S,ak as xS,al as MS,am as AS,an as LS,ao as kS,ap as $t,aq as Zg,ar as jS,as as Jg,at as HS,au as ep,av as $S,aw as US,ax as BS,ay as VS,az as Wc,aA as GS,aB as WS}from"./vendor-bbdef791.js";import{e as pn,l as xn,K as Nr,a as ni,b as zc,R as zS,W as KS}from"./monaco-3857fcdf.js";import{v as $u,d as YS,a as tp,b as Th,L as jn,c as ps,e as ti,f as rp,g as ae,h as Kc,i as qS,j as XS,k as QS,l as ZS,m as jr,n as Wi,o as np,p as ii,q as td,r as ro,s as JS,t as ew,u as Yc,w as _l,x as qc,y as ip,z as tw,A as Cs,B as ap,C as rw,D as nw,T as Je,E as Ph,F as Oh,G as xl,H as Vn,I as iw,J as aw,K as ow,M as sw,N as lw,O as dw,P as Dh,Q as qi,R as Xc,S as bs,U as Rh,V as Nh,W as op,X as uw,Y as rd,Z as hw,_ as ss,$ as cw,a0 as Fh,a1 as sp,a2 as va,a3 as mw,a4 as vw,a5 as fw,a6 as gw,a7 as pw,a8 as Cw,a9 as Qc,aa as au,ab as bw,ac as Sw,ad as ww,ae as nd,af as id,ag as yw,ah as Ew,ai as ad,aj as lp,ak as Tw,al as Pw,am as Ow,an as dp,ao as Dw,ap as Rw,aq as Nw,ar as Fw,as as Iw,at as _w,au as xw,av as Mw,aw as Aw,ax as Lw,ay as kw,az as jw,aA as Hw,aB as up,aC as $w,aD as Uu,aE as Bu,aF as Uw,aG as Bw,aH as Vw,aI as Gw,aJ as Ww,aK as zw,aL as Kw,aM as Yw,aN as qw,aO as Xw,aP as Qw,aQ as Zw,aR as Jw,aS as Zc,aT as ey,aU as ty,aV as Jc}from"./index-8c99280f.js";import{P as Te,u as Pa,T as od,B as G,a as A,S as qe,M as we,K as Oe,G as ui,C as se,b as Qr,c as tn,D as ai,d as fo,e as sd,f as pt,g as Ss,I as no,U as ry,h as pe,i as j,F as oi,j as yn,k as ya,l as ny,m as Ih,n as $,E as ke,o as Zn,p as Yi,q as El,r as Tt,s as et,t as Et,v as ld,w as iy,O as ei,x as ay,y as Sn,z as vn,A as oy,H as sy,R as dd,J as si,L as ud,N as hp,Q as cp,V as ly,W as dy,X as em,Y as Ze,Z as tm,_ as mp,$ as _h,a0 as rm,a1 as ls,a2 as vp,a3 as uy,a4 as fp,a5 as hy,a6 as hn,a7 as cy,a8 as my,a9 as vy,aa as fy,ab as gy,ac as py,ad as Cy,ae as by,af as Sy,ag as wy,ah as yy,ai as Ey,aj as Ty,ak as Py,al as Oy,am as Dy}from"./useUser-b93d1549.js";import{P as Ml,b as Ry,h as Ny,p as Fy,o as Iy,s as _y,t as xy,c as Tl}from"./plotly-5a6489ea.js";import"./helpers-042e6b4d.js";class xh{static isDark(e){var t=document.createElement("div");t.style.display="none",t.style.color=e;var r=getComputedStyle(document.body.appendChild(t)).color,i=r.match(/\d+/g),a=[];if(i)a=i.map(s=>parseInt(s,10));else throw new Error("Invalid color received. Got ".concat(r));document.body.removeChild(t);var o=xh.getBrightness(a);return o<125}static getBrightness(e){return Math.round((e[0]*299+e[1]*587+e[2]*114)/1e3)}}const gp=xh;function go(n,e,t){return e=My(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function My(n){var e=Ay(n,"string");return typeof e=="symbol"?e:String(e)}function Ay(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Ly="table_",pp="column_",ky=new Set(["in","not","i","ii","k"]),jy=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"]),Hy=/[^a-zA-Z0-9_$+@-]/g,$y=/[^A-Za-z0-9_$]/g;class rn{}go(rn,"legalize",(n,e,t,r,i)=>{var a=n.trim().replace(/[- ]/g,"_");return r&&(ky.has(a)||jy.has(a))&&(a=e+a),a=a.replace(t,""),a||(a=e+i),Number.isNaN(Number(a.charAt(0)))||(a=e+a),a});go(rn,"legalizeTableName",n=>rn.legalize(n,Ly,Hy,!1,0));go(rn,"legalizeColumnNames",n=>{var e=[];return n.forEach((t,r)=>{var i=rn.legalizeColumnName(t,r);e.includes(i)&&(i=pp+r),e.push(i)}),e});go(rn,"legalizeColumnName",function(n){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return rn.legalize(n,pp,$y,!0,e)});go(rn,"isValidTableName",n=>rn.legalizeTableName(n)===n);go(rn,"isValidColumnName",n=>rn.legalizeColumnName(n)===n);const po=rn;function Uy(n,e){return n?n.closest(".".concat(e)):null}const By={getClosestByClassName:Uy};function nm(n,e,t){return e=Vy(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Vy(n){var e=Gy(n,"string");return typeof e=="symbol"?e:String(e)}function Gy(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Wy{constructor(){nm(this,"pending",[]),nm(this,"resolved",[])}add(e,t){var r=Te.makeCancelable(e,t);return this.pending.push(r),r.then(()=>{this.resolve(r)},()=>{this.resolve(r)}),r}remove(e){for(var t=0;t<this.pending.length;t+=1)if(this.pending[t]===e){this.pending.splice(t,1);return}}resolve(e){this.remove(e),this.resolved.push(e)}cancel(){for(var e=[...this.pending,...this.resolved],t=0;t<e.length;t+=1)e[t].cancel();this.pending=[],this.resolved=[]}}const hi=Wy;function zy(n,e,t){return e=Ky(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ky(n){var e=Yy(n,"string");return typeof e=="symbol"?e:String(e)}function Yy(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class qy extends Error{constructor(){super(...arguments),zy(this,"isInvalid",!0)}}const Ja=qy;function Cp(n){var{type:e}=n,t=Pa();switch(e){case t.VariableType.TABLE:case t.VariableType.TABLEMAP:case t.VariableType.TREETABLE:case t.VariableType.HIERARCHICALTABLE:return u.jsx(re,{icon:Th});case t.VariableType.FIGURE:return u.jsx(re,{icon:tp});case t.VariableType.PANDAS:return u.jsx(re,{icon:YS});default:return u.jsx(re,{icon:$u})}}function Xy(n,e,t){return e=Qy(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Qy(n){var e=Zy(n,"string");return typeof e=="symbol"?e:String(e)}function Zy(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Jy extends y.Component{constructor(e){super(e),Xy(this,"container",void 0),this.container=null}componentDidMount(){this.colorize()}colorize(){var{children:e}=this.props;this.container&&e!=null&&pn.colorizeElement(this.container,{theme:"dh-dark"})}render(){var{children:e,language:t}=this.props;return u.jsx("div",{children:u.jsx("div",{"data-lang":t,ref:r=>{this.container=r},style:{pointerEvents:"none"},children:e})})}}const hd=Jy;class e0{static get LANGUAGE_MAP(){return new Map([["python","Python"],["groovy","Groovy"],["scala","Scala"]])}}const bp=e0;class Al{static hasComment(e){return e.comment!==void 0}static hasPattern(e){return e.pattern!==void 0}static hasOp(e){return e.op!==void 0}static parseArguments(e){return e==null||!(typeof e=="string"||e instanceof String)?[]:gS.parse(e).filter(t=>!this.hasComment(t)).map(t=>this.hasPattern(t)?t.pattern:this.hasOp(t)?t.op:"".concat(t))}static formatTimestamp(e){if(e==null||!(e instanceof Date))return null;var t="".concat(e.getHours()).padStart(2,"0"),r="".concat(e.getMinutes()).padStart(2,"0"),i="".concat(e.getSeconds()).padStart(2,"0"),a="".concat(e.getMilliseconds()).padStart(3,"0");return"".concat(t,":").concat(r,":").concat(i,".").concat(a)}static isTableType(e,t){return t===e.VariableType.TABLE||t===e.VariableType.TREETABLE||t===e.VariableType.HIERARCHICALTABLE}static isWidgetType(e,t){return t===e.VariableType.FIGURE||t===e.VariableType.OTHERWIDGET||t===e.VariableType.PANDAS}static isOpenableType(e,t){return Al.isTableType(e,t)||Al.isWidgetType(e,t)}static isFigureType(e,t){return t===e.VariableType.FIGURE}static isPandas(e,t){return t===e.VariableType.PANDAS}}const Vu=Al;function Sp(n){var{children:e}=n;return u.jsxs("div",{className:"console-history-item-result",children:[u.jsx("div",{className:"console-history-gutter",children:"-"}),u.jsx("div",{className:"console-history-content",children:e})]})}Sp.propTypes={children:Y.node.isRequired};function Gu(n,e,t){return e=t0(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function t0(n){var e=r0(n,"string");return typeof e=="symbol"?e:String(e)}function r0(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class wp extends y.Component{constructor(e){super(e),Gu(this,"timer",void 0),Gu(this,"startTime",void 0),this.updateElapsed=this.updateElapsed.bind(this),this.startTime=Date.now(),this.state={elapsed:0}}componentDidMount(){this.timer=setInterval(this.updateElapsed,1e3)}componentWillUnmount(){this.timer&&clearInterval(this.timer),this.timer=void 0}updateElapsed(){this.setState({elapsed:Math.round((Date.now()-this.startTime)/1e3)})}render(){var{disabled:e,onCancelClick:t}=this.props,{elapsed:r}=this.state;return u.jsx("div",{className:J("console-history-result-in-progress",{disabled:e}),children:u.jsxs("span",{className:"badge",children:[u.jsx(jn,{})," Running... ",od.formatElapsedTime(r)," ",u.jsx(G,{className:"console-history-result-in-progress-cancel",kind:"ghost",icon:ps,tooltip:"Cancel",onClick:t,disabled:e})]})})}}Gu(wp,"defaultProps",{disabled:!1});const n0=wp;function Zo(n,e,t){return e=i0(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function i0(n){var e=a0(n,"string");return typeof e=="symbol"?e:String(e)}function a0(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class io extends y.PureComponent{constructor(e){super(e),Zo(this,"mouseX",void 0),Zo(this,"mouseY",void 0),Zo(this,"isClicking",void 0),this.handleKeyPress=this.handleKeyPress.bind(this),this.handleMouseDown=this.handleMouseDown.bind(this),this.handleMouseMove=this.handleMouseMove.bind(this),this.handleMouseUp=this.handleMouseUp.bind(this),this.handleToggleError=this.handleToggleError.bind(this),this.handleMouseEnter=this.handleMouseEnter.bind(this),this.handleMouseLeave=this.handleMouseLeave.bind(this),this.mouseX=null,this.mouseY=null,this.isClicking=!1,this.state={isExpanded:!1,isTriggerHovered:!1}}handleKeyPress(e){switch(e.key){case"Enter":case" ":this.handleToggleError(),e.stopPropagation(),e.preventDefault();break}}handleMouseDown(e){this.mouseX=e.clientX,this.mouseY=e.clientY,this.isClicking=!0}handleMouseMove(e){this.mouseX!=null&&this.mouseY!=null?(Math.abs(e.clientX-this.mouseX)>=io.mouseDragThreshold||Math.abs(e.clientY-this.mouseY)>=io.mouseDragThreshold)&&(this.isClicking=!1):this.isClicking&&(this.isClicking=!1)}handleMouseUp(e){this.isClicking&&!e.shiftKey&&!e.metaKey&&!e.altKey&&this.handleToggleError(),this.mouseX=null,this.mouseY=null,this.isClicking=!1}handleToggleError(){this.setState(e=>({isExpanded:!e.isExpanded}))}handleMouseEnter(){this.setState({isTriggerHovered:!0})}handleMouseLeave(){this.setState({isTriggerHovered:!1})}render(){var{isExpanded:e,isTriggerHovered:t}=this.state,{message:r}=this.props;A(r);var i=r.indexOf(`
|
|
2
2
|
`),a=i>-1,o=r;a&&(o=r.slice(0,i));var s=r.slice(i),l=t?"error-btn-link error-btn-link--active":"error-btn-link";return u.jsxs("div",{className:J("error-message",{expanded:e}),children:[a&&u.jsxs(u.Fragment,{children:[u.jsx("div",{className:"error-gutter",children:u.jsx("button",{type:"button",onClick:this.handleToggleError,className:l,tabIndex:-1,children:u.jsx(re,{icon:e?ti:rp,transform:"left-3"})})}),u.jsxs("div",{className:"error-content",children:[u.jsx("div",{className:"console-error-text-trigger",role:"button",tabIndex:0,onKeyPress:this.handleKeyPress,onMouseDown:this.handleMouseDown,onMouseMove:this.handleMouseMove,onMouseEnter:this.handleMouseEnter,onMouseLeave:this.handleMouseLeave,onMouseUp:this.handleMouseUp,children:o}),e?s:""]})]}),!a&&u.jsx("div",{className:"error-content",children:u.jsx("div",{className:"console-error-text",children:o})})]},"error")}}Zo(io,"defaultProps",{message:""});Zo(io,"mouseDragThreshold",5);const o0=io;function s0(n,e,t){return e=l0(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function l0(n){var e=d0(n,"string");return typeof e=="symbol"?e:String(e)}function d0(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var im=ae.module("ConsoleHistoryItem");class yp extends y.PureComponent{constructor(e){super(e),this.handleCancelClick=this.handleCancelClick.bind(this),this.handleObjectClick=this.handleObjectClick.bind(this)}handleObjectClick(e){im.debug("handleObjectClick",e);var{openObject:t}=this.props;t(e)}handleCancelClick(){var{item:e}=this.props;e!=null&&e.cancelResult&&(im.debug("Cancelling command: ".concat(e.command)),e.cancelResult())}render(){var{disabled:e,item:t,language:r}=this.props,{disabledObjects:i,result:a}=t,o=t.command!=null&&t.command!=="",s=null;o&&(s=u.jsxs("div",{className:"console-history-item-command",children:[u.jsx("div",{className:"console-history-gutter",children:">"}),u.jsx("div",{className:"console-history-content",children:u.jsx(hd,{language:r,children:t.command})})]}));var l=[],d=!1;if(a){var{error:h,message:c,changes:m}=a;if(m){var{created:v,updated:f}=m;[...v,...f].forEach(E=>{d=!0;var{title:T}=E,P="".concat(T),D=e===void 0||e||(i??[]).indexOf(P)>=0,O=u.jsx(G,{kind:"primary",onClick:()=>this.handleObjectClick(E),className:"btn-console-object",disabled:D,icon:u.jsx(Cp,{type:E.type}),children:T},P);l.push(O)})}if(h!=null&&!o){var g,p="".concat((g=h.message)!==null&&g!==void 0?g:h);p||(p=h);var C=u.jsx(o0,{message:p},"result-error");l.push(C)}if(c!==void 0&&c!==""){var b=u.jsx("div",{className:"log-message",children:c},"log-message");l.push(b)}}else{d=!0;var S=u.jsx(n0,{onCancelClick:this.handleCancelClick,disabled:e},"in_progress");l.push(S)}var w=null;return l.length>0&&(w=u.jsx(Sp,{children:l})),u.jsxs("div",{className:J("console-command-result",{"console-result-buttons":d}),children:[s,w]})}}s0(yp,"defaultProps",{disabled:!1});const u0=yp;function h0(n,e,t){return e=c0(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function c0(n){var e=m0(n,"string");return typeof e=="symbol"?e:String(e)}function m0(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class cd extends y.Component{static itemKey(e,t){return"".concat(e,".").concat(t.command,".").concat(t.result&&t.result.message,".").concat(t.result&&t.result.error)}render(){for(var{disabled:e,items:t,language:r,openObject:i}=this.props,a=[],o=0;o<t.length;o+=1){var s=t[o],l=u.jsx(u0,{disabled:e,item:s,openObject:i,language:r},cd.itemKey(o,s));a.push(l)}return u.jsx("div",{className:"container-fluid console-history",children:a})}}h0(cd,"defaultProps",{disabled:!1});const v0=cd;var f0={name:"Console",CLEAR:qe.createAndAdd({id:"CONSOLE.CLEAR",name:"Clear",shortcut:[we.CTRL,Oe.L],macShortcut:[we.CTRL,Oe.C]}),FOCUS_HISTORY:qe.createAndAdd({id:"CONSOLE.FOCUS_HISTORY",name:"Focus History",shortcut:[we.CTRL,Oe.H],macShortcut:[we.CTRL,we.OPTION,Oe.H]})},g0={name:"Command History",FOCUS_HISTORY:qe.createAndAdd({id:"COMMAND_HISTORY.FOCUS_HISTORY",name:"Focus History Search",shortcut:[we.CTRL,Oe.H],macShortcut:[we.CTRL,we.OPTION,Oe.H]}),SEND_TO_CONSOLE:qe.createAndAdd({id:"COMMAND_HISTORY.SEND_TO_CONSOLE",name:"Send to Console",shortcut:[Oe.ENTER],macShortcut:[Oe.ENTER]}),SEND_TO_NOTEBOOK:qe.createAndAdd({id:"COMMAND_HISTORY.SEND_TO_NOTEBOOK",name:"Send to Notebook",shortcut:[we.CTRL,Oe.ENTER],macShortcut:[we.CMD,Oe.ENTER]}),RUN:qe.createAndAdd({id:"COMMAND_HISTORY.RUN",name:"Run",shortcut:[we.ALT,Oe.R],macShortcut:[we.OPTION,Oe.R]})},p0={name:"Notebook",RUN:qe.createAndAdd({id:"NOTEBOOK.RUN",name:"Run",shortcut:[we.ALT,Oe.R],macShortcut:[we.OPTION,Oe.R]}),RUN_SELECTED:qe.createAndAdd({id:"NOTEBOOK.RUN_SELECTED",name:"Run Selected",shortcut:[we.ALT,we.SHIFT,Oe.R],macShortcut:[we.OPTION,we.SHIFT,Oe.R]}),FIND:qe.createAndAdd({id:"NOTEBOOK.FIND",name:"Find",shortcut:[we.CTRL,Oe.F],macShortcut:[we.CMD,Oe.F],isEditable:!1}),MINIMAP:qe.createAndAdd({id:"NOTEBOOK.MINIMAP",name:"Show Minimap",shortcut:[we.ALT,Oe.M],macShortcut:[we.OPTION,Oe.M]}),WORDWRAP:qe.createAndAdd({id:"NOTEBOOK.WORDWRAP",name:"Word Wrap",shortcut:[we.ALT,Oe.Z],macShortcut:[we.OPTION,Oe.Z]})},C0={CONSOLE:f0,COMMAND_HISTORY:g0,NOTEBOOK:p0};const ar=C0,kt=Object.freeze({FATAL:"FATAL",STDERR:"STDERR",ERROR:"ERROR",WARN:"WARN",STDOUT:"STDOUT",INFO:"INFO",DEBUG:"DEBUG",TRACE:"TRACE"}),b0="#2d2a2e",S0="#fcfcfa",w0="#fcd65b",y0="#b2b1b2",E0="#9edc6f",T0="#76d9e4",P0="#f95d84",O0="#aa9af4",D0="#f95d84",R0="#fcfcfa",N0="#7c7b7c",be={"error-foreground":"#f95d84",background:b0,foreground:S0,"line-height":"19px",string:w0,"string-delim":"#929192",delimiter:y0,predefined:E0,keyword:T0,storage:P0,number:O0,operator:D0,identifier:R0,"namespace-identifier":"#f95d84","identifier-js":"#fcd65b",comment:N0,"input-option-active-border":"#929192","focus-border":"rgba(72, 120, 234, 0.85)","input-background":"#555356","input-foreground":"#f0f0ee","input-border":"#929192","editor-line-number-foreground":"#929192","editor-selection-background":"#676368","editor-line-highlight-bg":"#373438","context-menu-background":"#555356","context-menu-foreground":"#f0f0ee","menu-selection-background":"#4878ea","log-date":"#929192","log-error":"#f95d84","log-info":"#76d9e4","log-stdout":"#f0f0ee","log-warn":"#fcd65b","log-debug":"#aa9af4","log-trace":"#9edc6f","editor-find-match-background":"#3c5595","editor-find-match-highlight-background":"#343e5d","editor-widget-background":"#403e41","input-option-active-background":"#4878ea","input-option-active-foreground":"#f0f0ee","editor-suggest-widget-background":"#403e41","editor-suggest-widget-border":"#5b5a5c","editor-suggest-widget-foreground":"#f0f0ee","editor-suggest-widget-selected-background":"#41475a","editor-suggest-widget-highlightForeground":"#4878ea","list-hover-background":"#555356","text-link-foreground":"#929192","text-link-active-foreground":"#f0f0ee","editor-link-active-foreground":"#f0f0ee"};var F0="python",I0={comments:{lineComment:"#",blockComment:["'''","'''"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],onEnterRules:[{beforeText:/^\s*(?:def|class|for|if|elif|else|while|try|with|finally|except|async).*?:\s*$/,action:{indentAction:1}}],folding:{offSide:!0,markers:{start:/^\s*#region\b/,end:/^\s*#endregion\b/}}},_0={keywords:["and","del","from","not","while","as","elif","global","or","with","assert","else","if","pass","yield","break","except","import","print","exec","in","raise","continue","finally","is","return","for","try",":","=","isinstance","__debug__"],storage:["class","def","async","lambda"],operators:["+","-","*","**","/","//","%","<<",">>","&","|","^","~","<",">","<=",">=","==","!=","<>","+=","-=","*=","/","//=","%=","&=","|=","^=",">>=","<<=","**="],brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"}],symbols:/[=><!~&|+\-*/^%]+/,delimiters:/[;=.@:,`]/,escapes:/\\(?:[abfnrtv\\"'\n\r]|x[0-9A-Fa-f]{2}|[0-7]{3}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8}|N\{\w+\})/,rawpre:/(?:[rR]|ur|Ur|uR|UR|br|Br|bR|BR)/,strpre:/(?:[buBU])/,tokenizer:{root:[[/@strpre?("""|''')/,{token:"string.delim",bracket:"@open",next:"@mstring.$1"}],[/@strpre?"([^"\\]|\\.)*$/,"string.invalid"],[/@strpre?'([^'\\]|\\.)*$/,"string.invalid"],[/@strpre?(["])/,{token:"string.delim",bracket:"@open",next:"@sstring.$1",nextEmbedded:"deephavenDb"}],[/@strpre?(["'])/,{token:"string.delim",bracket:"@open",next:"@string.$1"}],[/@rawpre("""|''')/,{token:"string.delim",bracket:"@open",next:"@mrawstring.$1"}],[/@rawpre"([^"\\]|\\.)*$/,"string.invalid"],[/@rawpre'([^'\\]|\\.)*$/,"string.invalid"],[/@rawpre(["'])/,{token:"string.delim",bracket:"@open",next:"@rawstring.$1"}],[/__[\w$]*/,"predefined"],[/[a-z_$][\w$]*/,{cases:{"@keywords":"keyword","@storage":"storage","@default":"identifier"}}],[/[A-Z][\w]*/,{cases:{"~[A-Z0-9_]+":"constructor.identifier","@default":"namespace.identifier"}}],{include:"@whitespace"},[/[{}()[\]]/,"@brackets"],[/@symbols/,{cases:{"@keywords":"keyword","@operators":"operator","@default":""}}],[/\d*\.\d+([eE][-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F]+[lL]?/,"number.hex"],[/0[bB][0-1]+[lL]?/,"number.binary"],[/(0[oO][0-7]+|0[0-7]+)[lL]?/,"number.octal"],[/(0|[1-9]\d*)[lL]?/,"number"],[":",{token:"keyword",bracket:"@open"}],[/@delimiters/,{cases:{"@keywords":"keyword","@default":"delimiter"}}]],comment:[[/[^/*]+/,"comment"],[/\/\*/,"comment","@push"],["\\*/","comment","@pop"],[/[/*]/,"comment"]],mstring:[{include:"@strcontent"},[/"""|'''/,{cases:{"$#==$S2":{token:"string.delim",bracket:"@close",next:"@pop"},"@default":{token:"string"}}}],[/["']/,"string"],[/./,"string.invalid"]],sstring:[{include:"@strcontent"},[/["]/,{token:"string.delim",bracket:"@close",next:"@pop",nextEmbedded:"@pop"}],[/./,"string.invalid"]],string:[{include:"@strcontent"},[/[']/,{token:"string.delim",bracket:"@close",next:"@pop"}],[/./,"string.invalid"]],strcontent:[[/[^\\"']+/,"string"],[/\\$/,"string.escape"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"]],mrawstring:[{include:"@rawstrcontent"},[/"""|'''/,{cases:{"$#==$S2":{token:"string.delim",bracket:"@close",next:"@pop"},"@default":{token:"string"}}}],[/["']/,"string"],[/./,"string.invalid"]],rawstring:[{include:"@rawstrcontent"},[/["']/,{cases:{"$#==$S2":{token:"string.delim",bracket:"@close",next:"@pop"},"@default":{token:"string"}}}],[/./,"string.invalid"]],rawstrcontent:[[/[^\\"']+/,"string"],[/\\["']/,"string"],[/\\u[0-9A-Fa-f]{4}/,"string.escape"],[/\\/,"string"]],whitespace:[[/\s+/,"white"],[/(^#.*$)/,"comment"],[/'''/,"string","@endDocString"],[/"""/,"string","@endDblDocString"]],endDocString:[[/[^']+/,"string"],[/\\'/,"string"],[/'''/,"string","@popall"],[/'/,"string"]],endDblDocString:[[/[^"]+/,"string"],[/\\"/,"string"],[/"""/,"string","@popall"],[/"/,"string"]]}},x0={id:F0,conf:I0,language:_0};const M0=x0;var A0="groovy",L0={comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],onEnterRules:[{beforeText:/^\s*(?:def|class|for|if|elif|else|while|try|with|finally|except|async).*?:\s*$/,action:{indentAction:1}}],folding:{offSide:!0,markers:{start:/^\s*#region\b/,end:/^\s*#endregion\b/}}},k0={keywords:["and","del","from","not","while","as","elif","global","or","with","assert","else","if","pass","yield","break","except","import","print","println","class","exec","in","raise","continue","finally","is","return","def","for","lambda","try",":","=","isinstance","__debug__"],operators:["+","-","*","**","/","//","%","<<",">>","&","|","^","~","<",">","<=",">=","==","!=","<>","+=","-=","*=","/","//=","%=","&=","|=","^=",">>=","<<=","**="],brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"}],symbols:/[=><!~&|+\-*/^%]+/,delimiters:/[;=.@:,`]/,escapes:/\\(?:[abfnrtv\\"'\n\r]|x[0-9A-Fa-f]{2}|[0-7]{3}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8}|N\{\w+\})/,rawpre:/(?:[rR]|ur|Ur|uR|UR|br|Br|bR|BR)/,strpre:/(?:[buBU])/,tokenizer:{root:[[/@strpre?("""|''')/,{token:"string.delim",bracket:"@open",next:"@mstring.$1"}],[/@strpre?"([^"\\]|\\.)*$/,"string.invalid"],[/@strpre?'([^'\\]|\\.)*$/,"string.invalid"],[/@strpre?(["])/,{token:"string.delim",bracket:"@open",next:"@sstring.$1",nextEmbedded:"deephavenDb"}],[/@strpre?(["'])/,{token:"string.delim",bracket:"@open",next:"@string.$1"}],[/@rawpre("""|''')/,{token:"string.delim",bracket:"@open",next:"@mrawstring.$1"}],[/@rawpre"([^"\\]|\\.)*$/,"string.invalid"],[/@rawpre'([^'\\]|\\.)*$/,"string.invalid"],[/@rawpre(["'])/,{token:"string.delim",bracket:"@open",next:"@rawstring.$1"}],[/__[\w$]*/,"predefined"],[/[a-z_$][\w$]*/,{cases:{"@keywords":"keyword","@default":"identifier"}}],[/[A-Z][\w]*/,{cases:{"~[A-Z0-9_]+":"constructor.identifier","@default":"namespace.identifier"}}],{include:"@whitespace"},[/[{}()[\]]/,"@brackets"],[/@symbols/,{cases:{"@keywords":"keyword","@operators":"operator","@default":""}}],[/\d*\.\d+([eE][-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F]+[lL]?/,"number.hex"],[/0[bB][0-1]+[lL]?/,"number.binary"],[/(0[oO][0-7]+|0[0-7]+)[lL]?/,"number.octal"],[/(0|[1-9]\d*)[lL]?/,"number"],[":",{token:"keyword",bracket:"@open"}],[/@delimiters/,{cases:{"@keywords":"keyword","@default":"delimiter"}}]],mstring:[{include:"@strcontent"},[/"""|'''/,{cases:{"$#==$S2":{token:"string.delim",bracket:"@close",next:"@pop"},"@default":{token:"string"}}}],[/["']/,"string"],[/./,"string.invalid"]],sstring:[{include:"@strcontent"},[/["]/,{token:"string.delim",bracket:"@close",next:"@pop",nextEmbedded:"@pop"}],[/./,"string.invalid"]],string:[{include:"@strcontent"},[/[']/,{token:"string.delim",bracket:"@close",next:"@pop"}],[/./,"string.invalid"]],strcontent:[[/[^\\"']+/,"string"],[/\\$/,"string.escape"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"]],mrawstring:[{include:"@rawstrcontent"},[/"""|'''/,{cases:{"$#==$S2":{token:"string.delim",bracket:"@close",next:"@pop"},"@default":{token:"string"}}}],[/["']/,"string"],[/./,"string.invalid"]],rawstring:[{include:"@rawstrcontent"},[/["']/,{cases:{"$#==$S2":{token:"string.delim",bracket:"@close",next:"@pop"},"@default":{token:"string"}}}],[/./,"string.invalid"]],rawstrcontent:[[/[^\\"']+/,"string"],[/\\["']/,"string"],[/\\u[0-9A-Fa-f]{4}/,"string.escape"],[/\\/,"string"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@doccomment"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[/*]/,"comment"]],doccomment:[[/[^/*]+/,"comment.doc"],[/\*\//,"comment.doc","@pop"],[/[/*]/,"comment.doc"]]}},j0={id:A0,conf:L0,language:k0};const H0=j0;var $0="scala",U0={wordPattern:/(unary_[@~!#%^&*()\-=+\\|:<>/?]+)|([a-zA-Z_$][\w$]*?_=)|(`[^`]+`)|([a-zA-Z_$][\w$]*)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{markers:{start:/^\s*\/\/\s*(?:(?:#?region\b)|(?:<editor-fold\b))/,end:/^\s*\/\/\s*(?:(?:#?endregion\b)|(?:<\/editor-fold>))/}}},B0={keywords:["asInstanceOf","catch","class","classOf","def","do","else","extends","finally","for","foreach","forSome","if","import","isInstanceOf","macro","match","new","object","package","return","throw","trait","try","type","until","val","var","while","with","yield","given","enum","then"],softKeywords:["as","export","extension","end","derives","on"],constants:["true","false","null","this","super"],modifiers:["abstract","final","implicit","lazy","override","private","protected","sealed"],softModifiers:["inline","opaque","open","transparent","using"],name:/(?:[a-z_$][\w$]*|`[^`]+`)/,type:/(?:[A-Z][\w$]*)/,symbols:/[=><!~?:&|+\-*/^\\%@#]+/,digits:/\d+(_+\d+)*/,hexdigits:/[[0-9a-fA-F]+(_+[0-9a-fA-F]+)*/,escapes:/\\(?:[btnfr\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,fstring_conv:/[bBhHsScCdoxXeEfgGaAt]|[Tn](?:[HIklMSLNpzZsQ]|[BbhAaCYyjmde]|[RTrDFC])/,tokenizer:{root:[[/\braw"""/,{token:"string.quote",bracket:"@open",next:"@rawstringt"}],[/\braw"/,{token:"string.quote",bracket:"@open",next:"@rawstring"}],[/\bs"""/,{token:"string.quote",bracket:"@open",next:"@sstringt"}],[/\bs"/,{token:"string.quote",bracket:"@open",next:"@sstring"}],[/\bf""""/,{token:"string.quote",bracket:"@open",next:"@fstringt"}],[/\bf"/,{token:"string.quote",bracket:"@open",next:"@fstring"}],[/"""/,{token:"string.quote",bracket:"@open",next:"@stringt"}],[/"/,{token:"string.quote",bracket:"@open",next:"@string"}],[/(@digits)[eE]([-+]?(@digits))?[fFdD]?/,"number.float","@allowMethod"],[/(@digits)\.(@digits)([eE][-+]?(@digits))?[fFdD]?/,"number.float","@allowMethod"],[/0[xX](@hexdigits)[Ll]?/,"number.hex","@allowMethod"],[/(@digits)[fFdD]/,"number.float","@allowMethod"],[/(@digits)[lL]?/,"number","@allowMethod"],[/\b_\*/,"key"],[/\b(_)\b/,"keyword","@allowMethod"],[/\bimport\b/,"keyword","@import"],[/\b(case)([ \t]+)(class)\b/,["keyword.modifier","white","keyword"]],[/\bcase\b/,"keyword","@case"],[/\bva[lr]\b/,"keyword","@vardef"],[/\b(def)([ \t]+)((?:unary_)?@symbols|@name(?:_=)|@name)/,["keyword","white","identifier"]],[/@name(?=[ \t]*:(?!:))/,"variable"],[/(\.)(@name|@symbols)/,[{token:"operator"},{token:"@rematch",next:"@allowMethod"}]],[/([{(])(\s*)(@name(?=\s*=>))/,["@brackets","white","variable"]],[/@name/,{cases:{"@keywords":"keyword","@softKeywords":"keyword","@modifiers":"keyword.modifier","@softModifiers":"keyword.modifier","@constants":{token:"constant",next:"@allowMethod"},"@default":{token:"identifier",next:"@allowMethod"}}}],[/@type/,"type","@allowMethod"],{include:"@whitespace"},[/@[a-zA-Z_$][\w$]*(?:\.[a-zA-Z_$][\w$]*)*/,"annotation"],[/[{(]/,"@brackets"],[/[})]/,"@brackets","@allowMethod"],[/\[/,"operator.square"],[/](?!\s*(?:va[rl]|def|type)\b)/,"operator.square","@allowMethod"],[/]/,"operator.square"],[/([=-]>|<-|>:|<:|:>|<%)(?=[\s\w()[\]{},."'`])/,"keyword"],[/@symbols/,"operator"],[/[;,.]/,"delimiter"],[/'[a-zA-Z$][\w$]*(?!')/,"attribute.name"],[/'[^\\']'/,"string","@allowMethod"],[/(')(@escapes)(')/,[{token:"string"},{token:"string.escape"},{token:"string",next:"@allowMethod"}]],[/'/,"string.invalid"]],import:[[/;/,"delimiter","@pop"],[/^|$/,"","@pop"],[/[ \t]+/,"white"],[/[\n\r]+/,"white","@pop"],[/\/\*/,"comment","@comment"],[/@name|@type/,"type"],[/[(){}]/,"@brackets"],[/[[\]]/,"operator.square"],[/[.,]/,"delimiter"]],allowMethod:[[/^|$/,"","@pop"],[/[ \t]+/,"white"],[/[\n\r]+/,"white","@pop"],[/\/\*/,"comment","@comment"],[/(?==>[\s\w([{])/,"keyword","@pop"],[/(@name|@symbols)(?=[ \t]*[[({"'`]|[ \t]+(?:[+-]?\.?\d|\w))/,{cases:{"@keywords":{token:"keyword",next:"@pop"},"->|<-|>:|<:|<%":{token:"keyword",next:"@pop"},"@default":{token:"@rematch",next:"@pop"}}}],["","","@pop"]],comment:[[/[^/*]+/,"comment"],[/\/\*/,"comment","@push"],[/\*\//,"comment","@pop"],[/[/*]/,"comment"]],case:[[/\b_\*/,"key"],[/\b(_|true|false|null|this|super)\b/,"keyword","@allowMethod"],[/\bif\b|=>/,"keyword","@pop"],[/`[^`]+`/,"identifier","@allowMethod"],[/@name/,"variable","@allowMethod"],[/:::?|\||@(?![a-z_$])/,"keyword"],{include:"@root"}],vardef:[[/\b_\*/,"key"],[/\b(_|true|false|null|this|super)\b/,"keyword"],[/@name/,"variable"],[/:::?|\||@(?![a-z_$])/,"keyword"],[/=|:(?!:)/,"operator","@pop"],[/$/,"white","@pop"],{include:"@root"}],string:[[/[^\\"\n\r]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,{token:"string.quote",bracket:"@close",switchTo:"@allowMethod"}]],stringt:[[/[^\\"\n\r]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"(?=""")/,"string"],[/"""/,{token:"string.quote",bracket:"@close",switchTo:"@allowMethod"}],[/"/,"string"]],fstring:[[/@escapes/,"string.escape"],[/"/,{token:"string.quote",bracket:"@close",switchTo:"@allowMethod"}],[/\$\$/,"string"],[/(\$)([a-z_]\w*)/,["operator","identifier"]],[/\$\{/,"operator","@interp"],[/%%/,"string"],[/(%)([-#+ 0,(])(\d+|\.\d+|\d+\.\d+)(@fstring_conv)/,["metatag","keyword.modifier","number","metatag"]],[/(%)(\d+|\.\d+|\d+\.\d+)(@fstring_conv)/,["metatag","number","metatag"]],[/(%)([-#+ 0,(])(@fstring_conv)/,["metatag","keyword.modifier","metatag"]],[/(%)(@fstring_conv)/,["metatag","metatag"]],[/./,"string"]],fstringt:[[/@escapes/,"string.escape"],[/"(?=""")/,"string"],[/"""/,{token:"string.quote",bracket:"@close",switchTo:"@allowMethod"}],[/\$\$/,"string"],[/(\$)([a-z_]\w*)/,["operator","identifier"]],[/\$\{/,"operator","@interp"],[/%%/,"string"],[/(%)([-#+ 0,(])(\d+|\.\d+|\d+\.\d+)(@fstring_conv)/,["metatag","keyword.modifier","number","metatag"]],[/(%)(\d+|\.\d+|\d+\.\d+)(@fstring_conv)/,["metatag","number","metatag"]],[/(%)([-#+ 0,(])(@fstring_conv)/,["metatag","keyword.modifier","metatag"]],[/(%)(@fstring_conv)/,["metatag","metatag"]],[/./,"string"]],sstring:[[/@escapes/,"string.escape"],[/"/,{token:"string.quote",bracket:"@close",switchTo:"@allowMethod"}],[/\$\$/,"string"],[/(\$)([a-z_]\w*)/,["operator","identifier"]],[/\$\{/,"operator","@interp"],[/./,"string"]],sstringt:[[/@escapes/,"string.escape"],[/"(?=""")/,"string"],[/"""/,{token:"string.quote",bracket:"@close",switchTo:"@allowMethod"}],[/\$\$/,"string"],[/(\$)([a-z_]\w*)/,["operator","identifier"]],[/\$\{/,"operator","@interp"],[/./,"string"]],interp:[[/{/,"operator","@push"],[/}/,"operator","@pop"],{include:"@root"}],rawstring:[[/[^"]/,"string"],[/"/,{token:"string.quote",bracket:"@close",switchTo:"@allowMethod"}]],rawstringt:[[/[^"]/,"string"],[/"(?=""")/,"string"],[/"""/,{token:"string.quote",bracket:"@close",switchTo:"@allowMethod"}],[/"/,"string"]],whitespace:[[/[ \t\r\n]+/,"white"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]]}},V0={id:$0,conf:U0,language:B0};const G0=V0;var W0="deephavenDb",z0={comments:{lineComment:"#",blockComment:["'''","'''"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],onEnterRules:[{beforeText:/^\s*(?:def|class|for|if|elif|else|while|try|with|finally|except|async).*?:\s*$/,action:{indentAction:1}}],folding:{offSide:!0,markers:{start:/^\s*#region\b/,end:/^\s*#endregion\b/}}},K0={tokenPostfix:".js",keywords:["boolean","break","byte","case","catch","char","class","const","continue","debugger","default","delete","do","double","else","enum","export","extends","false","final","finally","float","for","function","goto","if","implements","import","in","instanceof","int","interface","long","native","new","null","package","private","protected","public","return","short","static","super","switch","synchronized","this","throw","throws","transient","true","try","typeof","var","void","volatile","while","with"],builtins:["define","require","window","document","undefined"],operators:["=",">","<","!","~","?",":","==","<=",">=","!=","&&","||","++","--","+","-","*","/","&","|","^","%","<<",">>",">>>","+=","-=","*=","/=","&=","|=","^=","%=","<<=",">>=",">>>="],brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.bracket"},{open:"(",close:")",token:"delimiter.parenthesis"}],symbols:/[~!@#%\^&*-+=|\\:`<>.?\/]+/,escapes:/\\(?:[btnfr\\"']|[0-7][0-7]?|[0-3][0-7]{2})/,exponent:/[eE][\-+]?[0-9]+/,regexpctl:/[(){}\[\]\$\^|\-*+?\.]/,regexpesc:/\\(?:[bBdDfnrstvwWn0\\\/]|@regexpctl|c[A-Z]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4})/,tokenizer:{root:[[/([a-zA-Z_\$][\w\$]*)(\s*)(:?)/,{cases:{"$1@keywords":["keyword","white","delimiter"],$3:["key.identifier","white","delimiter"],"$1@builtins":["predefined.identifier","white","delimiter"],"@default":["identifier","white","delimiter"]}}],{include:"@whitespace"},[/\/(?=([^\\\/]|\\.)+\/)/,{token:"regexp.slash",bracket:"@open",next:"@regexp"}],[/[{}()\[\]]/,"@brackets"],[/[;,.]/,"delimiter"],[/@symbols/,{cases:{"@operators":"operator","@default":""}}],[/\d+\.\d*(@exponent)?/,"number.float"],[/\.\d+(@exponent)?/,"number.float"],[/\d+@exponent/,"number.float"],[/0[xX][\da-fA-F]+/,"number.hex"],[/0[0-7]+/,"number.octal"],[/\d+/,"number"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/"/,"string",'@string."'],[/'/,"string","@string.'"]],whitespace:[[/[ \t\r\n]+/,"white"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\/\*/,"comment.invalid"],["\\*/","comment","@pop"],[/[\/*]/,"comment"]],string:[[/[^\\"']+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":"string"}}]],regexp:[[/(\{)(\d+(?:,\d*)?)(\})/,["@brackets.regexp.escape.control","regexp.escape.control","@brackets.regexp.escape.control"]],[/(\[)(\^?)(?=(?:[^\]\\\/]|\\.)+)/,[{token:"@brackets.regexp.escape.control"},{token:"regexp.escape.control",next:"@regexrange"}]],[/(\()(\?:|\?=|\?!)/,["@brackets.regexp.escape.control","regexp.escape.control"]],[/[()]/,"@brackets.regexp.escape.control"],[/@regexpctl/,"regexp.escape.control"],[/[^\\\/]/,"regexp"],[/@regexpesc/,"regexp.escape"],[/\\\./,"regexp.invalid"],["/",{token:"regexp.slash",bracket:"@close"},"@pop"]],regexrange:[[/-/,"regexp.escape.control"],[/\^/,"regexp.invalid"],[/@regexpesc/,"regexp.escape"],[/[^\]]/,"regexp"],[/\]/,"@brackets.regexp.escape.control","@pop"]]}},Y0={id:W0,conf:z0,language:K0};const q0=Y0;var X0="log",Q0={},Z0={tokenizer:{root:[[/ FATAL[\s\S]*/,{token:"error",next:"@error"}],[/ ERROR[\s\S]*/,{token:"error",next:"@error"}],[/ STDERR[\s\S]*/,{token:"error",next:"@error"}],[/ STDOUT.*/,{token:"stdout",next:"@stdout"}],[/ INFO[\s\S]*/,{token:"info",next:"@info"}],[/ WARN.*/,{token:"warn",next:"@warn"}],[/ TRACE[\s\S]*/,{token:"trace",next:"@trace"}],[/ DEBUG[.\s\S]*/,{token:"debug",next:"@debug"}],[/^\d{2}:\d{2}:\d{2}.\d{3}/,"date"]],error:[{include:"@body"}],info:[{include:"@body"}],warn:[{include:"@body"}],stdout:[{include:"@body"}],trace:[{include:"@body"}],debug:[{include:"@body"}],body:[[/^\d{2}:\d{2}:\d{2}.\d{3}/,{token:"date",next:"@pop"}],[/[\s\S]*/,{token:"$S0"}]]}},J0={id:X0,conf:Q0,language:Z0};const eE=J0;function am(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function om(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?am(Object(t),!0).forEach(function(r){tE(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):am(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function tE(n,e,t){return e=rE(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function rE(n){var e=nE(n,"string");return typeof e=="symbol"?e:String(e)}function nE(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ra=ae.module("MonacoUtils");class Mi{static init(){var{getWorker:e}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};ra.debug("Initializing Monaco..."),e!==void 0&&Mi.registerGetWorker(e);var{registerLanguages:t,removeHashtag:r}=Mi,i=[{token:"",foreground:r(be.foreground)},{token:"string",foreground:r(be.string)},{token:"string.delim",foreground:r(be["string-delim"])},{token:"keyword",foreground:r(be.keyword)},{token:"identifier.js",foreground:r(be["identifier-js"])},{token:"delimiter",foreground:r(be.delimiter)},{token:"comment",foreground:r(be.comment)},{token:"number",foreground:r(be.number)},{token:"storage",foreground:r(be.storage)},{token:"identifier",foreground:r(be.identifier)},{token:"namespace.identifier",foreground:r(be["namespace-identifier"])},{token:"operator",foreground:r(be.operator)},{token:"predefined",foreground:r(be.predefined)},{token:"error.log",foreground:be["log-error"].substring(1)},{token:"warn.log",foreground:r(be["log-warn"])},{token:"info.log",foreground:r(be["log-info"])},{token:"stdout.log",foreground:r(be["log-stdout"])},{token:"trace.log",foreground:r(be["log-trace"])},{token:"debug.log",foreground:r(be["log-debug"])},{token:"date.log",foreground:r(be["log-date"])}],a={errorForeground:be["error-foreground"],"inputOption.activeBorder":be["input-option-active-border"],"editor.background":be.background,"editor.foreground":be.foreground,"editor.lineHighlightBackground":be["editor-line-highlight-bg"],"editorLineNumber.foreground":be["editor-line-number-foreground"],"editor.selectionBackground":be["editor-selection-background"],"editor.findMatchBackground":be["editor-find-match-background"],"editor.findMatchHighlightBackground":be["editor-find-match-highlight-background"],"editorSuggestWidget.background":be["editor-suggest-widget-background"],"editorSuggestWidget.border":be["editor-suggest-widget-border"],"editorSuggestWidget.foreground":be["editor-suggest-widget-foreground"],"editorSuggestWidget.selectedBackground":be["editor-suggest-widget-selected-background"],"editorSuggestWidget.highlightForeground":be["editor-suggest-widget-highlightForeground"],"list.hoverBackground":be["list-hover-background"],"dropdown.background":be["context-menu-background"],"dropdown.foreground":be["context-menu-foreground"],"menu.selectionBackground":be["menu-selection-background"],"list.focusBackground":be["menu-selection-background"],"editorWidget.background":be["editor-widget-background"],"inputOption.activeBackground":be["input-option-active-background"],"inputOption.activeForeground":be["input-option-active-foreground"],focusBorder:be["focus-border"],"input.background":be["input-background"],"input.foreground":be["input-foreground"],"input.border":be["input-border"],"textLink.foreground":be["text-link-foreground"],"textLink.activeForeground":be["text-link-active-foreground"],"editorLink.activeForeground":be["editor-link-active-foreground"]};pn.defineTheme("dh-dark",{base:"vs-dark",inherit:!0,rules:i,colors:a}),ra.debug2("monaco theme: ",be),pn.setTheme("dh-dark"),t([q0,M0,H0,eE,G0]),Mi.removeConflictingKeybindings(),ra.debug("Monaco initialized.")}static registerGetWorker(e){window.MonacoEnvironment=om(om({},window.MonacoEnvironment),{},{getWorker:e})}static removeHashtag(e){return e.substring(1)}static registerLanguages(e){var t=e.map(r=>{var{id:i}=r;return i});xn.getLanguages().filter(r=>{var{id:i}=r;return t.includes(i)}).forEach(r=>{var i=r;ra.debug2("Overriding default language loader:",i.id)}),e.forEach(r=>{Mi.registerLanguage(r)})}static registerLanguage(e){ra.debug2("Registering language: ",e.id),xn.register(e),xn.onLanguage(e.id,()=>{xn.setLanguageConfiguration(e.id,e.conf),xn.setMonarchTokensProvider(e.id,e.language)})}static setEOL(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:pn.EndOfLineSequence.LF;(t=e.getModel())===null||t===void 0||t.setEOL(r)}static openDocument(e,t){var r=e.getModel();A(r);var i={textDocument:{uri:"".concat(r.uri),languageId:r.getLanguageId(),version:r.getVersionId(),text:r.getValue()}};ra.debug2("didOpenDocumentParams: ",i),t.openDocument(i);var a=e.onDidChangeModelContent(o=>{for(var{changes:s,versionId:l}=o,d=[],h=0;h<s.length;h+=1){var c=s[h],{range:m,rangeLength:v,text:f}=c,g={range:{start:{line:m.startLineNumber-1,character:m.startColumn-1},end:{line:m.endLineNumber-1,character:m.endColumn-1}},rangeLength:v,text:f};d.push(g)}if(d.length>0){var p={textDocument:{version:l,uri:"".concat(r.uri)},contentChanges:d};ra.debug2("didChangeDocumentParams",p),t.changeDocument(p)}});return a}static closeDocument(e,t){var r=e.getModel();A(r);var i={textDocument:{uri:"".concat(r.uri)}};t.closeDocument(i)}static registerPasteHandler(e){e.onDidPaste(t=>{var r=/“|”/g,i=/\u200b/g,a=/\u00A0/g,o=e.getModel();A(o);var s=o.getValueInRange(t.range);(r.test(s)||i.test(s)||a.test(s))&&o.applyEdits([{range:t.range,text:s.replace(r,'"').replace(i,"").replace(a," ")}])})}static isMacPlatform(){var{platform:e}=window.navigator;return e.startsWith("Mac")}static removeConflictingKeybindings(){pn.addKeybindingRule({keybinding:Nr.CtrlCmd|ni.KeyD,command:null}),Mi.isMacPlatform()||pn.addKeybindingRule({keybinding:Nr.CtrlCmd|ni.KeyH,command:null})}static disableKeyBindings(e,t){e.addAction({id:"disable-keybindings-".concat(tt()),label:"",keybindings:t,run:()=>{}})}static getMonacoKeyCodeFromShortcut(e){var{keyState:t}=e,{keyValue:r}=t;if(r===null)return 0;var i=Mi.isMacPlatform();return i?(t.metaKey?Nr.CtrlCmd:0)|(t.shiftKey?Nr.Shift:0)|(t.altKey?Nr.Alt:0)|(t.ctrlKey?Nr.WinCtrl:0)|zc.fromString(r):(t.ctrlKey?Nr.CtrlCmd:0)|(t.shiftKey?Nr.Shift:0)|(t.altKey?Nr.Alt:0)|(t.metaKey?Nr.WinCtrl:0)|zc.fromString(r)}static provideLinks(e){for(var t=[],r=function(o){var s=e.getLineContent(o),l=qg(s),d=l.filter(h=>h.type==="url"?/^https?:\/\//.test(h.value):!0);d.forEach(h=>{t.push({url:h.href,range:new zS(o,h.start+1,o,h.end+1)})})},i=1;i<=e.getLineCount();i+=1)r(i);return{links:t}}}const Cr=Mi;function ou(n,e,t){return e=iE(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function iE(n){var e=aE(n,"string");return typeof e=="symbol"?e:String(e)}function aE(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Gn=ae.module("MonacoCompletionProvider");class ua extends y.PureComponent{static lspToMonacoKind(e){var t=xn.CompletionItemKind;switch(e){case 1:return t.Text;case 2:return t.Method;case 3:return t.Function;case 4:return t.Constructor;case 5:return t.Field;case 6:return t.Variable;case 7:return t.Class;case 8:return t.Interface;case 9:return t.Module;case 10:return t.Property;case 11:return t.Unit;case 12:return t.Value;case 13:return t.Enum;case 14:return t.Keyword;case 15:return t.Snippet;case 16:return t.Color;case 17:return t.File;case 18:return t.Reference;case 19:return t.Folder;case 20:return t.EnumMember;case 21:return t.Constant;case 22:return t.Struct;case 23:return t.Event;case 24:return t.Operator;case 25:return t.TypeParameter;default:return t.Variable}}static lspToMonacoRange(e){var{start:t,end:r}=e;return{startLineNumber:t.line+1,startColumn:t.character+1,endLineNumber:r.line+1,endColumn:r.character+1}}static monacoToLspPosition(e){return{line:e.lineNumber-1,character:e.column-1}}constructor(e){super(e),ou(this,"registeredCompletionProvider",void 0),ou(this,"registeredSignatureProvider",void 0),ou(this,"registeredHoverProvider",void 0),this.handleCompletionRequest=this.handleCompletionRequest.bind(this),this.handleSignatureRequest=this.handleSignatureRequest.bind(this),this.handleHoverRequest=this.handleHoverRequest.bind(this)}componentDidMount(){var{language:e,session:t}=this.props;this.registeredCompletionProvider=xn.registerCompletionItemProvider(e,{provideCompletionItems:this.handleCompletionRequest,triggerCharacters:[".",'"',"'"]}),t.getSignatureHelp&&(this.registeredSignatureProvider=xn.registerSignatureHelpProvider(e,{provideSignatureHelp:this.handleSignatureRequest,signatureHelpTriggerCharacters:["(",","]})),t.getHover&&(this.registeredHoverProvider=xn.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:ua.monacoToLspPosition(t),context:r},s=a.getCompletionItems(o);Gn.debug("Requested completion items",o);var l=s.then(d=>{Gn.debug("Completion items received: ",o,d);var h=d.map(c=>{var{label:m,kind:v,detail:f,documentation:g,sortText:p,filterText:C,textEdit:b,insertTextFormat:S}=c;return{label:m,kind:ua.lspToMonacoKind(v),detail:f,documentation:g?.kind==="markdown"?g:g?.value,sortText:p,filterText:C,insertText:b.text,insertTextRules:S===2?4:S,range:ua.lspToMonacoRange(b.range)}});return{incomplete:!0,suggestions:h}}).catch(d=>(Gn.error("There was an error retrieving completion items",d),{suggestions:[]}));return l}handleSignatureRequest(e,t,r,i){var a={value:{signatures:[],activeSignature:0,activeParameter:0},dispose:()=>{}},{model:o,session:s}=this.props;if(e!==o||!s.getSignatureHelp)return null;var l={textDocument:{uri:"".concat(e.uri),version:e.getVersionId()},position:ua.monacoToLspPosition(t),context:i},d=s.getSignatureHelp(l);Gn.debug("Requested signature help",l);var h=d.then(c=>{Gn.debug("Signatures received: ",l,d);var m=c.map(f=>{var{label:g,documentation:p,parameters:C}=f;return{documentation:p?.kind==="markdown"?p:p?.value,label:g,parameters:C??[]}});if(m.length===0)return a;var v=0;return{value:{signatures:m,activeSignature:v,activeParameter:c[v].activeParameter},dispose:()=>{}}}).catch(c=>(Gn.error("There was an error retrieving completion items",c),a));return h}handleHoverRequest(e,t){var{model:r,session:i}=this.props;if(e!==r||!i.getHover)return null;var a={textDocument:{uri:"".concat(e.uri),version:e.getVersionId()},position:ua.monacoToLspPosition(t)},o=i.getHover(a);Gn.debug("Requested hover",a);var s=o.then(l=>{Gn.debug("Hover received: ",a,l);var{contents:d}=l;return{contents:d?[d]:[]}}).catch(l=>(Gn.error("There was an error retrieving hover",l),{contents:[]}));return s}render(){return null}}const Ep=ua;function sm(n,e,t,r,i,a,o){try{var s=n[a](o),l=s.value}catch(d){t(d);return}s.done?e(l):Promise.resolve(l).then(r,i)}function oE(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){sm(a,r,i,o,s,"next",l)}function s(l){sm(a,r,i,o,s,"throw",l)}o(void 0)})}}function Kr(n,e,t){return e=sE(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function sE(n){var e=lE(n,"string");return typeof e=="symbol"?e:String(e)}function lE(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var su=ae.module("ConsoleInput"),Ll=parseInt(be["line-height"],10),Tp=6,Pp=6,dE=Ll+Tp+Pp,lu=100;class ws extends y.PureComponent{constructor(e){super(e),Kr(this,"cancelListener",void 0),Kr(this,"commandContainer",void 0),Kr(this,"commandEditor",void 0),Kr(this,"commandHistoryIndex",void 0),Kr(this,"commandSuggestionContainer",void 0),Kr(this,"loadingPromise",void 0),Kr(this,"timestamp",void 0),Kr(this,"bufferIndex",void 0),Kr(this,"history",void 0),Kr(this,"modifiedCommands",void 0),this.handleWindowResize=this.handleWindowResize.bind(this),this.commandContainer=he.createRef(),this.commandHistoryIndex=null,this.timestamp=Date.now(),this.bufferIndex=0,this.history=[],this.modifiedCommands=new Map,this.state={commandEditorHeight:Ll,isFocused:!1,model:null}}componentDidMount(){this.initCommandEditor(),window.addEventListener("resize",this.handleWindowResize),this.loadMoreHistory()}componentDidUpdate(){this.layoutEditor()}componentWillUnmount(){window.removeEventListener("resize",this.handleWindowResize),this.loadingPromise!=null&&this.loadingPromise.cancel(),this.destroyCommandEditor()}setConsoleText(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;if(e){if(su.debug("Command received: ",e),!r){var i;this.commandHistoryIndex=null,(i=this.commandEditor)===null||i===void 0||i.setValue(e)}t&&this.focusEnd(),this.updateDimensions(),r&&this.processCommand(e)}}initCommandEditor(){var{language:e,session:t}=this.props,r={copyWithSyntaxHighlighting:!1,cursorStyle:"block",fixedOverflowWidgets:!0,folding:!1,fontFamily:"Fira Mono",glyphMargin:!1,language:e,lineHeight:Ll,lineDecorationsWidth:3,lineNumbers:"off",minimap:{enabled:!1},renderLineHighlight:"none",scrollBeyondLastLine:!1,scrollbar:{arrowSize:0,horizontal:"hidden",horizontalScrollbarSize:0},padding:{top:Tp,bottom:Pp},tabCompletion:"on",value:"",wordWrap:"on"},i=this.commandContainer.current;A(i),this.commandEditor=pn.create(i,r),Cr.setEOL(this.commandEditor),Cr.openDocument(this.commandEditor,t),this.commandEditor.onDidChangeModelContent(()=>{var a,o=(a=this.commandEditor)===null||a===void 0?void 0:a.getValue();this.modifiedCommands.set(this.commandHistoryIndex,o??null),this.updateDimensions()}),this.commandEditor.onDidFocusEditorText(()=>{this.setState({isFocused:!0})}),this.commandEditor.onDidBlurEditorText(()=>{this.setState({isFocused:!1})}),this.commandEditor.onKeyDown(a=>{var{commandEditor:o,commandHistoryIndex:s}=this,l=o?.getPosition();A(l);var{lineNumber:d}=l,h=o?.getModel();if(a.code==="ArrowUp"&&!this.isSuggestionMenuPopulated()&&d===1){s!=null?this.loadCommand(s+1):this.loadCommand(0),this.focusStart(),a.stopPropagation(),a.preventDefault();return}if(a.code==="ArrowDown"&&!this.isSuggestionMenuPopulated()&&d===h?.getLineCount()){s!=null&&s>0?this.loadCommand(s-1):this.loadCommand(null),this.focusEnd(),a.stopPropagation(),a.preventDefault();return}if(!a.altKey&&!a.shiftKey&&!a.metaKey){if(a.keyCode===ni.Enter){if(!this.isSuggestionMenuPopulated()){var c;a.stopPropagation(),a.preventDefault();var m=(c=this.commandEditor)===null||c===void 0?void 0:c.getValue().trim();if(m!==void 0){var v;this.processCommand(m),(v=this.commandEditor)===null||v===void 0||v.setValue("")}}}else if(a.keyCode===ni.Tab)if(this.isSuggestionMenuActive())this.isSuggestionMenuPopulated()||(a.stopPropagation(),a.preventDefault());else{var f;a.stopPropagation(),a.preventDefault(),(f=this.commandEditor)===null||f===void 0||f.trigger("Tab key trigger suggestions","editor.action.triggerSuggest",{})}}}),Cr.disableKeyBindings(this.commandEditor,[Nr.CtrlCmd|ni.KeyF]),Cr.registerPasteHandler(this.commandEditor),this.commandEditor.focus(),this.updateDimensions(),this.setState({model:this.commandEditor.getModel()})}destroyCommandEditor(){var{session:e}=this.props;this.commandEditor&&(Cr.closeDocument(this.commandEditor,e),this.commandEditor.dispose(),this.commandEditor=void 0)}handleWindowResize(){this.updateDimensions()}isSuggestionMenuActive(){var e;if(!this.commandSuggestionContainer){var t,r;this.commandSuggestionContainer=(t=this.commandEditor)===null||t===void 0||(r=t.getDomNode())===null||r===void 0?void 0:r.querySelector(".suggest-widget")}return(e=this.commandSuggestionContainer&&this.commandSuggestionContainer.classList.contains("visible"))!==null&&e!==void 0?e:!1}isSuggestionMenuPopulated(){var e,t,r;return this.isSuggestionMenuActive()&&((e=(t=this.commandSuggestionContainer)===null||t===void 0||(r=t.querySelector(".monaco-list-rows"))===null||r===void 0?void 0:r.childElementCount)!==null&&e!==void 0?e:0)>0}focus(){var e;(e=this.commandEditor)===null||e===void 0||e.focus()}focusStart(){var e,t,r,i,a,o=(e=this.commandEditor)===null||e===void 0?void 0:e.getModel();A(o);var s=o.getLineLength(1)+1,l=(t=this.commandEditor)===null||t===void 0?void 0:t.getTopForPosition(1,s);A(l),(r=this.commandEditor)===null||r===void 0||r.setPosition({lineNumber:1,column:s}),(i=this.commandEditor)===null||i===void 0||i.setScrollTop(l),(a=this.commandEditor)===null||a===void 0||a.focus()}focusEnd(){var e,t,r,i,a,o=(e=this.commandEditor)===null||e===void 0?void 0:e.getModel();A(o);var s=o.getLineCount(),l=o.getLineLength(s)+1,d=(t=this.commandEditor)===null||t===void 0?void 0:t.getTopForPosition(s,l);A(d),(r=this.commandEditor)===null||r===void 0||r.setPosition({lineNumber:s,column:l}),(i=this.commandEditor)===null||i===void 0||i.setScrollTop(d),(a=this.commandEditor)===null||a===void 0||a.focus()}clear(){var e,t,r;(e=this.commandEditor)===null||e===void 0||e.focus(),(t=this.commandEditor)===null||t===void 0||(r=t.getModel())===null||r===void 0||r.setValue(""),this.commandHistoryIndex=null}layoutEditor(){this.commandEditor&&this.commandEditor.layout()}loadCommand(e){var t,r;if(!(e!==null&&e>=this.history.length)){var i=this.modifiedCommands.get(e),a=e===null?"":this.history[this.history.length-e-1];this.commandHistoryIndex=e,(t=this.commandEditor)===null||t===void 0||(r=t.getModel())===null||r===void 0||r.setValue(i??a),e!==null&&e>this.history.length-lu&&this.loadMoreHistory()}}loadMoreHistory(){var e=this;return oE(function*(){try{if(e.loadingPromise!=null||e.bufferIndex==null)return;var{commandHistoryStorage:t,language:r,scope:i}=e.props;e.loadingPromise=Te.makeCancelable(t.getTable(r,i??"",e.timestamp),s=>s.close());var a=yield e.loadingPromise;a.setReversed(!0),a.setViewport({top:e.bufferIndex,bottom:e.bufferIndex+lu-1}),e.loadingPromise=Te.makeCancelable(a.getViewportData(),()=>a.close());var o=yield e.loadingPromise;e.bufferIndex+=lu,e.bufferIndex>=a.size&&(e.bufferIndex=null),e.history=[...o.items.filter((s,l,d)=>{var{name:h}=s;return l===0||h!==d[l-1].name}).map(s=>{var{name:l}=s;return l}).reverse(),...e.history],e.loadingPromise=void 0,a.close()}catch(s){if(e.loadingPromise=void 0,Te.isCanceled(s)){su.debug2("Promise canceled, not loading history");return}su.error("Error fetching history",s)}})()}processCommand(e){this.commandHistoryIndex=null,this.modifiedCommands.clear(),A(e),e!==""&&(this.history.length===0||e!==this.history[this.history.length-1])&&this.history.push(e),this.updateDimensions();var{onSubmit:t}=this.props;t(e)}updateDimensions(){if(this.commandEditor){var{maxHeight:e}=this.props;A(e);var t=this.commandEditor.getContentHeight(),r=Math.max(Math.min(t,e),dE),i=t>r,a={overviewRulerLanes:i?void 0:0};this.setState({commandEditorHeight:r},()=>{var o,s;(o=this.commandEditor)===null||o===void 0||o.updateOptions(a),(s=this.commandEditor)===null||s===void 0||s.layout()})}}render(){var{disabled:e,language:t,session:r}=this.props,{commandEditorHeight:i,isFocused:a,model:o}=this.state;return u.jsx("div",{className:J("console-input-wrapper",{disabled:e}),children:u.jsxs("div",{className:J("console-input-inner-wrapper",{focus:a}),children:[u.jsx("div",{className:ws.INPUT_CLASS_NAME,ref:this.commandContainer,style:{height:i}}),o&&u.jsx(Ep,{model:o,language:t,session:r})]})})}}Kr(ws,"defaultProps",{maxHeight:Ll*10,scope:null,disabled:!1});Kr(ws,"INPUT_CLASS_NAME","console-input");const lm=ws;function ji(n,e,t){return e=uE(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function uE(n){var e=hE(n,"string");return typeof e=="symbol"?e:String(e)}function hE(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var dm="pasted values",cE=[/^audio.*/,/^font.*/,/^image.*/,/^video.*/],du=[".csv",".tsv",".tab",".psv",".dsv",".txt"],um=[".zip"];class Mn extends y.Component{static isValidDropItem(e){return e!=null&&e.kind==="file"&&!cE.find(t=>t.test(e.type))}static isValidExtension(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;return du.some(r=>e.endsWith(r))||t&&um.some(r=>e.endsWith(r))}static handleDragOver(e){e.preventDefault(),e.stopPropagation()}static getIcon(e){return e===dm?Kc:e.endsWith(".csv")?qS:e.endsWith(".zip")?XS:QS}constructor(e){super(e),ji(this,"fileElem",void 0),ji(this,"divElem",void 0),ji(this,"getValidExtensions",Ce(t=>t?[...du,...um]:[...du])),ji(this,"getAcceptString",Ce(t=>this.getValidExtensions(t).join(", "))),ji(this,"getFileTypeErrorString",Ce(t=>Qr.join(this.getValidExtensions(t),"or"))),this.handleSelectFile=this.handleSelectFile.bind(this),this.handleFiles=this.handleFiles.bind(this),this.handleDrop=this.handleDrop.bind(this),this.unstageFile=this.unstageFile.bind(this),this.handleMenuPaste=this.handleMenuPaste.bind(this),this.handlePasteEvent=this.handlePasteEvent.bind(this),this.fileElem=he.createRef(),this.divElem=he.createRef(),this.state={selectedFileName:""}}componentDidMount(){var e,t;(e=this.divElem.current)===null||e===void 0||e.addEventListener("paste",this.handlePasteEvent),(t=this.divElem.current)===null||t===void 0||t.focus()}componentWillUnmount(){var e;(e=this.divElem.current)===null||e===void 0||e.removeEventListener("paste",this.handlePasteEvent)}handleSelectFile(){if(this.fileElem.current){var e;this.fileElem.current.value="",(e=this.fileElem.current)===null||e===void 0||e.click()}}handleFiles(e){e.stopPropagation(),e.preventDefault();var{files:t}=e.target;t!=null&&this.handleFile(t[0])}handleDrop(e){var{allowZip:t,clearDragError:r,dragError:i}=this.props;if(e.preventDefault(),e.stopPropagation(),i!=null){r();return}if(!(e.dataTransfer==null||e.dataTransfer.items==null||e.dataTransfer.items.length===0)){var a=e.dataTransfer.items[0].getAsFile();A(a),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:dm,dropError:void 0})}).catch(i=>t(i))}handlePasteEvent(e){e.stopPropagation(),e.preventDefault(),this.handleMenuPaste()}makeContextMenuItems(){var{uploadInProgress:e}=this.props;return[{title:"Paste",icon:Kc,action:this.handleMenuPaste,shortcut:ui.PASTE,disabled:e}]}render(){var{allowZip:e,dragError:t,uploadInProgress:r}=this.props,{selectedFileName:i,dropError:a}=this.state,o=t??a,s=this.makeContextMenuItems();return u.jsxs("div",{ref:this.divElem,className:"csv-overlay fill-parent-absolute",onDragOver:Mn.handleDragOver,onDrop:this.handleDrop,tabIndex:-1,children:[u.jsx(se,{actions:s}),u.jsx("input",{ref:this.fileElem,type:"file",id:"fileElem",accept:this.getAcceptString(e),style:{display:"none"},onChange:this.handleFiles,"data-testid":"fileElem"}),!i&&(o===void 0||o==="")&&u.jsxs("div",{className:"message-content",children:[u.jsx("div",{className:"message-icon",children:u.jsx(re,{icon:ZS})}),u.jsx("label",{children:"Drop file (or paste values) here to import"}),u.jsx("div",{className:"message-small",children:u.jsx("label",{children:"or"})}),u.jsx(G,{kind:"primary",onClick:this.handleSelectFile,children:"Select File..."})]}),i&&(o===void 0||o==="")&&u.jsxs("div",{className:"selected-content",children:[u.jsx("div",{className:"selected-icon",children:u.jsx(re,{icon:Mn.getIcon(i)})}),u.jsxs("div",{className:"selected-text",children:[u.jsx("label",{children:"Selected File"}),u.jsxs("label",{className:"selected-name",children:[i,!r&&u.jsx(G,{kind:"ghost",className:"ml-2",onClick:this.unstageFile,icon:jr,tooltip:"Remove"})]})]})]}),!!o&&u.jsxs("div",{className:"message-content",children:[u.jsx("div",{className:"message-icon",children:u.jsx(re,{icon:Wi})}),u.jsx("label",{children:o}),o===Mn.FILE_TYPE_ERROR&&u.jsx("div",{className:"message-small",children:u.jsx("label",{children:this.getFileTypeErrorString(e)})})]})]})}}ji(Mn,"defaultProps",{allowZip:!1,dragError:null});ji(Mn,"MULTIPLE_FILE_ERROR","Please select only one file");ji(Mn,"FILE_TYPE_ERROR","Filetype not supported.");const Wa=Mn;function Oa(n,e,t){return e=mE(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function mE(n){var e=vE(n,"string");return typeof e=="symbol"?e:String(e)}function vE(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Xi{}Oa(Xi,"INTEGER","int");Oa(Xi,"LONG","long");Oa(Xi,"DOUBLE","double");Oa(Xi,"BOOLEAN","bool");Oa(Xi,"STRING","string");Oa(Xi,"DATE_TIME","datetime");Oa(Xi,"LOCAL_TIME","localtime");const Ve=Xi;function Op(n,e){var t=n.internalStream("string");return t.readable=!0,t.read=()=>!1,t.removeListener=()=>!1,t.on("data",(r,i)=>e(i)),t}function hm(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function cm(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?hm(Object(t),!0).forEach(function(r){Jt(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):hm(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Jt(n,e,t){return e=fE(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function fE(n){var e=gE(n,"string");return typeof e=="symbol"?e:String(e)}function gE(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var mm="unknown",pE=2147483647,CE=-2147483648,vm=/^[0-9]{4}-[0-1][0-9]-[0-3][0-9][ T][0-2][0-9]:[0-5][0-9]:[0-6][0-9](?:\.[0-9]{1,9})?(?: [a-zA-Z]+)?$/,fm=/^([0-9]+T)?([0-9]+):([0-9]+)(:[0-9]+)?(?:\.[0-9]{1,9})?$/;class Kt{static determineType(e,t,r){if(!e||e===r)return t;switch(t){case Ve.STRING:return Ve.STRING;case Ve.INTEGER:return Kt.checkInteger(e);case Ve.LONG:return Kt.checkLong(e);case Ve.DOUBLE:return Kt.checkDouble(e);case Ve.BOOLEAN:return Kt.checkBoolean(e);case Ve.DATE_TIME:return Kt.checkDateTime(e);case Ve.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)?Ve.STRING:Kt.getNumberType(t)}static checkLong(e){var t=e.replace(/,/g,"");return Kt.isNotParsableNumber(t)?Ve.STRING:t.includes(".")?Ve.DOUBLE:Ve.LONG}static checkDouble(e){var t=e.replace(/,/g,"");return Kt.isNotParsableNumber(t)?Ve.STRING:Ve.DOUBLE}static checkBoolean(e){var t=e.toLowerCase();return t==="true"||t==="false"?Ve.BOOLEAN:Ve.STRING}static checkDateTime(e){return vm.test(e)?Ve.DATE_TIME:Ve.STRING}static checkLocalTime(e){return fm.test(e)?Ve.LOCAL_TIME:Ve.STRING}static getTypeFromUnknown(e){var t=e.replace(/,/g,"");if(Kt.isNotParsableNumber(t)){var r=e.toLowerCase();return r==="true"||r==="false"?Ve.BOOLEAN:vm.test(e)&&e.includes(":")?Ve.DATE_TIME:fm.test(e)?Ve.LOCAL_TIME:Ve.STRING}return Kt.getNumberType(t)}static getNumberType(e){if(e.includes("."))return Ve.DOUBLE;var t=e.startsWith("-")?11:10;if(e.length>t)return Ve.LONG;var r=parseInt(e,10);return r>pE||r<CE?Ve.LONG:Ve.INTEGER}constructor(e,t,r,i,a,o,s,l,d,h){Jt(this,"onFileCompleted",void 0),Jt(this,"file",void 0),Jt(this,"readHeaders",void 0),Jt(this,"nullString",void 0),Jt(this,"onProgress",void 0),Jt(this,"onError",void 0),Jt(this,"types",void 0),Jt(this,"chunks",void 0),Jt(this,"totalChunks",void 0),Jt(this,"rowCount",void 0),Jt(this,"isZip",void 0),Jt(this,"shouldTrim",void 0),Jt(this,"zipProgress",void 0),Jt(this,"config",void 0),this.onFileCompleted=e,this.file=t,this.readHeaders=r,this.nullString=a,this.onProgress=o,this.onError=s,this.chunks=0,this.totalChunks=l,this.rowCount=0,this.isZip=d,this.shouldTrim=h,this.zipProgress=0,this.handleChunk=this.handleChunk.bind(this),this.handleComplete=this.handleComplete.bind(this),this.handleError=this.handleError.bind(this),this.handleNodeUpdate=this.handleNodeUpdate.bind(this),this.config=cm(cm({},i),{},{error:this.handleError,chunk:this.handleChunk,complete:this.handleComplete})}parse(){if(this.file instanceof File||this.file instanceof Blob)Qo.parse(this.file,this.config);else{var e=Op(this.file,this.handleNodeUpdate);Qo.parse(e,this.config),e.resume()}}handleChunk(e,t){var{data:r}=e;if(!this.types){if(r==null||r.length===0){t.abort(),this.onError("Error parsing CSV: no data in file.");return}this.types=new Array(r[0].length).fill(mm),this.readHeaders&&(r=r.slice(1))}this.rowCount+=r.length,A(this.types);var i=[...this.types];r.forEach(s=>{if(s.length>=i.length){for(var l=0;l<i.length;l+=1)i[l]=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;A(t),(e==null||!e.meta.aborted)&&r(t.map(i=>i===mm||i===Ve.LOCAL_TIME?Ve.STRING:i),this.rowCount)}handleError(e){var{onError:t}=this;t(e)}handleNodeUpdate(e){this.zipProgress=e.percent}}const bE=Kt;function ot(n,e,t){return e=SE(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function SE(n){var e=wE(n,"string");return typeof e=="symbol"?e:String(e)}function wE(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Us=ae.module("CsvParser"),yE=650;class ao{static generateHeaderRecursive(e){var t="",r=e;return e>=26&&(t=t.concat(ao.generateHeaderRecursive(Math.floor(e/26)-1)),r=e%26),t.concat(String.fromCharCode(65+r))}constructor(e){var{onFileCompleted:t,session:r,file:i,type:a,readHeaders:o=!0,onProgress:s,onError:l,timeZone:d,isZip:h}=e;ot(this,"onFileCompleted",void 0),ot(this,"session",void 0),ot(this,"file",void 0),ot(this,"isZip",void 0),ot(this,"type",void 0),ot(this,"readHeaders",void 0),ot(this,"timeZone",void 0),ot(this,"onProgress",void 0),ot(this,"onError",void 0),ot(this,"tables",void 0),ot(this,"headers",void 0),ot(this,"types",void 0),ot(this,"rowCount",void 0),ot(this,"rowsProcessed",void 0),ot(this,"chunks",void 0),ot(this,"totalChunks",void 0),ot(this,"isComplete",void 0),ot(this,"zipProgress",void 0),ot(this,"consolidatedChunks",void 0),ot(this,"numConsolidated",void 0),ot(this,"isCancelled",void 0),ot(this,"config",void 0),this.onFileCompleted=t,this.session=r,this.file=i,this.isZip=h,this.type=a,this.readHeaders=o,this.timeZone=d,this.onProgress=s,this.onError=l,this.tables=[],this.rowCount=0,this.rowsProcessed=0,this.chunks=0,this.totalChunks=h?0:Math.ceil(i.size/Qo.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,`
|
|
@@ -32,7 +32,7 @@ Row = `).concat(s))}),this.chunks+=1;var a=0;this.totalChunks>0?a=Math.round(thi
|
|
|
32
32
|
`).concat(yA(n))}function TA(n){var{rules:e=[],onChange:t=Tu,onCreate:r=Tu,onSelect:i=Tu}=n,a=y.useCallback((d,h,c)=>{d.stopPropagation(),Rf.debug("Rule clicked",h,c),i(c)},[i]),o=y.useCallback((d,h,c)=>{d.stopPropagation(),Rf.debug("Delete button clicked",h,c);var m=[...e];m.splice(c,1),t(m)},[t,e]),s=y.useCallback(d=>{d.stopPropagation()},[]),l=y.useCallback(d=>{if(Sn.stopDragging(),d.destination!=null){var h=d.source.index,c=d.destination.index,m=[...e],v=e[h];m.splice(h,1),m.splice(c,0,v),t(m)}},[t,e]);return u.jsxs("div",{className:"conditional-formatting-rules",children:[u.jsx(ed,{onDragStart:Sn.startDragging,onDragEnd:l,children:u.jsx(Eh,{droppableId:"droppable-custom-columns",children:(d,h)=>u.jsxs("div",Va(Va({ref:d.innerRef},d.droppableProps),{},{className:J("droppable-container",{dragging:h.draggingFromThisWith}),children:[e.length===0&&u.jsx("div",{className:"text-muted pl-2",children:"No formats defined"}),e.map((c,m)=>u.jsx(Qg,{draggableId:"".concat(m,"-").concat(c.type),index:m,disableInteractiveElementBlocking:!0,children:(v,f)=>u.jsx("div",Va(Va({role:"menuitem",tabIndex:0,onClick:g=>a(g,c,m),className:J("draggable-container",{dragging:f.isDragging}),ref:v.innerRef},v.draggableProps),{},{children:u.jsx("div",{className:"conditional-formatting-list-item",children:u.jsxs("div",{className:"formatting-item",children:[u.jsx("div",{className:"rule-icon",children:u.jsx("span",{className:"rule-icon-bg",style:{backgroundColor:Wl(c.config.style),color:zl(c.config.style)},children:c.type===wr.ROWS?"row":"col"})}),u.jsx("div",{className:"rule-title",children:EA(c.config)}),u.jsx(G,{kind:"ghost",className:"ml-1 px-2",onClick:g=>o(g,c,m),icon:jr,tooltip:"Delete rule"}),u.jsxs("button",Va(Va({type:"button",className:"btn btn-link btn-link-icon px-2 btn-drag-handle",onClick:s},v.dragHandleProps),{},{children:[u.jsx(pt,{children:"Drag to re-order"}),u.jsx(re,{icon:rd})]}))]})})}))},"".concat(m,"-").concat(c.type))),d.placeholder]}))})}),u.jsx("hr",{}),u.jsx(G,{kind:"ghost",onClick:r,icon:qi,children:"Add New Rule"})]})}var ia=ae.module("ConditionEditor"),PA=()=>{},OA=[ve.IS_EQUAL,ve.IS_NOT_EQUAL,ve.IS_BETWEEN,ve.GREATER_THAN,ve.GREATER_THAN_OR_EQUAL,ve.LESS_THAN,ve.LESS_THAN_OR_EQUAL,ve.IS_NULL,ve.IS_NOT_NULL].map(n=>u.jsx("option",{value:n,children:eF(n)},n)),DA=[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=>u.jsx("option",{value:n,children:tF(n)},n)),RA=[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=>u.jsx("option",{value:n,children:rF(n)},n)),NA=[Rt.IS_TRUE,Rt.IS_FALSE,Rt.IS_NULL,Rt.IS_NOT_NULL].map(n=>u.jsx("option",{value:n,children:nF(n)},n)),FA=[Ct.IS_EQUAL,Ct.IS_NOT_EQUAL,Ct.IS_NULL,Ct.IS_NOT_NULL].map(n=>u.jsx("option",{value:n,children:iF(n)},n));function IA(n,e,t,r){return n===ve.IS_NULL||n===ve.IS_NOT_NULL||n===ve.IS_BETWEEN&&t!=null&&t!==""&&!Number.isNaN(Number.parseFloat(t))&&r!=null&&r!==""&&!Number.isNaN(Number.parseFloat(r))||n!==ve.IS_BETWEEN&&e!==void 0&&e!==""&&!Number.isNaN(Number.parseFloat(e))}function _A(n,e,t,r,i,a,o){switch(n){case ve.IS_EQUAL:case ve.IS_NOT_EQUAL:case ve.GREATER_THAN:case ve.GREATER_THAN_OR_EQUAL:case ve.LESS_THAN:case ve.LESS_THAN_OR_EQUAL:return u.jsx("input",{type:"number",className:"form-control",placeholder:"Enter value",value:i??"",onChange:e});case ve.IS_BETWEEN:return u.jsxs("div",{className:"d-flex flex-row",children:[u.jsx("input",{type:"number",className:"form-control d-flex mr-2",placeholder:"Start value",value:a??"",onChange:t}),u.jsx("input",{type:"number",className:"form-control d-flex",placeholder:"End value",value:o??"",onChange:r})]});case ve.IS_NULL:case ve.IS_NOT_NULL:return null}}function xA(n,e,t){switch(n){case Ne.IS_NULL:case Ne.IS_NOT_NULL:return null;default:return u.jsx("input",{type:"text",className:"form-control",placeholder:"Enter value",value:t??"",onChange:e})}}function MA(n,e,t){switch(n){case De.IS_NULL:case De.IS_NOT_NULL:return null;default:return u.jsx("input",{type:"text",className:"form-control",placeholder:"Enter value",value:t??"",onChange:e})}}function AA(){return null}function LA(n,e,t){switch(n){case Ct.IS_NULL:case Ct.IS_NOT_NULL:return null;default:return u.jsx("input",{type:"text",className:"form-control",maxLength:1,placeholder:"Enter value",value:t??"",onChange:e})}}function ob(n){var{column:e,config:t,dh:r,onChange:i=PA}=n,a=e.type,[o,s]=y.useState(a),[l,d]=y.useState(t.condition),[h,c]=y.useState(t.value),[m,v]=y.useState(t.start),[f,g]=y.useState(t.end);a!==o&&(d(HC(a)),c($C(a)),v(void 0),g(void 0),s(a));var p=y.useMemo(()=>{if(a===void 0)return[];if(j.isNumberType(a))return OA;if(j.isCharType(a))return FA;if(j.isStringType(a))return DA;if(j.isDateType(a))return RA;if(j.isBooleanType(a))return NA},[a]),C=y.useCallback(T=>{var{value:P}=T.target;ia.debug("handleConditionChange",P),d(P)},[]),b=y.useCallback(T=>{var{value:P}=T.target;ia.debug("handleValueChange",P),c(P)},[]),S=y.useCallback(T=>{var{value:P}=T.target;ia.debug("handleStartValueChange",P),v(P)},[]),w=y.useCallback(T=>{var{value:P}=T.target;ia.debug("handleEndValueChange",P),g(P)},[]);y.useEffect(function(){var P=!0;l===void 0?(ia.debug("Unable to create formatting rule. Condition is not selected."),P=!1):j.isNumberType(e.type)&&!IA(l,h,m,f)?(ia.debug("Unable to create formatting rule. Invalid value",h),P=!1):j.isDateType(e.type)&&!pF(r,l,h)&&(ia.debug("Unable to create formatting rule. Invalid date condition",h),P=!1),i({condition:l,value:h,start:m,end:f},P)},[i,e.type,r,l,h,m,f]);var E=y.useMemo(()=>{if(a===void 0)return null;if(j.isNumberType(a))return _A(l,b,S,w,h,m,f);if(j.isCharType(a))return LA(l,b,h);if(j.isStringType(a))return xA(l,b,h);if(j.isDateType(a))return MA(l,b,h);if(j.isBooleanType(a))return AA()},[a,l,h,m,f,b,S,w]);return u.jsxs("div",{className:"condition-editor mb-2",children:[u.jsx("select",{value:l,"data-testid":"condition-select",className:"custom-select mb-2",onChange:C,children:p}),E]})}var kA=ae.module("StyleEditor"),jA="#fcfcfa",HA="#f0f0ee",$A="#1a171a",UA=200,BA=()=>{};function sb(n){var e,t,{config:r,onChange:i=BA}=n,[a,o]=y.useState(r.type),[s,l]=y.useState((e=(t=r.customConfig)===null||t===void 0?void 0:t.background)!==null&&e!==void 0?e:jA),[d,h]=y.useState(!1),[c,m]=y.useState(UA),v=y.useRef(null),f=y.useCallback(E=>{var{value:T}=E.target;kA.debug("handleBackgroundChange",T),l(T)},[]),g=y.useCallback(()=>{d&&h(!1)},[d]),p=y.useCallback(()=>{d||b(),h(!d)},[d]),C=y.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)}y.useEffect(function(){i({type:a,customConfig:{color:gp.isDark(s)?HA:$A,background:s}})},[i,a,s]);var S=y.useCallback(()=>{for(var E=[],T=function(){var O=C[P],N="option-".concat(P,"-").concat(O);E.push(u.jsxs(G,{kind:"inline",className:"style-option-btn",onClick:()=>{o(O),h(!1)},style:{color:zl({type:O}),background:Wl({type:O})},children:[O===a&&u.jsx(re,{icon:ii,className:"mr-2"}),O!==a&&u.jsx("span",{className:"mr-4"}),Ov(O)]},N))},P=0;P<C.length;P+=1)T();return E},[C,a]),w=y.useCallback(()=>u.jsx("div",{className:"style-menu-container",role:"presentation",style:{width:c},children:u.jsx("div",{className:"style-options",children:S()})}),[c,S]);return u.jsxs("div",{className:"style-editor",children:[u.jsxs("div",{className:"mb-2",ref:v,children:[u.jsx("label",{className:"mb-0",children:"Style"}),u.jsxs(G,{kind:"inline",className:"cs-dropdown",style:{color:zl({type:a}),background:Wl({type:a})},onClick:p,children:[Ov(a),u.jsx("span",{children:u.jsx(re,{icon:ww,className:"cs-caret"})}),u.jsx(ai,{isShown:d,actions:{menuElement:w()},popperOptions:{placement:"bottom-start"},popperClassName:"style-dropdown-menu",onMenuClosed:g,menuStyle:{maxWidth:"100rem"}})]})]}),a===Fe.CUSTOM&&u.jsxs("div",{className:"mb-2",children:[u.jsx("label",{className:"mb-0",children:"Background"}),u.jsx("input",{type:"color",value:s,className:"custom-select color-select",onChange:f})]})]})}function Nf(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 lb(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Nf(Object(t),!0).forEach(function(r){VA(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Nf(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function VA(n,e,t){return e=GA(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function GA(n){var e=WA(n,"string");return typeof e=="symbol"?e:String(e)}function WA(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ko=ae.module("ColumnFormatEditor"),zA=()=>{};function KA(n){var{type:e,name:t}=n[0],r={type:e,name:t},i=lb({column:r,style:BC()},yd(e));return i}function YA(n){var e,{columns:t,config:r=KA(t),dh:i,onChange:a=zA}=n,[o,s]=y.useState((e=t.find(b=>b.name===r.column.name&&b.type===r.column.type))!==null&&e!==void 0?e:t[0]),[l,d]=y.useState(UC(r)),[h,c]=y.useState(!1),[m,v]=y.useState(r.style),f=y.useCallback(b=>{var S=t.find(w=>{var{name:E}=w;return E===b});S!==void 0?(s(S),o.type!==S.type&&(d(yd(S.type)),c(!1))):ko.error("Column ".concat(b," not found."))},[t,o]),g=y.useCallback((b,S)=>{ko.debug("handleConditionChange",b,S),d(b),c(S)},[]),p=y.useCallback(b=>{ko.debug("handleStyleChange",b),v(b)},[]);y.useEffect(function(){var S=h;o===void 0&&(ko.debug("Column is not selected, invalidating update."),S=!1),(m===void 0||m.type===Fe.NO_FORMATTING)&&(ko.debug("Style is not selected, invalidating update."),S=!1);var{type:w,name:E}=o,T={type:w,name:E};a(lb({column:T,style:m},l),S)},[a,o,m,l,h]);var C=t.map(b=>{var{name:S}=b;return{title:S,value:S}});return u.jsxs("div",{className:"conditional-rule-editor form",children:[u.jsxs("div",{className:"mb-2",children:[u.jsx("label",{className:"mb-0",children:"Format Cell If"}),u.jsx(cp,{defaultValue:o?.name,options:C,inputPlaceholder:"Select a column",spellCheck:!1,onChange:f,searchPlaceholder:"Filter columns"})]}),o!==void 0&&u.jsxs(u.Fragment,{children:[u.jsx(ob,{dh:i,column:o,config:l,onChange:g}),u.jsx(sb,{config:m,onChange:p})]})]})}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 db(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){qA(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 qA(n,e,t){return e=XA(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function XA(n){var e=QA(n,"string");return typeof e=="symbol"?e:String(e)}function QA(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var jo=ae.module("RowFormatEditor"),ZA=()=>{};function JA(n){var{type:e,name:t}=n[0],r={type:e,name:t},i=db({column:r,style:BC()},yd(e));return i}function eL(n){var e,{columns:t,config:r=JA(t),dh:i,onChange:a=ZA}=n,[o,s]=y.useState((e=t.find(b=>b.name===r.column.name&&b.type===r.column.type))!==null&&e!==void 0?e:t[0]),[l,d]=y.useState(UC(r)),[h,c]=y.useState(!1),[m,v]=y.useState(r.style),f=y.useCallback(b=>{var S=t.find(w=>{var{name:E}=w;return E===b});S!==void 0?(s(S),o.type!==S.type&&(d(yd(S.type)),c(!1))):jo.error("Column ".concat(b," not found."))},[t,o]),g=y.useCallback((b,S)=>{jo.debug("handleConditionChange",b,S),d(b),c(S)},[]),p=y.useCallback(b=>{jo.debug("handleStyleChange",b),v(b)},[]);y.useEffect(function(){if(o===void 0){jo.debug("Column is not selected, skip update.");return}if(m===void 0){jo.debug("Style is not selected, skip update.");return}var{type:S,name:w}=o,E={type:S,name:w};a(db({column:E,style:m},l),h)},[a,o,m,l,h]);var C=t.map(b=>{var{name:S}=b;return{title:S,value:S}});return u.jsxs("div",{className:"conditional-rule-editor form",children:[u.jsxs("div",{className:"mb-2",children:[u.jsx("label",{className:"mb-0",children:"Format Row If"}),u.jsx(cp,{defaultValue:o?.name,options:C,inputPlaceholder:"Select a column",spellCheck:!1,onChange:f,searchPlaceholder:"Filter columns"})]}),o!==void 0&&u.jsxs(u.Fragment,{children:[u.jsx(ob,{column:o,config:l,dh:i,onChange:g}),u.jsx(sb,{config:m,onChange:p})]})]})}var Pu=ae.module("ConditionalFormatEditor"),Ou=()=>{};function tL(n){switch(n){case wr.CONDITIONAL:return u.jsx(Ex,{});case wr.ROWS:return u.jsx(Dx,{})}}function rL(n){switch(n){case wr.CONDITIONAL:return"Conditional";case wr.ROWS:return"Rows"}}var If=[wr.CONDITIONAL,wr.ROWS];function nL(n){var e,{columns:t,dh:r,onSave:i=Ou,onUpdate:a=Ou,onCancel:o=Ou,rule:s}=n,l=t.filter(CF),[d,h]=y.useState((e=s?.type)!==null&&e!==void 0?e:If[0]),[c,m]=y.useState(s),[v,f]=y.useState(!1),g=y.useCallback(()=>{o()},[o]),p=y.useCallback(()=>{if(c===void 0){Pu.error("Rule is not defined.");return}i(c)},[i,c]),C=y.useCallback(S=>{Pu.debug("handleFormatterChange",S),h(S)},[]),b=y.useCallback((S,w)=>{Pu.debug("handleRuleChange",S,w,d);var E={type:d,config:S};m(E),f(w),a(w?E:void 0)},[a,d]);return u.jsxs("div",{className:"conditional-format-editor form",children:[u.jsxs("div",{className:"mb-2",children:[u.jsx("label",{className:"mb-0",htmlFor:"formatter-select",children:"Select Formatter"}),u.jsx("div",{className:"formatter-list",children:If.map((S,w)=>u.jsx("div",{className:"formatter-type",children:u.jsxs("button",{type:"button",className:J("btn","btn-icon","btn-formatter-type",{active:S===d}),"data-index":w,onClick:()=>C(S),children:[tL(S),rL(S)]})},S))})]}),d===wr.CONDITIONAL&&u.jsx(YA,{columns:l,dh:r,config:c?.config,onChange:b}),d===wr.ROWS&&u.jsx(eL,{columns:l,config:c?.config,dh:r,onChange:b}),u.jsx("hr",{}),u.jsxs("div",{className:"d-flex justify-content-end my-3",children:[u.jsx(G,{kind:"secondary",onClick:g,className:"mr-2",children:"Cancel"}),u.jsx(G,{kind:"primary",onClick:p,disabled:c===void 0||!v,children:"Done"})]})]})}function iL(n){var e,t,{text:r,isOpen:i,onClose:a}=n,[o,s]=y.useState(!1),[l,d]=y.useState(0),[h,c]=y.useState(!1),[m,v]=y.useState(!1),[f,g]=y.useState(!1),p=y.useRef();y.useEffect(function(){if(i){try{JSON.parse(r),g(!0)}catch{g(!1)}v(!1)}},[i,r]),y.useEffect(function(){p.current&&p.current.layout()},[l]),y.useEffect(function(){p.current&&p.current.updateOptions({lineNumbers:h?"on":"off"})},[h]);function C(){c(!h)}function b(){var T,P=(T=p.current)===null||T===void 0?void 0:T.getModel();!f||!P||(m?(P.setValue(r),v(!1)):(P.setValue(JSON.stringify(JSON.parse(r),void 0,2)),v(!0)),S())}function S(){var T,P,D=p.current;D&&c(((T=(P=D.getModel())===null||P===void 0?void 0:P.getLineCount())!==null&&T!==void 0?T:0)>1)}function w(){o&&(p.current=void 0,a())}function E(T){p.current=T,d(T.getContentHeight()),T.onDidContentSizeChange(P=>{var{contentHeight:D}=P;return d(D)}),S()}return!i&&!o?null:u.jsxs(nd,{isOpen:i,centered:!0,keyboard:!0,toggle:w,onOpened:()=>s(!0),onClosed:()=>{s(!1),d(0)},className:"theme-bg-dark cell-overflow-modal",size:"xl",children:[u.jsxs(id,{toggle:a,children:[u.jsx("h5",{className:"overflow-modal-title",children:"Cell Contents"}),u.jsx(ld,{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}),u.jsx(G,{kind:"inline",active:h,icon:yw,tooltip:"Toggle line numbers",onClick:C}),f&&u.jsx(G,{kind:"inline",icon:Ew,active:m,tooltip:"Format as JSON",onClick:b})]}),u.jsx(ad,{style:{height:l},children:u.jsx(Ah,{onEditorInitialized:E,settings:{value:r,readOnly:!0,wordWrap:"on",language:f?"typescript":"plaintext",folding:f,padding:{bottom:16},lineNumbers:h?"on":"off",overviewRulerLanes:0,renderLineHighlight:"none",find:{seedSearchStringFromSelection:"never"}}})})]})}function aL(n){return n.model!==void 0}var oL="###,##0";function sL(n){var{gotoRow:e,gotoRowError:t,gotoValueError:r,onGotoRowSubmit:i,isShown:a,onEntering:o,onEntered:s,onExiting:l,onExited:d,model:h,onGotoRowNumberChanged:c,onClose:m,gotoValueSelectedColumnName:v,gotoValue:f,gotoValueFilter:g,onGotoValueSelectedColumnNameChanged:p,onGotoValueSelectedFilterChanged:C,onGotoValueChanged:b,onGotoValueSubmit:S}=n,w=y.useRef(null),E=y.useRef(null),[T,P]=y.useState(!1),D=[];aL(h)&&h.table!==void 0&&({columns:D}=h.table);var{dh:O,rowCount:N}=h,_=y.useMemo(()=>"goto-row-input-".concat(tt()),[]),F=I=>{I.key==="Enter"?(I.stopPropagation(),I.preventDefault(),S()):(I.key==="Backspace"||I.key==="Delete")&&(f==="".concat(Number.POSITIVE_INFINITY)||f==="".concat(Number.NEGATIVE_INFINITY))&&z("")},x=I=>{I.key==="Enter"&&(I.stopPropagation(),I.preventDefault(),S(I.shiftKey))},L=h.getColumnIndexByName(v),M=D[L??0],U=M?.type,V=j.getNormalizedType(U),z=I=>{b(I??"")},Q=()=>{if(T&&document.activeElement!==w.current){var I;(I=w.current)===null||I===void 0||I.select()}else if(!T&&document.activeElement!==E.current){var R;(R=E.current)===null||R===void 0||R.select()}};y.useEffect(Q,[T,e,f]);var Z=()=>{switch(V){case j.dataType.DECIMAL:case j.dataType.INT:return u.jsx("div",{className:"goto-row-input",children:u.jsx("input",{ref:E,className:J("form-control",{"is-invalid":r!==""}),onKeyDown:F,placeholder:"value",onChange:I=>{var R=I.target.value.toLowerCase();/^-?[0-9]*\.?[0-9]*$/.test(I.target.value)?z(I.target.value):R==="-i"||R==="-infinity"?z("".concat(Number.NEGATIVE_INFINITY)):(R==="i"||R==="infinity")&&z("".concat(Number.POSITIVE_INFINITY))},value:f,"aria-label":"Value Input"})});case j.dataType.DATETIME:return u.jsx("div",{className:"goto-value-date-time-input",children:u.jsx(ly,{ref:E,className:J("form-control","goto-value-date-time-input",{"is-invalid":r!==""}),defaultValue:f,onChange:z,onSubmit:x,"aria-label":"Value Input"})});case j.dataType.STRING:return u.jsxs(u.Fragment,{children:[u.jsx("div",{className:"goto-row-input",children:u.jsxs("select",{className:"custom-select",onChange:I=>{C(I.target.value)},value:g,"aria-label":"filter-type-select",children:[u.jsx("option",{value:pe.eqIgnoreCase,children:"Equals (case-insensitive)"},pe.eqIgnoreCase),u.jsx("option",{value:pe.containsIgnoreCase,children:"Contains (case-insensitive)"},pe.containsIgnoreCase),u.jsx("option",{value:pe.eq,children:"Equals"},pe.eq),u.jsx("option",{value:pe.contains,children:"Contains"},pe.contains)]})}),u.jsx("div",{className:"goto-row-input",children:u.jsx("input",{ref:E,className:J("form-control",{"is-invalid":r!==""}),onKeyDown:x,placeholder:"value",onChange:I=>z(I.target.value),value:f,"aria-label":"Value Input"})})]});case j.dataType.BOOLEAN:return u.jsx("div",{className:"goto-row-input",children:u.jsxs("select",{className:"custom-select",onChange:I=>{z(I.target.value)},value:f,"aria-label":"Value Input",children:[u.jsx("option",{"aria-label":"null value",value:""},"null"),u.jsx("option",{value:"true",children:"true"},"true"),u.jsx("option",{value:"false",children:"false"},"false")]})});default:return u.jsx("div",{className:"goto-row-input",children:u.jsx("input",{ref:E,className:"form-control",onKeyDown:x,placeholder:"value",onChange:I=>z(I.target.value),value:f,"aria-label":"Value Input"})})}};return u.jsx(Ed,{isShown:a,className:J("goto-row"),onEntering:o,onEntered:()=>{s(),Q()},onExiting:l,onExited:d,children:u.jsxs(u.Fragment,{children:[u.jsxs("div",{className:"goto-row-row",children:[u.jsxs("div",{className:J("goto-row-wrapper",{"is-inactive":!T}),onClick:()=>P(!0),onFocus:()=>P(!0),role:"group",children:[u.jsx("label",{className:"goto-row-text",htmlFor:_,children:"Go to row"}),u.jsx("div",{className:"goto-row-input",children:u.jsx("input",{ref:w,"data-testid":"goto-row-input",type:"number",onKeyDown:I=>{I.key==="Enter"&&(I.stopPropagation(),I.preventDefault(),i())},className:J("form-control",{"is-invalid":t!==""}),placeholder:"Row number",onChange:I=>{c(I)},value:e,id:_})}),u.jsxs("div",{className:"goto-row-text",children:["of ",O.i18n.NumberFormat.format(oL,N)]}),t&&u.jsx("div",{className:"text-danger",children:t})]}),u.jsx("div",{className:"goto-row-close",children:u.jsx(G,{kind:"ghost",onClick:m,children:u.jsx(re,{icon:ps,style:{marginRight:"0"}})})})]}),h.isSeekRowAvailable&&u.jsx("div",{className:"goto-row-row",children:u.jsxs("div",{className:J("goto-row-wrapper",{"is-inactive":T}),onClick:()=>P(!1),onFocus:()=>P(!1),role:"group",children:[u.jsx("div",{className:"goto-row-text",children:"Go to value"}),u.jsx("div",{className:"goto-row-input",children:u.jsx("select",{className:"custom-select",onChange:I=>{var R=I.target.value;p(R)},value:v,"aria-label":"column-name-select",children:D.map(I=>u.jsx("option",{value:I.name,children:I.name},I.name))})}),Z(),u.jsxs("div",{children:[u.jsx(G,{kind:"ghost",disabled:f==="",onClick:()=>{S(!0)},children:u.jsx(re,{icon:lp})}),u.jsx(G,{kind:"ghost",disabled:f==="",onClick:()=>{S(!1)},children:u.jsx(re,{icon:Tw})})]}),r&&u.jsx("div",{className:"text-danger",children:r})]})})]})})}function _f(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){_f(a,r,i,o,s,"next",l)}function s(l){_f(a,r,i,o,s,"throw",l)}o(void 0)})}}function xf(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?xf(Object(t),!0).forEach(function(r){ce(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):xf(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function ce(n,e,t){return e=lL(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function lL(n){var e=dL(n,"string");return typeof e=="symbol"?e:String(e)}function dL(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 fe=ae.module("IrisGrid"),uL=500,hL=250,cL=250,mL=250,ub=Object.freeze({aggregations:ke,showOnTop:!1}),vL="yyyy-MM-dd'T'HH:mm:ss.SSSSSSSSS z";function Mf(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===j.REVERSE_TYPE.NONE&&o==null&&s==null&&l.length===0&&d.length===0}class kn extends y.Component{constructor(e){var t,r,i,a;super(e),ce(this,"grid",void 0),ce(this,"gridWrapper",void 0),ce(this,"lastFocusedFilterBarColumn",void 0),ce(this,"lastLoadedConfig",void 0),ce(this,"tooltip",void 0),ce(this,"pending",void 0),ce(this,"globalColumnFormats",void 0),ce(this,"dateTimeFormatterOptions",void 0),ce(this,"decimalFormatOptions",void 0),ce(this,"integerFormatOptions",void 0),ce(this,"truncateNumbersWithPound",void 0),ce(this,"loadingScrimStartTime",void 0),ce(this,"loadingScrimFinishTime",void 0),ce(this,"animationFrame",void 0),ce(this,"loadingTimer",void 0),ce(this,"renderer",void 0),ce(this,"tableSaver",void 0),ce(this,"crossColumnRef",void 0),ce(this,"isAnimating",void 0),ce(this,"filterInputRef",void 0),ce(this,"toggleFilterBarAction",void 0),ce(this,"toggleSearchBarAction",void 0),ce(this,"toggleGotoRowAction",void 0),ce(this,"discardAction",void 0),ce(this,"commitAction",void 0),ce(this,"contextActions",void 0),ce(this,"tableUtils",void 0),ce(this,"getAdvancedMenuOpenedHandler",Pe(R=>this.handleAdvancedMenuOpened.bind(this,R),{max:100})),ce(this,"getCachedAdvancedFilterMenuActions",Pe((R,k,H,K,ee)=>u.jsx(G_,{model:R,column:k,onFilterChange:this.handleAdvancedFilterChange,onSortChange:this.handleAdvancedFilterSortChange,onDone:this.handleAdvancedFilterDone,options:H,sortDirection:K,formatter:ee,tableUtils:this.tableUtils}),{max:50})),ce(this,"getCachedOptionItems",Pe((R,k,H,K,ee,W,te,ne,oe,de,je,ct,mt,Xe,st,Ot)=>{var Ae=[];return R&&Ae.push({type:Le.CHART_BUILDER,title:"Chart Builder",icon:Pw}),Ae.push({type:Le.VISIBILITY_ORDERING_BUILDER,title:"Organize Columns",icon:Fh}),H&&Ae.push({type:Le.CONDITIONAL_FORMATTING,title:"Conditional Formatting",icon:bs}),k&&Ae.push({type:Le.CUSTOM_COLUMN_BUILDER,title:"Custom Columns",icon:Ow}),K&&Ae.push({type:Le.ROLLUP_ROWS,title:"Rollup Rows",icon:dp}),ee&&Ae.push({type:Le.AGGREGATIONS,title:"Aggregate Columns",icon:Dw}),W&&Ae.push({type:Le.SELECT_DISTINCT,title:"Select Distinct Values",icon:Rw}),te&&mt&&Ae.push({type:Le.TABLE_EXPORTER,title:"Download CSV",icon:Nw}),Ot&&Ae.push({type:Le.ADVANCED_SETTINGS,title:"Advanced Settings",icon:Fw}),Ae.push({type:Le.QUICK_FILTERS,title:"Quick Filters",subtitle:ne.shortcut.getDisplayText(),icon:xl,isOn:je,onChange:ne.action}),Xe&&Ae.push({type:Le.SEARCH_BAR,title:"Search Bar",subtitle:oe.shortcut.getDisplayText(),icon:Iw,isOn:ct,onChange:oe.action}),Ae.push({type:Le.GOTO,title:"Go to",subtitle:de.shortcut.getDisplayText(),icon:_w,isOn:st,onChange:de.action}),Object.freeze(Ae)},{max:1})),ce(this,"getCachedHiddenColumns",Pe((R,k)=>ye.getHiddenColumns(new Map([...R.initialColumnWidths,...k])),{max:1})),ce(this,"getAggregationMap",Pe((R,k)=>{var H={};return k.forEach(K=>{var{operation:ee,selected:W,invert:te}=K;H[ee]=Bi.getOperationColumnNames(R,ee,W,te)}),H})),ce(this,"getOperationMap",Pe((R,k)=>{var H={};return k.filter(K=>!Bi.isRollupOperation(K.operation)).forEach(K=>{var{operation:ee,selected:W,invert:te}=K;Bi.getOperationColumnNames(R,ee,W,te).forEach(ne=>{var oe,de=[...(oe=H[ne])!==null&&oe!==void 0?oe:[],ee];H[ne]=Object.freeze(de)})}),H})),ce(this,"getOperationOrder",Pe(R=>R.map(k=>k.operation).filter(k=>!Bi.isRollupOperation(k)))),ce(this,"getCachedFormatColumns",Pe((R,k,H)=>gF(R,k,H))),ce(this,"getCachedPreviewFormatColumns",Pe((R,k,H,K,ee)=>{if(fe.debug("getCachedPreviewFormatColumns",H,K,ee),K!==void 0&&ee!==void 0){var W=[...H];return W[ee]=K,this.getCachedFormatColumns(R,k,W)}return this.getCachedFormatColumns(R,k,H)})),ce(this,"getModelRollupConfig",Pe((R,k,H)=>ye.getModelRollupConfig(R,k,H))),ce(this,"getModelTotalsConfig",Pe((R,k,H)=>{var K,ee,W,{aggregations:te,showOnTop:ne}=H;if(((K=k==null||(ee=k.columns)===null||ee===void 0?void 0:ee.length)!==null&&K!==void 0?K:0)>0||((W=te?.length)!==null&&W!==void 0?W:0)===0)return null;var oe=this.getOperationMap(R,te),de=this.getOperationOrder(te);return{operationMap:oe,operationOrder:de,showOnTop:ne}})),ce(this,"getCachedStateOverride",Pe((R,k,H,K,ee,W,te,ne,oe,de)=>({hoverSelectColumn:R,isFilterBarShown:k,isSelectingColumn:H,loadingScrimProgress:K,quickFilters:ee,advancedFilters:W,sorts:te,reverseType:ne,rollupConfig:oe,isMenuShown:de}),{max:1})),ce(this,"getCachedFilter",Pe((R,k,H,K,ee)=>[...R??[],...K??[],...ye.getFiltersFromFilterMap(k),...ye.getFiltersFromFilterMap(H),...ee!==void 0?[ee]:[]],{max:1})),ce(this,"getCachedTheme",Pe((R,k,H)=>Qt(Qt(Qt({},YC),R),{},{autoSelectRow:!k,rowFooterWidth:H>0?R.rowFooterWidth:0}),{max:1})),ce(this,"getAlwaysFetchColumns",Pe((R,k,H,K,ee,W)=>{for(var te=[],ne=0;ne<K;ne+=1)te.push(k[B.getModelIndex(ne,H)].name);for(var oe=0;oe<ee;oe+=1)te.push(k[B.getModelIndex(k.length-1-oe,H)].name);if(W)for(var de=W[0];de<=W[1];de+=1)te.push(k[B.getModelIndex(de,H)].name);var je=new Set([...R,...te]);return Object.freeze([...je])})),ce(this,"updateSearchFilter",rt((R,k,H,K)=>{var{model:ee}=this.props,W=ll.createSearchFilter(ee.dh,R,k,H,K);this.setState({searchFilter:W})},hL)),ce(this,"handleConditionalFormatEditorUpdate",rt(R=>{this.setState({conditionalFormatPreview:R})},mL)),ce(this,"handleDownloadProgressUpdate",Ki((R,k)=>{var{tableDownloadStatus:H}=this.state;H===na.DOWNLOAD_STATUS.DOWNLOADING&&this.setState({tableDownloadProgress:R,tableDownloadEstimatedTime:k})},uL)),ce(this,"getOverflowButtonTooltip",Pe(R=>{if(R==null)return null;var k=Qt(Qt({position:"absolute"},R),{},{pointerEvents:"none"}),H={placement:"left",modifiers:{flip:{behavior:["left","right"]}}};return u.jsx("div",{style:k,children:u.jsx(pt,{options:H,ref:this.handleTooltipRef,children:"View full contents"},Date.now())})})),ce(this,"getExpandCellTooltip",Pe(R=>{if(R==null)return null;var{expandTooltipDisplayValue:k}=this.state,H=Qt(Qt({position:"absolute"},R),{},{pointerEvents:"none"}),K={placement:"bottom-start"};return u.jsx("div",{style:H,children:u.jsx(pt,{options:K,ref:this.handleTooltipRef,children:u.jsxs("div",{style:{textAlign:"left"},children:["Click to ",k," row",u.jsx("br",{}),Yi.isMacPlatform()?"⌘":"Ctrl+","Click to expand row and all children"]})},Date.now())})})),ce(this,"getLinkHoverTooltip",Pe(R=>{if(R==null)return null;var{linkHoverDisplayValue:k}=this.state,H=Qt(Qt({position:"absolute"},R),{},{pointerEvents:"none"}),K={placement:"bottom"};return u.jsx("div",{style:H,children:u.jsx(pt,{options:K,ref:this.handleTooltipRef,children:u.jsxs("div",{className:"link-hover-tooltip",children:[k," - Click once to follow.",u.jsx("br",{}),"Click and hold to select this cell."]})})})})),ce(this,"handleGotoValueChanged",R=>{this.setState({gotoValue:R}),this.debouncedSeekRow(R)}),ce(this,"debouncedSeekRow",rt(R=>{this.seekRow(R)},cL)),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=ke,this.decimalFormatOptions={},this.integerFormatOptions={},this.truncateNumbersWithPound=!1,this.renderer=new T_,this.tableSaver=null,this.crossColumnRef=he.createRef(),this.isAnimating=!1,this.filterInputRef=he.createRef(),this.toggleFilterBarAction={action:()=>this.toggleFilterBar(),shortcut:xr.TABLE.TOGGLE_QUICK_FILTER},this.toggleSearchBarAction={action:()=>this.toggleSearchBar(),shortcut:xr.TABLE.TOGGLE_SEARCH},this.toggleGotoRowAction={action:()=>this.toggleGotoRow(),shortcut:xr.TABLE.GOTO_ROW},this.discardAction={action:()=>{var{model:R}=this.props;nt(R)&&R.isEditable&&R.pendingDataMap.size>0&&this.discardPending().catch(fe.error)},shortcut:xr.INPUT_TABLE.DISCARD},this.commitAction={action:()=>{var{model:R}=this.props;nt(R)&&R.isEditable&&R.pendingDataMap.size>0&&R.pendingDataErrors.size===0&&this.commitPending().catch(fe.error)},shortcut:xr.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:h,model:c,movedColumns:m,movedRows:v,partition:f,partitionColumn:g,rollupConfig:p,userColumnWidths:C,userRowHeights:b,showSearchBar:S,searchValue:w,selectedSearchColumns:E,invertSearchColumns:T,advancedFilters:P,quickFilters:D,selectDistinctColumns:O,pendingDataMap:N,canCopy:_,frozenColumns:F,columnHeaderGroups:x}=e,L=[new eI(this),new aI(this)];_&&L.push(new zF(this));var{dh:M}=c,U=[new uI(this),new ZI(this),new l_(this),new fI(this),new SI(this),new r_(this),new KI(this),new kI(this,M),new BI(this),new i_(this)],V=m.length>0?m:c.initialMovedColumns,z=v.length>0?v:c.initialMovedRows,Q=new c_({userColumnWidths:new Map(C),userRowHeights:new Map(b),movedColumns:V,initialColumnWidths:new Map(c==null||(t=c.layoutHints)===null||t===void 0||(r=t.hiddenColumns)===null||r===void 0?void 0:r.map(R=>[c.getColumnIndexByName(R),0]))}),Z=E??[],I=ll.createSearchFilter(M,w,Z,c.columns,T);this.tableUtils=new j(M),this.state={isFilterBarShown:d,isSelectingPartition:h,focusedFilterBarColumn:null,metricCalculator:Q,metrics:void 0,keyHandlers:L,mouseHandlers:U,partition:f,partitionColumn:g,partitionTable:null,partitionFilters:[],quickFilters:D?new Map(D):new Map,advancedFilters:new Map(P),shownAdvancedFilter:null,hoverAdvancedFilter:null,sorts:[],reverseType:j.REVERSE_TYPE.NONE,customColumns:[],selectDistinctColumns:O,selectedRanges:[],copyOperation:null,loadingText:null,loadingScrimProgress:null,loadingSpinnerShown:!1,movedColumns:V,movedRows:z,shownColumnTooltip:null,formatter:new yn(M),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:w,selectedSearchColumns:Z,invertSearchColumns:T,rollupConfig:p,rollupSelectedColumns:[],aggregationSettings:o,selectedAggregation:null,openOptions:[],pendingRowCount:0,pendingDataMap:N??new Map,pendingDataErrors:new Map,pendingSavePromise:null,pendingSaveError:null,toastMessage:null,frozenColumns:F,showOverflowModal:!1,overflowText:"",overflowButtonTooltipProps:null,expandCellTooltipProps:null,expandTooltipDisplayValue:"expand",linkHoverTooltipProps:null,linkHoverDisplayValue:"",isGotoShown:!1,gotoRow:"",gotoRowError:"",gotoValueError:"",gotoValueSelectedColumnName:(i=(a=c.columns[0])===null||a===void 0?void 0:a.name)!==null&&i!==void 0?i:"",gotoValueSelectedFilter:pe.eqIgnoreCase,gotoValue:"",columnHeaderGroups:x??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(f=>!e.inputFilters.includes(f)):[];if(l.length>0){var d,{advancedSettings:h}=this.props,c=(d=h.get(oo.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 f=Date.now(),g=f-m,p=v-m,C=Math.min(g/p,1);v<f&&(this.loadingScrimStartTime=void 0,this.loadingScrimFinishTime=void 0),this.setState(b=>b.loadingScrimProgress==null?(fe.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(j.isDateType(i.columns[o].type)){var{formatter:d}=i;return a.i18n.DateTimeFormat.format(vL,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;A(t);var{modelColumns:r}=t;return r==null?null:e!=null?r.get(e):null}getModelRow(e){var{metrics:t}=this.state;A(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 B.getVisibleIndex(e,t)}makeQuickFilter(e,t,r){try{return this.tableUtils.makeQuickFilter(e,t,r)}catch(i){fe.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:h,type:c,value:m}=d,v=r.columns.findIndex(f=>{var{name:g,type:p}=f;return g===h&&p===c});v>=0?(l=o.delete(v)||l,l=this.applyQuickFilter(v,m,s)||l):fe.error("Unable to find column for inputFilter",h,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 fe.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){fe.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){fe.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;fe.debug("setFilterMap",e);var{advancedSettings:r}=this.props,i=(t=r.get(oo.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,h=a.columns.find(f=>f.name===s&&f.type===l);if(h!=null){var c=a.getColumnIndexByName(h.name);A(c);var m=ye.combineFiltersFromList(l,d);if(m.length===0)this.removeQuickFilter(c);else{var{formatter:v}=a;this.setQuickFilter(c,this.makeQuickFilter(h,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(){fe.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(){fe.debug("Clearing cross-column search"),this.setState({searchValue:"",searchFilter:void 0})}clearGridInputField(){this.filterInputRef.current!=null&&this.filterInputRef.current.setValue("")}rebuildFilters(){fe.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:h}=l,c=i[d],m=this.tableUtils.makeAdvancedFilter(c,h,a.timeZone);o.set(d,{options:h,filter:m})}),r.forEach((l,d)=>{var{text:h}=l,c=i[d];s.set(d,{text:h,filter:this.makeQuickFilter(c,h,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:{},h=(i=e?.truncateNumbersWithPound)!==null&&i!==void 0?i:!1,c=!ht(this.globalColumnFormats,o),m=!ht(this.dateTimeFormatterOptions,s),v=!ht(this.decimalFormatOptions,e?.defaultDecimalFormatOptions),f=!ht(this.integerFormatOptions,d),g=this.truncateNumbersWithPound!==h;(c||m||v||f||g)&&(this.globalColumnFormats=o,this.dateTimeFormatterOptions=s,this.decimalFormatOptions=l,this.integerFormatOptions=d,this.truncateNumbersWithPound=h,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 yn(a.dh,s,this.dateTimeFormatterOptions,this.decimalFormatOptions,this.integerFormatOptions,this.truncateNumbersWithPound);fe.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,h=l??[],c=ll.createSearchFilter(i.dh,s,h,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 dl(function*(){var{model:r}=t.props;t.setState({isSelectingPartition:!0});try{var i=yield t.pending.add(r.valuesTable(e),h=>h.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 fe.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(h){t.handleTableLoadError(h)}})()}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));Ss(a).catch(o=>fe.error("Unable to copy cell",o))}else fe.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 h={ranges:ie.boundedRanges(e,a.columnCount,a.rowCount),includeHeaders:t,formatValues:r,movedColumns:l,userColumnWidths:d,error:i};this.setState({copyOperation:h})}else fe.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;A(o),A(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){fe.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 fe.debug("remove all sorts, filters, and custom columns"),this.setState({advancedFilters:new Map,aggregationSettings:ub,customColumns:[],quickFilters:new Map,reverseType:j.REVERSE_TYPE.NONE,rollupConfig:void 0,selectDistinctColumns:[],sorts:[]})}canRollback(){return this.lastLoadedConfig!=null||!Mf(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=B.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;A(s);var{left:l,rightVisible:d,lastLeft:h}=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,f=(m=this.grid)===null||m===void 0?void 0:m.getMetricState();A(f);var g=o.getLastLeft(f,e,o.getVisibleWidth(f));(v=this.grid)===null||v===void 0||v.setViewState({left:Math.min(g,h),leftOffset:0},!0)}this.lastFocusedFilterBarColumn=e,this.setState({focusedFilterBarColumn:e,isFilterBarShown:!0})}hideColumnByVisibleIndex(e){var t,{metricCalculator:r,movedColumns:i}=this.state;r.setColumnWidth(B.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;fe.debug2("freezing column",e);var a=t==null?new Set(i.frozenColumns):new Set(t);a.add(e);var o=i.getColumnIndexByName(e);A(o);var s=B.getVisibleIndex(o,r),l=B.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;fe.debug2("unfreezing column",e);var a=t==null?new Set(i.frozenColumns):new Set(t);a.delete(e);var o=i.getColumnIndexByName(e);A(o);var s=B.getVisibleIndex(o,r),l=B.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;A(a),t?e.forEach(o=>{var s=i.initialColumnWidths.get(o),l=$(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;A(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(){fe.debug2("handleAnimationStart"),this.isAnimating=!0,this.animationFrame=requestAnimationFrame(this.handleAnimationLoop)}handleAnimationEnd(){fe.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)){fe.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){fe.info("Toggling sort for column",e);var{model:r}=this.props,i=this.getModelColumn(e);if(A(i),r.isColumnSortable(e)){var{sorts:a}=this.state,o=j.toggleSortForColumn(a,r.columns,i,t);this.updateSorts(o)}else fe.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]:j.sortDirection.none,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;A(e);var{model:o}=this.props,s=j.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&&j.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:h,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:h,gotoRowError:"",gotoValueError:""})}commitPending(){var e=this;return dl(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 dl(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:f}=m,g=i.valueForCell(d,t),p=i.textForCell(d,t),C=r.getVisibleColumn(d),b=ze(i)&&i.isRowExpandable(t),S=o.find(w=>w.name===v)!=null;s[v]={value:g,text:p,type:f,isGrouped:S,isExpandable:b,visibleIndex:C}},d=0;d<a.length;d+=1)l();var{onDataSelected:h}=this.props;h(t,s)}handleAdvancedFilterChange(e,t,r){var{model:i}=this.props,a=i.getColumnIndexByName(e.name);A(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);A(o);var s=a.columns[o].name,l=j.getSortForColumn(a.sort,s),d=null;(l==null||l.direction!==t)&&(t===j.sortDirection.descending?d=e.sort().desc():d=e.sort().asc());var h=j.setSortForColumn(a.sort,s,d,i);fe.info("Setting table sorts",h),this.startLoading("Sorting..."),this.setState({sorts:h}),(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){fe.warn("Grid Error",e),this.setState({toastMessage:u.jsx("div",{className:"error-message",children:"".concat(e)})})}handleFilterBarChange(e){this.startLoading("Filtering...",!0),this.setState(t=>{var{focusedFilterBarColumn:r,quickFilters:i}=t,a=new Map(i);if(r!=null){var o=this.getModelColumn(r);A(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;A(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=j.getNormalizedType(i.type);A(s);var l=yn.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(fe.error("request failed:",t.detail),this.stopLoading(),this.canRollback())this.startLoading("Rolling back changes...",!0),this.rollback();else{fe.error("Table failed and unable to rollback");var{onError:r}=this.props;r(new Error("Error displaying table: ".concat(t.detail)))}}handleUpdate(){var e;fe.debug2("Received model update");var{advancedFilters:t,aggregationSettings:r,customColumns:i,quickFilters:a,reverseType:o,rollupConfig:s,searchFilter:l,selectDistinctColumns:d,sorts:h}=this.state,c={advancedFilters:t,aggregationSettings:r,customColumns:i,quickFilters:a,reverseType:o,rollupConfig:s,searchFilter:l,selectDistinctColumns:d,sorts:h};Mf(c)?this.lastLoadedConfig=null:this.lastLoadedConfig=c,(e=this.grid)===null||e===void 0||e.forceUpdate(),this.stopLoading()}handleViewChanged(e){var t,r,{model:i}=this.props,{selectionEndRow:a=0}=(t=(r=this.grid)===null||r===void 0?void 0:r.state)!==null&&t!==void 0?t:{},o=0;if(nt(i)&&i.isEditable){A(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){A(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){fe.debug("Updated conditional formats",e),this.setState({conditionalFormats:e})}handleConditionalFormatCreate(){fe.debug("Create new conditional format");var{openOptions:e,conditionalFormats:t}=this.state;this.setState({openOptions:[...e,{type:Le.CONDITIONAL_FORMATTING_EDIT,title:"Create Formatting Rule"}],conditionalFormatEditIndex:t.length,conditionalFormatPreview:void 0})}handleConditionalFormatEdit(e){fe.debug("Edit conditional format",e);var{openOptions:t,conditionalFormats:r}=this.state;this.setState({openOptions:[...t,{type:Le.CONDITIONAL_FORMATTING_EDIT,title:"Edit Formatting Rule"}],conditionalFormatEditIndex:e,conditionalFormatPreview:Qt({},r[e])})}handleConditionalFormatEditorSave(e){fe.debug("Save conditional format changes",e),this.setState(t=>{if(t.conditionalFormatEditIndex===null)return fe.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){fe.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)),h=ye.getRemovedCustomColumnNames(d,e);if(h.length>0){var c=ye.removeSortsInColumns(i,h),m=ye.removeFiltersInColumns(l,a,h),v=ye.removeFiltersInColumns(l,o,h),f=ye.removeColumnFromMovedColumns(l,r,h),g=ye.removeColumnsFromSelectDistinctColumns(s,h);c.length!==i.length&&(fe.debug("removing sorts from removed custom columns..."),this.setState({sorts:c})),(m.size!==a.size||v.size!==o.size)&&(fe.debug("removing filters from removed custom columns..."),this.setState({quickFilters:m,advancedFilters:v})),ht(r,f)||(fe.debug("change moved columns for removed custom columns",f),this.setState({movedColumns:f})),ht(s,g)||(fe.debug("change selectDistinct columns for removed custom columns",f),this.setState({selectDistinctColumns:g}))}this.setState({customColumns:e}),e.length>0&&this.startLoading("Applying custom columns...")}handleCustomColumnsChanged(){fe.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;fe.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){fe.debug("handleAggregationsChange",e),this.startLoading("Aggregating ".concat(e.aggregations.map(t=>t.operation).join(", "),"...")),this.setState({aggregationSettings:e})}handleAggregationChange(e){fe.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){fe.debug("handleAggregationEdit",e);var{openOptions:t}=this.state;this.setState({openOptions:[...t,{type:Le.AGGREGATION_EDIT,title:"Edit Columns to ".concat(e.operation)}],selectedAggregation:e})}handleRollupChange(e){var t,r;fe.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:j.REVERSE_TYPE.NONE,selectDistinctColumns:[]})}handleSelectDistinctChanged(e){fe.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:j.REVERSE_TYPE.NONE})}handleDownloadTableStart(){var{canDownloadCsv:e}=this.props;e?this.setState({isTableDownloading:!0,tableDownloadProgress:0,tableDownloadEstimatedTime:null,tableDownloadStatus:na.DOWNLOAD_STATUS.INITIATING}):fe.error("Attempted to handleDownloadTableStart for user without download CSV permission.")}handleDownloadTable(e,t,r,i,a,o,s){var{canDownloadCsv:l}=this.props;l?(fe.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:na.DOWNLOAD_STATUS.DOWNLOADING}))):fe.error("Attempted to handleDownloadTable for user without download CSV permission.")}seekRow(e){var t=arguments,r=this;return dl(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 h=ye.getColumnByName(l.columns,o);if(h!==void 0){var c=(i=r.grid)===null||i===void 0?void 0:i.state.cursorRow;c==null&&(c=0);var m=s===pe.contains||s===pe.containsIgnoreCase,v=s===pe.eqIgnoreCase||s===pe.containsIgnoreCase;try{var f,{formatter:g}=l,p=j.getNormalizedType(h.type),C;switch(p){case j.dataType.CHAR:case j.dataType.STRING:{C=yield l.seekRow(c,h,d.ValueType.STRING,e,v,m,a??!1);break}case j.dataType.DATETIME:{var[b]=ya.parseDateRange(d,e,g.timeZone);C=yield l.seekRow(c,h,d.ValueType.DATETIME,b,void 0,void 0,a??!1);break}case j.dataType.DECIMAL:case j.dataType.INT:{if(!j.isBigDecimalType(h.type)&&!j.isBigIntegerType(h.type)){var S=parseInt(e,10);e==="-Infinity"?S=Number.NEGATIVE_INFINITY:e==="Infinity"&&(S=Number.POSITIVE_INFINITY),C=yield l.seekRow(c,h,d.ValueType.NUMBER,S,void 0,void 0,a??!1)}else C=yield l.seekRow(c,h,d.ValueType.STRING,e,void 0,void 0,a??!1);break}default:C=yield l.seekRow(c,h,d.ValueType.STRING,r.tableUtils.makeValue(h.type,e,g.timeZone),void 0,void 0,a??!1)}(f=r.grid)===null||f===void 0||f.setFocusRow(C),r.setState({gotoValueError:""})}catch{r.setState({gotoValueError:"invalid input"})}}}})()}handleCancelDownloadTable(){var e;(e=this.tableSaver)===null||e===void 0||e.cancelDownload(),this.setState({isTableDownloading:!1})}handleDownloadCompleted(){this.setState({isTableDownloading:!1,tableDownloadProgress:100,tableDownloadStatus:na.DOWNLOAD_STATUS.FINISHED})}handleDownloadCanceled(){this.setState({isTableDownloading:!1,tableDownloadProgress:0,tableDownloadStatus:na.DOWNLOAD_STATUS.CANCELED})}deleteRanges(e){var{model:t}=this.props;this.pending.add(t.delete(e)).catch(r=>{Te.isCanceled(r)||fe.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;A(t),A(r);var i=(e=this.gridWrapper)===null||e===void 0?void 0:e.getBoundingClientRect(),a=20;A(i);var{columnHeaderHeight:o,allColumnXs:s,allColumnWidths:l,width:d,columnHeaderMaxDepth:h}=t,c=s.get(r),m=l.get(r);A(c),A(m);var v=i.left+Be(c+m/2,a,d-a);return{top:i.top+(h-1)*o,left:i.left+Be(c+m/2,a,d-a),bottom:i.top+h*o,right:i.left+Be(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),h=s.get(e);if(d==null||h==null)return null;var c=Math.max(0,d),m=h;d+h>l?m=l-d:d<0&&(m=h-Math.abs(d));var v={position:"absolute",top:(a-1)*i,left:c,width:m,height:i,pointerEvents:"none"},f={clientWidth:1,clientHeight:i,getBoundingClientRect:this.getColumnBoundingRect},g={placement:"bottom",modifiers:{flip:{behavior:["bottom","top"]}}},p=this.getModelColumn(e);if(p==null)return null;var C=r.columns[p];return C==null?null:u.jsx("div",{style:v,children:u.jsx(pt,{timeout:400,interactive:!0,options:g,ref:this.handleTooltipRef,referenceObject:f,onExited:()=>{this.setState({shownColumnTooltip:null})},children:u.jsx(__,{model:r,column:C,onStatistics:()=>{var b;(b=this.tooltip)===null||b===void 0||b.update()}})},C.name)})}handleGotoValueSelectedColumnNameChanged(e){var t,{model:r}=this.props,i=(t=this.grid)===null||t===void 0?void 0:t.state.cursorRow;if(i!=null){var a=r.getColumnIndexByName(e),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:h,isStuckToBottom:c,isStuckToRight:m,model:v,name:f,onlyFetchVisibleColumns:g,alwaysFetchColumns:p,advancedSettings:C,onAdvancedSettingsChange:b,canDownloadCsv:S,onCreateChart:w}=this.props,{metricCalculator:E,metrics:T,isFilterBarShown:P,isSelectingPartition:D,isMenuShown:O,isReady:N,copyOperation:_,focusedFilterBarColumn:F,loadingText:x,loadingScrimProgress:L,loadingSpinnerShown:M,keyHandlers:U,mouseHandlers:V,shownColumnTooltip:z,hoverAdvancedFilter:Q,shownAdvancedFilter:Z,hoverSelectColumn:I,quickFilters:R,advancedFilters:k,partition:H,partitionFilters:K,partitionTable:ee,partitionColumn:W,searchFilter:te,selectDistinctColumns:ne,movedColumns:oe,movedRows:de,formatter:je,conditionalFormats:ct,conditionalFormatPreview:mt,conditionalFormatEditIndex:Xe,sorts:st,reverseType:Ot,customColumns:Ae,selectedRanges:_t,isTableDownloading:Bt,tableDownloadStatus:Er,tableDownloadProgress:Tr,tableDownloadEstimatedTime:nn,showSearchBar:On,searchValue:Hr,selectedSearchColumns:xt,invertSearchColumns:an,aggregationSettings:or,selectedAggregation:sr,rollupConfig:Nt,openOptions:$r,pendingSavePromise:on,pendingSaveError:Ur,pendingRowCount:lr,pendingDataErrors:fi,pendingDataMap:Dn,toastMessage:Un,frozenColumns:Br,columnHeaderGroups:sn,showOverflowModal:ea,overflowText:xa,overflowButtonTooltipProps:Ma,expandCellTooltipProps:Aa,linkHoverTooltipProps:La,isGotoShown:ka,gotoRow:at,gotoRowError:Is,gotoValueError:Eo,gotoValueSelectedColumnName:_s,gotoValue:ta,gotoValueSelectedFilter:xs}=this.state;if(!N)return null;var dr=this.getTheme(),Ms=this.getCachedFilter(l,R,k,K,te),To=E.getUserColumnWidths(),As=this.getCachedStateOverride(I,P,h,L,R,k,st,Ot,Nt,O),Ld=T?T.top:0,kd=T?T.bottomViewport:0,Ls=null,ks=null;g&&(Ls=T?T.left:0,ks=T?T.right:0);var jd=T!=null&&T.width>0&&T.height>0,js=((e=Nt==null||(t=Nt.columns)===null||t===void 0?void 0:t.length)!==null&&e!==void 0?e:0)>0,Hs=null,Hd=T?Math.min(Math.max(kn.minDebounce,Math.round(T.rowCount/200)),kn.maxDebounce):kn.maxDebounce;if(P&&F!=null&&T!=null){var{gridX:$d,gridY:Ud,allColumnXs:Bd,allColumnWidths:Bn,width:Po}=T,Dc=Bd.get(F),Rc=Bn.get(F);if(Dc!=null&&Rc!=null){var Vd,Gd,Wd,Nc=$d+Dc,Jb=Ud-((Vd=dr.filterBarHeight)!==null&&Vd!==void 0?Vd:0),eS=Rc+1,tS=((Gd=dr.filterBarHeight)!==null&&Gd!==void 0?Gd:0)-1,rS={top:Jb,left:Nc,minWidth:Math.min(eS,Po-Nc),height:tS},zd="",Fc=!0,Kd=this.getModelColumn(F);A(Kd);var Yd=R.get(Kd),Ic=k.get(Kd);Yd!=null&&(zd=Yd.text,Fc=Yd.filter!=null);var nS=R.size!==0||k.size!==0;Hs=u.jsx(UF,{ref:this.filterInputRef,style:rS,className:J({error:!Fc,active:zd!==""||Ic!=null,"iris-grid-has-filter":nS}),isAdvancedFilterSet:Ic!=null,onAdvancedFiltersTriggered:()=>{this.setState({shownAdvancedFilter:F})},onChange:this.handleFilterBarChange,onDone:this.handleFilterBarDone,onTab:this.handleFilterBarTab,onContextMenu:(Wd=this.grid)===null||Wd===void 0?void 0:Wd.handleContextMenu,debounceMs:Hd,value:zd},F)}}var _c=null;if(x!=null){var iS=u.jsxs("div",{className:"iris-grid-loading-status",children:[u.jsx("div",{className:J("iris-grid-loading-status-bar",{show:M}),children:x}),u.jsxs("button",{type:"button",onClick:this.handleCancel,className:J("iris-grid-btn-cancel",{show:M}),children:[u.jsx(re,{icon:ps,transform:"down-1"}),"Cancel"]})]}),aS=T?T.gridY:0;_c=u.jsx("div",{className:"iris-grid-loading",style:{top:aS},children:iS})}var xc=null;if(z!=null&&T){var qd;xc=this.getColumnTooltip(z,T,v),(qd=this.tooltip)===null||qd===void 0||qd.update()}var Mc=[];if(T&&P)for(var{gridX:oS,gridY:sS,visibleColumns:Ac,allColumnXs:lS,allColumnWidths:dS}=T,{filterBarHeight:Xd}=dr,uS=function(){var vt=Ac[Qd],gi=lS.get(vt),pi=dS.get(vt),Oo=r.getModelColumn(vt);if(Oo!=null){var Jd=v.isFilterable(Oo);if(Jd&&gi!=null&&pi!=null&&pi>0){var eu=oS+gi+pi-24,ja=sS-(Xd??0)+2,Do={position:"absolute",top:ja,left:eu},tu=k.get(Oo),$s=tu!=null,Ro=vt===Q||vt===F||$s,ru=u.jsx("div",{className:J("advanced-filter-button-container",{hidden:!Ro}),style:Do,children:Ro&&u.jsx(G,{kind:"ghost",className:J("btn-link-icon advanced-filter-button",{"filter-set":$s}),onClick:()=>{r.setState({shownAdvancedFilter:vt})},onContextMenu:nu=>{var iu;(iu=r.grid)===null||iu===void 0||iu.handleContextMenu(nu)},onMouseEnter:()=>{r.setState({hoverAdvancedFilter:vt})},onMouseLeave:()=>{r.setState({hoverAdvancedFilter:null})},children:u.jsxs("div",{className:"fa-layers",children:[u.jsx(re,{icon:Oh,className:"filter-solid"}),u.jsx(re,{icon:xl,className:"filter-light"})]})})},vt);Mc.push(ru)}}},Qd=0;Qd<Ac.length;Qd+=1)uS();var Lc=[];if(T)for(var{gridX:kc,visibleColumns:jc,allColumnXs:hS,allColumnWidths:cS,columnHeaderHeight:Hc}=T,mS=function(){var vt=jc[Zd],gi=hS.get(vt),pi=cS.get(vt);if(gi!=null&&pi!=null&&pi>0){var Oo=kc+gi,Jd=kc+gi+pi-20,eu=P?{position:"absolute",top:Hc,left:Jd,width:20,height:dr.filterBarHeight}:{position:"absolute",top:0,left:Oo,width:pi,height:Hc},ja=r.getModelColumn(vt);if(ja!=null){var Do=v.columns[ja];if(Do==null)return fe.warn("Column does not exist at index ".concat(ja," for column array of length ").concat(v.columns.length)),"continue";var tu=k.get(ja),{options:$s}=tu||{},Ro=j.getSortForColumn(v.sort,Do.name),ru=Ro?Ro.direction:null,nu=u.jsx("div",{className:"advanced-filter-menu-container",style:eu,children:u.jsx(ud,{className:"advanced-filter-menu-popper",onEntered:r.getAdvancedMenuOpenedHandler(vt),onExited:()=>{r.handleAdvancedMenuClosed(vt)},isShown:Z===vt,interactive:!0,closeOnBlur:!0,options:{positionFixed:!0},children:r.getCachedAdvancedFilterMenuActions(v,Do,$s,ru,je)})},vt);Lc.push(nu)}}},Zd=0;Zd<jc.length;Zd+=1)var vS=mS();var $c=this.getCachedOptionItems(w!==void 0&&v.isChartBuilderAvailable,v.isCustomColumnsAvailable,v.isFormatColumnsAvailable,v.isRollupAvailable,v.isTotalsAvailable||js,v.isSelectDistinctAvailable,v.isExportAvailable,this.toggleFilterBarAction,this.toggleSearchBarAction,this.toggleGotoRowAction,P,On,S,this.isTableSearchAvailable(),ka,C.size>0),Uc=this.getCachedHiddenColumns(E,To),fS=$r.map(Vt=>{switch(Vt.type){case Le.CHART_BUILDER:return u.jsx(Rx,{model:v,onChange:this.handleChartChange,onSubmit:this.handleChartCreate},Le.CHART_BUILDER);case Le.VISIBILITY_ORDERING_BUILDER:return u.jsx(tA,{model:v,movedColumns:oe,hiddenColumns:Uc,columnHeaderGroups:sn,onColumnVisibilityChanged:this.handleColumnVisibilityChanged,onReset:this.handleColumnVisibilityReset,onMovedColumnsChanged:this.handleMovedColumnsChanged,onColumnHeaderGroupChanged:this.handleHeaderGroupsChanged},Le.VISIBILITY_ORDERING_BUILDER);case Le.CONDITIONAL_FORMATTING:return u.jsx(TA,{rules:ct,onChange:this.handleConditionalFormatsChange,onCreate:this.handleConditionalFormatCreate,onSelect:this.handleConditionalFormatEdit});case Le.CONDITIONAL_FORMATTING_EDIT:return A(v.columns),A(this.handleConditionalFormatEditorUpdate),u.jsx(nL,{dh:v.dh,columns:v.columns,rule:mt,onUpdate:this.handleConditionalFormatEditorUpdate,onSave:this.handleConditionalFormatEditorSave,onCancel:this.handleConditionalFormatEditorCancel});case Le.CUSTOM_COLUMN_BUILDER:return u.jsx(Bx,{model:v,customColumns:Ae,onSave:this.handleUpdateCustomColumns,onCancel:this.handleMenuBack},Le.CUSTOM_COLUMN_BUILDER);case Le.ROLLUP_ROWS:return u.jsx(zx,{model:v,onChange:this.handleRollupChange,config:Nt},Le.ROLLUP_ROWS);case Le.AGGREGATIONS:return u.jsx(Y_,{settings:or,isRollup:js,onChange:this.handleAggregationsChange,onEdit:this.handleAggregationEdit});case Le.AGGREGATION_EDIT:return sr&&u.jsx(J_,{aggregation:sr,columns:v.originalColumns,onChange:this.handleAggregationChange});case Le.TABLE_EXPORTER:return u.jsx(na,{model:v,name:f,userColumnWidths:To,movedColumns:oe,isDownloading:Bt,tableDownloadStatus:Er,tableDownloadProgress:Tr,tableDownloadEstimatedTime:nn??void 0,onDownload:this.handleDownloadTable,onDownloadStart:this.handleDownloadTableStart,onCancel:this.handleCancelDownloadTable,selectedRanges:_t},Le.TABLE_EXPORTER);case Le.SELECT_DISTINCT:return u.jsx(CA,{model:v,selectDistinctColumns:ne,onChange:this.handleSelectDistinctChanged});case Le.ADVANCED_SETTINGS:return u.jsx(ac,{items:C,onChange:b});default:throw Error("Unexpected option type ".concat(Vt.type))}});return u.jsxs("div",{className:"iris-grid",role:"presentation",children:[u.jsxs("div",{className:"iris-grid-column",children:[s!=null&&u.jsx("div",{className:"iris-grid-bar",children:s}),u.jsx(Lr,{in:D,timeout:Je.transitionSlowMs,classNames:"iris-grid-bar-horizontal",onEnter:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExit:this.handleAnimationStart,onExited:this.handleAnimationEnd,mountOnEnter:!0,unmountOnExit:!0,children:u.jsx("div",{className:"iris-grid-partition-selector-wrapper iris-grid-bar iris-grid-bar-primary",children:ee&&W&&H!=null&&u.jsx(mA,{dh:v.dh,table:ee,getFormattedString:(Vt,vt,gi)=>v.displayString(Vt,vt,gi),columnName:W.name,partition:H,onChange:this.handlePartitionChange,onFetchAll:this.handlePartitionFetchAll,onAppend:this.handlePartitionAppend,onDone:this.handlePartitionDone})})}),u.jsx(Lr,{in:On,timeout:Je.transitionSlowMs,classNames:"iris-grid-bar-horizontal",onEnter:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExit:this.handleAnimationStart,onExited:this.handleAnimationEnd,mountOnEnter:!0,unmountOnExit:!0,children:u.jsx("div",{className:"iris-grid-bar",children:u.jsx(ll,{value:Hr,selectedColumns:xt,invertSelection:an,onChange:this.handleCrossColumnSearch,columns:v.columns,ref:this.crossColumnRef})})}),u.jsxs("div",{className:"grid-wrapper",ref:Vt=>{this.gridWrapper=Vt},children:[u.jsx(jN,{ref:Vt=>{this.grid=Vt},isStickyBottom:!nt(v)||!v.isEditable,isStuckToBottom:c,isStuckToRight:m,metricCalculator:E,model:v,keyHandlers:U,mouseHandlers:V,movedColumns:oe,movedRows:de,onError:this.handleGridError,onViewChanged:this.handleViewChanged,onSelectionChanged:this.handleSelectionChanged,onMovedColumnsChanged:this.handleMovedColumnsChanged,renderer:this.renderer,stateOverride:As,theme:dr}),u.jsx(iL,{isOpen:ea,text:xa,onClose:this.handleOverflowClose}),jd&&u.jsx(v_,{model:v,modelColumns:v.columns,top:Ld,bottom:kd,left:Ls,right:ks,filter:Ms,formatter:je,sorts:st,reverseType:Ot,movedColumns:oe,customColumns:Ae,hiddenColumns:Uc,alwaysFetchColumns:this.getAlwaysFetchColumns(p,v.columns,oe,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,ct,mt,((o=$r[$r.length-1])===null||o===void 0?void 0:o.type)===Le.CONDITIONAL_FORMATTING_EDIT?Xe??void 0:void 0),rollupConfig:this.getModelRollupConfig(v.originalColumns,Nt,or),totalsConfig:this.getModelTotalsConfig(v.columns,Nt,or),selectDistinctColumns:ne,pendingRowCount:lr,pendingDataMap:Dn,frozenColumns:Br,columnHeaderGroups:sn}),!O&&u.jsx("div",{className:"grid-settings-button",children:u.jsx(G,{kind:"ghost","data-testid":"btn-iris-grid-settings-button-".concat(f),onClick:this.handleMenu,icon:u.jsx(re,{icon:xw,transform:"up-1"}),tooltip:"Table Options"})}),Hs,_c,Mc,xc,Lc,Ma&&this.getOverflowButtonTooltip(Ma),Aa&&this.getExpandCellTooltip(Aa),La&&this.getLinkHoverTooltip(La)]}),u.jsx(sL,{model:v,isShown:ka,gotoRow:at,gotoRowError:Is,gotoValueError:Eo,onGotoRowSubmit:this.handleGotoRowSelectedRowNumberSubmit,onGotoRowNumberChanged:this.handleGotoRowSelectedRowNumberChanged,onClose:this.handleGotoRowClosed,onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:()=>{this.handleAnimationStart(),this.focus()},onExited:this.handleAnimationEnd,gotoValueSelectedColumnName:_s,gotoValue:ta,gotoValueFilter:xs,onGotoValueSelectedColumnNameChanged:this.handleGotoValueSelectedColumnNameChanged,onGotoValueSelectedFilterChanged:this.handleGotoValueSelectedFilterChanged,onGotoValueChanged:this.handleGotoValueChanged,onGotoValueSubmit:this.handleGotoValueSubmitted}),u.jsx(wF,{error:Ur,isSaving:on!=null,saveTooltip:"Commit (".concat(this.commitAction.shortcut.getDisplayText(),")"),discardTooltip:"Discard (".concat(this.discardAction.shortcut.getDisplayText(),")"),pendingDataErrors:fi,pendingDataMap:Dn,onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:this.handleAnimationStart,onExited:this.handleAnimationEnd,onSave:this.handlePendingCommitClicked,onDiscard:this.handlePendingDiscardClicked}),u.jsx(u_,{children:Un}),u.jsx(jF,{model:v,copyOperation:_??void 0,onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:this.handleAnimationStart,onExited:this.handleAnimationEnd}),u.jsx(pr,{dh:v.dh,ref:Vt=>{this.tableSaver=Vt},getDownloadWorker:d,onDownloadCompleted:this.handleDownloadCompleted,onDownloadCanceled:this.handleDownloadCanceled,onDownloadProgressUpdate:this.handleDownloadProgressUpdate,isDownloading:Er===na.DOWNLOAD_STATUS.DOWNLOADING,formatter:je})]}),u.jsx(Lr,{in:O,timeout:Je.transitionMidMs,classNames:"slide-left",onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:this.handleAnimationStart,onExited:this.handleAnimationEnd,mountOnEnter:!0,unmountOnExit:!0,children:u.jsx("div",{className:"table-sidebar",children:u.jsxs(dy,{children:[u.jsx(em,{title:"Table Options",onClose:this.handleMenuClose,children:u.jsx(hp,{onSelect:Vt=>this.handleMenuSelect($c[Vt]),items:$c})}),fS.map((Vt,vt)=>u.jsx(em,{title:$r[vt].title,onBack:this.handleMenuBack,onClose:this.handleMenuClose,children:Vt},$r[vt].type))]})})}),u.jsx(se,{actions:this.contextActions})]})}}ce(kn,"minDebounce",150);ce(kn,"maxDebounce",500);ce(kn,"loadingSpinnerDelay",800);ce(kn,"defaultProps",{children:null,advancedFilters:Zn,advancedSettings:Zn,alwaysFetchColumns:ke,conditionalFormats:ke,customColumnFormatMap:Zn,isFilterBarShown:!1,applyInputFiltersOnInit:!1,movedColumns:ke,movedRows:ke,inputFilters:ke,customFilters:ke,onCreateChart:void 0,onColumnSelected:()=>{},onDataSelected:()=>{},onError:()=>{},onStateChange:()=>{},onPartitionAppend:()=>{},onAdvancedSettingsChange:()=>{},partition:null,partitionColumn:null,quickFilters:Zn,selectDistinctColumns:ke,sorts:ke,reverseType:j.REVERSE_TYPE.NONE,customColumns:ke,aggregationSettings:ub,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:ya.FULL_DATE_FORMAT,showTimeZone:!1,showTSeparator:!0,truncateNumbersWithPound:!1,formatter:ke,decimalFormatOptions:Y.shape({defaultFormatString:Y.string}),integerFormatOptions:Y.shape({defaultFormatString:Y.string})},canCopy:!0,canDownloadCsv:!0,frozenColumns:null,theme:YC,canToggleSearch:!0});const hb=kn;function Du(n,e,t){return e=fL(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function fL(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 pL extends Error{constructor(e,t){super("".concat(t," can't be empty (on pending row ").concat(e+1,")")),Du(this,"isMissingKey",!0),Du(this,"rowIndex",void 0),Du(this,"columnName",void 0),this.rowIndex=e,this.columnName=t}}const CL=pL;function Af(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 ul(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Af(Object(t),!0).forEach(function(r){_e(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Af(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Lf(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){Lf(a,r,i,o,s,"next",l)}function s(l){Lf(a,r,i,o,s,"throw",l)}o(void 0)})}}function _e(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 lt=ae.module("IrisGridTableModel"),wL=150,yL=0,EL=[];function ba(n){return n.table!==void 0}class so 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 yn(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",Ce(s=>{var l;if(!s)return[];var d=[],{groupMap:h}=ye.parseColumnHeaderGroups(this,(l=s?.columnGroups)!==null&&l!==void 0?l:[]),c=(E,T)=>{var P=this.getColumnIndexByName(E);if(P==null)throw new Error("Unknown layout hint column: ".concat(E));var D=B.getVisibleIndex(P,d);d=B.moveItem(D,T,d)},m=(E,T)=>{var P=h.get(E);if(P==null)throw new Error("Unknown layout hint group: ".concat(E));var D=P.getVisibleRange(d);d=B.moveRange(D,T,d)},{frontColumns:v=[],backColumns:f=[],frozenColumns:g=[]}=s;if(v.length||f.length||g.length){var p=new Set,C=0;g.forEach(E=>{if(p.has(E))throw new Error("Column specified in multiple layout hints: ".concat(E));c(E,C),C+=1}),v.forEach(E=>{if(p.has(E))throw new Error("Column specified in multiple layout hints: ".concat(E));c(E,C),C+=1});var b=this.columnMap.size-1;f.forEach(E=>{if(p.has(E))throw new Error("Column specified in multiple layout hints: ".concat(E));c(E,b),b-=1})}var S=s?.columnGroups;if(S){var w=[...h.values()];w.sort((E,T)=>E.depth-T.depth),w.forEach(E=>{var T=E.children[0],P=this.getColumnIndexByName(T),D;if(P!=null)D=B.getVisibleIndex(P,d);else{var O=h.get(T);if(!O)throw new Error("Unknown column ".concat(T," in group ").concat(E.name));var N=O.getVisibleRange(d);[,D]=N}for(var _=1;_<E.children.length;_+=1){var F=E.children[_],x=h.get(F),L=this.getColumnIndexByName(F);if(x){var M=x.getVisibleRange(d)[0]<D,U=M?D-x.childIndexes.length+1:D+1;m(F,U),D=U+x.childIndexes.length-1}else if(L!=null){var V=B.getVisibleIndex(L,d)<D,z=V?D:D+1;c(F,z),D=z}}})}return this._movedColumns=d,d})),_e(this,"getMemoizedInitialColumnHeaderGroups",Ce(s=>{var l;return ye.parseColumnHeaderGroups(this,(l=s?.columnGroups)!==null&&l!==void 0?l:[]).groups})),_e(this,"getMemoizedColumnMap",Ce(s=>{var l=new Map;return s.forEach(d=>l.set(d.name,d)),l})),_e(this,"getColumnIndicesByNameMap",Ce(s=>{var l=new Map;return s.forEach((d,h)=>{var{name:c}=d;return l.set(c,h)}),l})),_e(this,"setViewport",Ki((s,l,d)=>{if(l<s){lt.error("Invalid viewport",s,l);return}var{viewport:h}=this;if(h!=null&&h.top===s&&h.bottom===l&&h.columns===d){lt.debug2("Ignoring duplicate viewport",h);return}this.viewport={top:s,bottom:l,columns:d},lt.debug2("setViewport",this.viewport),this.applyViewport()},wL)),_e(this,"applyViewport",Ki(()=>{if(this.viewport){lt.debug2("applyViewport",this.viewport);var{top:s,bottom:l,columns:d}=this.viewport,[h,c]=this.getCachedViewportRowRange(s,l);this.applyBufferedViewport(h,c,d)}},yL,{leading:!1})),_e(this,"getCachedFormattedString",En((s,l,d,h,c)=>s.getFormattedString(l,d,h,c),{max:1e4})),_e(this,"getCachedCustomColumnFormatFlag",En(oi.isCustomColumnFormatDefined,{max:1e4})),_e(this,"getCachedViewportRowRange",Ce((s,l)=>{var d=l-s,h=Math.max(0,s-d*so.ROW_BUFFER_PAGES),c=l+d*so.ROW_BUFFER_PAGES;return[h,c]})),_e(this,"getCachedPendingErrors",Ce((s,l,d)=>{var h=new Map;return s.forEach((c,m)=>{for(var{data:v}=c,f=0;f<d;f+=1)if(!v.has(f)){var g;h.has(m)||h.set(m,[]),(g=h.get(m))===null||g===void 0||g.push(new CL(m,l[f].name))}}),h})),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 j(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 Ze(Se.EVENT.DISCONNECT))}handleTableReconnect(){this.dispatchEvent(new Ze(Se.EVENT.RECONNECT))}handleTableUpdate(e){this.copyViewportData(e.detail),this.dispatchEvent(new Ze(Se.EVENT.UPDATED))}handleTotalsUpdate(e){this.copyTotalsData(e.detail),this.dispatchEvent(new Ze(Se.EVENT.UPDATED))}handleRequestFailed(e){this.dispatchEvent(new Ze(Se.EVENT.REQUEST_FAILED,e))}handleCustomColumnsChanged(){this.dispatchEvent(new Ze(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 Ze(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 Ze(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 h=this.formatForCell(e,t);h?.formatString!=null&&(d=h)}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(j.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(j.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 A(r.nullStringColor),r.nullStringColor;if(a&&a.color)return a.color;if(this.isPendingRow(t))return A(r.pendingTextColor),r.pendingTextColor;if(o!=null){var s,l=(s=this.totalsColumn(e,t))!==null&&s!==void 0?s:this.columns[e];if(j.isDateType(l.type)||l.name==="Date")return A(r.dateColor),r.dateColor;if(j.isNumberType(l.type))return o>0?(A(r.positiveNumberColor),r.positiveNumberColor):o<0?(A(r.negativeNumberColor),r.negativeNumberColor):(A(r.zeroNumberColor),r.zeroNumberColor)}}else if(this.isPendingRow(t)&&this.isKeyColumn(e))return A(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 j.isNumberType(r)?"right":j.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 bu(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(bu(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(bu(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 EL}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,h,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,f=this.totalsRow(e);if(f!=null){var g,p,C,b=(g=this.totals)===null||g===void 0?void 0:g.operationOrder[f];return A(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 w;return(w=this.pendingNewDataMap.get(S))!==null&&w!==void 0?w:null}var E=(s=(l=this.viewportData)===null||l===void 0?void 0:l.offset)!==null&&s!==void 0?s:0,T=(v?e-m:e)-E;return(d=(h=this.viewportData)===null||h===void 0||(c=h.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:Ue.SUM,h=this.columns[e];return(o=this.totalsTable)===null||o===void 0?void 0:o.columns.find(c=>{var m;return c.name==="".concat(h.name,"__").concat(l)||(l===d||((m=this.totals)===null||m===void 0?void 0:m.operationOrder.length)===1)&&c.name===h.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){lt.warn("invalid data!");return}this.viewportData=this.extractViewportData(e),this.formattedStringData=[]}copyTotalsData(e){var t,r,i,a=this;if(e==null){lt.warn("invalid data!");return}var{columns:o,rows:s}=e;if(s.length!==1){lt.error("Unexpected number of rows received for totals table, ignoring update");return}for(var l=new Map,d=s[0],h=(t=(r=this.totals)===null||r===void 0?void 0:r.defaultOperation)!==null&&t!==void 0?t:Ue.SUM,c=(i=this.totals)===null||i===void 0?void 0:i.operationMap,m=function(){var g,p,C=o[v],[b,S=(g=c==null||(p=c[b])===null||p===void 0?void 0:p[0])!==null&&g!==void 0?g:h]=C.name.split("__");l.has(S)||l.set(S,{data:new Map});var{data:w}=l.get(S),E=a.columns.findIndex(T=>T.name===b);w.set(E,{value:d.get(C),format:d.getFormat(C)})},v=0;v<o.length;v+=1)m();lt.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);A(o),r.set(o,{value:e.get(a),format:e.getFormat(a)})}return{data:r}}closeSubscription(){lt.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 Ze(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(lt.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 Ze(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)||(lt.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new Ze(Se.EVENT.REQUEST_FAILED,{detail:t})))})}}setTotalsTable(e){lt.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){lt.debug2("applyBufferedViewport",e,t,r),this.subscription==null?(lt.debug2("applyBufferedViewport creating new subscription"),this.subscription=this.table.setViewport(e,t,r)):(lt.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]:O=>O,o=t.length>3&&t[3]!==void 0?t[3]:!0;if(r.subscription==null)throw new Error("No subscription available");var s=o?ie.consolidate(e):e;if(!ye.isValidSnapshotRanges(s))throw new Error("Invalid snapshot ranges ".concat(e));for(var l=new Set,d=[],h=new Set,c=0;c<s.length;c+=1){var m=s[c];A(m.endRow),A(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 ie(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 f=Math.max(m.startRow,r.floatingTopRowCount+r.table.size);f<=m.endRow&&f<r.floatingTopRowCount+r.table.size+r.floatingBottomRowCount;f+=1)h.add(f)}var g=ye.columnsFromRanges(s,r.columns),p=[];i&&p.push(g.map(O=>O.name));for(var C=[...l].sort(),b=function*(){var N=C[S],_=g.map(F=>{var x=r.getColumnIndexByName(F.name);return A(x),a(r.valueForCell(x,N),F)});i&&_.push(r.textForRowFooter(N)),p.push(_)},S=0;S<C.length;S+=1)yield*b();if(d.length>0){var w=r.irisGridUtils.rangeSetFromRanges(d),E=yield r.subscription.snapshot(w,g);p.push(...E.rows.map(O=>g.map(N=>a(O.get(N),N))))}for(var T=[...h].sort(),P=function*(){var N=T[D],_=g.map(F=>{var x=r.getColumnIndexByName(F.name);return A(x),a(r.valueForCell(x,N),F)});i&&_.push(r.textForRowFooter(N)),p.push(_)},D=0;D<T.length;D+=1)yield*P();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);lt.debug2("textSnapshot",e,i);var o=yield r.snapshot(e,i,a,!1);return o.map(s=>s.join(" ")).join(`
|
|
33
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||!ie.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 ie(null,this.floatingTopRowCount,null,this.floatingTopRowCount+this.table.size-1)}getPendingAreaRange(){return new ie(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 ie(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=[];ie.forEachCell(e,(g,p)=>{var C=r.columns[g];if(i.add(C),a[g]===void 0){var b=r.tableUtils.makeValue(C.type,t,r.formatter.timeZone);a[g]=b!=null?r.displayString(b,C.type,C.name):null}r.cachePendingValue(g,p,a[g])});var o=r.getPendingAreaRange(),s=e.map(g=>ie.intersection(o,g)).filter(g=>g!=null).map(g=>(A(g),ie.offset(g,0,-(r.floatingTopRowCount+r.table.size))));if(s.length>0){var l=new Map(r.pendingNewDataMap);ie.forEachCell(s,(g,p)=>{l.has(p)||l.set(p,{data:new Map});var C=r.columns[g],b=l.get(p);A(b);var{data:S}=b,w=new Map(S),E=r.tableUtils.makeValue(C.type,t,r.formatter.timeZone);E!=null?w.set(g,{value:E}):w.delete(g),w.size>0?l.set(p,ul(ul({},b),{},{data:w})):l.delete(p)}),r.pendingDataMap=l}r.dispatchEvent(new Ze(Se.EVENT.UPDATED));var d=r.getTableAreaRange(),h=e.map(g=>ie.intersection(d,g)).filter(g=>g!=null);if(h.length>0){var c,m=yield r.snapshot(h.map(g=>{var p,C;return new ie(null,(p=g?.startRow)!==null&&p!==void 0?p:null,null,(C=g?.endRow)!==null&&C!==void 0?C:null)})),v=m.map(g=>{for(var p={},C=0;C<r.columns.length;C+=1)p[r.columns[C].name]=g[C];return i.forEach(b=>{p[b.name]=r.tableUtils.makeValue(b.type,t,r.formatter.timeZone)}),p}),f=yield(c=r.inputTable)===null||c===void 0?void 0:c.addRows(v);lt.debug("setValueForRanges(",e,",",t,") set tableRanges",h,"result",f)}ie.forEachCell(e,(g,p)=>{var C=a[g];A(C),r.cacheFormattedValue(g,p,C)})}catch(g){lt.error("Unable to set ranges",e,t,g)}finally{ie.forEachCell(e,(g,p)=>{r.clearPendingValue(g,p)})}})()}setValues(){var e=arguments,t=this;return Oi(function*(){var r=e.length>0&&e[0]!==void 0?e[0]:[];if(lt.debug("setValues(",r,")"),!r.every(v=>{var f,g;return t.isEditableRange(ie.makeCell((f=v.column)!==null&&f!==void 0?f:v.x,(g=v.row)!==null&&g!==void 0?g:v.y))}))throw new Error("Uneditable ranges ".concat(r));try{var i=new Map(t.pendingNewDataMap);r.forEach(v=>{var f,g,{text:p}=v,C=(f=v.column)!==null&&f!==void 0?f:v.x,b=(g=v.row)!==null&&g!==void 0?g:v.y,S=t.columns[C],w=t.tableUtils.makeValue(S.type,p,t.formatter.timeZone),E=w!=null?t.displayString(w,S.type,S.name):null;t.cachePendingValue(C,b,E);var T=t.pendingRow(b);if(T!=null){i.has(T)||i.set(T,{data:new Map});var P=i.get(T);A(P);var{data:D}=P,O=new Map(D);w!=null?O.set(C,{value:w}):O.delete(C),O.size>0?i.set(T,ul(ul({},P),{},{data:O})):i.delete(T)}}),t.pendingDataMap=i,t.dispatchEvent(new Ze(Se.EVENT.UPDATED));var a=r.reduce((v,f)=>{var g,p,C=(g=f.row)!==null&&g!==void 0?g:f.y;return v.has(C)||v.set(C,[]),(p=v.get(C))===null||p===void 0||p.push(f),v},new Map),o=ie.consolidate(r.map(v=>{var f,g;return ie.makeCell((f=v.column)!==null&&f!==void 0?f:v.x,(g=v.row)!==null&&g!==void 0?g:v.y)})),s=t.getTableAreaRange(),l=o.map(v=>ie.intersection(s,v)).filter(v=>v!=null);if(l.length>0){var d,h=yield t.snapshot(l.map(v=>(A(v),new ie(null,v.startRow,null,v.endRow)))),c=h.map((v,f)=>{for(var g=null,p=f,C=0;C<l.length;C+=1){var b=l[C];A(b);var S=ie.rowCount([b]);if(p<S){A(b.startRow),g=b.startRow+p;break}p-=S}for(var w={},E=0;E<t.columns.length;E+=1)w[t.columns[E].name]=v[E];A(g);var T=a.get(g);return T?.forEach(P=>{var D,O=t.columns[(D=P.column)!==null&&D!==void 0?D:P.x];w[O.name]=t.tableUtils.makeValue(O.type,P.text,t.formatter.timeZone)}),w});lt.info("setValues setting tableRanges",l);var m=yield(d=t.inputTable)===null||d===void 0?void 0:d.addRows(c);lt.info("setValues set tableRanges",l,"SUCCESS",m)}r.forEach(v=>{var f,g,{text:p}=v,C=(f=v.column)!==null&&f!==void 0?f:v.x,b=(g=v.row)!==null&&g!==void 0?g:v.y,S=t.columns[C],w=t.tableUtils.makeValue(S.type,p,t.formatter.timeZone),E=w!=null?t.displayString(w,S.type,S.name):null;t.cacheFormattedValue(C,b,E)})}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,h)=>{var{value:c}=d,m=e.columns[h];l[m.name]=c}),a.push(l)});var o=yield(t=e.inputTable)===null||t===void 0?void 0:t.addRows(a);lt.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 Ze(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));A(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=>ie.intersection(i,p)).filter(p=>p!=null).map(p=>(A(p),ie.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];A(l.startRow),A(l.endRow);for(var d=l.startRow;d<=l.endRow;d+=1)o.delete(d)}t.pendingNewDataMap=o,t.formattedStringData=[],t.dispatchEvent(new Ze(Se.EVENT.PENDING_DATA_UPDATED)),t.dispatchEvent(new Ze(Se.EVENT.UPDATED))}var h=t.getTableAreaRange(),c=e.map(p=>ie.intersection(h,p)).filter(p=>p!=null);if(!(c.length<=0)){var[m,v]=yield Promise.all([t.snapshot(c.map(p=>(A(p),new ie(0,p.startRow,r.length-1,p.endRow)))),t.table.copy()]),f=m.map(p=>{for(var C=[],b=0;b<r.length;b+=1){var S=r[b],w=p[b],E=t.tableUtils.makeFilterRawValue(S.type,w),T=S.filter().eq(E);C.push(T)}return C.reduce((P,D)=>{var O;return(O=P?.and(D))!==null&&O!==void 0?O:D})}),g=f.reduce((p,C)=>{var b;return(b=p?.or(C))!==null&&b!==void 0?b:C});v.applyFilter([g]),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(so,"ROW_BUFFER_PAGES",1);function kf(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 Ru(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){kf(a,r,i,o,s,"next",l)}function s(l){kf(a,r,i,o,s,"throw",l)}o(void 0)})}}function aa(n,e,t){return e=TL(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function TL(n){var e=PL(n,"string");return typeof e=="symbol"?e:String(e)}function PL(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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=ae.module("IrisGridTableModel");class OL extends so{constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new yn(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e,t,r,i),aa(this,"userFrozenColumns",void 0),aa(this,"customColumnList",void 0),aa(this,"formatColumnList",void 0),aa(this,"getMemoizedFrontColumns",Ce(a=>a??[])),aa(this,"getMemoizedBackColumns",Ce(a=>a??[])),aa(this,"getMemoizedFrozenColumns",Ce((a,o)=>{var s;return(s=o??a)!==null&&s!==void 0?s:[]})),aa(this,"getCachedFilterableColumnSet",Ce(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 Ze(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 Ze(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 Ze(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 Ru(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 Ru(function*(){var a;if(!i.isDeletableRanges(e))throw new Error("Undeletable ranges ".concat(e));A(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=>ie.intersection(s,S)).filter(S=>S!=null).map(S=>(A(S),ie.offset(S,0,-(i.floatingTopRowCount+i.table.size))));if(l.length>0){for(var d=new Map(t()),h=0;h<l.length;h+=1){var c=l[h];A(c.startRow),A(c.endRow);for(var m=c.startRow;m<=c.endRow;m+=1)d.delete(m)}r(d),i.formattedStringData=[],i.dispatchEvent(new Ze(Se.EVENT.PENDING_DATA_UPDATED)),i.dispatchEvent(new Ze(Se.EVENT.UPDATED))}var v=i.getTableAreaRange(),f=e.map(S=>ie.intersection(v,S)).filter(S=>S!=null);if(!(f.length<=0)){var[g,p]=yield Promise.all([i.snapshot(f.map(S=>(A(S),new ie(0,S.startRow,o.length-1,S.endRow)))),i.table.copy()]),C=g.map(S=>{for(var w=[],E=0;E<o.length;E+=1){var T=o[E],P=S[E],D=i.tableUtils.makeFilterRawValue(T.type,P),O=T.filter().eq(D);w.push(O)}return w.reduce((N,_)=>{var F;return(F=N?.and(_))!==null&&F!==void 0?F:_})}),b=C.reduce((S,w)=>{var E;return(E=S?.or(w))!==null&&E!==void 0?E:w});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 Ru(function*(){return l.table.seekRow(e,t,r,i,a,o,s)})()}get isSeekRowAvailable(){return this.table.seekRow!=null}}const cb=OL;function jf(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){jf(a,r,i,o,s,"next",l)}function s(l){jf(a,r,i,o,s,"throw",l)}o(void 0)})}}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 $f(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){mb(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 mb(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)}class FL extends so{constructor(){super(...arguments),mb(this,"getCachedFilterableColumnSet",Ce((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 $f($f({},super.extractViewportRow(e,t)),{},{isExpanded:r,hasChildren:i,depth:a})}snapshot(e,t,r){var i=this;return DL(function*(){var a;A(i.viewport),A(i.viewportData);var{columns:o}=i.viewport,s=[];t!=null&&t&&s.push(o.map(p=>p.name));for(var l=new ie(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 h=ie.intersection(l,e[d]);A(h),A(h.startRow),A(h.endRow);for(var c=h.startRow;c<=h.endRow;c+=1){var m=[],v=i.viewportData.rows[c-i.viewportData.offset];A(h.startColumn),A(h.endColumn);for(var f=h.startColumn;f<=h.endColumn;f+=1){var g;A(r),m.push(r((g=v.data.get(f))===null||g===void 0?void 0:g.value,i.columns[f]))}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 IL=FL;function Uf(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){Uf(a,r,i,o,s,"next",l)}function s(l){Uf(a,r,i,o,s,"throw",l)}o(void 0)})}}function Re(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=ML(n,"string");return typeof e=="symbol"?e:String(e)}function ML(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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=ae.module("IrisGridProxyModel");function Nu(n,e,t,r){return j.isTreeTable(e)?new IL(n,e,t):new cb(n,e,t,r)}class AL extends Se{constructor(e,t){var r,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new yn(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=Nu(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 Ze(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 Ze(Se.EVENT.COLUMNS_CHANGED,{detail:e.columns})),ba(e)&&this.dispatchEvent(new Ze(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 Ze(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(!ht(e,this.rollup)){this.rollup=e;var t=Promise.resolve(this.originalModel);ba(this.originalModel)&&e!=null&&(t=this.originalModel.table.rollup(e).then(r=>Nu(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);ba(this.originalModel)&&t.length>0&&(r=this.originalModel.table.selectDistinct(t).then(i=>Nu(this.dh,i,this.formatter))),this.setNextModel(r)}get table(){if(ba(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(j.isTreeTable(this.model))throw new Error("TreeTable has no 'export' property");return this.model.export()}columnStatistics(e){if(j.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 _L(function*(){return l.model.seekRow(e,t,r,i,a,o,s)})()}get isSeekRowAvailable(){return this.model.isSeekRowAvailable}}const LL=AL;function Bf(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 kL(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){Bf(a,r,i,o,s,"next",l)}function s(l){Bf(a,r,i,o,s,"throw",l)}o(void 0)})}}class jL{static makeModel(e,t){var r=arguments;return kL(function*(){var i=r.length>2&&r[2]!==void 0?r[2]:new yn(e),a=null;return!j.isTreeTable(t)&&t.hasInputTable&&(a=yield t.inputTable()),new LL(e,t,i,a)})()}}const HL=jL;function oc(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=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 Od{}oc(Od,"OPEN","ChartEvent.OPEN");oc(Od,"CLOSE","ChartEvent.CLOSE");oc(Od,"COLUMN_SELECTED","ChartEvent.COLUMN_SELECTED");const hh=Od;function Rs(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=VL(n,"string");return typeof e=="symbol"?e:String(e)}function VL(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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{}Rs(bo,"SESSION_OPENED","ConsoleEvent.SESSION_OPENED");Rs(bo,"SESSION_CLOSED","ConsoleEvent.SESSION_CLOSED");Rs(bo,"FOCUS_HISTORY","ConsoleEvent.FOCUS_HISTORY");Rs(bo,"SEND_COMMAND","ConsoleEvent.SEND_COMMAND");Rs(bo,"SETTINGS_CHANGED","ConsoleEvent.SETTINGS_CHANGED");const Ar=bo;function Ji(n,e,t){return e=GL(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function GL(n){var e=WL(n,"string");return typeof e=="symbol"?e:String(e)}function WL(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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{}Ji(ci,"TABLE_CHANGED","InputFilterEvent.TABLE_CHANGED");Ji(ci,"COLUMNS_CHANGED","InputFilterEvent.COLUMNS_CHANGED");Ji(ci,"FILTERS_CHANGED","InputFilterEvent.FILTERS_CHANGED");Ji(ci,"CLEAR_ALL_FILTERS","InputFilterEvent.CLEAR_ALL_FILTERS");Ji(ci,"COLUMN_SELECTED","InputFilterEvent.COLUMN_SELECTED");Ji(ci,"OPEN_DROPDOWN","InputFilterEvent.OPEN_DROPDOWN");Ji(ci,"OPEN_INPUT","InputFilterEvent.OPEN_INPUT");Ji(ci,"OPEN_FILTER_SET_MANAGER","InputFilterEvent.OPEN_FILTER_SET_MANAGER");const it=ci;function So(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=KL(n,"string");return typeof e=="symbol"?e:String(e)}function KL(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 gn=Ia,vb=Object.freeze({OPEN:"MarkdownEvent.OPEN"});function mi(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=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 $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 Ke=$n;function wo(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 _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 hl=_a;function ZL(n,e,t){return e=JL(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function JL(n){var e=e1(n,"string");return typeof e=="symbol"?e:String(e)}function e1(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 fb extends y.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,h;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=((h=t[r])===null||h===void 0?void 0:h.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,h,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=!!(!((h=t[i])===null||h===void 0||(c=h.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:se.groups.low,action:this.handleCloseTab,disabled:s===void 0||!s}),o.push(()=>({title:"Close Tabs to Right",order:20,group:se.groups.low,action:this.handleCloseTabsRight,disabled:this.canCloseTabsRight()})),o.push(()=>({title:"Close All",order:30,group:se.groups.low,action:this.handleCloseTabsAll,disabled:this.canCloseAny()})),u.jsx(se,{actions:o})}}ZL(fb,"defaultProps",{additionalActions:[]});const t1=fb;function gb(n,e,t){return e=r1(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function r1(n){var e=n1(n,"string");return typeof e=="symbol"?e:String(e)}function n1(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 pb extends y.PureComponent{constructor(e){super(e),gb(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=he.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 u.jsxs("form",{className:J("p-3",{"was-validated":a}),onSubmit:this.handleRenameSubmit,noValidate:!0,role:"presentation",onMouseDown:o=>{o.stopPropagation()},onMouseUp:o=>{o.stopPropagation()},children:[u.jsxs("div",{className:"form-group",children:[u.jsxs("label",{htmlFor:"rename-dialog-".concat(r,"-input"),children:["Rename ",r]}),u.jsx("input",{type:"text",className:"form-control",id:"rename-dialog-".concat(r,"-input"),value:i??void 0,ref:this.renameInputRef,onChange:this.handleRenameInputChange,required:!0}),u.jsxs("div",{className:"invalid-feedback",children:[r," name cannot be empty"]}),(e||!t)&&u.jsxs("div",{className:"pt-2",children:["Renaming this ",r," will rename for all users."]})]}),u.jsxs("div",{className:"text-right",children:[u.jsx(G,{kind:"secondary",className:"mr-2",onClick:this.handleRenameCancel,children:"Cancel"}),u.jsx(G,{kind:"primary",type:"submit",children:"Rename"})]})]})}render(){var{isShown:e,onCancel:t}=this.props;return u.jsx(ud,{isShown:e,onEntered:this.handleRenameDialogOpened,onExited:t,options:{placement:"bottom"},interactive:!0,closeOnBlur:!0,children:this.renderRenameDialog()})}}gb(pb,"defaultProps",{isShared:!1,isOwner:!0,itemType:"Item",value:""});function Cb(n,e,t){return e=i1(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function i1(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 o1=ae.module("Panel");class bb extends y.PureComponent{constructor(e){super(e),Cb(this,"getAdditionActions",Ce((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:X.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(Ar.SESSION_CLOSED,this.handleSessionClosed),r.on(Ar.SESSION_OPENED,this.handleSessionOpened),r.on(hl.focus,this.handleTabFocus),r.on(hl.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(Ar.SESSION_CLOSED,this.handleSessionClosed),r.off(Ar.SESSION_OPENED,this.handleSessionOpened),r.off(hl.focus,this.handleTabFocus),r.off(hl.blur,this.handleTabBlur),r.off(it.CLEAR_ALL_FILTERS,this.handleClearAllFilters),r.emit(Ee.UNMOUNT,e)}handleTab(e){e!=null&&this.setState({title:X.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=X.getRootFromContainer(t),i=X.getComponentConfigFromContainer(t);A(i),X.renameComponent(r,i,e)}handleCopyPanel(){var{glContainer:e,glEventHub:t}=this.props,r=X.getRootFromContainer(e),i=X.getComponentConfigFromContainer(e);if(i==null){o1.error("Could not get component config from container",e);return}var a=X.cloneComponent(r,i);a!==null&&t.emit(Ee.CLONED,this,a)}getCloneAction(){return{title:"Copy Panel",order:10,group:se.groups.high,action:this.handleCopyPanel}}getRenameAction(){return{title:"Rename",order:10,group:se.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:h}=this.props,{tab:c}=i,{showRenameDialog:m,title:v}=this.state;return u.jsxs("div",{className:J("h-100 w-100 iris-panel",t),onFocusCapture:this.handleFocus,onBlurCapture:this.handleBlur,children:[e,u.jsx(td,{errorMessage:o,isLoaded:s,isLoading:l}),c!=null&&wh.createPortal(u.jsxs(u.Fragment,{children:[u.jsx(t1,{glContainer:i,additionalActions:this.getAdditionActions(a,d,h)}),h&&u.jsx(pb,{isShown:m,value:v,itemType:"Panel",onCancel:this.handleRenameCancel,onSubmit:this.handleRenameSubmit}),r!=null&&u.jsx(pt,{interactive:!0,options:{placement:"bottom"},popperClassName:"panel-tab-popper",children:r()})]}),c.element[0])]})}}Cb(bb,"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=bb;function Dd(n){var{widgetType:e,widgetName:t,glContainer:r,description:i,children:a}=n,o=X.getTitleFromContainer(r);return u.jsxs("div",{className:"tab-tooltip-grid-container",children:[u.jsxs("span",{className:"tab-tooltip-title",children:[e," Name"]}),u.jsxs("div",{className:"tab-tooltip-name-wrapper",children:[u.jsx("span",{className:"tab-tooltip-name",children:t}),u.jsx(ld,{className:"tab-tooltip-copy",tooltip:"Copy name",copy:t})]}),t!==o&&u.jsxs(u.Fragment,{children:[u.jsx("span",{className:"tab-tooltip-title",children:"Display Name"}),u.jsx("span",{className:"tab-tooltip-name",children:o})]}),i&&u.jsx("div",{className:"tab-tooltip-description",children:i}),a]})}Dd.propTypes={glContainer:Yh.Container.isRequired,widgetType:Y.string,widgetName:Y.string,description:Y.string,children:Y.node};Dd.defaultProps={widgetType:"",widgetName:"",description:null,children:null};function Sb(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=l1(n,"string");return typeof e=="symbol"?e:String(e)}function l1(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 wb extends y.PureComponent{constructor(e){super(e),Sb(this,"getCachedRenderTabTooltip",Ce((t,r,i,a,o)=>t?()=>u.jsx(Dd,{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;Ss(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
|
-
`).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:h,showTabTooltip:c,renderTabTooltip:m,widgetType:v,widgetName:f,description:g,onClearAllFilters:p,onHide:C,onFocus:b,onBlur:S,onResize:w,onShow:E,onTabBlur:T,onTabFocus:P,onTabClicked:D}=this.props,{isPanelDisconnected:O,isWidgetDisconnected:N,isPanelInactive:_}=this.state,F=this.getErrorMessage(),x=m??this.getCachedRenderTabTooltip(c,o,v,f,g),L=[{title:"Copy ".concat(v," Name"),group:se.groups.medium,order:20,action:this.handleCopyName}];return u.jsxs(vi,{className:J(t,{disconnected:O||N||l,inactive:_}),componentPanel:r,glContainer:o,glEventHub:s,onClearAllFilters:p,onHide:C,onFocus:b,onBlur:S,onResize:w,onShow:E,onSessionClose:this.handleSessionClosed,onSessionOpen:this.handleSessionOpened,onTabBlur:T,onTabFocus:P,onTabClicked:D,renderTabTooltip:x,errorMessage:F,isLoaded:i,isLoading:a,isClonable:d,isRenamable:h,additionalActions:L,children:[e,_&&u.jsx("div",{className:"fill-parent-absolute"})]})}}Sb(wb,"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 sc=wb,Sr=Object.freeze({DEFAULT:"DEFAULT",LINKER:"LINKER"});var d1=new Map,Rd=Object.freeze([]),yb=(n,e)=>{var t;return(t=yr(n,e).columns)!==null&&t!==void 0?t:Rd},u1=(n,e)=>{var t;return(t=yr(n,e).filterSets)!==null&&t!==void 0?t:Rd},lc=(n,e)=>{var t;return(t=yr(n,e).filters)!==null&&t!==void 0?t:Rd},dc=(n,e)=>{var t;return(t=yr(n,e).tableMap)!==null&&t!==void 0?t:d1},uc=(n,e)=>yr(n,e).isolatedLinkerPanelId,yo=(n,e)=>{var t;return(t=yr(n,e).links)!==null&&t!==void 0?t:Rd},hc=(n,e)=>yr(n,e).columnSelectionValidator,h1=(n,e)=>yr(n,e).connection,Ta=(n,e)=>yr(n,e).sessionWrapper,c1=(n,e)=>t=>t(Hn(n,{connection:e})),m1=(n,e)=>t=>t(Hn(n,{sessionWrapper:e})),cc=(n,e)=>t=>t(Hn(n,{links:e})),v1=(n,e)=>(t,r)=>{var i=yo(r(),n),a=e.filter(o=>i.findIndex(s=>ht(s.start,o.start)&&ht(s.end,o.end))<0);return t(cc(n,i.concat(a)))},f1=(n,e)=>(t,r)=>{var i=yo(r(),n),a=i.filter(o=>!e.includes(o.id));return t(cc(n,a))},Eb=(n,e)=>t=>t(Hn(n,{isolatedLinkerPanelId:e})),g1=(n,e)=>t=>t(Hn(n,{columnSelectionValidator:e})),p1=(n,e)=>t=>t(Hn(n,{consoleSettings:e})),C1=(n,e)=>t=>t(Hn(n,{filterSets:e}));function Tb(n){var{columnMap:e,inputFilterMap:t,linkedColumnMap:r,onAdd:i,onOpenLinker:a,waitingFilterMap:o,waitingInputMap:s}=n,l=y.useMemo(()=>{var f=Array.from(s.keys()),g=f.find(b=>t.get(b)!=null),p=f.find(b=>r.get(b)!=null),C=Qr.join(f.map(b=>'"'.concat(b,'"')));return g!=null&&g&&p!=null&&p?"Use a filter control or linked table to set a value for ".concat(C):g!=null&&g?"Set a filter control value for ".concat(C):"Double click a row in a linked table to set a value for ".concat(C)},[t,r,s]),d=y.useMemo(()=>Array.from(e.values()),[e]),h=y.useCallback(f=>{f.stopPropagation(),f.preventDefault(),i(Array.from(o.values()))},[i,o]),c=y.useCallback(f=>{f.stopPropagation(),f.preventDefault(),a()},[a]),m=o.size>0,v=!m&&s.size>0;return u.jsx("div",{className:"chart-panel-overlay chart-filter-overlay",children:u.jsxs("div",{className:J("chart-panel-overlay-content chart-filter-overlay-content",{"chart-filter-waiting-filter":m},{"chart-filter-waiting-input":v}),children:[m&&u.jsxs(u.Fragment,{children:[u.jsx("div",{className:"info-message",children:"This plot requires a filter control to be added to the layout or a table link to be created on the following columns:"}),u.jsx("div",{className:"waiting-filter-list",children:d.map(f=>{var g=o.has(f.name),p=g?Wi:Ph;return u.jsxs("div",{className:J("waiting-filter-item",{"is-invalid":g}),children:[u.jsx(re,{icon:p}),f.name]},f.name)})}),u.jsxs("div",{children:[u.jsx(tm,{onClick:h,className:"btn-primary",children:"Add Input Filters"}),u.jsx(tm,{onClick:c,className:"btn-primary",children:"Open Linker Tool"})]})]}),v&&u.jsxs(u.Fragment,{children:[u.jsx("div",{className:"info-message",children:"Waiting for User Input"}),u.jsx("div",{className:"",children:l})]})]})})}Tb.propTypes={columnMap:Y.instanceOf(Map).isRequired,inputFilterMap:Y.instanceOf(Map).isRequired,linkedColumnMap:Y.instanceOf(Map).isRequired,onAdd:Y.func.isRequired,onOpenLinker:Y.func.isRequired,waitingFilterMap:Y.instanceOf(Map).isRequired,waitingInputMap:Y.instanceOf(Map).isRequired};function ms(n){var{columns:e,onColumnSelected:t,onMouseEnter:r,onMouseLeave:i}=n;return u.jsx("div",{className:"chart-panel-overlay chart-column-selector-overlay",children:u.jsxs("div",{className:J("chart-panel-overlay-content"),children:[u.jsx("div",{className:"info-message",children:"This plot requires a filter control to be added to the layout or a table link to be created on the following columns:"}),u.jsx("div",{className:"waiting-column-select-list",children:e.map(a=>u.jsx(mp,{className:J("btn-chart-column-selector",ms.makeButtonClassName(a.name)),onClick:()=>t(a.name),onMouseEnter:()=>{r&&r(a)},onMouseLeave:i,disabled:!a.isValid,isLinked:a.isActive,children:a.name},a.name))})]})})}ms.makeButtonClassName=n=>"btn-chart-column-selector-".concat(n);ms.defaultProps={onMouseEnter:()=>{},onMouseLeave:()=>{}};function Rl(n){return n.settings!==void 0}function b1(n){if(n==null)return!1;var{settings:e,tableSettings:t}=n;return typeof e=="object"&&typeof t=="object"}function S1(n){return n!=null&&b1(n.panelState)}function Vf(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 Gf(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Vf(Object(t),!0).forEach(function(r){Zr(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Vf(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Zr(n,e,t){return e=w1(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function w1(n){var e=y1(n,"string");return typeof e=="symbol"?e:String(e)}function y1(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 cr=ae.module("ChartPanel"),E1=150;function T1(n){return n.inputFilters!=null}function P1(n){return n.panelState!=null}class Nd extends y.Component{constructor(e){super(e),Zr(this,"panelContainer",void 0),Zr(this,"chart",void 0),Zr(this,"pending",void 0),Zr(this,"getWaitingInputMap",Ce((o,s,l)=>{if(!o)return new Map;var d=new Map(s);return l.forEach((h,c)=>{d.delete(c)}),d})),Zr(this,"getWaitingFilterMap",Ce((o,s,l,d,h)=>{if(!o)return new Map;var c=new Map(s);return l.forEach((m,v)=>{c.delete(v)}),h.forEach((m,v)=>{c.delete(v)}),d.forEach((m,v)=>{c.delete(v)}),c})),Zr(this,"getInputFilterColumnMap",Ce((o,s)=>{for(var l=new Map,d=0;d<s.length;d+=1){var h=s[d],{name:c,type:m}=h,v=o.get(c);v!=null&&v.type===m&&l.set(c,h)}return l})),Zr(this,"getLinkedColumnMap",Ce((o,s)=>{for(var l=new Map,d=X.getIdFromPanel(this),h=0;h<s.length;h+=1){var c=s[h],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);A(v),l.set(m,v)}}return l})),Zr(this,"getSelectorColumns",Ce((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),E1),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.panelContainer=he.createRef(),this.chart=he.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&&Rl(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:h}=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(),h!==t.settings&&Lm(o)&&(o.updateSettings(h),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){cr.debug("startListeningToSource",e);var{model:t}=this.state;A(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){cr.debug("stopListeningToSource",e);var{model:t}=this.state;A(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(hh.COLUMN_SELECTED,this,r.get(e))}handleColumnMouseEnter(e){var{type:t,name:r}=e,{columnSelectionValidator:i}=this.props;cr.debug("handleColumnMouseEnter",i,t,r),i&&i(this,{type:t,name:r})}handleColumnMouseLeave(){var{columnSelectionValidator:e}=this.props;cr.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){cr.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)||(cr.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){cr.debug2("updateModelFromSource ignoring",r,i,t);return}var{dh:a}=i;if(this.pending.cancel(),Rl(e)){var{settings:o}=e;this.pending.add(a.plot.Figure.create(new Lt(a).makeFigureSettings(o,t))).then(s=>{Lm(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&&T1(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=Gf(Gf({},r),e);return cr.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=ms.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){cr.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:h,filterList:c}=l,m=i.get(d);if(!(m==null||m.type!==h)){if(c.length<1){cr.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),h=(l=s.get(e))===null||l===void 0?void 0:l.value;h!=null&&d!==h&&(a=new Map(t.filterMap),h.length>0?a.set(e,h):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:h,value:c}=e[l],m=i.get(d);m!=null&&m.type===h&&(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 cr.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:h}=e[l],c=i.get(d);if(c!=null&&c.type===h&&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 cr.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;A(r);var i=this.getWaitingInputMap(r.isFilterRequired(),e,t);if(r.setFilter(t),t.size>0&&i.size===0){var a=r.getDefaultTitle(),o=Qr.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),cr.debug2("updateFilters filters set",t),this.setState({isLoading:!0})}else cr.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:h,filterMap:c,error:m,model:v,isActive:f,isDisconnected:g,isLoaded:p,isLoading:C}=this.state,b;Rl(s)?b=s.table:b=s.figure;var S=this.getInputFilterColumnMap(h,i),w=this.getLinkedColumnMap(h,o),E=v!=null?this.getWaitingInputMap(v.isFilterRequired(),h,c):new Map,T=v!=null?this.getWaitingFilterMap(v.isFilterRequired(),h,c,w,S):new Map,P=m!=null?"Unable to open chart. ".concat(m):void 0,D=E.size>0,O=h.size>0&&a;return u.jsx(sc,{className:J("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:P,isDisconnected:g,isLoading:C,isLoaded:p,widgetName:b,widgetType:"Chart",children:u.jsxs("div",{ref:this.panelContainer,className:"chart-panel-container h-100 w-100",children:[u.jsx("div",{className:"chart-container h-100 w-100",children:p&&v&&u.jsx(RT,{isActive:f,model:v,settings:l,ref:this.chart,onDisconnect:this.handleDisconnect,onReconnect:this.handleReconnect,onUpdate:this.handleUpdate,onError:this.handleError,onSettingsChanged:this.handleSettingsChanged,Plotly:d})}),u.jsx(Lr,{in:D&&!O&&!C,timeout:Je.transitionMs,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0,children:u.jsx(Tb,{inputFilterMap:S,linkedColumnMap:w,onAdd:this.handleFilterAdd,onOpenLinker:this.handleOpenLinker,columnMap:h,waitingFilterMap:T,waitingInputMap:E})}),u.jsx(Lr,{in:O,timeout:Je.transitionMs,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0,children:u.jsx(ms,{columns:this.getSelectorColumns(h,w,e),onColumnSelected:this.handleColumnSelected,onMouseEnter:this.handleColumnMouseEnter,onMouseLeave:this.handleColumnMouseLeave})})]})})}}Zr(Nd,"defaultProps",{columnSelectionValidator:null,isLinkerActive:!1,source:null,sourcePanel:null,panelState:null,settings:{}});Zr(Nd,"displayName","ChartPanel");Zr(Nd,"COMPONENT","ChartPanel");var O1=(n,e)=>{var{localDashboardId:t,metadata:r}=e,i;r!=null&&(i=r.sourcePanelId);var a=dc(n,t),o=DC(n,t),s=Cd(n),l=uc(n,t),d=s===Sr.LINKER&&l===void 0;return{columnSelectionValidator:hc(n,t),isLinkerActive:d,inputFilters:lc(n,t),links:yo(n,t),source:i!=null?a.get(i):void 0,sourcePanel:i!=null?o.get(i):void 0,settings:Ut(n)}},D1=$t(O1,{setActiveTool:Sd,setDashboardIsolatedLinkerPanelId:Eb},null,{forwardRef:!0})(Nd);const vs=D1;function Ql(n,e,t){return e=R1(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function R1(n){var e=N1(n,"string");return typeof e=="symbol"?e:String(e)}function N1(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 cl=ae.module("CommandHistoryPanel");class Ns extends y.Component{static handleError(e){cl.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=he.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:ar.COMMAND_HISTORY.FOCUS_HISTORY}]}}componentDidMount(){var{glEventHub:e,session:t}=this.props;e.on(Ar.FOCUS_HISTORY,this.handleFocusHistory),t!=null&&this.loadTable()}componentWillUnmount(){var{glEventHub:e}=this.props;e.off(Ar.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(cl.debug("handleSendToNotebook",r,e),!r){cl.error("Session is not connected.");return}var{glEventHub:a}=this.props;a.emit(t?Ke.CREATE_NOTEBOOK:Ke.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;cl.debug("handleSendToConsole",e);var{glEventHub:i}=this.props;i.emit(Ar.SEND_COMMAND,e,t,r)}loadTable(){var{commandHistoryStorage:e}=this.props,{language:t,sessionId:r}=this.state;A(t),A(r),this.pending.add(e.getTable(t,r,Date.now()),i=>i.close()).then(i=>{this.setState({table:i})}).catch(Ns.handleError)}render(){var{glContainer:e,glEventHub:t,commandHistoryStorage:r}=this.props,{language:i,contextActions:a,table:o}=this.state;return u.jsxs(vi,{className:"command-history-pane",componentPanel:this,glContainer:e,glEventHub:t,onSessionOpen:this.handleSessionOpened,onSessionClose:this.handleSessionClosed,onShow:this.handleShow,children:[!o&&u.jsx("div",{className:"command-history-disconnected-message",children:"Waiting for console connection"}),o&&i!=null&&u.jsxs(u.Fragment,{children:[u.jsx(iT,{ref:this.container,language:i,sendToNotebook:this.handleSendToNotebook,sendToConsole:this.handleSendToConsole,table:o,commandHistoryStorage:r}),u.jsx(se,{actions:a})]})]})}}Ql(Ns,"COMPONENT","CommandHistoryPanel");Ql(Ns,"TITLE","Command History");var F1=(n,e)=>{var t=jp(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}},I1=$t(F1,null,null,{forwardRef:!0})(Ns);const ch=I1;function Wf(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 zf(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Wf(Object(t),!0).forEach(function(r){eo(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Wf(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function eo(n,e,t){return e=_1(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function _1(n){var e=x1(n,"string");return typeof e=="symbol"?e:String(e)}function x1(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 ml=ae.module("ConsolePanel"),M1=500,A1=Object.freeze({consoleSettings:{},itemIds:[]});class mc extends y.PureComponent{constructor(e){super(e),eo(this,"consoleRef",void 0),eo(this,"objectSubscriptionCleanup",void 0),eo(this,"savePanelState",rt(()=>{var{consoleSettings:o,itemIds:s}=this.state,l={consoleSettings:o,itemIds:[...s]};ml.debug("Saving panel state",l),this.setState({panelState:l})},M1)),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=he.createRef();var{panelState:t}=e,r=zf(zf({},A1),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=>{ml.debug("Got updates",r),this.setState(i=>{var{objectMap:a}=i,{updated:o,created:s,removed:l}=r,d=[...o,...l],h=new Map(a);d.forEach(m=>{var{title:v}=m;v!==void 0&&h.delete(v)});var c=[...o,...s];return c.forEach(m=>{m.title!==void 0&&h.set(m.title,m)}),{objectMap:h}})})}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=tt.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(Ar.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;ml.debug("handleSettingsChange",e),this.setState({consoleSettings:e}),t.emit(Ar.SETTINGS_CHANGED,e)}openWidget(e,t){var{glEventHub:r}=this.props,{title:i}=e;A(i);var a=this.getItemId(i),o={fetch:()=>t.getObject(e),panelId:a,widget:e};ml.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:h,session:c,connection:m,details:v={},dh:f}=i,{workerName:g,processInfoId:p}=v,{id:C,type:b}=h;return u.jsx(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,children:c!=null&&u.jsx(jE,{dh:f,ref:this.consoleRef,settings:s,session:c,focusCommandHistory:this.handleFocusCommandHistory,openObject:this.handleOpenObject,closeObject:this.handleCloseObject,commandHistoryStorage:e,onSettingsChange:this.handleSettingsChange,language:b,statusBarChildren:u.jsxs(u.Fragment,{children:[u.jsx("div",{children:" "}),u.jsx("div",{children:bp.LANGUAGE_MAP.get(b)}),g!=null&&u.jsxs(u.Fragment,{children:[u.jsx("div",{children:" • "}),g]}),p!=null&&u.jsxs(u.Fragment,{children:[u.jsx("div",{children:" • "}),p,u.jsx("div",{children:" •"})]}),u.jsx("div",{children:" "}),u.jsx("div",{children:u.jsx(MT,{connection:m,defaultUpdateInterval:10*1e3,hoverUpdateInterval:3*1e3,monitorDuration:10*60*1e3})}),u.jsx("div",{children:" "})]}),scope:C,timeZone:a,objectMap:d,unzip:o})})}}eo(mc,"COMPONENT","ConsolePanel");eo(mc,"TITLE","Console");var L1=(n,e)=>({commandHistoryStorage:jp(n),sessionWrapper:Ta(n,e.localDashboardId),timeZone:ys(n)}),k1=$t(L1,null,null,{forwardRef:!0})(mc);const rs=k1;function fn(n,e,t){return e=j1(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function j1(n){var e=H1(n,"string");return typeof e=="symbol"?e:String(e)}function H1(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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=ae.module("DropdownFilter"),$1=150;class di extends y.Component{constructor(e){super(e),fn(this,"dropdownRef",void 0),fn(this,"getCompatibleColumns",Ce((a,o)=>a!=null?o.filter(s=>{var{type:l}=s;return l!==void 0&&j.isCompatibleType(l,a.columnType)}):[])),fn(this,"getColumnOptions",Ce((a,o)=>{var s=-1,l=[];return l.push(u.jsx("option",{value:"-1",children:"Select a column"},"placeholder")),a.forEach((d,h)=>{l.push(u.jsx("option",{value:h,children:this.getItemLabel(a,h)},"".concat(d.name,"/").concat(d.type))),o!==null&&d.name===o.name&&d.type===o.type&&(s=h)}),[l,s]})),fn(this,"getSelectedOptionIndex",Ce((a,o)=>a.indexOf(o))),fn(this,"getValueOptions",Ce(a=>[u.jsx("option",{value:"-1",children:di.PLACEHOLDER},"-1"),...a.map((o,s)=>u.jsx("option",{value:s,children:o??"(null)"},"".concat(s,"/").concat(o)))])),fn(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})),fn(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=he.createRef();var{column:t,isValueShown:r,value:i}=e;this.state={column:t,id:tt(),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(vl.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(),vl.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]:vl.debug2("Selected default item"),vl.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:h,settingsError:c}=this.props,{column:m,disableCancel:v,id:f,isValueShown:g,selectedColumn:p,value:C}=this.state,b=o===null,S=this.getCompatibleColumns(o,t),w=o!=null,E=(e=o?.columnName)!==null&&e!==void 0?e:di.SOURCE_BUTTON_PLACEHOLDER,T=m!=null?"".concat(m.name," Filter"):null,[P,D]=this.getColumnOptions(S,p),O=this.getValueOptions(h),N=this.getSelectedOptionIndex(h,C),_=!w||p==null,F=g&&!i,x="source-column-btn-".concat(f),L="filter-column-select-".concat(f);return u.jsxs(_h,{className:"dropdown-filter fill-parent-absolute",isFlipped:F,children:[u.jsx("div",{className:"dropdown-filter-settings-card",children:u.jsxs("div",{className:"dropdown-filter-card-content",children:[u.jsxs("div",{className:"dropdown-filter-settings-grid",children:[u.jsx("label",{htmlFor:x,children:"Source Column"}),u.jsx(mp,{id:x,isLinked:w,onClick:s,onMouseEnter:l,onMouseLeave:d,className:di.SOURCE_BUTTON_CLASS_NAME,disabled:r,children:E}),u.jsx("div",{className:"text-muted small",children:"Select a source column for the list by linking to a table."}),u.jsx("label",{htmlFor:L,children:"Filter Column"}),u.jsx("select",{id:L,value:D,className:"custom-select",onChange:this.handleColumnChange,disabled:b,children:P}),u.jsx("div",{className:"text-muted small",children:"Dropdown filter control will apply its filter to all columns matching this name in this dashboard."})]}),c&&u.jsx("div",{className:"error-message text-center",children:c}),w&&u.jsxs("div",{className:"dropdown-filter-settings-buttons",children:[u.jsx(G,{kind:"secondary",type:"button",onClick:this.handleSettingsCancel,disabled:v||g||i,tooltip:i?"Cancel disabled while linker open":void 0,children:"Cancel"}),u.jsx(G,{kind:"primary",type:"button",className:"ml-2",onClick:this.handleSettingsSave,disabled:_||g||i,tooltip:i?"Save disabled while linker open":void 0,children:"Save"})]})]})}),u.jsx("div",{className:"dropdown-filter-value-card",onClick:this.handleBackgroundClick,"data-testid":"dropdown-filter-value-background",children:a&&u.jsxs(u.Fragment,{children:[u.jsx("div",{className:"dropdown-filter-column",children:u.jsx("div",{className:"dropdown-filter-column-title",children:T})}),u.jsxs("div",{className:"dropdown-filter-card-content",children:[u.jsx("div",{className:"dropdown-filter-value-input d-flex flex-column justify-content-center",children:u.jsx("select",{className:"custom-select",value:N,ref:this.dropdownRef,onChange:this.handleValueChange,onKeyPress:this.handleDropdownKeyPress,title:"Select Value",children:O})}),c&&u.jsx("div",{className:"error-message mt-3 text-center",children:c})]}),u.jsx("div",{className:"dropdown-filter-menu",children:u.jsx(G,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:u.jsx(re,{icon:Cs,transform:"grow-4"}),tooltip:"Dropdown Filter Settings"})})]})})]})}}fn(di,"defaultProps",{column:null,disableLinking:!1,isLinkerActive:!1,isLoaded:!1,isValueShown:!1,settingsError:null,source:null,value:"",values:[],onColumnSelected:()=>{},onSourceMouseEnter:()=>{},onSourceMouseLeave:()=>{}});fn(di,"PLACEHOLDER","Select a value...");fn(di,"SOURCE_BUTTON_CLASS_NAME","btn-dropdown-filter-selector");fn(di,"SOURCE_BUTTON_PLACEHOLDER","Select a column");const Kf=di;function tr(n,e,t){return e=U1(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function U1(n){var e=B1(n,"string");return typeof e=="symbol"?e:String(e)}function B1(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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=ae.module("DropdownFilterPanel"),V1=250,G1=(n,e)=>{var{localDashboardId:t}=e,r=X.getIdFromPanel({props:e}),i=dc(n,t),a=yo(n,t),o=Cd(n),s=uc(n,t),l=o===Sr.LINKER&&(s===void 0||s===r),d=o===Sr.LINKER&&s!==void 0&&s!==r;return{columns:yb(n,t),columnSelectionValidator:hc(n,t),dh:gd(n),isLinkerActive:l,disableLinking:d,settings:Ut(n),panelTableMap:i,dashboardLinks:a}},W1=$t(G1,null,null,{forwardRef:!0});class Cn extends y.Component{constructor(e){super(e),tr(this,"dateTimeFormatter",void 0),tr(this,"dropdownFilterRef",void 0),tr(this,"panelContainer",void 0),tr(this,"pending",void 0),tr(this,"cleanup",void 0),tr(this,"columnFormats",void 0),tr(this,"getCachedValues",Pe((c,m,v)=>{var{type:f,name:g}=m;return f!==void 0&&j.isDateType(f)?c.map(p=>this.dateTimeFormatter.format(p)):c.map(p=>p!=null&&f!=null?v.getFormattedString(p,f,g):null)})),tr(this,"getCachedPanelLinks",Pe((c,m)=>{var v=X.getIdFromPanel(m);return dt.debug("getCachedPanelLinks",c,v),c.filter(f=>{var g;return((g=f.end)===null||g===void 0?void 0:g.panelId)===v})})),tr(this,"getCachedSource",Pe(c=>{dt.debug("getCachedSource",c);var m;if(c.length>0){var[v]=c;m=v.start,c.length>1&&dt.error("Filter has more that one link",c)}return m})),tr(this,"getCachedSourceTable",Pe((c,m)=>{var v;if(dt.debug("getCachedSourceTable",c,m),m==null)return null;var{panelId:f}=m;return(v=c.get(f))!==null&&v!==void 0?v:null})),tr(this,"getCachedSourceColumn",Pe((c,m)=>{var v;return dt.debug("getCachedSourceColumn",c,m),c==null||m==null?null:(v=c.columns.find(f=>{var{name:g,type:p}=f;return g===m.columnName&&p===m.columnType}))!==null&&v!==void 0?v:null})),this.handleChange=rt(this.handleChange.bind(this),V1),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=he.createRef(),this.panelContainer=he.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??{},h=s!=null&&l!=null?{name:s,type:l}:void 0;this.state={column:h,formatter:new yn(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),h=this.getSourceTable(e.panelTableMap,e.dashboardLinks);a!==e.settings&&a!==void 0&&this.updateFormatterSettings(a),o!==t.valuesTable&&t.valuesTable!=null&&(dt.debug("Table in state modified, closing the old table."),t.valuesTable.close()),(l!==h||s!==d)&&this.updateValuesTable(),l!==h&&(h!==null&&this.stopListeningToSource(h),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(Kf.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>Cn.MAX_TABLE_SIZE)return"Table too large, must have fewer than ".concat(Cn.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;dt.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;dt.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 h,c,{panelState:m,timestamp:v,wasFlipped:f,skipUpdate:g}=d,p=m!=null&&r!==m.isValueShown&&a===m.name&&o===m.type&&i===m.value;return s=(h=!g&&r&&(!p||!f))!==null&&h!==void 0?h:!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(){dt.debug("handleColumnSelected");var{glEventHub:e}=this.props;e.emit(it.COLUMN_SELECTED,this,Cn.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){dt.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];dt.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(dt.debug("updateValuesTable",r,i),this.setState({values:[],valuesTable:void 0,error:null}),r==null){dt.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)||(dt.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(dt.debug("applySourceSorts",i?.sort),r==null||i==null){dt.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(dt.debug("applySourceFilters",i?.filter),r==null||i==null){dt.debug("Table not initialized");return}var a=[...i.filter];r.applyFilter(a),this.setViewport(r)}updateViewportListener(e){var{dh:t}=this.props;if(dt.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){dt.error("values column is null");return}e.setViewport(0,Cn.MAX_TABLE_SIZE-1,[r])}updateFormatterSettings(e){var{dh:t}=this.props,r=oi.getColumnFormats(e);ht(this.columnFormats,r)||(this.columnFormats=r,this.setState({formatter:new yn(t,r)}))}handleValuesTableUpdate(e){var{detail:t}=e,{rows:r}=t,{dashboardLinks:i}=this.props,{valuesTable:a}=this.state;if(!a){dt.error("valuesTable is null");return}var o=this.getValuesColumn(a,i);if(!o){dt.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,Cn.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:h,value:c,values:m,valuesColumn:v,isLoading:f,isLoaded:g}=this.state,p=this.getSource(t),C=this.getSettingsErrorMessage(),b=this.getPanelErrorMessage(),S=g&&v!=null?this.getCachedValues(m,v,l):[];return u.jsx(sc,{errorMessage:b,isLoading:f,isLoaded:g,isDisconnected:d,className:"iris-dropdown-filter-panel",componentPanel:this,glContainer:i,glEventHub:a,onClearAllFilters:this.handleClearAllFilters,widgetName:"Dropdown Filter",widgetType:"DropdownFilter",children:u.jsx("div",{ref:this.panelContainer,className:"dropdown-filter-container h-100 w-100 container",children:u.jsx(Kf,{ref:this.dropdownFilterRef,column:s,columns:e,isValueShown:h,isLinkerActive:o,disableLinking:r,isLoaded:g,settingsError:C,source:p,value:c,values:S,onChange:this.handleChange,onColumnSelected:this.handleColumnSelected,onSourceMouseEnter:this.handleSourceMouseEnter,onSourceMouseLeave:this.handleSourceMouseLeave})})})}}tr(Cn,"displayName","DropdownFilterPanel");tr(Cn,"COMPONENT","DropdownFilterPanel");tr(Cn,"MAX_TABLE_SIZE",256);tr(Cn,"SOURCE_COLUMN",Object.freeze({name:"FilterSource",type:null}));var z1=W1(Cn);const Sa=z1;function Tn(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 ma{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(!ma.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(!ma.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(!ma.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=ma.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=>ma.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 ge=ma;var vc=26;function mh(n){return Tn(n)?ge.makePath(n.filename):ge.getPath(n.filename)}function Yf(n,e){if(n.length===0||e==null)throw new Error("No items to move");var t=mh(e);if(n.some(r=>{var{filename:i}=r;return ge.getPath(i)===t}))throw new Error("File already in the destination folder");if(n.some(r=>Tn(r)&&t.startsWith(ge.makePath(r.filename))))throw new Error("Destination folder cannot be a child of a dragged folder");return{files:n,targetPath:t}}function K1(n){if(Tn(n))return n.isExpanded?Mw:Aw;var e=ge.getMimeType(n.basename);switch(e){case Jn.PYTHON:return kw;default:return Lw}}function vh(n){var e,{children:t,draggedItems:r,isDragInProgress:i,isDropTargetValid:a,isSelected:o,item:s,itemIndex:l,dropTargetItem:d,onDragStart:h,onDragOver:c,onDragEnd:m,onDrop:v}=n,f=(e=r?.some(P=>P.id===s.id))!==null&&e!==void 0?e:!1,g=mh(s),p=i&&d?mh(d):null,C=i&&a&&Tn(s)&&p===g,b=i&&a&&p===g,S=i&&!a&&p===g,w=K1(s),E=ge.getDepth(s.filename),T=Array(E).fill(null).map((P,D)=>u.jsx("span",{className:"file-list-depth-line"},D));return u.jsxs("div",{className:J("d-flex w-100 align-items-center","file-list-item",{"is-dragged":f,"is-exact-drop-target":C,"is-in-drop-target":b,"is-invalid-drop-target":S,"is-selected":o}),onDragStart:function(P){function D(O){return P.apply(this,arguments)}return D.toString=function(){return P.toString()},D}(P=>h(l,P)),onDragOver:function(P){function D(O){return P.apply(this,arguments)}return D.toString=function(){return P.toString()},D}(P=>c(l,P)),onDragEnd:function(P){function D(O){return P.apply(this,arguments)}return D.toString=function(){return P.toString()},D}(P=>m(l,P)),onDrop:function(P){function D(O){return P.apply(this,arguments)}return D.toString=function(){return P.toString()},D}(P=>v(l,P)),draggable:!0,role:"presentation","aria-label":s.basename,children:[T," ",u.jsx(re,{icon:w,className:"item-icon",fixedWidth:!0})," ",u.jsx("span",{className:"truncation-wrapper",children:t??u.jsxs(u.Fragment,{children:[s.basename,u.jsx(pt,{children:s.basename})]})})]})}function qf(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?qf(Object(t),!0).forEach(function(r){Y1(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):qf(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Y1(n,e,t){return e=q1(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function q1(n){var e=X1(n,"string");return typeof e=="symbol"?e:String(e)}function X1(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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=ae.module("FileList"),Q1=500,Xf="item-list-scroll-pane";function Z1(n){var{isMultiSelect:e=!1,table:t,onFocusChange:r=()=>{},onMove:i,onSelect:a,onSelectionChange:o=()=>{},renderItem:s=vh,rowHeight:l=vc,overscanCount:d=no.DEFAULT_OVERSCAN}=n,[h,c]=y.useState(()=>({items:[],offset:0,itemCount:0})),[m,v]=y.useState({top:0,bottom:0}),[f,g]=y.useState(),[p,C]=y.useState(),[b,S]=y.useState(),[w,E]=y.useState([]),T=y.useRef(),P=y.useRef(null),D=y.useRef(null),O=y.useCallback(W=>{if(W.length===0||h==null)return[];for(var te=[],ne=0;ne<W.length;ne+=1)for(var oe=W[ne],de=oe[0];de<=oe[1];de+=1)de>=h.offset&&de<h.offset+h.items.length&&te.push(h.items[de-h.offset]);return te},[h]),N=y.useCallback(W=>{var te=O([[W,W]]);if(te.length>0)return te[0]},[O]),_=y.useCallback(()=>{var W=rm.count(w);if(W===0)return null;if(W===1){var te=w[0][0],ne=N(te);if(ne!=null)return ne.filename}return"".concat(W," items")},[N,w]),F=y.useCallback(W=>{if(!(!p||!f)){Zt.debug("dropItems",p,"to",W);try{var{files:te,targetPath:ne}=Yf(p,f);if(i?.(te,ne),W!=null){var oe;E([[W,W]]),(oe=P.current)===null||oe===void 0||oe.focusItem(W)}}catch(de){Zt.error("Unable to complete move",de)}}},[p,f,i]),x=y.useCallback((W,te)=>{var ne=h.items[W-h.offset];ne!==void 0&&(Zt.debug("handleItemClick",ne),a(ne,te),Tn(ne)&&t?.setExpanded(ne.filename,!ne.isExpanded))},[h,a,t]),L=y.useCallback((W,te)=>{var ne;Zt.debug2("handleItemDragStart",W,w);var oe=w;rm.isSelected(w,W)||(oe=[[W,W]],E(oe)),C(O(oe)),(ne=P.current)===null||ne===void 0||ne.resetMouseState();var de=document.createElement("div");de.innerHTML='<div class="dnd-placeholder-content">'.concat(_(),"</div>"),de.className="file-list-dnd-placeholder",document.body.appendChild(de),te.dataTransfer.setDragImage(de,0,0),te.dataTransfer.effectAllowed="move",S(de)},[_,O,w]),M=y.useCallback((W,te)=>{te.preventDefault(),Zt.debug2("handleItemDragOver",te),g(N(W))},[N]),U=y.useCallback((W,te)=>{Zt.debug("handleItemDragEnd",W),b?.remove(),C(void 0),g(void 0),S(void 0)},[b]),V=y.useCallback((W,te)=>{F(W)},[F]),z=y.useCallback(()=>{Zt.debug2("handleItemDragExit"),g(void 0)},[]),Q=y.useCallback(W=>{W.target instanceof Element&&W.target.classList.contains(Xf)&&(W.preventDefault(),Zt.debug2("handleListDragOver",W),g({type:"directory",filename:"/",basename:"/",id:"/"}))},[]),Z=y.useCallback(W=>{W.target instanceof Element&&W.target.classList.contains(Xf)&&(Zt.debug("handleListDrop"),F())},[F]),I=y.useCallback(function(W){var te=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;if(Zt.debug2("handleSelectionChange",W),te===!0||W!==w){E(W);var ne=O(W);o(ne)}},[O,o,w]),R=y.useCallback(W=>{if(Zt.debug2("handleFocusChange",W),W!=null){var[te]=O([[W,W]]);r(te)}else r();T.current=W},[O,r]),k=y.useCallback((W,te)=>{Zt.debug("handleViewportChange",W,te),(W!==m.top||te!==m.bottom)&&v({top:W,bottom:te})},[m]),H=y.useMemo(()=>{if(!p||!f)return!1;try{return Yf(p,f),Zt.debug("handleValidateDropTarget true"),!0}catch{return Zt.debug("handleValidateDropTarget false"),!1}},[p,f]),{focusedPath:K}=n;y.useEffect(()=>{K!==void 0&&(K==="/"?t.collapseAll():(t.setExpanded(K,!1),t.setExpanded(K,!0)))},[t,K]),y.useEffect(function(){Zt.debug("updating table viewport",m),t?.setViewport({top:Math.max(0,m.top-d),bottom:m.bottom+d})},[d,t,m]),y.useEffect(function(){var te=t.onUpdate(ne=>{c({items:ne.items.map(oe=>fl(fl({},oe),{},{itemName:oe.basename})),offset:ne.offset,itemCount:t.size})});return()=>{te()}},[t]),y.useEffect(function(){T.current!=null&&R(T.current),w.length>0&&I(w,!0)},[h,R,I,w]),y.useEffect(function(){if(f!=null&&Tn(f)&&f.filename!=="/"){var te=setTimeout(()=>{f.isExpanded||t?.setExpanded(f.filename,!0)},Q1);return()=>clearTimeout(te)}},[f,t]);var ee=y.useCallback(W=>s(fl(fl({},W),{},{isDragInProgress:p!=null,dropTargetItem:f,draggedItems:p,isDropTargetValid:H,onDragStart:L,onDragEnd:U,onDragOver:M,onDragExit:z,onDrop:V})),[U,z,M,L,V,p,f,H,s]);return u.jsx("div",{ref:D,className:J("file-list",{"is-dragging":p!=null}),onDragOver:Q,onDrop:Z,children:u.jsx(no,{ref:P,items:h.items,itemCount:h.itemCount,offset:h.offset,onFocusChange:R,onSelect:x,onSelectionChange:I,onViewportChange:k,selectedRanges:w,renderItem:ee,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 Qf={FILE_EXPLORER:J1};var Zf=ae.module("FileListItemEditor"),ek=()=>Promise.resolve();function tk(n){var{item:e,onCancel:t,onSubmit:r,validate:i=ek}=n,a=y.useRef(null),[o,s]=y.useState(e.basename),[l,d]=y.useState(),[h,c]=y.useState(Promise.resolve()),m=y.useCallback(()=>{var b;(b=a.current)===null||b===void 0||b.focus()},[a]),v=y.useCallback(b=>b.stopPropagation(),[]),f=y.useCallback(()=>{h.then(()=>{r(o)}).catch(b=>Zf.info("Unable to validate name",b))},[r,o,h]);y.useEffect(function(){var S=Te.makeCancelable(i(o));return S.then(()=>d(void 0)).catch(w=>{Te.isCanceled(w)||d(w)}),c(S),()=>S.cancel()},[i,o]),y.useEffect(function(){m()},[m]);var g=y.useCallback(()=>{Zf.debug2("handleBlur"),f()},[f]),p=y.useCallback(b=>{var{value:S}=b.target;s(S)},[]),C=y.useCallback(b=>{b.stopPropagation();var{key:S}=b;switch(S){case"Enter":{f();break}case"Escape":{t();break}}},[t,f]);return u.jsxs("div",{className:"file-list-item-editor",children:[u.jsx("input",{type:"text",className:J("form-control file-list-item-editor-input",{"is-invalid":l}),value:o,ref:a,onBlur:g,onKeyDown:C,onChange:p,onClick:v,onDoubleClick:v,onMouseDown:v}),l&&u.jsx("div",{className:"invalid-feedback",children:"".concat(l)})]})}function Jf(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Fu(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Jf(Object(t),!0).forEach(function(r){rk(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Jf(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function rk(n,e,t){return e=nk(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function nk(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)}function Pb(n){var{isMultiSelect:e=!1,focusedPath:t,showContextMenu:r=!1,onCreateFile:i,onCreateFolder:a,onCopy:o,onDelete:s,onMove:l,onRename:d,onSelect:h,onSelectionChange:c,table:m,rowHeight:v=vc,validateRename:f=()=>Promise.resolve()}=n,[g,p]=y.useState(),[C,b]=y.useState([]),[S,w]=y.useState(),E=y.useCallback(V=>{b(V),c?.(V)},[c]),T=y.useCallback(V=>{w(V)},[]),P=y.useCallback(()=>{S&&o?.(S)},[S,o]),D=y.useCallback(()=>{C.length>0&&s?.(C)},[s,C]),O=y.useCallback(()=>{i?.()},[i]),N=y.useCallback(()=>{S&&a?.(ge.getPath(S.filename))},[S,a]),_=y.useCallback(()=>{S&&p(S)},[S]),F=y.useCallback(()=>{p(void 0)},[]),x=y.useCallback(V=>{g&&(d?.(g,V),p(void 0))},[d,g]),L=y.useMemo(()=>{if(g)return[];var V=[];return i&&V.push({title:"New File",description:"Create new file",action:O,group:se.groups.medium}),a&&V.push({title:"New Folder",description:"Create new folder",action:N,group:se.groups.medium}),o&&V.push({title:"Copy File",description:"Copy the selected file",action:P,group:se.groups.low,disabled:S==null||Tn(S)}),s&&C.length>0&&V.push({title:"Delete",description:"Delete",shortcut:Qf.FILE_EXPLORER.DELETE,action:D,group:se.groups.low}),d&&V.push({title:"Rename",description:"Rename",shortcut:Qf.FILE_EXPLORER.RENAME,action:_,group:se.groups.low,disabled:S==null}),V},[P,D,O,N,_,S,o,i,a,s,d,C,g]),M=y.useCallback(V=>(A(g),f(g,V)),[g,f]),U=y.useCallback(V=>{var{item:z}=V;return g&&g.filename===z.filename?u.jsx(vh,Fu(Fu({},V),{},{children:u.jsx(tk,{item:z,validate:M,onSubmit:x,onCancel:F})})):u.jsx(vh,Fu({},V))},[F,x,g,M]);return u.jsxs("div",{className:"file-list-container",children:[m!=null&&u.jsx(Z1,{onMove:l,onSelect:h,onSelectionChange:E,onFocusChange:T,renderItem:U,rowHeight:v,table:m,isMultiSelect:e,focusedPath:t}),r&&u.jsx(se,{actions:L})]})}Pb.displayName="FileListContainer";function eg(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)}class sk extends Ja{constructor(e){super("Name already exists"),eg(this,"isExistingFile",!0),eg(this,"info",void 0),this.info=e}}const Nl=sk;function lk(n,e,t){return e=dk(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function dk(n){var e=uk(n,"string");return typeof e=="symbol"?e:String(e)}function uk(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 hk extends Error{constructor(){super("No file exists at the path specified"),lk(this,"isFileNotFound",!0)}}const fc=hk;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 rg(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)})}}var Rn=ae.module("FileExplorer");function gc(n){var{storage:e,isMultiSelect:t=!1,focusedPath:r,onCopy:i=()=>{},onDelete:a=()=>{},onRename:o=()=>{},onCreateFile:s=()=>{},onCreateFolder:l=()=>{},onSelect:d,onSelectionChange:h,rowHeight:c=vc}=n,[m,v]=y.useState([]),[f,g]=y.useState();y.useEffect(function(){var x;function L(){return M.apply(this,arguments)}function M(){return M=rg(function*(){Rn.debug("initTable"),x=Te.makeCancelable(e.getTable(),U=>U.close());try{g(yield x)}catch(U){Te.isCanceled(U)||Rn.error("Unable to initialize table",U)}}),M.apply(this,arguments)}return L(),()=>{x.cancel()}},[e]);var p=y.useCallback(F=>{Te.isCanceled(F)||Rn.error(F)},[]),C=y.useCallback(()=>{Rn.debug("handleCreateFile"),s()},[s]),b=y.useCallback(()=>{Rn.debug("handleCreateFolder"),l()},[l]),S=y.useCallback(F=>{Rn.debug("handleCopyFile",F.filename),i(F)},[i]),w=y.useCallback(F=>{Rn.debug("handleDelete, pending confirmation",F),v(F)},[]),E=y.useCallback(()=>{Rn.debug("handleDeleteConfirm",m),m.forEach(F=>e.deleteFile(Tn(F)?ge.makePath(F.filename):F.filename)),a(m),v([])},[m,a,e]),T=y.useCallback(()=>{Rn.debug("handleDeleteCancel"),v([])},[]),P=y.useCallback((F,x)=>{var L=ge.reducePaths(F.map(M=>Tn(M)?ge.makePath(M.filename):M.filename));L.forEach(M=>{var U=ge.isPath(M)?"".concat(x).concat(ge.getBaseName(M.substring(0,M.length-1)),"/"):"".concat(x).concat(ge.getBaseName(M));e.moveFile(M,U).then(()=>{o(M,U)}).catch(p)})},[p,o,e]),D=y.useCallback((F,x)=>{var L=F.filename,M=Tn(F);M&&!L.endsWith("/")&&(L="".concat(L,"/"));var U="".concat(ge.getParent(L)).concat(x);M&&!U.endsWith("/")&&(U="".concat(U,"/")),Rn.debug2("handleRename",L,U),e.moveFile(L,U).catch(p),o(L,U)},[p,o,e]),O=y.useCallback(function(){var F=rg(function*(x,L){if(L!==x.basename){ge.validateName(L);var M="".concat(ge.getPath(x.filename)).concat(L);try{var U=yield e.info(M);throw new Nl(U)}catch(V){if(!(V instanceof fc))throw V}}});return function(x,L){return F.apply(this,arguments)}}(),[e]),N=m.length>0,_=y.useMemo(()=>m.length===1?'Are you sure you want to delete "'.concat(m[0].filename,'"?'):"Are you sure you want to delete the selected files?",[m]);return u.jsxs("div",{className:"file-explorer",children:[f&&u.jsx(Pb,{isMultiSelect:t,focusedPath:r,showContextMenu:!0,onCopy:S,onCreateFolder:b,onCreateFile:C,onMove:P,onDelete:w,onRename:D,onSelect:d,onSelectionChange:h,rowHeight:c,table:f,validateRename:O}),u.jsx(ls,{isOpen:N,headerText:_,bodyText:"You cannot undo this action.",onCancel:T,onConfirm:E,confirmButtonText:"Delete"})]})}gc.displayName="FileExplorer";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 ck(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)})}}function ki(n,e,t){return e=mk(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function mk(n){var e=vk(n,"string");return typeof e=="symbol"?e:String(e)}function vk(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 oa=ae.module("NewItemModal");class wa extends y.PureComponent{static getValidationMessage(e){return e instanceof Nl&&e.info.type==="directory"?"Error: Cannot overwrite existing directory":"".concat(e)}static handleError(e){Te.isCanceled(e)||oa.error(e)}constructor(e){super(e),ki(this,"inputRef",he.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=ge.hasPath(t)?ge.getPath(t):"/";this.state={isSubmitting:!1,path:r,prevExtension:ge.getExtension(t),showExtensionChangeModal:!1,showOverwriteModal:!1,value:ge.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=ge.hasPath(e)?ge.getPath(e):"/";this.setState({path:t,value:ge.getBaseName(e),validationError:void 0,prevExtension:ge.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 ck(function*(){ge.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 Nl(l)}catch(d){if(!(d instanceof fc))throw d}}return t})()}updateValidationStatus(e,t){this.getValidationPromise(e,t).then(()=>{this.setState({validationError:void 0})}).catch(this.handleValidationError).catch(wa.handleError)}handleModalOpened(){this.focusRenameInput()}handleModalSubmit(){this.submitModal()}handleChange(e){var{value:t}=e.target;this.setState({value:t})}handleSelect(e){if(oa.debug("handleSelect",e),e.type==="directory")this.setState({path:ge.makePath(e.filename)});else{var t=e.basename,r=ge.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;oa.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;oa.debug("handleOverwriteConfirm",t,r),e("".concat(t).concat(r),!0)}handleExtensionChangeCancel(){oa.debug("handleExtensionChangeCancel"),this.setState(e=>{var{value:t,prevExtension:r}=e,i=ge.replaceExtension(t,r);return{showExtensionChangeModal:!1,value:i}}),this.submitModal(!0)}handleExtensionChangeConfirm(){oa.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;oa.debug("submitModal",r,i);var l=ge.getExtension(i);return o&&!e&&r!==null&&r!==l?{isSubmitting:!1,showExtensionChangeModal:!0,newExtension:l}:(this.getValidationPromise(a,i,!0).then(d=>{var{onSubmit:h}=this.props;h("".concat(a).concat(i))}).catch(d=>{if(d instanceof Nl&&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(wa.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,"/"),u.jsxs(he.Fragment,{children:[u.jsx(G,{kind:"ghost",className:"directory-breadcrumbs",onClick:()=>this.handleBreadcrumbSelect(a),"aria-label":i===0?"Home":void 0,icon:i===0?u.jsx(re,{icon:jw,transform:"right-1.6"}):void 0,tooltip:i===0?"Home":void 0,children:r}),"/"]},a)})}render(){var{storage:e,isOpen:t,onCancel:r,placeholder:i,title:a,type:o}=this.props,{isSubmitting:s,path:l,showExtensionChangeModal:d,showOverwriteModal:h,validationError:c,value:m,prevExtension:v,newExtension:f}=this.state,g=o==="directory",p=ge.fileExtensionToString(v),C=ge.fileExtensionToString(f),b=g?"Create":"Save",S=g?"New folder name":"Save file as";return u.jsxs(u.Fragment,{children:[u.jsxs(nd,{isOpen:t,toggle:r,onOpened:this.handleModalOpened,className:"modal-dialog-centered new-file-modal theme-bg-dark",children:[u.jsx(id,{toggle:r,children:a}),u.jsx(ad,{children:u.jsx("form",{children:u.jsxs("div",{className:"d-flex flex-column new-file-modal-content",children:[u.jsxs("div",{className:"flex-grow-0 mb-4",children:[u.jsx("label",{htmlFor:"file-name-input",children:S}),u.jsx("input",{id:"file-name-input",type:"text",autoComplete:"off",autoCapitalize:"none",autoCorrect:"off",spellCheck:"false",className:J("form-control",{"is-invalid":c}),value:m,placeholder:i,ref:this.inputRef,onKeyDown:this.handleKeyDown,onChange:this.handleChange}),c&&u.jsx("div",{className:"invalid-feedback",children:wa.getValidationMessage(c)})]}),u.jsxs("div",{className:"flex-grow-0",children:[u.jsx("label",{children:"Directory: /"}),this.renderPathButtons(l)]}),u.jsx("div",{className:"flex-grow-1 file-explorer-container",children:u.jsx(gc,{onSelect:this.handleSelect,storage:e,focusedPath:l})})]})})}),u.jsxs(vp,{children:[u.jsx(G,{kind:"secondary",onClick:r,children:"Cancel"}),u.jsx(G,{kind:"primary",disabled:s,onClick:this.handleModalSubmit,children:b})]})]}),u.jsx(ls,{isOpen:h,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"}),u.jsx(ls,{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(wa,"propTypes",{isOpen:Y.bool,title:Y.string.isRequired,defaultValue:Y.string,type:Y.oneOf(["file","directory"]).isRequired,onSubmit:Y.func,onCancel:Y.func,placeholder:Y.string,storage:Y.shape({}).isRequired,notifyOnExtensionChange:Y.bool});ki(wa,"defaultProps",{isOpen:!1,defaultValue:"/",notifyOnExtensionChange:!1,placeholder:"",onSubmit:(n,e)=>{},onCancel:()=>{}});const Ob=wa;function fk(n){var{createFile:e,createFolder:t,onSearchChange:r,defaultSearchText:i=""}=n;return u.jsxs("div",{className:"file-explorer-toolbar",children:[u.jsxs("div",{className:"file-explorer-toolbar-buttons",children:[u.jsx(G,{kind:"ghost",icon:ip,tooltip:"New notebook",onClick:e,"aria-label":"New notebook"}),u.jsx(G,{kind:"ghost",icon:Hw,tooltip:"New folder",onClick:t,"aria-label":"New folder"})]}),r&&u.jsx("div",{className:"file-explorer-toolbar-search",children:u.jsx(uy,{value:i,onChange:r,placeholder:"Search by name"})})]})}function ig(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 ag(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){ig(a,r,i,o,s,"next",l)}function s(l){ig(a,r,i,o,s,"throw",l)}o(void 0)})}}function Db(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=pk(n,"string");return typeof e=="symbol"?e:String(e)}function pk(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 sa=ae.module("FileExplorerPanel"),Ck=(n,e)=>{var t=Hp(n),r=Ta(n,e.localDashboardId),{session:i,config:a}=r??{},o=a?.type;return{fileStorage:t,language:o,session:i}},bk=$t(Ck,null,null,{forwardRef:!0});function Sk(n){var e=n;return e!=null&&typeof e.button=="number"}class lo extends he.Component{static handleError(e){sa.error(e)}static isFocusEvent(e){return Sk(e)?e.detail>=2:!0}constructor(e){super(e),this.handleFileSelect=this.handleFileSelect.bind(this),this.handleCopyFile=this.handleCopyFile.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:""};sa.debug("handleCreateFile",t,r,i),e.emit(Ke.CREATE_NOTEBOOK,t,r,i)}handleCreateDirectory(){this.setState({showCreateFolder:!0})}handleCreateDirectoryCancel(){sa.debug("handleCreateDirectoryCancel"),this.setState({showCreateFolder:!1})}handleCreateDirectorySubmit(e){sa.debug("handleCreateDirectorySubmit",e),this.setState({showCreateFolder:!1});var{fileStorage:t}=this.props;t.createDirectory(e).catch(lo.handleError)}handleCopyFile(e){var t=this;return ag(function*(){var{fileStorage:r}=t.props;if(Tn(e)){sa.error("Invalid item in handleCopyItem",e);return}for(var i=ge.getCopyFileName(e.filename),a=function(){var o=ag(function*(){try{return yield r.info(i),!0}catch{return!1}});return function(){return o.apply(this,arguments)}}();yield a();)i=ge.getCopyFileName(i);yield r.copyFile(e.filename,i)})()}handleDelete(e){var{glEventHub:t}=this.props;e.forEach(r=>{t.emit(Ke.CLOSE_FILE,{id:r.filename,itemName:r.filename})})}handleSelectionChange(e){var t="/";e.length===1&&(e[0].type==="directory"?t=ge.makePath(e[0].filename):t=ge.getPath(e[0].filename)),this.setState({focusedFilePath:t})}handleFileSelect(e,t){if(sa.debug("fileSelect",e),e.type!=="directory"){var r=lo.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(Ke.SELECT_NOTEBOOK,o,s,l,i,r)}}handleRename(e,t){var{glEventHub:r}=this.props;sa.debug("handleRename",e,t),r.emit(Ke.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 u.jsxs(vi,{className:"file-explorer-panel",componentPanel:this,glContainer:t,glEventHub:r,onSessionOpen:this.handleSessionOpened,onSessionClose:this.handleSessionClosed,onShow:this.handleShow,children:[u.jsx(fk,{createFile:this.handleCreateFile,createFolder:this.handleCreateDirectory}),i&&u.jsx(gc,{isMultiSelect:!0,storage:e,onCopy:this.handleCopyFile,onCreateFile:this.handleCreateFile,onCreateFolder:this.handleCreateDirectory,onDelete:this.handleDelete,onRename:this.handleRename,onSelect:this.handleFileSelect,onSelectionChange:this.handleSelectionChange}),u.jsx(Ob,{isOpen:a,type:"directory",title:"Create New Folder",storage:e,onSubmit:this.handleCreateDirectorySubmit,onCancel:this.handleCreateDirectoryCancel,defaultValue:o})]})}}Db(lo,"COMPONENT","FileExplorerPanel");Db(lo,"TITLE","File Explorer");var wk=bk(lo);const fh=wk;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 gl(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){Xo(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 Xo(n,e,t){return e=yk(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function yk(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 ft=ae.module("FilterSetManager"),Tk="Enter name...",sg="No Available Filter Sets";class Zl extends y.Component{static animateScreenFlash(){var e,t=document.createElement("div");t.classList.add("screen-flash-overlay"),t.addEventListener("animationend",()=>{t.remove()}),(e=document.querySelector("body"))===null||e===void 0||e.appendChild(t)}constructor(e){super(e),Xo(this,"renameInputRef",he.createRef()),Xo(this,"dropdownRef",he.createRef()),Xo(this,"editDropdownRef",he.createRef()),Xo(this,"isRenamingExistingSet",Ce((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;ft.debug("initSettingsScreen",e,t),this.setState({modifiedFilterSets:[...e],editId:t})}updateSelectedId(){var{isValueShown:e,filterSets:t,selectedId:r,onChange:i}=this.props;if(ft.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:[]}),ft.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=tt(),r=e(),i={id:t,title:"",panels:r};ft.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 ft.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 ft.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){ft.error("Renamed set undefined.");return}var o=this.getNameError(t);if(ft.debug("handleRenameConfirm",t,o),o!==void 0){this.setState({nameInputError:o});return}var s=(e=t?.trim())!==null&&e!==void 0?e:"",l=gl(gl({},r),{},{title:s,restoreFullState:a}),d=i.findIndex(c=>{var{id:m}=c;return m===r.id}),h=[...i];d>=0?(h[d]=l,ft.debug("Renamed existing set",h)):(h.push(l),ft.debug("Added new set to modified sets",h)),this.setState({editId:l.id,modifiedFilterSets:h,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 ft.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 ft.debug("Deleted selected set",t,r,a),ft.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 ft.error("Filter for update not selected."),null;var o=[...i],s=o.findIndex(l=>{var{id:d}=l;return d===a});return s<0?(ft.error("Selected set for update not found."),null):(o[s]=gl(gl({},o[s]),{},{panels:t}),ft.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 ft.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){ft.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){ft.debug("No filter selected");return}var i=r.find(a=>{var{id:o}=a;return o===e});if(i===void 0){ft.debug("Selected id not found in filterSets",e,r);return}ft.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,h=this.isNameInputScreen(),c=this.isRenamingExistingSet(a,i),m=a.length===0,v=!h&&m&&l.length===0,f=!h&&!v,g=u.jsxs("div",{className:"fa-layers mr-3",children:[u.jsx(re,{icon:ro,mask:Uu,transform:"shrink-1 down-5 right-7"}),u.jsx(re,{icon:qi,className:"text-primary",transform:"shrink-6 down-5 right-7"})]}),p=u.jsxs("div",{className:"fa-layers",children:[u.jsx(re,{icon:ro,mask:Uu,transform:"shrink-1 down-5 right-7"}),u.jsx(re,{icon:Bu,transform:"shrink-1 down-5 right-7"})]});return u.jsx("div",{className:"filter-set-manager fill-parent-absolute",children:u.jsxs(_h,{className:"w-100 h-100",isFlipped:s,children:[u.jsx("div",{className:"filter-set-manager-settings-card fill-parent-absolute",children:u.jsxs("div",{className:"filter-set-manager-card-content",children:[v&&u.jsxs("div",{children:[u.jsx(G,{kind:"ghost",className:"btn btn-link no-underline",onClick:this.handleCaptureNewSet,icon:g,children:"Capture filter set"}),u.jsx("div",{className:"py-3 text-muted small",children:"Takes a snapshot of the currently applied filters on all panels, allowing you to restore saved filter sets later."})]}),h&&u.jsxs("div",{className:"d-flex flex-column justify-content-center","data-testid":"edit-filter-set-container",children:[u.jsxs("div",{className:"form-group",children:[u.jsx("label",{children:c?"Edit set":"Name captured set"}),u.jsxs("div",{className:"name-input-container",children:[u.jsx("input",{type:"text",className:"input-set-name form-control",placeholder:Tk,value:e,ref:this.renameInputRef,onChange:this.handleNameInputChange,onKeyPress:this.handleNameInputKeyPress,spellCheck:"false"}),u.jsx(G,{"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:up}),u.jsx(G,{"data-testid":"rename-cancel-button",kind:"ghost",className:"btn btn-link no-underline pt-2 pb-2",onClick:this.handleRenameCancel,tooltip:"Cancel",icon:$w})]}),t!==void 0&&u.jsx("div",{className:"error-message",children:t})]}),u.jsx("div",{className:"form-group",children:u.jsxs(dd,{onChange:this.handleRestoreFullStateChange,value:"".concat(o),children:[u.jsx(si,{value:"false",children:"Restore only filters"}),u.jsx(si,{value:"true",children:"Restore full table state"})]})})]}),f&&u.jsxs("div",{className:"filter-set-manager-settings-grid-1",children:[u.jsxs("div",{className:"form-group",children:[u.jsx("label",{children:"Edit filter sets"}),u.jsxs("div",{className:"filter-select-container",children:[u.jsxs("select",{"data-testid":"settings-card-filter-select",ref:this.editDropdownRef,value:r??"-1",className:"custom-select filter-value-select",onChange:this.handleEditDropdownChange,disabled:m,children:[m&&u.jsx("option",{value:"-1",disabled:!0,children:sg}),a.map(C=>{var{id:b,title:S}=C;return u.jsx("option",{value:b,children:S},b)})]}),u.jsx(G,{kind:"ghost",onClick:this.handleSetUpdate,disabled:m,icon:p,tooltip:"Update"}),u.jsx(G,{kind:"ghost",onClick:this.handleSetEdit,disabled:m,icon:bs,tooltip:"Edit"}),u.jsx(G,{kind:"ghost",onClick:this.handleSetDelete,disabled:m,icon:jr,tooltip:"Delete"})]})]}),u.jsx("div",{children:u.jsx(G,{kind:"ghost",className:"btn btn-link no-underline",onClick:this.handleCaptureNewSet,icon:g,children:"Capture new filter set"})}),u.jsxs("div",{className:"py-3 text-right",children:[u.jsx(G,{kind:"secondary",onClick:this.handleSettingsCancel,children:"Cancel"})," ",u.jsx(G,{kind:"primary",onClick:this.handleSettingsSave,children:"Save"})]})]})]})},"front"),u.jsxs("div",{className:"filter-set-manager-value-card fill-parent-absolute",onClick:this.handleBackgroundClick,children:[u.jsx("div",{className:"filter-set-manager-column",children:u.jsx("div",{className:"filter-set-manager-column-title",children:"Filter sets"})}),u.jsx("div",{className:"filter-set-manager-card-content",children:u.jsx("div",{className:"filter-set-manager-value-input",children:u.jsxs("div",{className:"filter-select-container",children:[u.jsxs("select",{"data-testid":"value-card-filter-select",ref:this.dropdownRef,value:d,className:"custom-select filter-value-select",onChange:this.handleFilterChange,children:[l.length===0&&u.jsx("option",{value:"-1",disabled:!0,children:sg}),l.map(C=>{var{id:b,title:S}=C;return u.jsx("option",{value:b,children:S},b)})]}),u.jsx(G,{"data-testid":"filter-apply-button",kind:"ghost",onClick:this.handleFilterApply,icon:Dh,tooltip:"Apply Filter Set"})]})})}),u.jsx("div",{className:"filter-set-manager-menu",children:u.jsx(G,{kind:"ghost",className:"btn btn-link btn-link-icon m-2 px-2",onClick:this.handleSettingsClick,tooltip:"Settings",icon:u.jsx(re,{icon:Cs,transform:"grow-4"})})})]},"back")]})})}}const Pk=Zl;function pc(n){var e,t,r,i,a,{model:o,widgetName:s,glContainer:l,description:d}=n,h=((e=o?.rowCount)!==null&&e!==void 0?e:0)-((t=o?.pendingRowCount)!==null&&t!==void 0?t:0)-((r=o?.floatingBottomRowCount)!==null&&r!==void 0?r:0)-((i=o?.floatingTopRowCount)!==null&&i!==void 0?i:0),c=o?.displayString(h,"long"),m=(a=o?.columnCount)!==null&&a!==void 0?a:0,v=o?.displayString(m,"long");return u.jsxs(Dd,{widgetType:"Table",widgetName:s,glContainer:l,description:d,children:[u.jsx("hr",{className:"tab-tooltip-divider"}),u.jsx("span",{children:"Number of Columns"}),u.jsx("span",{className:"tab-tooltip-statistic-value",children:v}),u.jsx("span",{children:"Number of Rows"}),u.jsx("span",{className:"tab-tooltip-statistic-value",children:c})]})}pc.propTypes={glContainer:Yh.Container.isRequired,widgetName:Y.string.isRequired,description:Y.string};pc.defaultProps={description:null};function Rb(n){if(n==null)return!1;var e=n;return typeof e.table=="string"}function Nb(n){if(n==null)return!1;var e=n;return typeof e.name=="string"}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 Ni(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){Dt(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 Dt(n,e,t){return e=Ok(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ok(n){var e=Dk(n,"string");return typeof e=="symbol"?e:String(e)}function Dk(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Nn=ae.module("IrisGridPanel"),Rk=500,Nk={IrisGrid:hb,IrisGridTableModel:cb,ContextMenuRoot:fp};function dg(n){if(n==null)throw new Error("No metadata provided");if(Nb(n))return n.name;if(Rb(n))return n.table;throw new Error("Unable to determine table name from metadata: ".concat(n))}class uo extends y.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",Ce((r,i)=>ye.getInputFiltersForColumns(r,i.filter(a=>{var{value:o,excludePanelIds:s}=a,l=X.getIdFromPanel(this);return o!=null&&(s==null||l!=null&&!s.includes(l))})))),Dt(this,"getAlwaysFetchColumns",Ce((r,i)=>{for(var a=X.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",Ce((r,i,a,o,s)=>{if(!i||!ba(i)||r==null||i.table==null)return null;var l={panel:this,onFilter:this.handlePluginFilter,onFetchColumns:this.handlePluginFetchColumns,user:a,workspace:o,components:Nk};return u.jsx("div",{className:"iris-grid-plugin",children:u.jsx(r,Ni({ref:this.pluginRef,filter:this.handlePluginFilter,fetchColumns:this.handlePluginFetchColumns,model:i,table:i.table,onStateChange:this.handlePluginStateChange,pluginState:s},l))})})),Dt(this,"getDehydratedIrisGridPanelState",Ce((r,i,a,o,s)=>ye.dehydrateIrisGridPanelState(r,{isSelectingPartition:i,partition:a,partitionColumn:o,advancedSettings:s}))),Dt(this,"getDehydratedIrisGridState",Ce((r,i,a,o,s,l,d,h,c,m,v,f,g,p,C,b,S,w,E,T,P)=>(A(this.irisGridUtils),this.irisGridUtils.dehydrateIrisGridState(r,{advancedFilters:a,aggregationSettings:S,customColumnFormatMap:o,isFilterBarShown:s,metrics:{userColumnWidths:C,userRowHeights:b},quickFilters:l,customColumns:d,reverseType:h,rollupConfig:c,showSearchBar:m,searchValue:v,selectDistinctColumns:f,selectedSearchColumns:g,sorts:i,invertSearchColumns:p,pendingDataMap:w,frozenColumns:E,conditionalFormats:T,columnHeaderGroups:P})))),Dt(this,"getDehydratedGridState",Ce((r,i,a,o,s)=>ye.dehydrateGridState(r,{isStuckToBottom:o,isStuckToRight:s,movedColumns:i,movedRows:a}))),Dt(this,"getCachedPanelState",Ce((r,i,a,o)=>({irisGridPanelState:r,irisGridState:i,gridState:a,pluginState:o}))),Dt(this,"savePanelState",rt(()=>{var{irisGridState:r,gridState:i,pluginState:a}=this;A(r);var{onPanelStateUpdate:o}=this.props,{model:s,panelState:l,isSelectingPartition:d,partition:h,partitionColumn:c,advancedSettings:m}=this.state,{advancedFilters:v,aggregationSettings:f,customColumnFormatMap:g,isFilterBarShown:p,quickFilters:C,customColumns:b,reverseType:S,rollupConfig:w,showSearchBar:E,searchValue:T,selectDistinctColumns:P,selectedSearchColumns:D,sorts:O,invertSearchColumns:N,metrics:_,pendingDataMap:F,frozenColumns:x,conditionalFormats:L,columnHeaderGroups:M}=r;A(s),A(_);var{userColumnWidths:U,userRowHeights:V}=_;A(i);var{isStuckToBottom:z,isStuckToRight:Q,movedColumns:Z,movedRows:I}=i,R=this.getCachedPanelState(this.getDehydratedIrisGridPanelState(s,d,h,c,m),this.getDehydratedIrisGridState(s,O,v,g,p,C,b,S,w,E,T,P,D,N,U,V,f,F,x,L,M),this.getDehydratedGridState(s,Z,I,z,Q),a);R!==l&&(Nn.debug("Saving panel state",this,R),this.setState({panelState:R}),o?.(R))},Rk)),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=he.createRef(),this.pluginRef=he.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(VC.DEFAULTS),customColumns:[],customColumnFormatMap:new Map,isFilterBarShown:!1,quickFilters:new Map,sorts:[],userColumnWidths:new Map,userRowHeights:new Map,reverseType:j.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 dg(e)}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:h}=Ni(Ni({},o),i);l.length>0&&a.push(c=>{c.customColumns=l}),h!=null&&h.columns.length>0&&a.push(c=>{c.rollupConfig=ye.getModelRollupConfig(c.originalColumns,h,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();Nn.debug("initModelQueue",i),i&&i(r),this.setState({modelQueue:t})}handleAdvancedSettingsChange(e,t){Nn.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;A(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(gn.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):(A(r),this.initModelQueue(r,i))}handleTableChanged(e){Nn.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(Ar.SEND_COMMAND,o,!1,!0)}handleCreateChart(e,t){this.savePanelState.flush(),this.setState(()=>null,()=>{var{glEventHub:r,inputFilters:i}=this.props,a=this.getTableName(),{panelState:o}=this.state,s=X.getIdFromPanel(this),l;o&&(l=ye.extractTableSettings(o,i)),r.emit(gn.CREATE_CHART,{metadata:{settings:e,sourcePanelId:s,table:a,tableSettings:l},table:ba(t)?t.table:void 0})})}handleColumnSelected(e){var{glEventHub:t}=this.props;t.emit(gn.COLUMN_SELECTED,this,e)}handleDataSelected(e,t){var{glEventHub:r}=this.props;r.emit(gn.DATA_SELECTED,this,t)}handleResize(){this.updateGrid()}handleShow(){this.updateGrid()}handleTabClicked(){this.irisGrid.current&&this.irisGrid.current.focus()}handleError(e){Nn.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}),ba(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){Nn.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;A(o);var{metrics:d}=o.state;A(d);var{columnHeaderHeight:h,allColumnXs:c,allColumnWidths:m,right:v,columnHeaderMaxDepth:f}=d,g=a.getColumnIndexByName(e);A(g);var p=o.getVisibleColumn(g),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)),w=l.top+h*f;return[S,w]}setFilterMap(e){var t=this.irisGrid.current;t?.setFilterMap(e)}setAdvancedFilterMap(e){var t=this.irisGrid.current;t?.setAdvancedFilterMap(e)}setFilters(e){var{quickFilters:t,advancedFilters:r}=e;Nn.debug("setFilters",t,r);var{model:i,isDisconnected:a}=this.state,o=this.irisGrid.current;if(o==null||a){Nn.debug("Ignore setFilters, model disconnected");return}A(i);var{columns:s,formatter:l}=i,d=ye.changeFilterColumnNamesToIndexes(i.columns,t).filter(c=>{var[m]=c;return i.isFilterable(m)}),h=ye.changeFilterColumnNamesToIndexes(i.columns,r).filter(c=>{var[m]=c;return i.isFilterable(m)});A(this.irisGridUtils),o.clearAllFilters(),o.setFilters({quickFilters:this.irisGridUtils.hydrateQuickFilters(s,d,l.timeZone),advancedFilters:this.irisGridUtils.hydrateAdvancedFilters(s,h,l.timeZone)})}setStateOverrides(e){Nn.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=Ni({},r),{quickFilters:d,advancedFilters:h}=l;d&&(l.quickFilters=ye.changeFilterColumnNamesToIndexes(e.columns,d)),h&&(l.advancedFilters=ye.changeFilterColumnNamesToIndexes(e.columns,h));var{isSelectingPartition:c,partition:m,partitionColumn:v,advancedSettings:f}=ye.hydrateIrisGridPanelState(e,s);A(this.irisGridUtils);var{advancedFilters:g,customColumns:p,customColumnFormatMap:C,isFilterBarShown:b,quickFilters:S,reverseType:w,rollupConfig:E,aggregationSettings:T,sorts:P,userColumnWidths:D,userRowHeights:O,showSearchBar:N,searchValue:_,selectDistinctColumns:F,selectedSearchColumns:x,invertSearchColumns:L,pendingDataMap:M,frozenColumns:U,conditionalFormats:V,columnHeaderGroups:z}=this.irisGridUtils.hydrateIrisGridState(e,Ni(Ni({},o),l)),{isStuckToBottom:Q,isStuckToRight:Z,movedColumns:I,movedRows:R}=ye.hydrateGridState(e,Ni(Ni({},a),i),o.customColumns);this.setState({advancedFilters:g,advancedSettings:f,conditionalFormats:V,customColumns:p,customColumnFormatMap:C,isFilterBarShown:b,isSelectingPartition:c,movedColumns:I,movedRows:R,partition:m,partitionColumn:v,quickFilters:S,reverseType:w,rollupConfig:E,aggregationSettings:T,sorts:P,userColumnWidths:D,userRowHeights:O,showSearchBar:N,searchValue:_,selectDistinctColumns:F,selectedSearchColumns:x,invertSearchColumns:L,pendingDataMap:M,frozenColumns:U,isStuckToBottom:Q,isStuckToRight:Z,columnHeaderGroups:z})}catch(k){Nn.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:h,panelState:c,user:m,workspace:v,settings:f,theme:g}=this.props,{advancedFilters:p,aggregationSettings:C,advancedSettings:b,conditionalFormats:S,customColumns:w,customColumnFormatMap:E,error:T,isDisconnected:P,isFilterBarShown:D,isSelectingPartition:O,isStuckToBottom:N,isStuckToRight:_,isLoaded:F,isLoading:x,isModelReady:L,model:M,movedColumns:U,movedRows:V,partition:z,partitionColumn:Q,quickFilters:Z,reverseType:I,rollupConfig:R,sorts:k,userColumnWidths:H,userRowHeights:K,showSearchBar:ee,searchValue:W,selectDistinctColumns:te,selectedSearchColumns:ne,invertSearchColumns:oe,Plugin:de,pluginFilters:je,pluginFetchColumns:ct,pendingDataMap:mt,frozenColumns:Xe,columnHeaderGroups:st}=this.state,Ot=T!=null?"Unable to open table. ".concat(T):void 0,Ae=dg(h),_t=(e=M?.description)!==null&&e!==void 0?e:void 0,Bt=(t=c?.pluginState)!==null&&t!==void 0?t:null,Er=r??this.getPluginContent(de,M,m,v,Bt),{permissions:Tr}=m,{canCopy:nn,canDownloadCsv:On}=Tr;return u.jsx(sc,{errorMessage:Ot,isDisconnected:P,isLoading:x,isLoaded:F,className:"iris-grid-panel",glContainer:i,glEventHub:a,onClearAllFilters:this.handleClearAllFilters,onResize:this.handleResize,onShow:this.handleShow,onTabFocus:this.handleShow,onTabClicked:this.handleTabClicked,widgetName:Ae,widgetType:"Table",description:_t,componentPanel:this,renderTabTooltip:()=>u.jsx(pc,{model:M,widgetName:Ae,glContainer:i,description:_t}),children:L&&M&&u.jsx(hb,{advancedFilters:p,aggregationSettings:C,advancedSettings:b,alwaysFetchColumns:this.getAlwaysFetchColumns(d,ct),columnAllowedCursor:"linker",columnNotAllowedCursor:"linker-not-allowed",customColumns:w,customColumnFormatMap:E,columnSelectionValidator:this.isColumnSelectionValid,conditionalFormats:S,inputFilters:this.getGridInputFilters(M.columns,l),applyInputFiltersOnInit:c==null,isFilterBarShown:D,isSelectingColumn:o!=null,isSelectingPartition:O,isStuckToBottom:N,isStuckToRight:_,movedColumns:U,movedRows:V,partition:z,partitionColumn:Q,quickFilters:Z,reverseType:I,rollupConfig:R,settings:f,sorts:k,userColumnWidths:H,userRowHeights:K,model:M,showSearchBar:ee,searchValue:W,selectedSearchColumns:ne,selectDistinctColumns:te,invertSearchColumns:oe,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:je,pendingDataMap:mt,canCopy:nn,canDownloadCsv:On,ref:this.irisGrid,getDownloadWorker:s,frozenColumns:Xe,theme:g,columnHeaderGroups:st,children:Er})})}}Dt(uo,"defaultProps",{onStateChange:()=>{},onPanelStateUpdate:()=>{}});Dt(uo,"displayName","IrisGridPanel");Dt(uo,"COMPONENT","IrisGridPanel");var Fk=(n,e)=>{var{localDashboardId:t=wn}=e;return{inputFilters:lc(n,t),links:yo(n,t),columnSelectionValidator:hc(n,t),user:kp(n),workspace:pd(n),settings:Ut(n)}},Ik=$t(Fk,null,null,{forwardRef:!0})(uo);const ho=Ik;function ns(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=xk(n,"string");return typeof e=="symbol"?e:String(e)}function xk(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 ug=ae.module("InputFilter"),Mk=150;class co extends y.Component{constructor(e){super(e),ns(this,"inputRef",void 0),ns(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})),ns(this,"sendUpdate",rt(()=>{var{onChange:a}=this.props,{column:o,value:s,isValueShown:l}=this.state;a({column:o,isValueShown:l,value:s})},Mk)),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=he.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)];ug.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;ug.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 u.jsxs(_h,{className:"input-filter fill-parent-absolute",isFlipped:r??!1,children:[u.jsx("div",{className:"input-filter-settings-card",children:u.jsxs("div",{className:"input-filter-settings-content",children:[u.jsxs("div",{className:"input-filter-settings-grid",children:[u.jsx("label",{children:"Filter Column"}),u.jsxs("select",{value:e.findIndex(d=>d.name===i?.name&&d.type===i?.type),className:"custom-select",onChange:this.handleColumnChange,children:[e.map((d,h)=>u.jsx("option",{value:h,children:this.getItemLabel(e,h)},"".concat(d.name,"/").concat(d.type))),e.length===0&&u.jsx("option",{value:"-1",disabled:!0,children:"No Available Columns"})]}),u.jsx("div",{className:"text-muted small",children:"Input filter control will apply its filter to all columns matching this name in this dashboard."})]}),u.jsxs("div",{className:"input-filter-settings-buttons",children:[u.jsx(G,{kind:"secondary",onClick:this.handleSettingsCancel,disabled:t==null,children:"Cancel"}),u.jsx(G,{kind:"primary",className:"ml-2",onClick:this.handleSettingsSave,disabled:i==null,children:"Save"})]})]})}),u.jsxs("div",{className:"input-filter-value-card",onClick:this.handleBackgroundClick,children:[u.jsx("div",{className:"input-filter-column",children:u.jsxs("div",{className:"input-filter-column-title",children:[s," Filter"]})}),u.jsx("div",{className:"d-flex justify-content-center align-items-center h-100 w-100",children:u.jsx("div",{className:"input-filter-value-input d-flex flex-column justify-content-center",children:u.jsx("input",{type:"text",ref:this.inputRef,placeholder:co.PLACEHOLDER,value:a??"",onChange:this.handleValueChange,onKeyPress:this.handleInputKeyPress,style:{width:"".concat(o+3,"ch")},spellCheck:"false"})})}),u.jsx("div",{className:"input-filter-menu",children:u.jsx(G,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:u.jsx(re,{icon:Cs,transform:"grow-4"}),tooltip:"Input Filter Settings"})})]})]})}}ns(co,"PLACEHOLDER","Enter value...");ns(co,"defaultProps",{column:null,isValueShown:!1,value:null});const Ak=co;function Fd(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 jk=250;class Id extends y.Component{constructor(e){super(e),Fd(this,"inputFilterRef",void 0),this.handleChange=rt(this.handleChange.bind(this),jk),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.inputFilterRef=he.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 h,{panelState:c,timestamp:m,wasFlipped:v,skipUpdate:f}=d,g=c!=null&&r!==c.isValueShown&&a===c.name&&o===c.type&&i===c.value;return s=(h=!f&&r&&(!g||!v))!==null&&h!==void 0?h:!1,s||(l=m),{panelState:{isValueShown:r,name:a,type:o,value:i,timestamp:l},timestamp:l,wasFlipped:g,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 u.jsx(vi,{className:"iris-input-filter-panel",componentPanel:this,glContainer:e,glEventHub:t,onClearAllFilters:this.handleClearAllFilters,isClonable:!0,isRenamable:!0,children:u.jsx(Ak,{ref:this.inputFilterRef,column:r,columns:i,onChange:this.handleChange,isValueShown:a,value:o})})}}Fd(Id,"defaultProps",{panelState:null});Fd(Id,"COMPONENT","InputFilterPanel");Fd(Id,"displayName","InputFilterPanel");var Hk=(n,e)=>{var{localDashboardId:t}=e;return{columns:yb(n,t)}},$k=$t(Hk,null,null,{forwardRef:!0})(Id);const is=$k;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 pl(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){Cc(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 Cc(n,e,t){return e=Uk(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Uk(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)}var Wt=ae.module("FilterSetManagerPanel");function Vk(n){return n.setPanelState!=null}class mo extends y.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){Wt.error("Could not get panel",i);return}var a=X.getComponentNameFromPanel(i),o=X.getIdFromPanel(i);Wt.debug("Panel:",i,a);var{glContainer:s=null}=i.props;if(s==null){Wt.error("Could not get panel container",i);return}var l=X.getComponentConfigFromContainer(s);if(l==null){Wt.error("Could not get component config from container",s);return}var d=X.getPanelComponentState(l);if(d==null){Wt.debug("Panel state is null ".concat(o));return}switch(a){case X.getComponentName(uo):{var h;o!=null&&(h=this.getIrisGridPanelFilters(o,d)),h!=null&&t.push({panelId:o,type:a,state:h});break}case X.getComponentName(is):case X.getComponentName(Sa):{var{isValueShown:c,name:m,type:v,value:f}=d;t.push({panelId:o,type:a,state:{isValueShown:c,name:m,type:v,value:f}});break}}}),t}getIrisGridPanelFilters(e,t){var{panelTableMap:r}=this.props,i=r.get(e);if(i==null)return Wt.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 h;return l&&(h=mo.changeFilterIndexesToColumnNames(i,l)),{irisGridState:pl(pl({},a),{},{advancedFilters:d,quickFilters:h}),gridState:pl({},o)}}handleGetFilterState(){return this.getFilterState()}handleChange(e){var{isValueShown:t,selectedId:r}=e;Wt.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;Wt.debug("Apply filters from filter set",e),r.forEach(a=>{var{panelId:o,type:s,state:l}=a;if(o==null){Wt.debug("panel is null",o);return}if(!t.has(o)){Wt.debug("Ignore closed panel",o);return}Wt.debug("Apply panel filters",o,s,l);var d=t.get(o);switch(s){case X.getComponentName(uo):this.restoreIrisGridFilters(d,l,i);break;case X.getComponentName(is):case X.getComponentName(Sa):this.restoreInputFilterState(d,l);break}})}handleSetsUpdate(e){var{setDashboardFilterSets:t,localDashboardId:r}=this.props;Wt.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,h=X.getIdFromPanel(e);if(h==null){Wt.error("Panel Id is null.");return}var c=d.get(h);if(c==null){Wt.error("Unable to get table for panel ".concat(h,"."));return}Wt.debug("restoreIrisGridFilters",h,t,r),r?e.setStateOverrides(t):e.setFilters({quickFilters:l,advancedFilters:s})}restoreInputFilterState(e,t){var r=pl({},t);delete r.isValueShown,Wt.debug("restoreInputFilterState",e,r),e&&Vk(e)&&e.setPanelState(r)}render(){var{glContainer:e,glEventHub:t,filterSets:r}=this.props,{isValueShown:i,selectedId:a}=this.state;return u.jsx(vi,{className:"filter-set-manager-panel",componentPanel:this,glContainer:e,glEventHub:t,isClonable:!0,isRenamable:!0,children:u.jsx("div",{className:"input-filter-container h-100 w-100 container",children:u.jsx(Pk,{onChange:this.handleChange,onApply:this.handleFilterApply,onUpdateSets:this.handleSetsUpdate,isValueShown:i,filterSets:r,selectedId:a,getFilterState:this.handleGetFilterState})})})}}Cc(mo,"defaultProps",{panelState:null});Cc(mo,"COMPONENT","FilterSetManagerPanel");var Gk=(n,e)=>{var{localDashboardId:t}=e;return{filterSets:u1(n,t),dashboardOpenedPanelMap:DC(n,t),dashboardInputFilters:lc(n,t),panelTableMap:dc(n,t)}},Wk=$t(Gk,{setDashboardFilterSets:C1},null,{forwardRef:!0})(mo);const Iu=Wk;function fs(n,e,t){return e=zk(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function zk(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 cg=ae.module("LogPanel");class _d extends y.PureComponent{constructor(e){super(e),fs(this,"isBottomVisible",void 0),fs(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){cg.debug("Session opened",[e]),this.setState({session:e})}handleSessionClosed(e){cg.debug("Session closed",e)}updateDimensions(){this.logView&&this.logView.updateDimensions()}render(){var{glContainer:e,glEventHub:t}=this.props,{session:r}=this.state;return u.jsxs(vi,{componentPanel:this,glContainer:e,glEventHub:t,onResize:this.handleResize,onHide:this.handleHide,onShow:this.handleShow,onSessionOpen:this.handleSessionOpened,onSessionClose:this.handleSessionClosed,children:[r==null&&u.jsx("div",{className:"log-panel-disconnected-message",children:"Waiting for session connection"}),r!=null&&u.jsx(dT,{session:r,ref:i=>{this.logView=i}})]})}}fs(_d,"defaultProps",{session:null});fs(_d,"COMPONENT","LogPanel");fs(_d,"TITLE","Log");var Yk=(n,e)=>{var t;return{session:(t=Ta(n,e.localDashboardId))===null||t===void 0?void 0:t.session}},qk=$t(Yk,null,null,{forwardRef:!0})(_d);const gh=qk;function Xk(n,e,t){return e=Qk(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Qk(n){var e=Zk(n,"string");return typeof e=="symbol"?e:String(e)}function Zk(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Fb extends y.PureComponent{render(){var{isEditing:e,children:t,onDoubleClick:r}=this.props;return u.jsxs("div",{className:"markdown-editor-container h-100 w-100",onDoubleClick:r,children:[u.jsx("div",{className:J("text-muted","edit-hint",{viewing:e===void 0||!e}),children:u.jsxs("span",{children:["double-click to edit ",u.jsx(re,{icon:bs})]})}),t]})}}Xk(Fb,"defaultProps",{isEditing:!1});function Jk(n,e,t){return e=ej(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ej(n){var e=tj(n,"string");return typeof e=="symbol"?e:String(e)}function tj(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 rj=ae.module("MarkdownStartPage");class Ib extends y.PureComponent{constructor(e){super(e),this.handleDeleteButtonClick=this.handleDeleteButtonClick.bind(this),this.handleDeleteModalClose=this.handleDeleteModalClose.bind(this),this.state={isDeleteModalShown:!1}}handleDeleteButtonClick(e){this.setState({isDeleteModalShown:!0,toBeDeleted:e})}handleDeleteModalClose(){this.setState({isDeleteModalShown:!1,toBeDeleted:void 0})}handleDeleteMarkdown(e){if(rj.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 u.jsx("div",{className:"markdown-panel-start-page h-100 w-100",children:u.jsxs("div",{className:"markdown-panel-start-page-container",children:[u.jsxs("div",{className:"markdown-panel-start-list",children:[u.jsx("h3",{className:"list-title",children:"Start"}),u.jsx("div",{className:"list-item",children:u.jsx(G,{kind:"ghost",className:"title",onClick:r,children:"New Markdown Note"})})]}),u.jsxs("div",{className:"markdown-panel-start-list",children:[u.jsx("h3",{className:"list-title",children:"Recently Closed from Dashboard"}),e.map(o=>u.jsxs("div",{className:"list-item",children:[u.jsx(G,{kind:"ghost",className:"title",onClick:()=>t(o),children:o.title}),u.jsx("button",{className:"btn-link icon",type:"button",onClick:()=>{this.handleDeleteButtonClick(o)},children:u.jsx(re,{icon:jr})})]},o.id)),u.jsxs(nd,{isOpen:i,toggle:this.handleDeleteModalClose,className:"modal-dialog-centered markdown-delete-modal theme-bg-light",children:[u.jsx(id,{children:"Are you sure you want to permanently delete this note?"}),u.jsx(ad,{children:"You can't undo this action."}),u.jsxs(vp,{children:[u.jsx(G,{kind:"secondary",onClick:this.handleDeleteModalClose,children:"Cancel"}),u.jsx(G,{kind:"danger",onClick:()=>{this.handleDeleteMarkdown(a)},children:"Delete"})]})]})]})]})})}}Jk(Ib,"defaultProps",{closedMarkdowns:[],onOpen:()=>{},onCreate:()=>{},onDelete:()=>{}});const nj=Ib;function _b(n,e,t){return e=ij(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ij(n){var e=aj(n,"string");return typeof e=="symbol"?e:String(e)}function aj(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 oj=n=>{var{children:e,className:t}=n,r=t!=null&&t!==void 0&&t.startsWith("language-")?t.substring(9):"plaintext";return u.jsx("pre",{children:u.jsx("code",{children:u.jsx(hd,{language:r,children:he.Children.map(e,i=>typeof i=="string"?i.trim():i)})})})};class xb extends y.PureComponent{constructor(e){super(e),_b(this,"container",void 0),this.container=null}render(){var{isEditing:e,content:t,onEditorInitialized:r}=this.props;return u.jsx("div",{className:"markdown-editor-container",ref:i=>{this.container=i},children:e?u.jsx(Ah,{settings:{language:"markdown",value:t,lineNumbers:"off"},onEditorInitialized:r}):u.jsx(Zg,{components:{code:oj},children:t})})}}_b(xb,"defaultProps",{isEditing:!1,content:""});function as(n,e,t){return e=sj(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function sj(n){var e=lj(n,"string");return typeof e=="symbol"?e:String(e)}function lj(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Cl=ae.module("MarkdownPanel");class bc extends y.Component{constructor(e){super(e),as(this,"markdownEditor",void 0),as(this,"editor",void 0),as(this,"getClosedMarkdowns",Ce(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){A(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){Cl.debug("Markdown Editor Initialized..."),this.editor=e}handleCreateMarkdown(){Cl.debug("create markdown..."),this.setState({isStartPageShown:!1,content:"",isEditing:!0,panelState:{content:""}},()=>{this.editor!=null&&this.editor.focus!=null&&this.editor.focus()})}handleOpenMarkdown(e){Cl.debug("open markdown...",e);var{glContainer:t,glEventHub:r}=this.props,i=X.getComponentConfigFromContainer(t);r.emit(Ee.REOPEN,e,i)}handleDeleteMarkdown(e){var{glEventHub:t}=this.props;t.emit(Ee.DELETE,e)}handleEditorBlur(e){var t;Cl.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 u.jsx(vi,{glContainer:e,glEventHub:t,className:"markdown-panel",componentPanel:this,onResize:this.handleEditorResize,onBlur:this.handleEditorBlur,isClonable:!0,isRenamable:!0,children:a?u.jsx(nj,{closedMarkdowns:s,onCreate:this.handleCreateMarkdown,onOpen:this.handleOpenMarkdown,onDelete:this.handleDeleteMarkdown}):u.jsx(Fb,{isEditing:i,onDoubleClick:this.handleContainerDoubleClick,children:u.jsx(xb,{ref:l=>{this.markdownEditor=l},isEditing:i,content:o??void 0,onEditorInitialized:this.handleEditorInitialized})})})}}as(bc,"defaultProps",{panelState:null});as(bc,"COMPONENT","MarkdownPanel");var dj=(n,e)=>{var{localDashboardId:t}=e;return{closedPanels:FD(n,t)}},uj=$t(dj,null,null,{forwardRef:!0})(bc);const Ho=uj;function Fl(n,e,t){return e=hj(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function hj(n){var e=cj(n,"string");return typeof e=="symbol"?e:String(e)}function cj(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Mb extends y.PureComponent{constructor(e){super(e),Fl(this,"commands",void 0),Fl(this,"codeElements",void 0),Fl(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=he.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(g=>g===i||i==null);if(!(o<0)){var s=a[o],l=this.commands.get(s),d=this.getNextStartLine(s),h=(t=this.codeElements.get(s))===null||t===void 0?void 0:t.current,c=h==null||(r=h.parentElement)===null||r===void 0?void 0:r.nextElementSibling;if(c!=null){var m,{offsetTop:v}=c,f=v;(m=this.editorScrollView.current)===null||m===void 0||m.scroll({top:f,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;A(d);var{start:h}=d,{line:c}=h,m=l[0].value,v=he.createRef(),f=this.commands.size===0,g=s===c||f&&s==null&&!o,p=r!==void 0&&r.startsWith("language-")?r.substring(9):"plaintext";return i!=null&&i?u.jsx("code",{className:r,children:t}):(this.commands.set(c,m),this.codeElements.set(c,v),u.jsxs("div",{className:J("markdown-notebook-code-block",{"is-selected":g}),ref:v,onClick:()=>{this.setState({nextStartLine:c})},role:"presentation",children:[u.jsx(G,{kind:"ghost",icon:_l,className:"btn-play-block",onClick:C=>{C.stopPropagation(),C.preventDefault(),this.runCode(m),this.setState({nextStartLine:c})},tooltip:"Run code"}),u.jsx("code",{children:u.jsx(hd,{language:p,children:he.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 u.jsx("a",{href:r,onClick:t,target:a,children:i})}render(){var{content:e,transformImageUri:t,transformLinkUri:r}=this.props,{hasCode:i,hasRunCode:a,nextStartLine:o}=this.state;return u.jsxs("div",{className:"markdown-notebook",children:[u.jsx("div",{className:"markdown-notebook-toolbar",children:u.jsx(G,{className:J("btn-play-selected-cell",{flashing:i&&!a}),kind:"ghost",icon:_l,onClick:this.handleRunSelected,tooltip:"Run code and select next",disabled:a&&o==null||!i,children:"Run Selected Code"})}),u.jsx("div",{className:"markdown-notebook-content",ref:this.editorScrollView,children:u.jsx(Zg,{components:{code:this.renderCodeBlock,a:this.renderLink},linkTarget:"_blank",remarkPlugins:[jS],transformLinkUri:r,transformImageUri:t,includeElementIndex:!0,children:e})})]})}}Fl(Mb,"defaultProps",{onRunCode:()=>{}});const mj=Mb;function mg(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?mg(Object(t),!0).forEach(function(r){gr(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):mg(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function gr(n,e,t){return e=vj(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function vj(n){var e=fj(n,"string");return typeof e=="symbol"?e:String(e)}function fj(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var We=ae.module("NotebookPanel"),vg=400;class bn extends y.Component{static handleError(e){Te.isCanceled(e)||We.error(e)}static languageFromFileName(e){var t=ge.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",Ce((m,v)=>zt(zt({},m),{},{minimap:{enabled:v}}))),gr(this,"getOverflowActions",Ce((m,v)=>[{title:"Find",icon:Uw,action:this.handleFind,group:se.groups.high,shortcut:ar.NOTEBOOK.FIND,order:10},{title:"Show Minimap",icon:m?ii:void 0,action:this.handleMinimapChange,group:se.groups.medium,shortcut:ar.NOTEBOOK.MINIMAP,order:20},{title:"Word Wrap",icon:v?ii:void 0,action:this.handleWordWrapChange,group:se.groups.medium,shortcut:ar.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),vg),this.debouncedLoad=rt(this.load.bind(this),vg),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&&ge.hasPath(s.itemName),h=d===!0&&o.value!=null||!d&&o.value!=null&&o.value.length>0,c=h?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:""},We.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(Ke.RENAME_FILE,this.handleRenameFile),t.on(Ee.DROPPED,this.handlePanelDropped),e.on(Ke.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(Ke.RENAME_FILE,this.handleRenameFile),e.off(Ee.DROPPED,this.handlePanelDropped),t.off(Ke.PROMOTE_FROM_PREVIEW,this.handlePreviewPromotion),e.emit(Ke.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);A(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){We.debug("Init content from file"),this.registerFileMetadata(e,r),this.load();return}if(t.value!=null){We.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(Ke.CLOSE_FILE,{id:e})}registerFileMetadata(e,t){var{glEventHub:r,metadata:i}=this.props,{id:a}=i;r.emit(Ke.REGISTER_FILE,a,e,t)}renameTab(e,t){var{glEventHub:r}=this.props;r.emit(Ke.RENAME,e,t)}load(){var{fileMetadata:e,settings:t}=this.state;A(e);var{id:r}=e,{fileStorage:i}=this.props;this.pending.add(i.loadFile(r)).then(a=>{var o;We.debug("Loaded file",a);var{filename:s}=a,{itemName:l}=this.state;if(s!==l){var{metadata:d}=this.props,{id:h}=d;this.renameTab(h,ge.getBaseName(s))}var c=zt(zt({},t),{},{language:(o=bn.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&&ge.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){We.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;We.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}),h=zt(zt({},o),{},{value:l}),c={settings:h,fileMetadata:i,isPreview:a};return We.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(Ke.CLOSE_FILE,{id:e,itemName:e},{force:!0}),this.focus()}handleCopy(){var{fileMetadata:e,settings:t}=this.state;A(e);var r=this.getNotebookValue(),{language:i}=t,{itemName:a}=e,o=ge.getCopyFileName(a);We.debug("handleCopy",e,a,o),this.createNotebook(o,i,r)}handleEditorInitialized(e){this.editor=e}handleEditorWillDestroy(){this.editor=void 0}handleEditorChange(e){We.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(){We.debug("handleBlur"),this.setState({isFocused:!1})}handleFocus(){We.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==="/"){We.debug("Ignoring invalid notebook link",o);return}We.debug("Notebook link clicked, opening",o);var{glEventHub:s}=this.props,l={value:null,language:i},d={id:o,itemName:o};s.emit(Ke.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.")),We.error(t),this.setState({error:t,isLoading:!1}))}handleSave(){We.debug("handleSave"),this.save()}handleSaveSuccess(e){var t,{fileStorage:r}=this.props,i={id:e.filename,itemName:e.filename},a=(t=bn.languageFromFileName(e.filename))!==null&&t!==void 0?t:"";this.setState(o=>{var{fileMetadata:s}=o,l=zt(zt({},o.settings),{},{language:a});return We.debug("handleSaveSuccess",i,s,l),s&&ge.hasPath(s.itemName)&&s.itemName!==i.itemName&&(We.debug("handleSaveSuccess deleting old file",s.itemName),r.deleteFile(s.itemName).catch(bn.handleError)),{fileMetadata:i,settings:l,isPreview:!1}}),this.debouncedSavePanelState(),this.registerFileMetadata(i,!1)}handleSaveError(e){Te.isCanceled(e)||(this.setState({savedChangeCount:0}),We.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),We.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}),ge.getBaseName(a)!==ge.getBaseName(e)){var{metadata:s}=this.props,{id:l}=s;this.renameTab(l,ge.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){We.error("Editor is not initialized.");return}this.runCommand((e=this.notebook.getValue())!==null&&e!==void 0?e:void 0)}handleRunSelected(){if(!this.notebook){We.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;We.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){We.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];We.debug("handleTabFocus",...t);var{glContainer:i}=this.props;this.setState({isDashboardActive:!0}),this.notebook&&!i.isHidden&&this.notebook.updateDimensions()}handleTabBlur(){We.debug("handleTabBlur"),this.setState({isDashboardActive:!1})}handleTabClick(e){We.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};We.debug("handleCreateNotebook",a,o,l,d),i.emit(Ke.CREATE_NOTEBOOK,a,o,l,d)}runCommand(e){if(e===void 0||e===""){We.debug("Ignoring empty command.");return}this.removePreviewStatus();var{glEventHub:t}=this.props;t.emit(Ar.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:h,isDashboardActive:c,isLoaded:m,isLoading:v,isPreview:f,fileMetadata:g,session:p,sessionLanguage:C,settings:b,showCloseModal:S,showSaveAsModal:w}=this.state,E=c&&!i.isHidden&&!f,T=(e=g?.itemName)!==null&&e!==void 0?e:bn.DEFAULT_NAME,P=T.endsWith(".md"),D=g?.id!=null,O=this.getSettings(b,s.isMinimapEnabled),N=p!=null,_=C===O.language,F=!m||!N||!_,x=!m,L=[{action:this.handleSave,shortcut:ui.SAVE},{action:this.handleMinimapChange,shortcut:ar.NOTEBOOK.MINIMAP},{action:this.handleWordWrapChange,shortcut:ar.NOTEBOOK.WORDWRAP}],M=Wu.getDisabledRunTooltip(N,_,"Notebook extension","Run"),U=Wu.getDisabledRunTooltip(N,_,"Notebook extension","Run Selected"),V=[{title:D?"Rename":"Save As…",order:10,group:se.groups.high,action:this.handleShowRename},{title:"Copy File",action:this.handleCopy,group:se.groups.high,order:20}],z=a?.element.find(".lm_title_before").get(0);return u.jsxs(u.Fragment,{children:[z!=null&&wh.createPortal(u.jsx("span",{className:J("editor-unsaved-indicator",{"is-unsaved":l!==d})}),z),u.jsxs(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:V,renderTabTooltip:()=>T,children:[!P&&u.jsxs(u.Fragment,{children:[u.jsxs("div",{className:"notebook-toolbar",children:[u.jsxs("span",{children:[u.jsx(G,{kind:"ghost",className:"btn-play",onClick:this.handleRunAll,disabled:F,icon:u.jsx(re,{icon:_l,transform:"grow-4"}),tooltip:"Run ".concat(ar.NOTEBOOK.RUN.getDisplayText()),"aria-label":"Run"}),M!=null&&u.jsx(pt,{children:M})]}),u.jsxs("span",{children:[u.jsx(G,{kind:"ghost",className:"btn-play",onClick:this.handleRunSelected,disabled:F,icon:u.jsx(re,{icon:Bw,transform:"grow-4"}),tooltip:"Run Selected ".concat(ar.NOTEBOOK.RUN_SELECTED.getDisplayText()),"aria-label":"Run Selected"}),U!=null&&u.jsx(pt,{children:U})]}),u.jsx(G,{kind:"ghost",className:"mr-auto",disabled:x,onClick:this.handleSave,icon:up,tooltip:"Save ".concat(ui.SAVE.getDisplayText()),"aria-label":"Save"}),u.jsx(G,{kind:"ghost",className:"btn-overflow btn-link-icon",disabled:x,icon:np,tooltip:"More Actions...",onClick:()=>{},children:u.jsx(ai,{actions:this.getDropdownOverflowActions,popperOptions:bn.POPPER_OPTIONS})})]}),u.jsx(zE,{isLoaded:m,isLoading:v,error:h,onChange:this.handleEditorChange,onRunCommand:this.handleRunCommand,session:p,sessionLanguage:C,onEditorInitialized:this.handleEditorInitialized,onEditorWillDestroy:this.handleEditorWillDestroy,settings:O,focusOnMount:E,ref:Q=>{this.notebook=Q}})]}),P&&u.jsx(mj,{content:(t=O.value)!==null&&t!==void 0?t:"",onLinkClick:this.handleLinkClick,onRunCode:this.handleRunCommand,transformImageUri:this.handleTransformLinkUri,transformLinkUri:this.handleTransformLinkUri}),u.jsx(Ob,{isOpen:w,type:"file",defaultValue:T,title:D?"Rename":"Save file as",onSubmit:this.handleSaveAsSubmit,onCancel:this.handleSaveAsCancel,notifyOnExtensionChange:!0,storage:r}),u.jsx(ls,{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"}),u.jsx(se,{actions:L})]})]})}}gr(bn,"COMPONENT","NotebookPanel");gr(bn,"POPPER_OPTIONS",{placement:"bottom-end"});gr(bn,"DEFAULT_NAME","Untitled");gr(bn,"defaultProps",{isDashboardActive:!0,isPreview:!1,session:null,sessionLanguage:null,defaultNotebookSettings:null});var gj=(n,e)=>{var t=Hp(n),r=Ut(n),i=jT(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}},pj=$t(gj,{saveSettings:bd},null,{forwardRef:!0})(bn);const la=pj;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 gg(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){gs(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 Cj(n){if(n==null)throw new TypeError("Cannot destructure "+n)}function ph(){return ph=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},ph.apply(this,arguments)}function gs(n,e,t){return e=bj(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function bj(n){var e=Sj(n,"string");return typeof e=="symbol"?e:String(e)}function Sj(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Sc extends y.Component{constructor(e){super(e),gs(this,"buttonRef",void 0),gs(this,"irisGridRef",void 0),this.irisGridRef=he.createRef(),this.buttonRef=he.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=ph({},(Cj(e),e));return u.jsx(ho,gg(gg({ref:this.irisGridRef,onStateChange:this.handleGridStateChange,onPanelStateUpdate:this.handlePanelStateUpdate},t),{},{children:u.jsxs(G,{ref:this.buttonRef,kind:"primary",className:"btn-pandas",onClick:this.handleReload,tooltip:"Click to refresh pandas dataframe, updates do not occur automatically.",children:["pandas dataframe",u.jsxs("span",{children:[u.jsx(re,{icon:Dh,transform:"shrink-1",className:"mr-1"}),"Reload"]})]})}))}}gs(Sc,"defaultProps",{panelState:null});gs(Sc,"COMPONENT","PandasPanel");const pg=Sc;function wj(n){Zi(n);var{hydrate:e}=n,t=Pa();return qh({dashboardProps:n,componentName:vs.COMPONENT,component:vs,supportedTypes:t.VariableType.FIGURE,hydrate:e}),null}function yj(n){Zi(n);var{id:e,layout:t}=n,r=Pa(),i=y.useCallback(a=>{var{metadata:o,panelId:s=tt.generate(),table:l}=a,{settings:d}=o,h=()=>zu.makeModelFromSettings(r,d,l),c=Lt.titleFromSettings(d),m={type:"react-component",component:vs.COMPONENT,props:{localDashboardId:e,id:s,metadata:o,makeModel:h},title:c,id:s},{root:v}=t;X.openComponent({root:v,config:m})},[r,e,t]);return Ye(t.eventHub,gn.CREATE_CHART,i),null}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 bg(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){Ej(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 Ej(n,e,t){return e=Tj(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Tj(n){var e=Pj(n,"string");return typeof e=="symbol"?e:String(e)}function Pj(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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=ae.module("ConsolePlugin");function Sg(n){return n.notebook!==void 0}function Oj(n){Zi(n)}function Dj(n){Oj(n);var{id:e,hydrateConsole:t,layout:r,panelManager:i,registerComponent:a,notebooksUrl:o}=n,s=y.useRef(0),[l,d]=y.useState(new Map),[h,c]=y.useState(new Map),m=yh(),v=y.useCallback(()=>i.getLastUsedPanelOfType(rs),[i]),f=y.useCallback((I,R)=>{d(k=>new Map(k.set(I,R)))},[d]),g=y.useCallback(I=>{d(R=>(R.delete(I),new Map(R)))},[d]),p=y.useCallback((I,R)=>{c(k=>new Map(k.set(I,R)))},[c]),C=y.useCallback(I=>{c(R=>(R.delete(I),new Map(R)))},[c]),b=y.useCallback(function(I){var R=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,k=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,H=I&&I.trim();if(!H)bt.info("Ignoring empty code");else{var K=v();if(!K||!(K instanceof rs.WrappedComponent)){bt.error("Console panel not found");return}bt.debug("Send command: ",I,R,k),K.addCommand(I,R,k)}},[v]),S=y.useCallback(I=>{m(p1(e,I))},[m,e]),w=y.useCallback(I=>{var{language:R}=I,k=R==="python"?"py":R,H=null;return k==null?(bt.debug("No extension for language",R),H="Untitled-".concat(s.current)):H="Untitled-".concat(s.current,".").concat(k),s.current+=1,H},[]),E=y.useCallback(function(I){var R=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&&h.has(k))return h.get(k);if(R)return tt.generate()},[l,h]),T=y.useCallback((I,R)=>{X.renameComponent(r.root,{id:I},R)},[r.root]),P=y.useCallback((I,R)=>{bt.debug("Rename file panel",I,R);var k;if(l.has(I)&&(k=l.get(I),g(I),k!=null&&f(R,k)),h.has(I)&&(k=h.get(I),C(I),k!=null&&p(R,k)),k===void 0){bt.debug2("File ".concat(I," isn't open, no need to rename the tab"));return}T(k,ge.getBaseName(R))},[l,h,T,f,p,g,C]),D=y.useCallback(I=>{var R=E(I,!1);if(R==null){bt.error("Could not find panel id for file metadata",I);return}X.activateTab(r.root,{id:R})},[E,r.root]),O=y.useCallback((I,R,k)=>{if(bt.debug("registerFilePanel",I,R,k),R==null||R.id==null){bt.debug("Ignore empty file id",R);return}var{id:H}=R;if(k){p(H,I);return}if(l.has(H)){var K=l.get(H);if(I===K){bt.debug("Update tab title for file ".concat(H));var{itemName:ee}=R;P(H,ee)}else bt.error("File ".concat(H," already associated with a different tab ").concat(K));return}f(H,I),h.has(H)&&C(H)},[l,h,P,f,p,C]),N=y.useCallback((I,R)=>{if(bt.debug("unregisterFileTab",I,R),I==null||I.id==null){bt.debug("Ignore empty file id",I);return}var{id:k}=I;if(R){C(k);return}g(k)},[g,C]),_=y.useCallback((I,R)=>{bt.debug("closeFilePanel",I);var{id:k}=I,H=null,K=!1;if(l.has(k))H=l.get(k);else if(h.has(k))H=h.get(k),K=!0;else{bt.debug("File ".concat(k," isn't open, ignore close event"));return}N(I,K),X.closeComponent(r.root,{id:H},R)},[r.root,l,h,N]),F=y.useCallback(I=>{var{itemName:R}=I;return ge.getBaseName(R)},[]),x=y.useCallback(I=>{var{id:R}=I;return bt.debug("fileIsOpen",I,R,l),R!=null&&l.has(R)},[l]),L=y.useCallback(I=>{var{id:R}=I;return bt.debug("fileIsOpenAsPreview",I,R,h),R!=null&&h.has(R)},[h]),M=y.useCallback(I=>{if(I!=null){var R=i.getOpenedPanelById(I);R&&Sg(R)&&R.focus()}},[i]),U=y.useCallback(I=>{var{id:R,settings:k,fileMetadata:H,session:K,sessionLanguage:ee,isPreview:W=!1}=I,te={settings:k,fileMetadata:H},ne=F(H);return{type:"react-component",component:la.COMPONENT,isFocusOnShow:!1,props:{localDashboardId:e,metadata:{id:R},session:K,sessionLanguage:ee,panelState:te,isPreview:W,notebooksUrl:o},title:ne,id:R}},[F,e,o]),V=y.useCallback(function(I,R,k){var H=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{id:null,itemName:w(k)},K=E(H);if(x(H)&&K!=null){bt.debug("File is already open, focus panel"),D(H),M(K);return}var ee=X.getStackForComponentTypes(r.root,[la.COMPONENT]),W=U({id:K,settings:k,fileMetadata:H,session:I,sessionLanguage:R});bt.debug("createNotebook",W,l),X.openComponentInStack(ee,W)},[x,M,w,E,r.root,U,l,D]),z=y.useCallback(function(I,R,k,H){var K=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;bt.debug("selectNotebook",H,K);var ee=x(H),W=L(H),[te]=[...h.values()],ne=!K,oe=ne&&te?te:E(H);if(oe==null||oe==="")throw new Error("Unable to retrieve or create panelId for metadata",H);if(ee||W)D(H);else{var de=X.getStackForComponentTypes(r.root,[la.COMPONENT]),je=U({id:oe,settings:k,fileMetadata:H,session:I,sessionLanguage:R,isPreview:ne});X.openComponentInStack(de,je)}if(W&&K){var ct=H.id,mt=X.getStackForConfig(r.root,{component:la.COMPONENT,id:oe}),Xe=X.getContentItemInStack(mt,{component:la.COMPONENT,id:oe});Xe&&Ir(Xe)&&(Xe.container.emit(Ke.PROMOTE_FROM_PREVIEW),C(ct),f(ct,oe))}K&&M(oe)},[D,x,L,M,E,r.root,U,h,C,f]),Q=y.useCallback(function(I,R){var k=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},H=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,K=i.getLastUsedPanelOfType(la);K&&Sg(K)?k!=null&&k.value!=null&&K.notebook!=null&&K.notebook.append(k.value):H&&V(I,R,k)},[V,i]),Z=y.useCallback((I,R)=>eh.hydrate(bg(bg({},I),{},{notebooksUrl:o}),R),[o]);return za(a,rs,t),za(a,ch),za(a,fh),za(a,gh),za(a,la,Z),Ye(r.eventHub,Ar.SEND_COMMAND,b),Ye(r.eventHub,Ar.SETTINGS_CHANGED,S),Ye(r.eventHub,Ke.CLOSE_FILE,_),Ye(r.eventHub,Ke.CREATE_NOTEBOOK,V),Ye(r.eventHub,Ke.SELECT_NOTEBOOK,z),Ye(r.eventHub,Ke.RENAME,T),Ye(r.eventHub,Ke.RENAME_FILE,P),Ye(r.eventHub,Ke.SEND_TO_NOTEBOOK,Q),Ye(r.eventHub,Ke.REGISTER_FILE,O),Ye(r.eventHub,Ke.UNREGISTER_FILE,N),null}var $o=ae.module("FilterPlugin");function wg(n,e){return n.concat(e)}function Rj(n){Zi(n);var{id:e,layout:t,registerComponent:r}=n,i=yh(),[a]=y.useState(()=>new Map),[o]=y.useState(()=>new Map),[s]=y.useState(()=>new Map),l=y.useCallback(()=>{var p=Array.from(a.values()).reduce(wg,[]).sort((S,w)=>{var E=Qr.toLower(S.name),T=Qr.toLower(w.name);if(E!==T)return E>T?1:-1;var P=Qr.toLower(S.type),D=Qr.toLower(w.type);return P!==D?P>D?1:-1:0}).reduce((S,w)=>((S.length===0||Qr.toLower(S[S.length-1].name)!==Qr.toLower(w.name)||Qr.toLower(S[S.length-1].type)!==Qr.toLower(w.type))&&S.push(w),S),[]),C=Array.from(o.values()).reduce(wg,[]).sort((S,w)=>S.timestamp-w.timestamp),b=new Map(s);$o.debug("sendUpdate",{columns:p,filters:C,tableMap:b}),i(Hn(e,{columns:p,filters:C,tableMap:b}))},[i,e,a,o,s]),d=y.useCallback((p,C)=>{$o.debug2("handleColumnsChanged",p,C),a.set(p,[].concat(C)),l()},[a,l]),h=y.useCallback((p,C)=>{$o.debug2("handleFiltersChanged",p,C),o.set(p,[].concat(C)),l()},[o,l]),c=y.useCallback((p,C)=>{$o.debug2("handleTableChanged",p,C),s.set(X.getIdFromPanel(p),C),l()},[s,l]),m=y.useCallback(p=>{$o.debug2("handlePanelUnmount",p),a.delete(p),o.delete(p),s.delete(X.getIdFromPanel(p)),l()},[a,o,s,l]),v=y.useCallback(p=>{var{title:C="DropdownFilter",metadata:b={},panelState:S=null,id:w=tt.generate(),focusElement:E=X.DEFAULT_FOCUS_SELECTOR,createNewStack:T=!1,dragEvent:P=null}=p,D={type:"react-component",component:Sa.COMPONENT,props:{id:w,metadata:b,panelState:S,localDashboardId:e},title:C,id:w},{root:O}=t;X.openComponent({root:O,config:D,focusElement:E,createNewStack:T,dragEvent:P})},[t,e]),f=y.useCallback(p=>{var{title:C="InputFilter",metadata:b={},panelState:S=null,id:w=tt.generate(),focusElement:E=X.DEFAULT_FOCUS_SELECTOR,createNewStack:T=!1,dragEvent:P=void 0}=p,D={type:"react-component",component:is.COMPONENT,props:{id:w,metadata:b,panelState:S,localDashboardId:e},title:C,id:w},{root:O}=t;X.openComponent({root:O,config:D,focusElement:E,createNewStack:T,dragEvent:P})},[t,e]),g=y.useCallback(p=>{var{title:C="FilterSets",metadata:b={},panelState:S=null,id:w=tt.generate(),focusElement:E=X.DEFAULT_FOCUS_SELECTOR,createNewStack:T=!1,dragEvent:P=null}=p,D={type:"react-component",component:Iu.COMPONENT,props:{id:w,metadata:b,panelState:S,localDashboardId:e},title:C,id:w},{root:O}=t;X.openComponent({root:O,config:D,focusElement:E,createNewStack:T,dragEvent:P})},[t,e]);return y.useEffect(function(){var C=[r(Sa.COMPONENT,Sa),r(is.COMPONENT,is),r(Iu.COMPONENT,Iu)];return()=>{C.forEach(b=>b())}},[r]),Ye(t.eventHub,it.COLUMNS_CHANGED,d),Ye(t.eventHub,it.FILTERS_CHANGED,h),Ye(t.eventHub,it.TABLE_CHANGED,c),Ye(t.eventHub,it.OPEN_DROPDOWN,v),Ye(t.eventHub,it.OPEN_INPUT,f),Ye(t.eventHub,it.OPEN_FILTER_SET_MANAGER,g),Ye(t.eventHub,Ee.UNMOUNT,m),null}function Nj(n){Zi(n);var{hydrate:e}=n,t=Pa(),r=y.useMemo(()=>[t.VariableType.TABLE,t.VariableType.TREETABLE,t.VariableType.HIERARCHICALTABLE],[t]);return qh({dashboardProps:n,componentName:ho.COMPONENT,component:ho,supportedTypes:r,hydrate:e}),null}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 Fi(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){Ab(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 Ab(n,e,t){return e=Fj(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Fj(n){var e=Ij(n,"string");return typeof e=="symbol"?e:String(e)}function Ij(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Lb(n){var e=n;return typeof e.getCoordinateForColumn=="function"}function Eg(n){var e=n;return Lb(n)&&typeof e.setFilterMap=="function"&&typeof e.unsetFilterValue=="function"}function Tg(n){var e;return n.description===void 0||!((e=n.description)!==null&&e!==void 0&&e.startsWith("Preview of type: "))}var Uo=ae.module("LinkerUtils");class xd{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 Uo.debug2("Incompatible panel ids",e,t,r),"invalid";if(e.panelComponent==null||t.panelComponent==null)return Uo.error("PanelComponent should not be null",e,t),"invalid";var a=(i=xd.ALLOWED_LINKS.get(e.panelComponent))===null||i===void 0?void 0:i.includes(t.panelComponent);if(a===void 0||!a)return Uo.debug2("Incompatible panel components",e,t),"invalid";var{columnType:o}=e,{columnType:s}=t,l=s===null||j.isCompatibleType(o,s);if(!l)return Uo.debug2("Incompatible type",o,s),"invalid";switch(t.panelComponent){case X.getComponentName(vs):return"chartLink";case X.getComponentName(ho):return"tableLink";case X.getComponentName(Sa):return"filterSource"}return Uo.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:tt.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:tt.generate(),end:Fi(Fi({},a.end),{},{panelId:r})}))}),i}}Ab(xd,"ALLOWED_LINKS",new Map([[X.getComponentName(ho),[X.getComponentName(ho),X.getComponentName(vs),X.getComponentName(Sa)]]]));const Ga=xd;function kb(n,e,t){return e=_j(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function _j(n){var e=xj(n,"string");return typeof e=="symbol"?e:String(e)}function xj(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Mj=ae.module("LinkerLink"),Pg=.015,Og=1.5,jb=12,Hb=12,Dg=2,bl=Math.sqrt((Hb*.5)**2+jb**2),Rg=Math.asin(Hb*.5/jb),Ng=15,Ii=Math.PI*.5;class to extends y.Component{static makeCirclePath(e,t,r){return"M ".concat(e," ").concat(t," m -").concat(r,",0 a ").concat(r,",").concat(r," 0 1,0 ").concat(r*2,",0 a ").concat(r,",").concat(r," 0 1,0 -").concat(r*2,",0 z")}static getLabelForLinkFilter(e,t){try{if(j.isNumberType(e)||j.isCharType(e))return Ap(t);if(j.isTextType(e))return Mp(t);if(j.isDateType(e))return Lp(t);if(j.isBooleanType(e)){if(t===pe.eq)return"is equal to";if(t===pe.notEq)return"is not equal to"}throw new Error("Unrecognized column type: ".concat(e))}catch(r){return Mj.warn(r),""}}constructor(e){super(e),kb(this,"getOperators",Ce((t,r)=>{var{onOperatorChanged:i}=this.props,a=j.getFilterTypes(r);return j.isBooleanType(r)&&(a=[pe.eq,pe.notEq]),a.flatMap((o,s)=>{if(o==="eqIgnoreCase"||o==="notEqIgnoreCase")return[];var l="";return o==="startsWith"?l="a*":o==="endsWith"?l="*z":l=j.getFilterOperatorString(o),[{title:to.getLabelForLinkFilter(r,o),icon:u.jsx("b",{children: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:h}=this.props,{isHovering:c}=this.state,m=Math.sqrt((i-o)**2+(a-s)**2),v=Math.atan2(s-a,o-i),f=Math.sin(v),g=Math.cos(v)+2,p=window.innerWidth,C=window.innerHeight,b=0,S=0,w=Math.max(b,Math.min(i+(o-i)/2+f*(m*Pg)**Og,p)),E=Math.max(S,Math.min(a+(s-a)/2+g*(m*Pg)**Og,C)),T="M ".concat(i," ").concat(a," Q ").concat(w," ").concat(E," ").concat(o," ").concat(s),P="M ".concat(b," ").concat(S," L ").concat(b," ").concat(C," L ").concat(p," ").concat(C," L ").concat(p," ").concat(S,` z
|
|
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:h,showTabTooltip:c,renderTabTooltip:m,widgetType:v,widgetName:f,description:g,onClearAllFilters:p,onHide:C,onFocus:b,onBlur:S,onResize:w,onShow:E,onTabBlur:T,onTabFocus:P,onTabClicked:D}=this.props,{isPanelDisconnected:O,isWidgetDisconnected:N,isPanelInactive:_}=this.state,F=this.getErrorMessage(),x=m??this.getCachedRenderTabTooltip(c,o,v,f,g),L=[{title:"Copy ".concat(v," Name"),group:se.groups.medium,order:20,action:this.handleCopyName}];return u.jsxs(vi,{className:J(t,{disconnected:O||N||l,inactive:_}),componentPanel:r,glContainer:o,glEventHub:s,onClearAllFilters:p,onHide:C,onFocus:b,onBlur:S,onResize:w,onShow:E,onSessionClose:this.handleSessionClosed,onSessionOpen:this.handleSessionOpened,onTabBlur:T,onTabFocus:P,onTabClicked:D,renderTabTooltip:x,errorMessage:F,isLoaded:i,isLoading:a,isClonable:d,isRenamable:h,additionalActions:L,children:[e,_&&u.jsx("div",{className:"fill-parent-absolute"})]})}}Sb(wb,"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 sc=wb,Sr=Object.freeze({DEFAULT:"DEFAULT",LINKER:"LINKER"});var d1=new Map,Rd=Object.freeze([]),yb=(n,e)=>{var t;return(t=yr(n,e).columns)!==null&&t!==void 0?t:Rd},u1=(n,e)=>{var t;return(t=yr(n,e).filterSets)!==null&&t!==void 0?t:Rd},lc=(n,e)=>{var t;return(t=yr(n,e).filters)!==null&&t!==void 0?t:Rd},dc=(n,e)=>{var t;return(t=yr(n,e).tableMap)!==null&&t!==void 0?t:d1},uc=(n,e)=>yr(n,e).isolatedLinkerPanelId,yo=(n,e)=>{var t;return(t=yr(n,e).links)!==null&&t!==void 0?t:Rd},hc=(n,e)=>yr(n,e).columnSelectionValidator,h1=(n,e)=>yr(n,e).connection,Ta=(n,e)=>yr(n,e).sessionWrapper,c1=(n,e)=>t=>t(Hn(n,{connection:e})),m1=(n,e)=>t=>t(Hn(n,{sessionWrapper:e})),cc=(n,e)=>t=>t(Hn(n,{links:e})),v1=(n,e)=>(t,r)=>{var i=yo(r(),n),a=e.filter(o=>i.findIndex(s=>ht(s.start,o.start)&&ht(s.end,o.end))<0);return t(cc(n,i.concat(a)))},f1=(n,e)=>(t,r)=>{var i=yo(r(),n),a=i.filter(o=>!e.includes(o.id));return t(cc(n,a))},Eb=(n,e)=>t=>t(Hn(n,{isolatedLinkerPanelId:e})),g1=(n,e)=>t=>t(Hn(n,{columnSelectionValidator:e})),p1=(n,e)=>t=>t(Hn(n,{consoleSettings:e})),C1=(n,e)=>t=>t(Hn(n,{filterSets:e}));function Tb(n){var{columnMap:e,inputFilterMap:t,linkedColumnMap:r,onAdd:i,onOpenLinker:a,waitingFilterMap:o,waitingInputMap:s}=n,l=y.useMemo(()=>{var f=Array.from(s.keys()),g=f.find(b=>t.get(b)!=null),p=f.find(b=>r.get(b)!=null),C=Qr.join(f.map(b=>'"'.concat(b,'"')));return g!=null&&g&&p!=null&&p?"Use a filter control or linked table to set a value for ".concat(C):g!=null&&g?"Set a filter control value for ".concat(C):"Double click a row in a linked table to set a value for ".concat(C)},[t,r,s]),d=y.useMemo(()=>Array.from(e.values()),[e]),h=y.useCallback(f=>{f.stopPropagation(),f.preventDefault(),i(Array.from(o.values()))},[i,o]),c=y.useCallback(f=>{f.stopPropagation(),f.preventDefault(),a()},[a]),m=o.size>0,v=!m&&s.size>0;return u.jsx("div",{className:"chart-panel-overlay chart-filter-overlay",children:u.jsxs("div",{className:J("chart-panel-overlay-content chart-filter-overlay-content",{"chart-filter-waiting-filter":m},{"chart-filter-waiting-input":v}),children:[m&&u.jsxs(u.Fragment,{children:[u.jsx("div",{className:"info-message",children:"This plot requires a filter control to be added to the layout or a table link to be created on the following columns:"}),u.jsx("div",{className:"waiting-filter-list",children:d.map(f=>{var g=o.has(f.name),p=g?Wi:Ph;return u.jsxs("div",{className:J("waiting-filter-item",{"is-invalid":g}),children:[u.jsx(re,{icon:p}),f.name]},f.name)})}),u.jsxs("div",{children:[u.jsx(tm,{onClick:h,className:"btn-primary",children:"Add Input Filters"}),u.jsx(tm,{onClick:c,className:"btn-primary",children:"Open Linker Tool"})]})]}),v&&u.jsxs(u.Fragment,{children:[u.jsx("div",{className:"info-message",children:"Waiting for User Input"}),u.jsx("div",{className:"",children:l})]})]})})}Tb.propTypes={columnMap:Y.instanceOf(Map).isRequired,inputFilterMap:Y.instanceOf(Map).isRequired,linkedColumnMap:Y.instanceOf(Map).isRequired,onAdd:Y.func.isRequired,onOpenLinker:Y.func.isRequired,waitingFilterMap:Y.instanceOf(Map).isRequired,waitingInputMap:Y.instanceOf(Map).isRequired};function ms(n){var{columns:e,onColumnSelected:t,onMouseEnter:r,onMouseLeave:i}=n;return u.jsx("div",{className:"chart-panel-overlay chart-column-selector-overlay",children:u.jsxs("div",{className:J("chart-panel-overlay-content"),children:[u.jsx("div",{className:"info-message",children:"This plot requires a filter control to be added to the layout or a table link to be created on the following columns:"}),u.jsx("div",{className:"waiting-column-select-list",children:e.map(a=>u.jsx(mp,{className:J("btn-chart-column-selector",ms.makeButtonClassName(a.name)),onClick:()=>t(a.name),onMouseEnter:()=>{r&&r(a)},onMouseLeave:i,disabled:!a.isValid,isLinked:a.isActive,children:a.name},a.name))})]})})}ms.makeButtonClassName=n=>"btn-chart-column-selector-".concat(n);ms.defaultProps={onMouseEnter:()=>{},onMouseLeave:()=>{}};function Rl(n){return n.settings!==void 0}function b1(n){if(n==null)return!1;var{settings:e,tableSettings:t}=n;return typeof e=="object"&&typeof t=="object"}function S1(n){return n!=null&&b1(n.panelState)}function Vf(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 Gf(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Vf(Object(t),!0).forEach(function(r){Zr(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Vf(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Zr(n,e,t){return e=w1(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function w1(n){var e=y1(n,"string");return typeof e=="symbol"?e:String(e)}function y1(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 cr=ae.module("ChartPanel"),E1=150;function T1(n){return n.inputFilters!=null}function P1(n){return n.panelState!=null}class Nd extends y.Component{constructor(e){var t;super(e),Zr(this,"panelContainer",void 0),Zr(this,"chart",void 0),Zr(this,"pending",void 0),Zr(this,"getWaitingInputMap",Ce((s,l,d)=>{if(!s)return new Map;var h=new Map(l);return d.forEach((c,m)=>{h.delete(m)}),h})),Zr(this,"getWaitingFilterMap",Ce((s,l,d,h,c)=>{if(!s)return new Map;var m=new Map(l);return d.forEach((v,f)=>{m.delete(f)}),c.forEach((v,f)=>{m.delete(f)}),h.forEach((v,f)=>{m.delete(f)}),m})),Zr(this,"getInputFilterColumnMap",Ce((s,l)=>{for(var d=new Map,h=0;h<l.length;h+=1){var c=l[h],{name:m,type:v}=c,f=s.get(m);f!=null&&f.type===v&&d.set(m,c)}return d})),Zr(this,"getLinkedColumnMap",Ce((s,l)=>{for(var d=new Map,h=X.getIdFromPanel(this),c=0;c<l.length;c+=1){var m=l[c],v=null;if(m.start!=null&&m.start.panelId===h&&s.has(m.start.columnName)?v=m.start.columnName:m.end&&m.end.panelId===h&&s.has(m.end.columnName)&&(v=m.end.columnName),v!=null&&s.has(v)){var f=s.get(v);A(f),d.set(v,f)}}return d})),Zr(this,"getSelectorColumns",Ce((s,l,d)=>Array.from(s.values()).map(h=>({name:h.name,type:h.type,isValid:d?d(this,h):!1,isActive:l.has(h.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),E1),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.panelContainer=(t=e.containerRef)!==null&&t!==void 0?t:he.createRef(),this.chart=he.createRef(),this.pending=new hi;var{metadata:r,panelState:i}=e,{filterValueMap:a=[],settings:o={}}=i??{};this.state={settings:o,error:void 0,isActive:!1,isDisconnected:!1,isLoading:!1,isLoaded:!1,isLinked:r!=null&&Rl(r)&&r.settings.isLinked,filterMap:new Map(a),filterValueMap:new Map(a),model:void 0,columnMap:new Map,panelState:i}}componentDidMount(){this.isHidden()||(this.setState({isActive:!0}),this.initModel())}componentDidUpdate(e,t){var{inputFilters:r,source:i}=this.props,{columnMap:a,model:o,filterMap:s,filterValueMap:l,isLinked:d,settings:h}=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(),h!==t.settings&&Lm(o)&&(o.updateSettings(h),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){cr.debug("startListeningToSource",e);var{model:t}=this.state;A(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){cr.debug("stopListeningToSource",e);var{model:t}=this.state;A(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(hh.COLUMN_SELECTED,this,r.get(e))}handleColumnMouseEnter(e){var{type:t,name:r}=e,{columnSelectionValidator:i}=this.props;cr.debug("handleColumnMouseEnter",i,t,r),i&&i(this,{type:t,name:r})}handleColumnMouseLeave(){var{columnSelectionValidator:e}=this.props;cr.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){cr.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)||(cr.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){cr.debug2("updateModelFromSource ignoring",r,i,t);return}var{dh:a}=i;if(this.pending.cancel(),Rl(e)){var{settings:o}=e;this.pending.add(a.plot.Figure.create(new Lt(a).makeFigureSettings(o,t))).then(s=>{Lm(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&&T1(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=Gf(Gf({},r),e);return cr.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=ms.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){cr.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:h,filterList:c}=l,m=i.get(d);if(!(m==null||m.type!==h)){if(c.length<1){cr.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),h=(l=s.get(e))===null||l===void 0?void 0:l.value;h!=null&&d!==h&&(a=new Map(t.filterMap),h.length>0?a.set(e,h):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:h,value:c}=e[l],m=i.get(d);m!=null&&m.type===h&&(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 cr.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:h}=e[l],c=i.get(d);if(c!=null&&c.type===h&&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 cr.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;A(r);var i=this.getWaitingInputMap(r.isFilterRequired(),e,t);if(r.setFilter(t),t.size>0&&i.size===0){var a=r.getDefaultTitle(),o=Qr.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),cr.debug2("updateFilters filters set",t),this.setState({isLoading:!0})}else cr.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:h,filterMap:c,error:m,model:v,isActive:f,isDisconnected:g,isLoaded:p,isLoading:C}=this.state,b;Rl(s)?b=s.table:b=s.figure;var S=this.getInputFilterColumnMap(h,i),w=this.getLinkedColumnMap(h,o),E=v!=null?this.getWaitingInputMap(v.isFilterRequired(),h,c):new Map,T=v!=null?this.getWaitingFilterMap(v.isFilterRequired(),h,c,w,S):new Map,P=m!=null?"Unable to open chart. ".concat(m):void 0,D=E.size>0,O=h.size>0&&a;return u.jsx(sc,{className:J("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:P,isDisconnected:g,isLoading:C,isLoaded:p,widgetName:b,widgetType:"Chart",children:u.jsxs("div",{ref:this.panelContainer,className:"chart-panel-container h-100 w-100",children:[u.jsx("div",{className:"chart-container h-100 w-100",children:p&&v&&u.jsx(RT,{isActive:f,model:v,settings:l,ref:this.chart,onDisconnect:this.handleDisconnect,onReconnect:this.handleReconnect,onUpdate:this.handleUpdate,onError:this.handleError,onSettingsChanged:this.handleSettingsChanged,Plotly:d})}),u.jsx(Lr,{in:D&&!O&&!C,timeout:Je.transitionMs,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0,children:u.jsx(Tb,{inputFilterMap:S,linkedColumnMap:w,onAdd:this.handleFilterAdd,onOpenLinker:this.handleOpenLinker,columnMap:h,waitingFilterMap:T,waitingInputMap:E})}),u.jsx(Lr,{in:O,timeout:Je.transitionMs,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0,children:u.jsx(ms,{columns:this.getSelectorColumns(h,w,e),onColumnSelected:this.handleColumnSelected,onMouseEnter:this.handleColumnMouseEnter,onMouseLeave:this.handleColumnMouseLeave})})]})})}}Zr(Nd,"defaultProps",{columnSelectionValidator:null,isLinkerActive:!1,source:null,sourcePanel:null,panelState:null,settings:{},containerRef:null});Zr(Nd,"displayName","ChartPanel");Zr(Nd,"COMPONENT","ChartPanel");var O1=(n,e)=>{var{localDashboardId:t,metadata:r}=e,i;r!=null&&(i=r.sourcePanelId);var a=dc(n,t),o=DC(n,t),s=Cd(n),l=uc(n,t),d=s===Sr.LINKER&&l===void 0;return{columnSelectionValidator:hc(n,t),isLinkerActive:d,inputFilters:lc(n,t),links:yo(n,t),source:i!=null?a.get(i):void 0,sourcePanel:i!=null?o.get(i):void 0,settings:Ut(n)}},D1=$t(O1,{setActiveTool:Sd,setDashboardIsolatedLinkerPanelId:Eb},null,{forwardRef:!0})(Nd);const vs=D1;function Ql(n,e,t){return e=R1(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function R1(n){var e=N1(n,"string");return typeof e=="symbol"?e:String(e)}function N1(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 cl=ae.module("CommandHistoryPanel");class Ns extends y.Component{static handleError(e){cl.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=he.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:ar.COMMAND_HISTORY.FOCUS_HISTORY}]}}componentDidMount(){var{glEventHub:e,session:t}=this.props;e.on(Ar.FOCUS_HISTORY,this.handleFocusHistory),t!=null&&this.loadTable()}componentWillUnmount(){var{glEventHub:e}=this.props;e.off(Ar.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(cl.debug("handleSendToNotebook",r,e),!r){cl.error("Session is not connected.");return}var{glEventHub:a}=this.props;a.emit(t?Ke.CREATE_NOTEBOOK:Ke.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;cl.debug("handleSendToConsole",e);var{glEventHub:i}=this.props;i.emit(Ar.SEND_COMMAND,e,t,r)}loadTable(){var{commandHistoryStorage:e}=this.props,{language:t,sessionId:r}=this.state;A(t),A(r),this.pending.add(e.getTable(t,r,Date.now()),i=>i.close()).then(i=>{this.setState({table:i})}).catch(Ns.handleError)}render(){var{glContainer:e,glEventHub:t,commandHistoryStorage:r}=this.props,{language:i,contextActions:a,table:o}=this.state;return u.jsxs(vi,{className:"command-history-pane",componentPanel:this,glContainer:e,glEventHub:t,onSessionOpen:this.handleSessionOpened,onSessionClose:this.handleSessionClosed,onShow:this.handleShow,children:[!o&&u.jsx("div",{className:"command-history-disconnected-message",children:"Waiting for console connection"}),o&&i!=null&&u.jsxs(u.Fragment,{children:[u.jsx(iT,{ref:this.container,language:i,sendToNotebook:this.handleSendToNotebook,sendToConsole:this.handleSendToConsole,table:o,commandHistoryStorage:r}),u.jsx(se,{actions:a})]})]})}}Ql(Ns,"COMPONENT","CommandHistoryPanel");Ql(Ns,"TITLE","Command History");var F1=(n,e)=>{var t=jp(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}},I1=$t(F1,null,null,{forwardRef:!0})(Ns);const ch=I1;function Wf(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 zf(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Wf(Object(t),!0).forEach(function(r){eo(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Wf(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function eo(n,e,t){return e=_1(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function _1(n){var e=x1(n,"string");return typeof e=="symbol"?e:String(e)}function x1(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 ml=ae.module("ConsolePanel"),M1=500,A1=Object.freeze({consoleSettings:{},itemIds:[]});class mc extends y.PureComponent{constructor(e){super(e),eo(this,"consoleRef",void 0),eo(this,"objectSubscriptionCleanup",void 0),eo(this,"savePanelState",rt(()=>{var{consoleSettings:o,itemIds:s}=this.state,l={consoleSettings:o,itemIds:[...s]};ml.debug("Saving panel state",l),this.setState({panelState:l})},M1)),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=he.createRef();var{panelState:t}=e,r=zf(zf({},A1),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=>{ml.debug("Got updates",r),this.setState(i=>{var{objectMap:a}=i,{updated:o,created:s,removed:l}=r,d=[...o,...l],h=new Map(a);d.forEach(m=>{var{title:v}=m;v!==void 0&&h.delete(v)});var c=[...o,...s];return c.forEach(m=>{m.title!==void 0&&h.set(m.title,m)}),{objectMap:h}})})}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=tt.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(Ar.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;ml.debug("handleSettingsChange",e),this.setState({consoleSettings:e}),t.emit(Ar.SETTINGS_CHANGED,e)}openWidget(e,t){var{glEventHub:r}=this.props,{title:i}=e;A(i);var a=this.getItemId(i),o={fetch:()=>t.getObject(e),panelId:a,widget:e};ml.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:h,session:c,connection:m,details:v={},dh:f}=i,{workerName:g,processInfoId:p}=v,{id:C,type:b}=h;return u.jsx(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,children:c!=null&&u.jsx(jE,{dh:f,ref:this.consoleRef,settings:s,session:c,focusCommandHistory:this.handleFocusCommandHistory,openObject:this.handleOpenObject,closeObject:this.handleCloseObject,commandHistoryStorage:e,onSettingsChange:this.handleSettingsChange,language:b,statusBarChildren:u.jsxs(u.Fragment,{children:[u.jsx("div",{children:" "}),u.jsx("div",{children:bp.LANGUAGE_MAP.get(b)}),g!=null&&u.jsxs(u.Fragment,{children:[u.jsx("div",{children:" • "}),g]}),p!=null&&u.jsxs(u.Fragment,{children:[u.jsx("div",{children:" • "}),p,u.jsx("div",{children:" •"})]}),u.jsx("div",{children:" "}),u.jsx("div",{children:u.jsx(MT,{connection:m,defaultUpdateInterval:10*1e3,hoverUpdateInterval:3*1e3,monitorDuration:10*60*1e3})}),u.jsx("div",{children:" "})]}),scope:C,timeZone:a,objectMap:d,unzip:o})})}}eo(mc,"COMPONENT","ConsolePanel");eo(mc,"TITLE","Console");var L1=(n,e)=>({commandHistoryStorage:jp(n),sessionWrapper:Ta(n,e.localDashboardId),timeZone:ys(n)}),k1=$t(L1,null,null,{forwardRef:!0})(mc);const rs=k1;function fn(n,e,t){return e=j1(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function j1(n){var e=H1(n,"string");return typeof e=="symbol"?e:String(e)}function H1(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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=ae.module("DropdownFilter"),$1=150;class di extends y.Component{constructor(e){super(e),fn(this,"dropdownRef",void 0),fn(this,"getCompatibleColumns",Ce((a,o)=>a!=null?o.filter(s=>{var{type:l}=s;return l!==void 0&&j.isCompatibleType(l,a.columnType)}):[])),fn(this,"getColumnOptions",Ce((a,o)=>{var s=-1,l=[];return l.push(u.jsx("option",{value:"-1",children:"Select a column"},"placeholder")),a.forEach((d,h)=>{l.push(u.jsx("option",{value:h,children:this.getItemLabel(a,h)},"".concat(d.name,"/").concat(d.type))),o!==null&&d.name===o.name&&d.type===o.type&&(s=h)}),[l,s]})),fn(this,"getSelectedOptionIndex",Ce((a,o)=>a.indexOf(o))),fn(this,"getValueOptions",Ce(a=>[u.jsx("option",{value:"-1",children:di.PLACEHOLDER},"-1"),...a.map((o,s)=>u.jsx("option",{value:s,children:o??"(null)"},"".concat(s,"/").concat(o)))])),fn(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})),fn(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=he.createRef();var{column:t,isValueShown:r,value:i}=e;this.state={column:t,id:tt(),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(vl.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(),vl.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]:vl.debug2("Selected default item"),vl.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:h,settingsError:c}=this.props,{column:m,disableCancel:v,id:f,isValueShown:g,selectedColumn:p,value:C}=this.state,b=o===null,S=this.getCompatibleColumns(o,t),w=o!=null,E=(e=o?.columnName)!==null&&e!==void 0?e:di.SOURCE_BUTTON_PLACEHOLDER,T=m!=null?"".concat(m.name," Filter"):null,[P,D]=this.getColumnOptions(S,p),O=this.getValueOptions(h),N=this.getSelectedOptionIndex(h,C),_=!w||p==null,F=g&&!i,x="source-column-btn-".concat(f),L="filter-column-select-".concat(f);return u.jsxs(_h,{className:"dropdown-filter fill-parent-absolute",isFlipped:F,children:[u.jsx("div",{className:"dropdown-filter-settings-card",children:u.jsxs("div",{className:"dropdown-filter-card-content",children:[u.jsxs("div",{className:"dropdown-filter-settings-grid",children:[u.jsx("label",{htmlFor:x,children:"Source Column"}),u.jsx(mp,{id:x,isLinked:w,onClick:s,onMouseEnter:l,onMouseLeave:d,className:di.SOURCE_BUTTON_CLASS_NAME,disabled:r,children:E}),u.jsx("div",{className:"text-muted small",children:"Select a source column for the list by linking to a table."}),u.jsx("label",{htmlFor:L,children:"Filter Column"}),u.jsx("select",{id:L,value:D,className:"custom-select",onChange:this.handleColumnChange,disabled:b,children:P}),u.jsx("div",{className:"text-muted small",children:"Dropdown filter control will apply its filter to all columns matching this name in this dashboard."})]}),c&&u.jsx("div",{className:"error-message text-center",children:c}),w&&u.jsxs("div",{className:"dropdown-filter-settings-buttons",children:[u.jsx(G,{kind:"secondary",type:"button",onClick:this.handleSettingsCancel,disabled:v||g||i,tooltip:i?"Cancel disabled while linker open":void 0,children:"Cancel"}),u.jsx(G,{kind:"primary",type:"button",className:"ml-2",onClick:this.handleSettingsSave,disabled:_||g||i,tooltip:i?"Save disabled while linker open":void 0,children:"Save"})]})]})}),u.jsx("div",{className:"dropdown-filter-value-card",onClick:this.handleBackgroundClick,"data-testid":"dropdown-filter-value-background",children:a&&u.jsxs(u.Fragment,{children:[u.jsx("div",{className:"dropdown-filter-column",children:u.jsx("div",{className:"dropdown-filter-column-title",children:T})}),u.jsxs("div",{className:"dropdown-filter-card-content",children:[u.jsx("div",{className:"dropdown-filter-value-input d-flex flex-column justify-content-center",children:u.jsx("select",{className:"custom-select",value:N,ref:this.dropdownRef,onChange:this.handleValueChange,onKeyPress:this.handleDropdownKeyPress,title:"Select Value",children:O})}),c&&u.jsx("div",{className:"error-message mt-3 text-center",children:c})]}),u.jsx("div",{className:"dropdown-filter-menu",children:u.jsx(G,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:u.jsx(re,{icon:Cs,transform:"grow-4"}),tooltip:"Dropdown Filter Settings"})})]})})]})}}fn(di,"defaultProps",{column:null,disableLinking:!1,isLinkerActive:!1,isLoaded:!1,isValueShown:!1,settingsError:null,source:null,value:"",values:[],onColumnSelected:()=>{},onSourceMouseEnter:()=>{},onSourceMouseLeave:()=>{}});fn(di,"PLACEHOLDER","Select a value...");fn(di,"SOURCE_BUTTON_CLASS_NAME","btn-dropdown-filter-selector");fn(di,"SOURCE_BUTTON_PLACEHOLDER","Select a column");const Kf=di;function tr(n,e,t){return e=U1(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function U1(n){var e=B1(n,"string");return typeof e=="symbol"?e:String(e)}function B1(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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=ae.module("DropdownFilterPanel"),V1=250,G1=(n,e)=>{var{localDashboardId:t}=e,r=X.getIdFromPanel({props:e}),i=dc(n,t),a=yo(n,t),o=Cd(n),s=uc(n,t),l=o===Sr.LINKER&&(s===void 0||s===r),d=o===Sr.LINKER&&s!==void 0&&s!==r;return{columns:yb(n,t),columnSelectionValidator:hc(n,t),dh:gd(n),isLinkerActive:l,disableLinking:d,settings:Ut(n),panelTableMap:i,dashboardLinks:a}},W1=$t(G1,null,null,{forwardRef:!0});class Cn extends y.Component{constructor(e){super(e),tr(this,"dateTimeFormatter",void 0),tr(this,"dropdownFilterRef",void 0),tr(this,"panelContainer",void 0),tr(this,"pending",void 0),tr(this,"cleanup",void 0),tr(this,"columnFormats",void 0),tr(this,"getCachedValues",Pe((c,m,v)=>{var{type:f,name:g}=m;return f!==void 0&&j.isDateType(f)?c.map(p=>this.dateTimeFormatter.format(p)):c.map(p=>p!=null&&f!=null?v.getFormattedString(p,f,g):null)})),tr(this,"getCachedPanelLinks",Pe((c,m)=>{var v=X.getIdFromPanel(m);return dt.debug("getCachedPanelLinks",c,v),c.filter(f=>{var g;return((g=f.end)===null||g===void 0?void 0:g.panelId)===v})})),tr(this,"getCachedSource",Pe(c=>{dt.debug("getCachedSource",c);var m;if(c.length>0){var[v]=c;m=v.start,c.length>1&&dt.error("Filter has more that one link",c)}return m})),tr(this,"getCachedSourceTable",Pe((c,m)=>{var v;if(dt.debug("getCachedSourceTable",c,m),m==null)return null;var{panelId:f}=m;return(v=c.get(f))!==null&&v!==void 0?v:null})),tr(this,"getCachedSourceColumn",Pe((c,m)=>{var v;return dt.debug("getCachedSourceColumn",c,m),c==null||m==null?null:(v=c.columns.find(f=>{var{name:g,type:p}=f;return g===m.columnName&&p===m.columnType}))!==null&&v!==void 0?v:null})),this.handleChange=rt(this.handleChange.bind(this),V1),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=he.createRef(),this.panelContainer=he.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??{},h=s!=null&&l!=null?{name:s,type:l}:void 0;this.state={column:h,formatter:new yn(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),h=this.getSourceTable(e.panelTableMap,e.dashboardLinks);a!==e.settings&&a!==void 0&&this.updateFormatterSettings(a),o!==t.valuesTable&&t.valuesTable!=null&&(dt.debug("Table in state modified, closing the old table."),t.valuesTable.close()),(l!==h||s!==d)&&this.updateValuesTable(),l!==h&&(h!==null&&this.stopListeningToSource(h),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(Kf.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>Cn.MAX_TABLE_SIZE)return"Table too large, must have fewer than ".concat(Cn.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;dt.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;dt.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 h,c,{panelState:m,timestamp:v,wasFlipped:f,skipUpdate:g}=d,p=m!=null&&r!==m.isValueShown&&a===m.name&&o===m.type&&i===m.value;return s=(h=!g&&r&&(!p||!f))!==null&&h!==void 0?h:!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(){dt.debug("handleColumnSelected");var{glEventHub:e}=this.props;e.emit(it.COLUMN_SELECTED,this,Cn.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){dt.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];dt.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(dt.debug("updateValuesTable",r,i),this.setState({values:[],valuesTable:void 0,error:null}),r==null){dt.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)||(dt.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(dt.debug("applySourceSorts",i?.sort),r==null||i==null){dt.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(dt.debug("applySourceFilters",i?.filter),r==null||i==null){dt.debug("Table not initialized");return}var a=[...i.filter];r.applyFilter(a),this.setViewport(r)}updateViewportListener(e){var{dh:t}=this.props;if(dt.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){dt.error("values column is null");return}e.setViewport(0,Cn.MAX_TABLE_SIZE-1,[r])}updateFormatterSettings(e){var{dh:t}=this.props,r=oi.getColumnFormats(e);ht(this.columnFormats,r)||(this.columnFormats=r,this.setState({formatter:new yn(t,r)}))}handleValuesTableUpdate(e){var{detail:t}=e,{rows:r}=t,{dashboardLinks:i}=this.props,{valuesTable:a}=this.state;if(!a){dt.error("valuesTable is null");return}var o=this.getValuesColumn(a,i);if(!o){dt.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,Cn.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:h,value:c,values:m,valuesColumn:v,isLoading:f,isLoaded:g}=this.state,p=this.getSource(t),C=this.getSettingsErrorMessage(),b=this.getPanelErrorMessage(),S=g&&v!=null?this.getCachedValues(m,v,l):[];return u.jsx(sc,{errorMessage:b,isLoading:f,isLoaded:g,isDisconnected:d,className:"iris-dropdown-filter-panel",componentPanel:this,glContainer:i,glEventHub:a,onClearAllFilters:this.handleClearAllFilters,widgetName:"Dropdown Filter",widgetType:"DropdownFilter",children:u.jsx("div",{ref:this.panelContainer,className:"dropdown-filter-container h-100 w-100 container",children:u.jsx(Kf,{ref:this.dropdownFilterRef,column:s,columns:e,isValueShown:h,isLinkerActive:o,disableLinking:r,isLoaded:g,settingsError:C,source:p,value:c,values:S,onChange:this.handleChange,onColumnSelected:this.handleColumnSelected,onSourceMouseEnter:this.handleSourceMouseEnter,onSourceMouseLeave:this.handleSourceMouseLeave})})})}}tr(Cn,"displayName","DropdownFilterPanel");tr(Cn,"COMPONENT","DropdownFilterPanel");tr(Cn,"MAX_TABLE_SIZE",256);tr(Cn,"SOURCE_COLUMN",Object.freeze({name:"FilterSource",type:null}));var z1=W1(Cn);const Sa=z1;function Tn(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 ma{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(!ma.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(!ma.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(!ma.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=ma.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=>ma.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 ge=ma;var vc=26;function mh(n){return Tn(n)?ge.makePath(n.filename):ge.getPath(n.filename)}function Yf(n,e){if(n.length===0||e==null)throw new Error("No items to move");var t=mh(e);if(n.some(r=>{var{filename:i}=r;return ge.getPath(i)===t}))throw new Error("File already in the destination folder");if(n.some(r=>Tn(r)&&t.startsWith(ge.makePath(r.filename))))throw new Error("Destination folder cannot be a child of a dragged folder");return{files:n,targetPath:t}}function K1(n){if(Tn(n))return n.isExpanded?Mw:Aw;var e=ge.getMimeType(n.basename);switch(e){case Jn.PYTHON:return kw;default:return Lw}}function vh(n){var e,{children:t,draggedItems:r,isDragInProgress:i,isDropTargetValid:a,isSelected:o,item:s,itemIndex:l,dropTargetItem:d,onDragStart:h,onDragOver:c,onDragEnd:m,onDrop:v}=n,f=(e=r?.some(P=>P.id===s.id))!==null&&e!==void 0?e:!1,g=mh(s),p=i&&d?mh(d):null,C=i&&a&&Tn(s)&&p===g,b=i&&a&&p===g,S=i&&!a&&p===g,w=K1(s),E=ge.getDepth(s.filename),T=Array(E).fill(null).map((P,D)=>u.jsx("span",{className:"file-list-depth-line"},D));return u.jsxs("div",{className:J("d-flex w-100 align-items-center","file-list-item",{"is-dragged":f,"is-exact-drop-target":C,"is-in-drop-target":b,"is-invalid-drop-target":S,"is-selected":o}),onDragStart:function(P){function D(O){return P.apply(this,arguments)}return D.toString=function(){return P.toString()},D}(P=>h(l,P)),onDragOver:function(P){function D(O){return P.apply(this,arguments)}return D.toString=function(){return P.toString()},D}(P=>c(l,P)),onDragEnd:function(P){function D(O){return P.apply(this,arguments)}return D.toString=function(){return P.toString()},D}(P=>m(l,P)),onDrop:function(P){function D(O){return P.apply(this,arguments)}return D.toString=function(){return P.toString()},D}(P=>v(l,P)),draggable:!0,role:"presentation","aria-label":s.basename,children:[T," ",u.jsx(re,{icon:w,className:"item-icon",fixedWidth:!0})," ",u.jsx("span",{className:"truncation-wrapper",children:t??u.jsxs(u.Fragment,{children:[s.basename,u.jsx(pt,{children:s.basename})]})})]})}function qf(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?qf(Object(t),!0).forEach(function(r){Y1(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):qf(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Y1(n,e,t){return e=q1(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function q1(n){var e=X1(n,"string");return typeof e=="symbol"?e:String(e)}function X1(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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=ae.module("FileList"),Q1=500,Xf="item-list-scroll-pane";function Z1(n){var{isMultiSelect:e=!1,table:t,onFocusChange:r=()=>{},onMove:i,onSelect:a,onSelectionChange:o=()=>{},renderItem:s=vh,rowHeight:l=vc,overscanCount:d=no.DEFAULT_OVERSCAN}=n,[h,c]=y.useState(()=>({items:[],offset:0,itemCount:0})),[m,v]=y.useState({top:0,bottom:0}),[f,g]=y.useState(),[p,C]=y.useState(),[b,S]=y.useState(),[w,E]=y.useState([]),T=y.useRef(),P=y.useRef(null),D=y.useRef(null),O=y.useCallback(W=>{if(W.length===0||h==null)return[];for(var te=[],ne=0;ne<W.length;ne+=1)for(var oe=W[ne],de=oe[0];de<=oe[1];de+=1)de>=h.offset&&de<h.offset+h.items.length&&te.push(h.items[de-h.offset]);return te},[h]),N=y.useCallback(W=>{var te=O([[W,W]]);if(te.length>0)return te[0]},[O]),_=y.useCallback(()=>{var W=rm.count(w);if(W===0)return null;if(W===1){var te=w[0][0],ne=N(te);if(ne!=null)return ne.filename}return"".concat(W," items")},[N,w]),F=y.useCallback(W=>{if(!(!p||!f)){Zt.debug("dropItems",p,"to",W);try{var{files:te,targetPath:ne}=Yf(p,f);if(i?.(te,ne),W!=null){var oe;E([[W,W]]),(oe=P.current)===null||oe===void 0||oe.focusItem(W)}}catch(de){Zt.error("Unable to complete move",de)}}},[p,f,i]),x=y.useCallback((W,te)=>{var ne=h.items[W-h.offset];ne!==void 0&&(Zt.debug("handleItemClick",ne),a(ne,te),Tn(ne)&&t?.setExpanded(ne.filename,!ne.isExpanded))},[h,a,t]),L=y.useCallback((W,te)=>{var ne;Zt.debug2("handleItemDragStart",W,w);var oe=w;rm.isSelected(w,W)||(oe=[[W,W]],E(oe)),C(O(oe)),(ne=P.current)===null||ne===void 0||ne.resetMouseState();var de=document.createElement("div");de.innerHTML='<div class="dnd-placeholder-content">'.concat(_(),"</div>"),de.className="file-list-dnd-placeholder",document.body.appendChild(de),te.dataTransfer.setDragImage(de,0,0),te.dataTransfer.effectAllowed="move",S(de)},[_,O,w]),M=y.useCallback((W,te)=>{te.preventDefault(),Zt.debug2("handleItemDragOver",te),g(N(W))},[N]),U=y.useCallback((W,te)=>{Zt.debug("handleItemDragEnd",W),b?.remove(),C(void 0),g(void 0),S(void 0)},[b]),V=y.useCallback((W,te)=>{F(W)},[F]),z=y.useCallback(()=>{Zt.debug2("handleItemDragExit"),g(void 0)},[]),Q=y.useCallback(W=>{W.target instanceof Element&&W.target.classList.contains(Xf)&&(W.preventDefault(),Zt.debug2("handleListDragOver",W),g({type:"directory",filename:"/",basename:"/",id:"/"}))},[]),Z=y.useCallback(W=>{W.target instanceof Element&&W.target.classList.contains(Xf)&&(Zt.debug("handleListDrop"),F())},[F]),I=y.useCallback(function(W){var te=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;if(Zt.debug2("handleSelectionChange",W),te===!0||W!==w){E(W);var ne=O(W);o(ne)}},[O,o,w]),R=y.useCallback(W=>{if(Zt.debug2("handleFocusChange",W),W!=null){var[te]=O([[W,W]]);r(te)}else r();T.current=W},[O,r]),k=y.useCallback((W,te)=>{Zt.debug("handleViewportChange",W,te),(W!==m.top||te!==m.bottom)&&v({top:W,bottom:te})},[m]),H=y.useMemo(()=>{if(!p||!f)return!1;try{return Yf(p,f),Zt.debug("handleValidateDropTarget true"),!0}catch{return Zt.debug("handleValidateDropTarget false"),!1}},[p,f]),{focusedPath:K}=n;y.useEffect(()=>{K!==void 0&&(K==="/"?t.collapseAll():(t.setExpanded(K,!1),t.setExpanded(K,!0)))},[t,K]),y.useEffect(function(){Zt.debug("updating table viewport",m),t?.setViewport({top:Math.max(0,m.top-d),bottom:m.bottom+d})},[d,t,m]),y.useEffect(function(){var te=t.onUpdate(ne=>{c({items:ne.items.map(oe=>fl(fl({},oe),{},{itemName:oe.basename})),offset:ne.offset,itemCount:t.size})});return()=>{te()}},[t]),y.useEffect(function(){T.current!=null&&R(T.current),w.length>0&&I(w,!0)},[h,R,I,w]),y.useEffect(function(){if(f!=null&&Tn(f)&&f.filename!=="/"){var te=setTimeout(()=>{f.isExpanded||t?.setExpanded(f.filename,!0)},Q1);return()=>clearTimeout(te)}},[f,t]);var ee=y.useCallback(W=>s(fl(fl({},W),{},{isDragInProgress:p!=null,dropTargetItem:f,draggedItems:p,isDropTargetValid:H,onDragStart:L,onDragEnd:U,onDragOver:M,onDragExit:z,onDrop:V})),[U,z,M,L,V,p,f,H,s]);return u.jsx("div",{ref:D,className:J("file-list",{"is-dragging":p!=null}),onDragOver:Q,onDrop:Z,children:u.jsx(no,{ref:P,items:h.items,itemCount:h.itemCount,offset:h.offset,onFocusChange:R,onSelect:x,onSelectionChange:I,onViewportChange:k,selectedRanges:w,renderItem:ee,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 Qf={FILE_EXPLORER:J1};var Zf=ae.module("FileListItemEditor"),ek=()=>Promise.resolve();function tk(n){var{item:e,onCancel:t,onSubmit:r,validate:i=ek}=n,a=y.useRef(null),[o,s]=y.useState(e.basename),[l,d]=y.useState(),[h,c]=y.useState(Promise.resolve()),m=y.useCallback(()=>{var b;(b=a.current)===null||b===void 0||b.focus()},[a]),v=y.useCallback(b=>b.stopPropagation(),[]),f=y.useCallback(()=>{h.then(()=>{r(o)}).catch(b=>Zf.info("Unable to validate name",b))},[r,o,h]);y.useEffect(function(){var S=Te.makeCancelable(i(o));return S.then(()=>d(void 0)).catch(w=>{Te.isCanceled(w)||d(w)}),c(S),()=>S.cancel()},[i,o]),y.useEffect(function(){m()},[m]);var g=y.useCallback(()=>{Zf.debug2("handleBlur"),f()},[f]),p=y.useCallback(b=>{var{value:S}=b.target;s(S)},[]),C=y.useCallback(b=>{b.stopPropagation();var{key:S}=b;switch(S){case"Enter":{f();break}case"Escape":{t();break}}},[t,f]);return u.jsxs("div",{className:"file-list-item-editor",children:[u.jsx("input",{type:"text",className:J("form-control file-list-item-editor-input",{"is-invalid":l}),value:o,ref:a,onBlur:g,onKeyDown:C,onChange:p,onClick:v,onDoubleClick:v,onMouseDown:v}),l&&u.jsx("div",{className:"invalid-feedback",children:"".concat(l)})]})}function Jf(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Fu(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Jf(Object(t),!0).forEach(function(r){rk(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Jf(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function rk(n,e,t){return e=nk(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function nk(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)}function Pb(n){var{isMultiSelect:e=!1,focusedPath:t,showContextMenu:r=!1,onCreateFile:i,onCreateFolder:a,onCopy:o,onDelete:s,onMove:l,onRename:d,onSelect:h,onSelectionChange:c,table:m,rowHeight:v=vc,validateRename:f=()=>Promise.resolve()}=n,[g,p]=y.useState(),[C,b]=y.useState([]),[S,w]=y.useState(),E=y.useCallback(V=>{b(V),c?.(V)},[c]),T=y.useCallback(V=>{w(V)},[]),P=y.useCallback(()=>{S&&o?.(S)},[S,o]),D=y.useCallback(()=>{C.length>0&&s?.(C)},[s,C]),O=y.useCallback(()=>{i?.()},[i]),N=y.useCallback(()=>{S&&a?.(ge.getPath(S.filename))},[S,a]),_=y.useCallback(()=>{S&&p(S)},[S]),F=y.useCallback(()=>{p(void 0)},[]),x=y.useCallback(V=>{g&&(d?.(g,V),p(void 0))},[d,g]),L=y.useMemo(()=>{if(g)return[];var V=[];return i&&V.push({title:"New File",description:"Create new file",action:O,group:se.groups.medium}),a&&V.push({title:"New Folder",description:"Create new folder",action:N,group:se.groups.medium}),o&&V.push({title:"Copy File",description:"Copy the selected file",action:P,group:se.groups.low,disabled:S==null||Tn(S)}),s&&C.length>0&&V.push({title:"Delete",description:"Delete",shortcut:Qf.FILE_EXPLORER.DELETE,action:D,group:se.groups.low}),d&&V.push({title:"Rename",description:"Rename",shortcut:Qf.FILE_EXPLORER.RENAME,action:_,group:se.groups.low,disabled:S==null}),V},[P,D,O,N,_,S,o,i,a,s,d,C,g]),M=y.useCallback(V=>(A(g),f(g,V)),[g,f]),U=y.useCallback(V=>{var{item:z}=V;return g&&g.filename===z.filename?u.jsx(vh,Fu(Fu({},V),{},{children:u.jsx(tk,{item:z,validate:M,onSubmit:x,onCancel:F})})):u.jsx(vh,Fu({},V))},[F,x,g,M]);return u.jsxs("div",{className:"file-list-container",children:[m!=null&&u.jsx(Z1,{onMove:l,onSelect:h,onSelectionChange:E,onFocusChange:T,renderItem:U,rowHeight:v,table:m,isMultiSelect:e,focusedPath:t}),r&&u.jsx(se,{actions:L})]})}Pb.displayName="FileListContainer";function eg(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)}class sk extends Ja{constructor(e){super("Name already exists"),eg(this,"isExistingFile",!0),eg(this,"info",void 0),this.info=e}}const Nl=sk;function lk(n,e,t){return e=dk(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function dk(n){var e=uk(n,"string");return typeof e=="symbol"?e:String(e)}function uk(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 hk extends Error{constructor(){super("No file exists at the path specified"),lk(this,"isFileNotFound",!0)}}const fc=hk;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 rg(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)})}}var Rn=ae.module("FileExplorer");function gc(n){var{storage:e,isMultiSelect:t=!1,focusedPath:r,onCopy:i=()=>{},onDelete:a=()=>{},onRename:o=()=>{},onCreateFile:s=()=>{},onCreateFolder:l=()=>{},onSelect:d,onSelectionChange:h,rowHeight:c=vc}=n,[m,v]=y.useState([]),[f,g]=y.useState();y.useEffect(function(){var x;function L(){return M.apply(this,arguments)}function M(){return M=rg(function*(){Rn.debug("initTable"),x=Te.makeCancelable(e.getTable(),U=>U.close());try{g(yield x)}catch(U){Te.isCanceled(U)||Rn.error("Unable to initialize table",U)}}),M.apply(this,arguments)}return L(),()=>{x.cancel()}},[e]);var p=y.useCallback(F=>{Te.isCanceled(F)||Rn.error(F)},[]),C=y.useCallback(()=>{Rn.debug("handleCreateFile"),s()},[s]),b=y.useCallback(()=>{Rn.debug("handleCreateFolder"),l()},[l]),S=y.useCallback(F=>{Rn.debug("handleCopyFile",F.filename),i(F)},[i]),w=y.useCallback(F=>{Rn.debug("handleDelete, pending confirmation",F),v(F)},[]),E=y.useCallback(()=>{Rn.debug("handleDeleteConfirm",m),m.forEach(F=>e.deleteFile(Tn(F)?ge.makePath(F.filename):F.filename)),a(m),v([])},[m,a,e]),T=y.useCallback(()=>{Rn.debug("handleDeleteCancel"),v([])},[]),P=y.useCallback((F,x)=>{var L=ge.reducePaths(F.map(M=>Tn(M)?ge.makePath(M.filename):M.filename));L.forEach(M=>{var U=ge.isPath(M)?"".concat(x).concat(ge.getBaseName(M.substring(0,M.length-1)),"/"):"".concat(x).concat(ge.getBaseName(M));e.moveFile(M,U).then(()=>{o(M,U)}).catch(p)})},[p,o,e]),D=y.useCallback((F,x)=>{var L=F.filename,M=Tn(F);M&&!L.endsWith("/")&&(L="".concat(L,"/"));var U="".concat(ge.getParent(L)).concat(x);M&&!U.endsWith("/")&&(U="".concat(U,"/")),Rn.debug2("handleRename",L,U),e.moveFile(L,U).catch(p),o(L,U)},[p,o,e]),O=y.useCallback(function(){var F=rg(function*(x,L){if(L!==x.basename){ge.validateName(L);var M="".concat(ge.getPath(x.filename)).concat(L);try{var U=yield e.info(M);throw new Nl(U)}catch(V){if(!(V instanceof fc))throw V}}});return function(x,L){return F.apply(this,arguments)}}(),[e]),N=m.length>0,_=y.useMemo(()=>m.length===1?'Are you sure you want to delete "'.concat(m[0].filename,'"?'):"Are you sure you want to delete the selected files?",[m]);return u.jsxs("div",{className:"file-explorer",children:[f&&u.jsx(Pb,{isMultiSelect:t,focusedPath:r,showContextMenu:!0,onCopy:S,onCreateFolder:b,onCreateFile:C,onMove:P,onDelete:w,onRename:D,onSelect:d,onSelectionChange:h,rowHeight:c,table:f,validateRename:O}),u.jsx(ls,{isOpen:N,headerText:_,bodyText:"You cannot undo this action.",onCancel:T,onConfirm:E,confirmButtonText:"Delete"})]})}gc.displayName="FileExplorer";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 ck(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)})}}function ki(n,e,t){return e=mk(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function mk(n){var e=vk(n,"string");return typeof e=="symbol"?e:String(e)}function vk(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 oa=ae.module("NewItemModal");class wa extends y.PureComponent{static getValidationMessage(e){return e instanceof Nl&&e.info.type==="directory"?"Error: Cannot overwrite existing directory":"".concat(e)}static handleError(e){Te.isCanceled(e)||oa.error(e)}constructor(e){super(e),ki(this,"inputRef",he.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=ge.hasPath(t)?ge.getPath(t):"/";this.state={isSubmitting:!1,path:r,prevExtension:ge.getExtension(t),showExtensionChangeModal:!1,showOverwriteModal:!1,value:ge.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=ge.hasPath(e)?ge.getPath(e):"/";this.setState({path:t,value:ge.getBaseName(e),validationError:void 0,prevExtension:ge.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 ck(function*(){ge.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 Nl(l)}catch(d){if(!(d instanceof fc))throw d}}return t})()}updateValidationStatus(e,t){this.getValidationPromise(e,t).then(()=>{this.setState({validationError:void 0})}).catch(this.handleValidationError).catch(wa.handleError)}handleModalOpened(){this.focusRenameInput()}handleModalSubmit(){this.submitModal()}handleChange(e){var{value:t}=e.target;this.setState({value:t})}handleSelect(e){if(oa.debug("handleSelect",e),e.type==="directory")this.setState({path:ge.makePath(e.filename)});else{var t=e.basename,r=ge.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;oa.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;oa.debug("handleOverwriteConfirm",t,r),e("".concat(t).concat(r),!0)}handleExtensionChangeCancel(){oa.debug("handleExtensionChangeCancel"),this.setState(e=>{var{value:t,prevExtension:r}=e,i=ge.replaceExtension(t,r);return{showExtensionChangeModal:!1,value:i}}),this.submitModal(!0)}handleExtensionChangeConfirm(){oa.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;oa.debug("submitModal",r,i);var l=ge.getExtension(i);return o&&!e&&r!==null&&r!==l?{isSubmitting:!1,showExtensionChangeModal:!0,newExtension:l}:(this.getValidationPromise(a,i,!0).then(d=>{var{onSubmit:h}=this.props;h("".concat(a).concat(i))}).catch(d=>{if(d instanceof Nl&&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(wa.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,"/"),u.jsxs(he.Fragment,{children:[u.jsx(G,{kind:"ghost",className:"directory-breadcrumbs",onClick:()=>this.handleBreadcrumbSelect(a),"aria-label":i===0?"Home":void 0,icon:i===0?u.jsx(re,{icon:jw,transform:"right-1.6"}):void 0,tooltip:i===0?"Home":void 0,children:r}),"/"]},a)})}render(){var{storage:e,isOpen:t,onCancel:r,placeholder:i,title:a,type:o}=this.props,{isSubmitting:s,path:l,showExtensionChangeModal:d,showOverwriteModal:h,validationError:c,value:m,prevExtension:v,newExtension:f}=this.state,g=o==="directory",p=ge.fileExtensionToString(v),C=ge.fileExtensionToString(f),b=g?"Create":"Save",S=g?"New folder name":"Save file as";return u.jsxs(u.Fragment,{children:[u.jsxs(nd,{isOpen:t,toggle:r,onOpened:this.handleModalOpened,className:"modal-dialog-centered new-file-modal theme-bg-dark",children:[u.jsx(id,{toggle:r,children:a}),u.jsx(ad,{children:u.jsx("form",{children:u.jsxs("div",{className:"d-flex flex-column new-file-modal-content",children:[u.jsxs("div",{className:"flex-grow-0 mb-4",children:[u.jsx("label",{htmlFor:"file-name-input",children:S}),u.jsx("input",{id:"file-name-input",type:"text",autoComplete:"off",autoCapitalize:"none",autoCorrect:"off",spellCheck:"false",className:J("form-control",{"is-invalid":c}),value:m,placeholder:i,ref:this.inputRef,onKeyDown:this.handleKeyDown,onChange:this.handleChange}),c&&u.jsx("div",{className:"invalid-feedback",children:wa.getValidationMessage(c)})]}),u.jsxs("div",{className:"flex-grow-0",children:[u.jsx("label",{children:"Directory: /"}),this.renderPathButtons(l)]}),u.jsx("div",{className:"flex-grow-1 file-explorer-container",children:u.jsx(gc,{onSelect:this.handleSelect,storage:e,focusedPath:l})})]})})}),u.jsxs(vp,{children:[u.jsx(G,{kind:"secondary",onClick:r,children:"Cancel"}),u.jsx(G,{kind:"primary",disabled:s,onClick:this.handleModalSubmit,children:b})]})]}),u.jsx(ls,{isOpen:h,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"}),u.jsx(ls,{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(wa,"propTypes",{isOpen:Y.bool,title:Y.string.isRequired,defaultValue:Y.string,type:Y.oneOf(["file","directory"]).isRequired,onSubmit:Y.func,onCancel:Y.func,placeholder:Y.string,storage:Y.shape({}).isRequired,notifyOnExtensionChange:Y.bool});ki(wa,"defaultProps",{isOpen:!1,defaultValue:"/",notifyOnExtensionChange:!1,placeholder:"",onSubmit:(n,e)=>{},onCancel:()=>{}});const Ob=wa;function fk(n){var{createFile:e,createFolder:t,onSearchChange:r,defaultSearchText:i=""}=n;return u.jsxs("div",{className:"file-explorer-toolbar",children:[u.jsxs("div",{className:"file-explorer-toolbar-buttons",children:[u.jsx(G,{kind:"ghost",icon:ip,tooltip:"New notebook",onClick:e,"aria-label":"New notebook"}),u.jsx(G,{kind:"ghost",icon:Hw,tooltip:"New folder",onClick:t,"aria-label":"New folder"})]}),r&&u.jsx("div",{className:"file-explorer-toolbar-search",children:u.jsx(uy,{value:i,onChange:r,placeholder:"Search by name"})})]})}function ig(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 ag(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){ig(a,r,i,o,s,"next",l)}function s(l){ig(a,r,i,o,s,"throw",l)}o(void 0)})}}function Db(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=pk(n,"string");return typeof e=="symbol"?e:String(e)}function pk(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 sa=ae.module("FileExplorerPanel"),Ck=(n,e)=>{var t=Hp(n),r=Ta(n,e.localDashboardId),{session:i,config:a}=r??{},o=a?.type;return{fileStorage:t,language:o,session:i}},bk=$t(Ck,null,null,{forwardRef:!0});function Sk(n){var e=n;return e!=null&&typeof e.button=="number"}class lo extends he.Component{static handleError(e){sa.error(e)}static isFocusEvent(e){return Sk(e)?e.detail>=2:!0}constructor(e){super(e),this.handleFileSelect=this.handleFileSelect.bind(this),this.handleCopyFile=this.handleCopyFile.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:""};sa.debug("handleCreateFile",t,r,i),e.emit(Ke.CREATE_NOTEBOOK,t,r,i)}handleCreateDirectory(){this.setState({showCreateFolder:!0})}handleCreateDirectoryCancel(){sa.debug("handleCreateDirectoryCancel"),this.setState({showCreateFolder:!1})}handleCreateDirectorySubmit(e){sa.debug("handleCreateDirectorySubmit",e),this.setState({showCreateFolder:!1});var{fileStorage:t}=this.props;t.createDirectory(e).catch(lo.handleError)}handleCopyFile(e){var t=this;return ag(function*(){var{fileStorage:r}=t.props;if(Tn(e)){sa.error("Invalid item in handleCopyItem",e);return}for(var i=ge.getCopyFileName(e.filename),a=function(){var o=ag(function*(){try{return yield r.info(i),!0}catch{return!1}});return function(){return o.apply(this,arguments)}}();yield a();)i=ge.getCopyFileName(i);yield r.copyFile(e.filename,i)})()}handleDelete(e){var{glEventHub:t}=this.props;e.forEach(r=>{t.emit(Ke.CLOSE_FILE,{id:r.filename,itemName:r.filename})})}handleSelectionChange(e){var t="/";e.length===1&&(e[0].type==="directory"?t=ge.makePath(e[0].filename):t=ge.getPath(e[0].filename)),this.setState({focusedFilePath:t})}handleFileSelect(e,t){if(sa.debug("fileSelect",e),e.type!=="directory"){var r=lo.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(Ke.SELECT_NOTEBOOK,o,s,l,i,r)}}handleRename(e,t){var{glEventHub:r}=this.props;sa.debug("handleRename",e,t),r.emit(Ke.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 u.jsxs(vi,{className:"file-explorer-panel",componentPanel:this,glContainer:t,glEventHub:r,onSessionOpen:this.handleSessionOpened,onSessionClose:this.handleSessionClosed,onShow:this.handleShow,children:[u.jsx(fk,{createFile:this.handleCreateFile,createFolder:this.handleCreateDirectory}),i&&u.jsx(gc,{isMultiSelect:!0,storage:e,onCopy:this.handleCopyFile,onCreateFile:this.handleCreateFile,onCreateFolder:this.handleCreateDirectory,onDelete:this.handleDelete,onRename:this.handleRename,onSelect:this.handleFileSelect,onSelectionChange:this.handleSelectionChange}),u.jsx(Ob,{isOpen:a,type:"directory",title:"Create New Folder",storage:e,onSubmit:this.handleCreateDirectorySubmit,onCancel:this.handleCreateDirectoryCancel,defaultValue:o})]})}}Db(lo,"COMPONENT","FileExplorerPanel");Db(lo,"TITLE","File Explorer");var wk=bk(lo);const fh=wk;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 gl(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){Xo(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 Xo(n,e,t){return e=yk(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function yk(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 ft=ae.module("FilterSetManager"),Tk="Enter name...",sg="No Available Filter Sets";class Zl extends y.Component{static animateScreenFlash(){var e,t=document.createElement("div");t.classList.add("screen-flash-overlay"),t.addEventListener("animationend",()=>{t.remove()}),(e=document.querySelector("body"))===null||e===void 0||e.appendChild(t)}constructor(e){super(e),Xo(this,"renameInputRef",he.createRef()),Xo(this,"dropdownRef",he.createRef()),Xo(this,"editDropdownRef",he.createRef()),Xo(this,"isRenamingExistingSet",Ce((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;ft.debug("initSettingsScreen",e,t),this.setState({modifiedFilterSets:[...e],editId:t})}updateSelectedId(){var{isValueShown:e,filterSets:t,selectedId:r,onChange:i}=this.props;if(ft.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:[]}),ft.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=tt(),r=e(),i={id:t,title:"",panels:r};ft.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 ft.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 ft.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){ft.error("Renamed set undefined.");return}var o=this.getNameError(t);if(ft.debug("handleRenameConfirm",t,o),o!==void 0){this.setState({nameInputError:o});return}var s=(e=t?.trim())!==null&&e!==void 0?e:"",l=gl(gl({},r),{},{title:s,restoreFullState:a}),d=i.findIndex(c=>{var{id:m}=c;return m===r.id}),h=[...i];d>=0?(h[d]=l,ft.debug("Renamed existing set",h)):(h.push(l),ft.debug("Added new set to modified sets",h)),this.setState({editId:l.id,modifiedFilterSets:h,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 ft.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 ft.debug("Deleted selected set",t,r,a),ft.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 ft.error("Filter for update not selected."),null;var o=[...i],s=o.findIndex(l=>{var{id:d}=l;return d===a});return s<0?(ft.error("Selected set for update not found."),null):(o[s]=gl(gl({},o[s]),{},{panels:t}),ft.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 ft.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){ft.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){ft.debug("No filter selected");return}var i=r.find(a=>{var{id:o}=a;return o===e});if(i===void 0){ft.debug("Selected id not found in filterSets",e,r);return}ft.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,h=this.isNameInputScreen(),c=this.isRenamingExistingSet(a,i),m=a.length===0,v=!h&&m&&l.length===0,f=!h&&!v,g=u.jsxs("div",{className:"fa-layers mr-3",children:[u.jsx(re,{icon:ro,mask:Uu,transform:"shrink-1 down-5 right-7"}),u.jsx(re,{icon:qi,className:"text-primary",transform:"shrink-6 down-5 right-7"})]}),p=u.jsxs("div",{className:"fa-layers",children:[u.jsx(re,{icon:ro,mask:Uu,transform:"shrink-1 down-5 right-7"}),u.jsx(re,{icon:Bu,transform:"shrink-1 down-5 right-7"})]});return u.jsx("div",{className:"filter-set-manager fill-parent-absolute",children:u.jsxs(_h,{className:"w-100 h-100",isFlipped:s,children:[u.jsx("div",{className:"filter-set-manager-settings-card fill-parent-absolute",children:u.jsxs("div",{className:"filter-set-manager-card-content",children:[v&&u.jsxs("div",{children:[u.jsx(G,{kind:"ghost",className:"btn btn-link no-underline",onClick:this.handleCaptureNewSet,icon:g,children:"Capture filter set"}),u.jsx("div",{className:"py-3 text-muted small",children:"Takes a snapshot of the currently applied filters on all panels, allowing you to restore saved filter sets later."})]}),h&&u.jsxs("div",{className:"d-flex flex-column justify-content-center","data-testid":"edit-filter-set-container",children:[u.jsxs("div",{className:"form-group",children:[u.jsx("label",{children:c?"Edit set":"Name captured set"}),u.jsxs("div",{className:"name-input-container",children:[u.jsx("input",{type:"text",className:"input-set-name form-control",placeholder:Tk,value:e,ref:this.renameInputRef,onChange:this.handleNameInputChange,onKeyPress:this.handleNameInputKeyPress,spellCheck:"false"}),u.jsx(G,{"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:up}),u.jsx(G,{"data-testid":"rename-cancel-button",kind:"ghost",className:"btn btn-link no-underline pt-2 pb-2",onClick:this.handleRenameCancel,tooltip:"Cancel",icon:$w})]}),t!==void 0&&u.jsx("div",{className:"error-message",children:t})]}),u.jsx("div",{className:"form-group",children:u.jsxs(dd,{onChange:this.handleRestoreFullStateChange,value:"".concat(o),children:[u.jsx(si,{value:"false",children:"Restore only filters"}),u.jsx(si,{value:"true",children:"Restore full table state"})]})})]}),f&&u.jsxs("div",{className:"filter-set-manager-settings-grid-1",children:[u.jsxs("div",{className:"form-group",children:[u.jsx("label",{children:"Edit filter sets"}),u.jsxs("div",{className:"filter-select-container",children:[u.jsxs("select",{"data-testid":"settings-card-filter-select",ref:this.editDropdownRef,value:r??"-1",className:"custom-select filter-value-select",onChange:this.handleEditDropdownChange,disabled:m,children:[m&&u.jsx("option",{value:"-1",disabled:!0,children:sg}),a.map(C=>{var{id:b,title:S}=C;return u.jsx("option",{value:b,children:S},b)})]}),u.jsx(G,{kind:"ghost",onClick:this.handleSetUpdate,disabled:m,icon:p,tooltip:"Update"}),u.jsx(G,{kind:"ghost",onClick:this.handleSetEdit,disabled:m,icon:bs,tooltip:"Edit"}),u.jsx(G,{kind:"ghost",onClick:this.handleSetDelete,disabled:m,icon:jr,tooltip:"Delete"})]})]}),u.jsx("div",{children:u.jsx(G,{kind:"ghost",className:"btn btn-link no-underline",onClick:this.handleCaptureNewSet,icon:g,children:"Capture new filter set"})}),u.jsxs("div",{className:"py-3 text-right",children:[u.jsx(G,{kind:"secondary",onClick:this.handleSettingsCancel,children:"Cancel"})," ",u.jsx(G,{kind:"primary",onClick:this.handleSettingsSave,children:"Save"})]})]})]})},"front"),u.jsxs("div",{className:"filter-set-manager-value-card fill-parent-absolute",onClick:this.handleBackgroundClick,children:[u.jsx("div",{className:"filter-set-manager-column",children:u.jsx("div",{className:"filter-set-manager-column-title",children:"Filter sets"})}),u.jsx("div",{className:"filter-set-manager-card-content",children:u.jsx("div",{className:"filter-set-manager-value-input",children:u.jsxs("div",{className:"filter-select-container",children:[u.jsxs("select",{"data-testid":"value-card-filter-select",ref:this.dropdownRef,value:d,className:"custom-select filter-value-select",onChange:this.handleFilterChange,children:[l.length===0&&u.jsx("option",{value:"-1",disabled:!0,children:sg}),l.map(C=>{var{id:b,title:S}=C;return u.jsx("option",{value:b,children:S},b)})]}),u.jsx(G,{"data-testid":"filter-apply-button",kind:"ghost",onClick:this.handleFilterApply,icon:Dh,tooltip:"Apply Filter Set"})]})})}),u.jsx("div",{className:"filter-set-manager-menu",children:u.jsx(G,{kind:"ghost",className:"btn btn-link btn-link-icon m-2 px-2",onClick:this.handleSettingsClick,tooltip:"Settings",icon:u.jsx(re,{icon:Cs,transform:"grow-4"})})})]},"back")]})})}}const Pk=Zl;function pc(n){var e,t,r,i,a,{model:o,widgetName:s,glContainer:l,description:d}=n,h=((e=o?.rowCount)!==null&&e!==void 0?e:0)-((t=o?.pendingRowCount)!==null&&t!==void 0?t:0)-((r=o?.floatingBottomRowCount)!==null&&r!==void 0?r:0)-((i=o?.floatingTopRowCount)!==null&&i!==void 0?i:0),c=o?.displayString(h,"long"),m=(a=o?.columnCount)!==null&&a!==void 0?a:0,v=o?.displayString(m,"long");return u.jsxs(Dd,{widgetType:"Table",widgetName:s,glContainer:l,description:d,children:[u.jsx("hr",{className:"tab-tooltip-divider"}),u.jsx("span",{children:"Number of Columns"}),u.jsx("span",{className:"tab-tooltip-statistic-value",children:v}),u.jsx("span",{children:"Number of Rows"}),u.jsx("span",{className:"tab-tooltip-statistic-value",children:c})]})}pc.propTypes={glContainer:Yh.Container.isRequired,widgetName:Y.string.isRequired,description:Y.string};pc.defaultProps={description:null};function Rb(n){if(n==null)return!1;var e=n;return typeof e.table=="string"}function Nb(n){if(n==null)return!1;var e=n;return typeof e.name=="string"}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 Ni(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){Dt(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 Dt(n,e,t){return e=Ok(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ok(n){var e=Dk(n,"string");return typeof e=="symbol"?e:String(e)}function Dk(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Nn=ae.module("IrisGridPanel"),Rk=500,Nk={IrisGrid:hb,IrisGridTableModel:cb,ContextMenuRoot:fp};function dg(n){if(n==null)throw new Error("No metadata provided");if(Nb(n))return n.name;if(Rb(n))return n.table;throw new Error("Unable to determine table name from metadata: ".concat(n))}class uo extends y.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",Ce((r,i)=>ye.getInputFiltersForColumns(r,i.filter(a=>{var{value:o,excludePanelIds:s}=a,l=X.getIdFromPanel(this);return o!=null&&(s==null||l!=null&&!s.includes(l))})))),Dt(this,"getAlwaysFetchColumns",Ce((r,i)=>{for(var a=X.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",Ce((r,i,a,o,s)=>{if(!i||!ba(i)||r==null||i.table==null)return null;var l={panel:this,onFilter:this.handlePluginFilter,onFetchColumns:this.handlePluginFetchColumns,user:a,workspace:o,components:Nk};return u.jsx("div",{className:"iris-grid-plugin",children:u.jsx(r,Ni({ref:this.pluginRef,filter:this.handlePluginFilter,fetchColumns:this.handlePluginFetchColumns,model:i,table:i.table,onStateChange:this.handlePluginStateChange,pluginState:s},l))})})),Dt(this,"getDehydratedIrisGridPanelState",Ce((r,i,a,o,s)=>ye.dehydrateIrisGridPanelState(r,{isSelectingPartition:i,partition:a,partitionColumn:o,advancedSettings:s}))),Dt(this,"getDehydratedIrisGridState",Ce((r,i,a,o,s,l,d,h,c,m,v,f,g,p,C,b,S,w,E,T,P)=>(A(this.irisGridUtils),this.irisGridUtils.dehydrateIrisGridState(r,{advancedFilters:a,aggregationSettings:S,customColumnFormatMap:o,isFilterBarShown:s,metrics:{userColumnWidths:C,userRowHeights:b},quickFilters:l,customColumns:d,reverseType:h,rollupConfig:c,showSearchBar:m,searchValue:v,selectDistinctColumns:f,selectedSearchColumns:g,sorts:i,invertSearchColumns:p,pendingDataMap:w,frozenColumns:E,conditionalFormats:T,columnHeaderGroups:P})))),Dt(this,"getDehydratedGridState",Ce((r,i,a,o,s)=>ye.dehydrateGridState(r,{isStuckToBottom:o,isStuckToRight:s,movedColumns:i,movedRows:a}))),Dt(this,"getCachedPanelState",Ce((r,i,a,o)=>({irisGridPanelState:r,irisGridState:i,gridState:a,pluginState:o}))),Dt(this,"savePanelState",rt(()=>{var{irisGridState:r,gridState:i,pluginState:a}=this;A(r);var{onPanelStateUpdate:o}=this.props,{model:s,panelState:l,isSelectingPartition:d,partition:h,partitionColumn:c,advancedSettings:m}=this.state,{advancedFilters:v,aggregationSettings:f,customColumnFormatMap:g,isFilterBarShown:p,quickFilters:C,customColumns:b,reverseType:S,rollupConfig:w,showSearchBar:E,searchValue:T,selectDistinctColumns:P,selectedSearchColumns:D,sorts:O,invertSearchColumns:N,metrics:_,pendingDataMap:F,frozenColumns:x,conditionalFormats:L,columnHeaderGroups:M}=r;A(s),A(_);var{userColumnWidths:U,userRowHeights:V}=_;A(i);var{isStuckToBottom:z,isStuckToRight:Q,movedColumns:Z,movedRows:I}=i,R=this.getCachedPanelState(this.getDehydratedIrisGridPanelState(s,d,h,c,m),this.getDehydratedIrisGridState(s,O,v,g,p,C,b,S,w,E,T,P,D,N,U,V,f,F,x,L,M),this.getDehydratedGridState(s,Z,I,z,Q),a);R!==l&&(Nn.debug("Saving panel state",this,R),this.setState({panelState:R}),o?.(R))},Rk)),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=he.createRef(),this.pluginRef=he.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(VC.DEFAULTS),customColumns:[],customColumnFormatMap:new Map,isFilterBarShown:!1,quickFilters:new Map,sorts:[],userColumnWidths:new Map,userRowHeights:new Map,reverseType:j.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 dg(e)}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:h}=Ni(Ni({},o),i);l.length>0&&a.push(c=>{c.customColumns=l}),h!=null&&h.columns.length>0&&a.push(c=>{c.rollupConfig=ye.getModelRollupConfig(c.originalColumns,h,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();Nn.debug("initModelQueue",i),i&&i(r),this.setState({modelQueue:t})}handleAdvancedSettingsChange(e,t){Nn.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;A(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(gn.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):(A(r),this.initModelQueue(r,i))}handleTableChanged(e){Nn.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(Ar.SEND_COMMAND,o,!1,!0)}handleCreateChart(e,t){this.savePanelState.flush(),this.setState(()=>null,()=>{var{glEventHub:r,inputFilters:i}=this.props,a=this.getTableName(),{panelState:o}=this.state,s=X.getIdFromPanel(this),l;o&&(l=ye.extractTableSettings(o,i)),r.emit(gn.CREATE_CHART,{metadata:{settings:e,sourcePanelId:s,table:a,tableSettings:l},table:ba(t)?t.table:void 0})})}handleColumnSelected(e){var{glEventHub:t}=this.props;t.emit(gn.COLUMN_SELECTED,this,e)}handleDataSelected(e,t){var{glEventHub:r}=this.props;r.emit(gn.DATA_SELECTED,this,t)}handleResize(){this.updateGrid()}handleShow(){this.updateGrid()}handleTabClicked(){this.irisGrid.current&&this.irisGrid.current.focus()}handleError(e){Nn.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}),ba(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){Nn.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;A(o);var{metrics:d}=o.state;A(d);var{columnHeaderHeight:h,allColumnXs:c,allColumnWidths:m,right:v,columnHeaderMaxDepth:f}=d,g=a.getColumnIndexByName(e);A(g);var p=o.getVisibleColumn(g),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)),w=l.top+h*f;return[S,w]}setFilterMap(e){var t=this.irisGrid.current;t?.setFilterMap(e)}setAdvancedFilterMap(e){var t=this.irisGrid.current;t?.setAdvancedFilterMap(e)}setFilters(e){var{quickFilters:t,advancedFilters:r}=e;Nn.debug("setFilters",t,r);var{model:i,isDisconnected:a}=this.state,o=this.irisGrid.current;if(o==null||a){Nn.debug("Ignore setFilters, model disconnected");return}A(i);var{columns:s,formatter:l}=i,d=ye.changeFilterColumnNamesToIndexes(i.columns,t).filter(c=>{var[m]=c;return i.isFilterable(m)}),h=ye.changeFilterColumnNamesToIndexes(i.columns,r).filter(c=>{var[m]=c;return i.isFilterable(m)});A(this.irisGridUtils),o.clearAllFilters(),o.setFilters({quickFilters:this.irisGridUtils.hydrateQuickFilters(s,d,l.timeZone),advancedFilters:this.irisGridUtils.hydrateAdvancedFilters(s,h,l.timeZone)})}setStateOverrides(e){Nn.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=Ni({},r),{quickFilters:d,advancedFilters:h}=l;d&&(l.quickFilters=ye.changeFilterColumnNamesToIndexes(e.columns,d)),h&&(l.advancedFilters=ye.changeFilterColumnNamesToIndexes(e.columns,h));var{isSelectingPartition:c,partition:m,partitionColumn:v,advancedSettings:f}=ye.hydrateIrisGridPanelState(e,s);A(this.irisGridUtils);var{advancedFilters:g,customColumns:p,customColumnFormatMap:C,isFilterBarShown:b,quickFilters:S,reverseType:w,rollupConfig:E,aggregationSettings:T,sorts:P,userColumnWidths:D,userRowHeights:O,showSearchBar:N,searchValue:_,selectDistinctColumns:F,selectedSearchColumns:x,invertSearchColumns:L,pendingDataMap:M,frozenColumns:U,conditionalFormats:V,columnHeaderGroups:z}=this.irisGridUtils.hydrateIrisGridState(e,Ni(Ni({},o),l)),{isStuckToBottom:Q,isStuckToRight:Z,movedColumns:I,movedRows:R}=ye.hydrateGridState(e,Ni(Ni({},a),i),o.customColumns);this.setState({advancedFilters:g,advancedSettings:f,conditionalFormats:V,customColumns:p,customColumnFormatMap:C,isFilterBarShown:b,isSelectingPartition:c,movedColumns:I,movedRows:R,partition:m,partitionColumn:v,quickFilters:S,reverseType:w,rollupConfig:E,aggregationSettings:T,sorts:P,userColumnWidths:D,userRowHeights:O,showSearchBar:N,searchValue:_,selectDistinctColumns:F,selectedSearchColumns:x,invertSearchColumns:L,pendingDataMap:M,frozenColumns:U,isStuckToBottom:Q,isStuckToRight:Z,columnHeaderGroups:z})}catch(k){Nn.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:h,panelState:c,user:m,workspace:v,settings:f,theme:g}=this.props,{advancedFilters:p,aggregationSettings:C,advancedSettings:b,conditionalFormats:S,customColumns:w,customColumnFormatMap:E,error:T,isDisconnected:P,isFilterBarShown:D,isSelectingPartition:O,isStuckToBottom:N,isStuckToRight:_,isLoaded:F,isLoading:x,isModelReady:L,model:M,movedColumns:U,movedRows:V,partition:z,partitionColumn:Q,quickFilters:Z,reverseType:I,rollupConfig:R,sorts:k,userColumnWidths:H,userRowHeights:K,showSearchBar:ee,searchValue:W,selectDistinctColumns:te,selectedSearchColumns:ne,invertSearchColumns:oe,Plugin:de,pluginFilters:je,pluginFetchColumns:ct,pendingDataMap:mt,frozenColumns:Xe,columnHeaderGroups:st}=this.state,Ot=T!=null?"Unable to open table. ".concat(T):void 0,Ae=dg(h),_t=(e=M?.description)!==null&&e!==void 0?e:void 0,Bt=(t=c?.pluginState)!==null&&t!==void 0?t:null,Er=r??this.getPluginContent(de,M,m,v,Bt),{permissions:Tr}=m,{canCopy:nn,canDownloadCsv:On}=Tr;return u.jsx(sc,{errorMessage:Ot,isDisconnected:P,isLoading:x,isLoaded:F,className:"iris-grid-panel",glContainer:i,glEventHub:a,onClearAllFilters:this.handleClearAllFilters,onResize:this.handleResize,onShow:this.handleShow,onTabFocus:this.handleShow,onTabClicked:this.handleTabClicked,widgetName:Ae,widgetType:"Table",description:_t,componentPanel:this,renderTabTooltip:()=>u.jsx(pc,{model:M,widgetName:Ae,glContainer:i,description:_t}),children:L&&M&&u.jsx(hb,{advancedFilters:p,aggregationSettings:C,advancedSettings:b,alwaysFetchColumns:this.getAlwaysFetchColumns(d,ct),columnAllowedCursor:"linker",columnNotAllowedCursor:"linker-not-allowed",customColumns:w,customColumnFormatMap:E,columnSelectionValidator:this.isColumnSelectionValid,conditionalFormats:S,inputFilters:this.getGridInputFilters(M.columns,l),applyInputFiltersOnInit:c==null,isFilterBarShown:D,isSelectingColumn:o!=null,isSelectingPartition:O,isStuckToBottom:N,isStuckToRight:_,movedColumns:U,movedRows:V,partition:z,partitionColumn:Q,quickFilters:Z,reverseType:I,rollupConfig:R,settings:f,sorts:k,userColumnWidths:H,userRowHeights:K,model:M,showSearchBar:ee,searchValue:W,selectedSearchColumns:ne,selectDistinctColumns:te,invertSearchColumns:oe,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:je,pendingDataMap:mt,canCopy:nn,canDownloadCsv:On,ref:this.irisGrid,getDownloadWorker:s,frozenColumns:Xe,theme:g,columnHeaderGroups:st,children:Er})})}}Dt(uo,"defaultProps",{onStateChange:()=>{},onPanelStateUpdate:()=>{}});Dt(uo,"displayName","IrisGridPanel");Dt(uo,"COMPONENT","IrisGridPanel");var Fk=(n,e)=>{var{localDashboardId:t=wn}=e;return{inputFilters:lc(n,t),links:yo(n,t),columnSelectionValidator:hc(n,t),user:kp(n),workspace:pd(n),settings:Ut(n)}},Ik=$t(Fk,null,null,{forwardRef:!0})(uo);const ho=Ik;function ns(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=xk(n,"string");return typeof e=="symbol"?e:String(e)}function xk(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 ug=ae.module("InputFilter"),Mk=150;class co extends y.Component{constructor(e){super(e),ns(this,"inputRef",void 0),ns(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})),ns(this,"sendUpdate",rt(()=>{var{onChange:a}=this.props,{column:o,value:s,isValueShown:l}=this.state;a({column:o,isValueShown:l,value:s})},Mk)),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=he.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)];ug.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;ug.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 u.jsxs(_h,{className:"input-filter fill-parent-absolute",isFlipped:r??!1,children:[u.jsx("div",{className:"input-filter-settings-card",children:u.jsxs("div",{className:"input-filter-settings-content",children:[u.jsxs("div",{className:"input-filter-settings-grid",children:[u.jsx("label",{children:"Filter Column"}),u.jsxs("select",{value:e.findIndex(d=>d.name===i?.name&&d.type===i?.type),className:"custom-select",onChange:this.handleColumnChange,children:[e.map((d,h)=>u.jsx("option",{value:h,children:this.getItemLabel(e,h)},"".concat(d.name,"/").concat(d.type))),e.length===0&&u.jsx("option",{value:"-1",disabled:!0,children:"No Available Columns"})]}),u.jsx("div",{className:"text-muted small",children:"Input filter control will apply its filter to all columns matching this name in this dashboard."})]}),u.jsxs("div",{className:"input-filter-settings-buttons",children:[u.jsx(G,{kind:"secondary",onClick:this.handleSettingsCancel,disabled:t==null,children:"Cancel"}),u.jsx(G,{kind:"primary",className:"ml-2",onClick:this.handleSettingsSave,disabled:i==null,children:"Save"})]})]})}),u.jsxs("div",{className:"input-filter-value-card",onClick:this.handleBackgroundClick,children:[u.jsx("div",{className:"input-filter-column",children:u.jsxs("div",{className:"input-filter-column-title",children:[s," Filter"]})}),u.jsx("div",{className:"d-flex justify-content-center align-items-center h-100 w-100",children:u.jsx("div",{className:"input-filter-value-input d-flex flex-column justify-content-center",children:u.jsx("input",{type:"text",ref:this.inputRef,placeholder:co.PLACEHOLDER,value:a??"",onChange:this.handleValueChange,onKeyPress:this.handleInputKeyPress,style:{width:"".concat(o+3,"ch")},spellCheck:"false"})})}),u.jsx("div",{className:"input-filter-menu",children:u.jsx(G,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:u.jsx(re,{icon:Cs,transform:"grow-4"}),tooltip:"Input Filter Settings"})})]})]})}}ns(co,"PLACEHOLDER","Enter value...");ns(co,"defaultProps",{column:null,isValueShown:!1,value:null});const Ak=co;function Fd(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 jk=250;class Id extends y.Component{constructor(e){super(e),Fd(this,"inputFilterRef",void 0),this.handleChange=rt(this.handleChange.bind(this),jk),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.inputFilterRef=he.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 h,{panelState:c,timestamp:m,wasFlipped:v,skipUpdate:f}=d,g=c!=null&&r!==c.isValueShown&&a===c.name&&o===c.type&&i===c.value;return s=(h=!f&&r&&(!g||!v))!==null&&h!==void 0?h:!1,s||(l=m),{panelState:{isValueShown:r,name:a,type:o,value:i,timestamp:l},timestamp:l,wasFlipped:g,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 u.jsx(vi,{className:"iris-input-filter-panel",componentPanel:this,glContainer:e,glEventHub:t,onClearAllFilters:this.handleClearAllFilters,isClonable:!0,isRenamable:!0,children:u.jsx(Ak,{ref:this.inputFilterRef,column:r,columns:i,onChange:this.handleChange,isValueShown:a,value:o})})}}Fd(Id,"defaultProps",{panelState:null});Fd(Id,"COMPONENT","InputFilterPanel");Fd(Id,"displayName","InputFilterPanel");var Hk=(n,e)=>{var{localDashboardId:t}=e;return{columns:yb(n,t)}},$k=$t(Hk,null,null,{forwardRef:!0})(Id);const is=$k;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 pl(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){Cc(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 Cc(n,e,t){return e=Uk(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Uk(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)}var Wt=ae.module("FilterSetManagerPanel");function Vk(n){return n.setPanelState!=null}class mo extends y.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){Wt.error("Could not get panel",i);return}var a=X.getComponentNameFromPanel(i),o=X.getIdFromPanel(i);Wt.debug("Panel:",i,a);var{glContainer:s=null}=i.props;if(s==null){Wt.error("Could not get panel container",i);return}var l=X.getComponentConfigFromContainer(s);if(l==null){Wt.error("Could not get component config from container",s);return}var d=X.getPanelComponentState(l);if(d==null){Wt.debug("Panel state is null ".concat(o));return}switch(a){case X.getComponentName(uo):{var h;o!=null&&(h=this.getIrisGridPanelFilters(o,d)),h!=null&&t.push({panelId:o,type:a,state:h});break}case X.getComponentName(is):case X.getComponentName(Sa):{var{isValueShown:c,name:m,type:v,value:f}=d;t.push({panelId:o,type:a,state:{isValueShown:c,name:m,type:v,value:f}});break}}}),t}getIrisGridPanelFilters(e,t){var{panelTableMap:r}=this.props,i=r.get(e);if(i==null)return Wt.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 h;return l&&(h=mo.changeFilterIndexesToColumnNames(i,l)),{irisGridState:pl(pl({},a),{},{advancedFilters:d,quickFilters:h}),gridState:pl({},o)}}handleGetFilterState(){return this.getFilterState()}handleChange(e){var{isValueShown:t,selectedId:r}=e;Wt.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;Wt.debug("Apply filters from filter set",e),r.forEach(a=>{var{panelId:o,type:s,state:l}=a;if(o==null){Wt.debug("panel is null",o);return}if(!t.has(o)){Wt.debug("Ignore closed panel",o);return}Wt.debug("Apply panel filters",o,s,l);var d=t.get(o);switch(s){case X.getComponentName(uo):this.restoreIrisGridFilters(d,l,i);break;case X.getComponentName(is):case X.getComponentName(Sa):this.restoreInputFilterState(d,l);break}})}handleSetsUpdate(e){var{setDashboardFilterSets:t,localDashboardId:r}=this.props;Wt.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,h=X.getIdFromPanel(e);if(h==null){Wt.error("Panel Id is null.");return}var c=d.get(h);if(c==null){Wt.error("Unable to get table for panel ".concat(h,"."));return}Wt.debug("restoreIrisGridFilters",h,t,r),r?e.setStateOverrides(t):e.setFilters({quickFilters:l,advancedFilters:s})}restoreInputFilterState(e,t){var r=pl({},t);delete r.isValueShown,Wt.debug("restoreInputFilterState",e,r),e&&Vk(e)&&e.setPanelState(r)}render(){var{glContainer:e,glEventHub:t,filterSets:r}=this.props,{isValueShown:i,selectedId:a}=this.state;return u.jsx(vi,{className:"filter-set-manager-panel",componentPanel:this,glContainer:e,glEventHub:t,isClonable:!0,isRenamable:!0,children:u.jsx("div",{className:"input-filter-container h-100 w-100 container",children:u.jsx(Pk,{onChange:this.handleChange,onApply:this.handleFilterApply,onUpdateSets:this.handleSetsUpdate,isValueShown:i,filterSets:r,selectedId:a,getFilterState:this.handleGetFilterState})})})}}Cc(mo,"defaultProps",{panelState:null});Cc(mo,"COMPONENT","FilterSetManagerPanel");var Gk=(n,e)=>{var{localDashboardId:t}=e;return{filterSets:u1(n,t),dashboardOpenedPanelMap:DC(n,t),dashboardInputFilters:lc(n,t),panelTableMap:dc(n,t)}},Wk=$t(Gk,{setDashboardFilterSets:C1},null,{forwardRef:!0})(mo);const Iu=Wk;function fs(n,e,t){return e=zk(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function zk(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 cg=ae.module("LogPanel");class _d extends y.PureComponent{constructor(e){super(e),fs(this,"isBottomVisible",void 0),fs(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){cg.debug("Session opened",[e]),this.setState({session:e})}handleSessionClosed(e){cg.debug("Session closed",e)}updateDimensions(){this.logView&&this.logView.updateDimensions()}render(){var{glContainer:e,glEventHub:t}=this.props,{session:r}=this.state;return u.jsxs(vi,{componentPanel:this,glContainer:e,glEventHub:t,onResize:this.handleResize,onHide:this.handleHide,onShow:this.handleShow,onSessionOpen:this.handleSessionOpened,onSessionClose:this.handleSessionClosed,children:[r==null&&u.jsx("div",{className:"log-panel-disconnected-message",children:"Waiting for session connection"}),r!=null&&u.jsx(dT,{session:r,ref:i=>{this.logView=i}})]})}}fs(_d,"defaultProps",{session:null});fs(_d,"COMPONENT","LogPanel");fs(_d,"TITLE","Log");var Yk=(n,e)=>{var t;return{session:(t=Ta(n,e.localDashboardId))===null||t===void 0?void 0:t.session}},qk=$t(Yk,null,null,{forwardRef:!0})(_d);const gh=qk;function Xk(n,e,t){return e=Qk(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Qk(n){var e=Zk(n,"string");return typeof e=="symbol"?e:String(e)}function Zk(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Fb extends y.PureComponent{render(){var{isEditing:e,children:t,onDoubleClick:r}=this.props;return u.jsxs("div",{className:"markdown-editor-container h-100 w-100",onDoubleClick:r,children:[u.jsx("div",{className:J("text-muted","edit-hint",{viewing:e===void 0||!e}),children:u.jsxs("span",{children:["double-click to edit ",u.jsx(re,{icon:bs})]})}),t]})}}Xk(Fb,"defaultProps",{isEditing:!1});function Jk(n,e,t){return e=ej(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ej(n){var e=tj(n,"string");return typeof e=="symbol"?e:String(e)}function tj(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 rj=ae.module("MarkdownStartPage");class Ib extends y.PureComponent{constructor(e){super(e),this.handleDeleteButtonClick=this.handleDeleteButtonClick.bind(this),this.handleDeleteModalClose=this.handleDeleteModalClose.bind(this),this.state={isDeleteModalShown:!1}}handleDeleteButtonClick(e){this.setState({isDeleteModalShown:!0,toBeDeleted:e})}handleDeleteModalClose(){this.setState({isDeleteModalShown:!1,toBeDeleted:void 0})}handleDeleteMarkdown(e){if(rj.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 u.jsx("div",{className:"markdown-panel-start-page h-100 w-100",children:u.jsxs("div",{className:"markdown-panel-start-page-container",children:[u.jsxs("div",{className:"markdown-panel-start-list",children:[u.jsx("h3",{className:"list-title",children:"Start"}),u.jsx("div",{className:"list-item",children:u.jsx(G,{kind:"ghost",className:"title",onClick:r,children:"New Markdown Note"})})]}),u.jsxs("div",{className:"markdown-panel-start-list",children:[u.jsx("h3",{className:"list-title",children:"Recently Closed from Dashboard"}),e.map(o=>u.jsxs("div",{className:"list-item",children:[u.jsx(G,{kind:"ghost",className:"title",onClick:()=>t(o),children:o.title}),u.jsx("button",{className:"btn-link icon",type:"button",onClick:()=>{this.handleDeleteButtonClick(o)},children:u.jsx(re,{icon:jr})})]},o.id)),u.jsxs(nd,{isOpen:i,toggle:this.handleDeleteModalClose,className:"modal-dialog-centered markdown-delete-modal theme-bg-light",children:[u.jsx(id,{children:"Are you sure you want to permanently delete this note?"}),u.jsx(ad,{children:"You can't undo this action."}),u.jsxs(vp,{children:[u.jsx(G,{kind:"secondary",onClick:this.handleDeleteModalClose,children:"Cancel"}),u.jsx(G,{kind:"danger",onClick:()=>{this.handleDeleteMarkdown(a)},children:"Delete"})]})]})]})]})})}}Jk(Ib,"defaultProps",{closedMarkdowns:[],onOpen:()=>{},onCreate:()=>{},onDelete:()=>{}});const nj=Ib;function _b(n,e,t){return e=ij(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ij(n){var e=aj(n,"string");return typeof e=="symbol"?e:String(e)}function aj(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 oj=n=>{var{children:e,className:t}=n,r=t!=null&&t!==void 0&&t.startsWith("language-")?t.substring(9):"plaintext";return u.jsx("pre",{children:u.jsx("code",{children:u.jsx(hd,{language:r,children:he.Children.map(e,i=>typeof i=="string"?i.trim():i)})})})};class xb extends y.PureComponent{constructor(e){super(e),_b(this,"container",void 0),this.container=null}render(){var{isEditing:e,content:t,onEditorInitialized:r}=this.props;return u.jsx("div",{className:"markdown-editor-container",ref:i=>{this.container=i},children:e?u.jsx(Ah,{settings:{language:"markdown",value:t,lineNumbers:"off"},onEditorInitialized:r}):u.jsx(Zg,{components:{code:oj},children:t})})}}_b(xb,"defaultProps",{isEditing:!1,content:""});function as(n,e,t){return e=sj(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function sj(n){var e=lj(n,"string");return typeof e=="symbol"?e:String(e)}function lj(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Cl=ae.module("MarkdownPanel");class bc extends y.Component{constructor(e){super(e),as(this,"markdownEditor",void 0),as(this,"editor",void 0),as(this,"getClosedMarkdowns",Ce(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){A(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){Cl.debug("Markdown Editor Initialized..."),this.editor=e}handleCreateMarkdown(){Cl.debug("create markdown..."),this.setState({isStartPageShown:!1,content:"",isEditing:!0,panelState:{content:""}},()=>{this.editor!=null&&this.editor.focus!=null&&this.editor.focus()})}handleOpenMarkdown(e){Cl.debug("open markdown...",e);var{glContainer:t,glEventHub:r}=this.props,i=X.getComponentConfigFromContainer(t);r.emit(Ee.REOPEN,e,i)}handleDeleteMarkdown(e){var{glEventHub:t}=this.props;t.emit(Ee.DELETE,e)}handleEditorBlur(e){var t;Cl.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 u.jsx(vi,{glContainer:e,glEventHub:t,className:"markdown-panel",componentPanel:this,onResize:this.handleEditorResize,onBlur:this.handleEditorBlur,isClonable:!0,isRenamable:!0,children:a?u.jsx(nj,{closedMarkdowns:s,onCreate:this.handleCreateMarkdown,onOpen:this.handleOpenMarkdown,onDelete:this.handleDeleteMarkdown}):u.jsx(Fb,{isEditing:i,onDoubleClick:this.handleContainerDoubleClick,children:u.jsx(xb,{ref:l=>{this.markdownEditor=l},isEditing:i,content:o??void 0,onEditorInitialized:this.handleEditorInitialized})})})}}as(bc,"defaultProps",{panelState:null});as(bc,"COMPONENT","MarkdownPanel");var dj=(n,e)=>{var{localDashboardId:t}=e;return{closedPanels:FD(n,t)}},uj=$t(dj,null,null,{forwardRef:!0})(bc);const Ho=uj;function Fl(n,e,t){return e=hj(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function hj(n){var e=cj(n,"string");return typeof e=="symbol"?e:String(e)}function cj(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Mb extends y.PureComponent{constructor(e){super(e),Fl(this,"commands",void 0),Fl(this,"codeElements",void 0),Fl(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=he.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(g=>g===i||i==null);if(!(o<0)){var s=a[o],l=this.commands.get(s),d=this.getNextStartLine(s),h=(t=this.codeElements.get(s))===null||t===void 0?void 0:t.current,c=h==null||(r=h.parentElement)===null||r===void 0?void 0:r.nextElementSibling;if(c!=null){var m,{offsetTop:v}=c,f=v;(m=this.editorScrollView.current)===null||m===void 0||m.scroll({top:f,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;A(d);var{start:h}=d,{line:c}=h,m=l[0].value,v=he.createRef(),f=this.commands.size===0,g=s===c||f&&s==null&&!o,p=r!==void 0&&r.startsWith("language-")?r.substring(9):"plaintext";return i!=null&&i?u.jsx("code",{className:r,children:t}):(this.commands.set(c,m),this.codeElements.set(c,v),u.jsxs("div",{className:J("markdown-notebook-code-block",{"is-selected":g}),ref:v,onClick:()=>{this.setState({nextStartLine:c})},role:"presentation",children:[u.jsx(G,{kind:"ghost",icon:_l,className:"btn-play-block",onClick:C=>{C.stopPropagation(),C.preventDefault(),this.runCode(m),this.setState({nextStartLine:c})},tooltip:"Run code"}),u.jsx("code",{children:u.jsx(hd,{language:p,children:he.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 u.jsx("a",{href:r,onClick:t,target:a,children:i})}render(){var{content:e,transformImageUri:t,transformLinkUri:r}=this.props,{hasCode:i,hasRunCode:a,nextStartLine:o}=this.state;return u.jsxs("div",{className:"markdown-notebook",children:[u.jsx("div",{className:"markdown-notebook-toolbar",children:u.jsx(G,{className:J("btn-play-selected-cell",{flashing:i&&!a}),kind:"ghost",icon:_l,onClick:this.handleRunSelected,tooltip:"Run code and select next",disabled:a&&o==null||!i,children:"Run Selected Code"})}),u.jsx("div",{className:"markdown-notebook-content",ref:this.editorScrollView,children:u.jsx(Zg,{components:{code:this.renderCodeBlock,a:this.renderLink},linkTarget:"_blank",remarkPlugins:[jS],transformLinkUri:r,transformImageUri:t,includeElementIndex:!0,children:e})})]})}}Fl(Mb,"defaultProps",{onRunCode:()=>{}});const mj=Mb;function mg(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?mg(Object(t),!0).forEach(function(r){gr(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):mg(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function gr(n,e,t){return e=vj(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function vj(n){var e=fj(n,"string");return typeof e=="symbol"?e:String(e)}function fj(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var We=ae.module("NotebookPanel"),vg=400;class bn extends y.Component{static handleError(e){Te.isCanceled(e)||We.error(e)}static languageFromFileName(e){var t=ge.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",Ce((m,v)=>zt(zt({},m),{},{minimap:{enabled:v}}))),gr(this,"getOverflowActions",Ce((m,v)=>[{title:"Find",icon:Uw,action:this.handleFind,group:se.groups.high,shortcut:ar.NOTEBOOK.FIND,order:10},{title:"Show Minimap",icon:m?ii:void 0,action:this.handleMinimapChange,group:se.groups.medium,shortcut:ar.NOTEBOOK.MINIMAP,order:20},{title:"Word Wrap",icon:v?ii:void 0,action:this.handleWordWrapChange,group:se.groups.medium,shortcut:ar.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),vg),this.debouncedLoad=rt(this.load.bind(this),vg),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&&ge.hasPath(s.itemName),h=d===!0&&o.value!=null||!d&&o.value!=null&&o.value.length>0,c=h?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:""},We.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(Ke.RENAME_FILE,this.handleRenameFile),t.on(Ee.DROPPED,this.handlePanelDropped),e.on(Ke.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(Ke.RENAME_FILE,this.handleRenameFile),e.off(Ee.DROPPED,this.handlePanelDropped),t.off(Ke.PROMOTE_FROM_PREVIEW,this.handlePreviewPromotion),e.emit(Ke.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);A(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){We.debug("Init content from file"),this.registerFileMetadata(e,r),this.load();return}if(t.value!=null){We.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(Ke.CLOSE_FILE,{id:e})}registerFileMetadata(e,t){var{glEventHub:r,metadata:i}=this.props,{id:a}=i;r.emit(Ke.REGISTER_FILE,a,e,t)}renameTab(e,t){var{glEventHub:r}=this.props;r.emit(Ke.RENAME,e,t)}load(){var{fileMetadata:e,settings:t}=this.state;A(e);var{id:r}=e,{fileStorage:i}=this.props;this.pending.add(i.loadFile(r)).then(a=>{var o;We.debug("Loaded file",a);var{filename:s}=a,{itemName:l}=this.state;if(s!==l){var{metadata:d}=this.props,{id:h}=d;this.renameTab(h,ge.getBaseName(s))}var c=zt(zt({},t),{},{language:(o=bn.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&&ge.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){We.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;We.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}),h=zt(zt({},o),{},{value:l}),c={settings:h,fileMetadata:i,isPreview:a};return We.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(Ke.CLOSE_FILE,{id:e,itemName:e},{force:!0}),this.focus()}handleCopy(){var{fileMetadata:e,settings:t}=this.state;A(e);var r=this.getNotebookValue(),{language:i}=t,{itemName:a}=e,o=ge.getCopyFileName(a);We.debug("handleCopy",e,a,o),this.createNotebook(o,i,r)}handleEditorInitialized(e){this.editor=e}handleEditorWillDestroy(){this.editor=void 0}handleEditorChange(e){We.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(){We.debug("handleBlur"),this.setState({isFocused:!1})}handleFocus(){We.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==="/"){We.debug("Ignoring invalid notebook link",o);return}We.debug("Notebook link clicked, opening",o);var{glEventHub:s}=this.props,l={value:null,language:i},d={id:o,itemName:o};s.emit(Ke.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.")),We.error(t),this.setState({error:t,isLoading:!1}))}handleSave(){We.debug("handleSave"),this.save()}handleSaveSuccess(e){var t,{fileStorage:r}=this.props,i={id:e.filename,itemName:e.filename},a=(t=bn.languageFromFileName(e.filename))!==null&&t!==void 0?t:"";this.setState(o=>{var{fileMetadata:s}=o,l=zt(zt({},o.settings),{},{language:a});return We.debug("handleSaveSuccess",i,s,l),s&&ge.hasPath(s.itemName)&&s.itemName!==i.itemName&&(We.debug("handleSaveSuccess deleting old file",s.itemName),r.deleteFile(s.itemName).catch(bn.handleError)),{fileMetadata:i,settings:l,isPreview:!1}}),this.debouncedSavePanelState(),this.registerFileMetadata(i,!1)}handleSaveError(e){Te.isCanceled(e)||(this.setState({savedChangeCount:0}),We.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),We.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}),ge.getBaseName(a)!==ge.getBaseName(e)){var{metadata:s}=this.props,{id:l}=s;this.renameTab(l,ge.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){We.error("Editor is not initialized.");return}this.runCommand((e=this.notebook.getValue())!==null&&e!==void 0?e:void 0)}handleRunSelected(){if(!this.notebook){We.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;We.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){We.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];We.debug("handleTabFocus",...t);var{glContainer:i}=this.props;this.setState({isDashboardActive:!0}),this.notebook&&!i.isHidden&&this.notebook.updateDimensions()}handleTabBlur(){We.debug("handleTabBlur"),this.setState({isDashboardActive:!1})}handleTabClick(e){We.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};We.debug("handleCreateNotebook",a,o,l,d),i.emit(Ke.CREATE_NOTEBOOK,a,o,l,d)}runCommand(e){if(e===void 0||e===""){We.debug("Ignoring empty command.");return}this.removePreviewStatus();var{glEventHub:t}=this.props;t.emit(Ar.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:h,isDashboardActive:c,isLoaded:m,isLoading:v,isPreview:f,fileMetadata:g,session:p,sessionLanguage:C,settings:b,showCloseModal:S,showSaveAsModal:w}=this.state,E=c&&!i.isHidden&&!f,T=(e=g?.itemName)!==null&&e!==void 0?e:bn.DEFAULT_NAME,P=T.endsWith(".md"),D=g?.id!=null,O=this.getSettings(b,s.isMinimapEnabled),N=p!=null,_=C===O.language,F=!m||!N||!_,x=!m,L=[{action:this.handleSave,shortcut:ui.SAVE},{action:this.handleMinimapChange,shortcut:ar.NOTEBOOK.MINIMAP},{action:this.handleWordWrapChange,shortcut:ar.NOTEBOOK.WORDWRAP}],M=Wu.getDisabledRunTooltip(N,_,"Notebook extension","Run"),U=Wu.getDisabledRunTooltip(N,_,"Notebook extension","Run Selected"),V=[{title:D?"Rename":"Save As…",order:10,group:se.groups.high,action:this.handleShowRename},{title:"Copy File",action:this.handleCopy,group:se.groups.high,order:20}],z=a?.element.find(".lm_title_before").get(0);return u.jsxs(u.Fragment,{children:[z!=null&&wh.createPortal(u.jsx("span",{className:J("editor-unsaved-indicator",{"is-unsaved":l!==d})}),z),u.jsxs(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:V,renderTabTooltip:()=>T,children:[!P&&u.jsxs(u.Fragment,{children:[u.jsxs("div",{className:"notebook-toolbar",children:[u.jsxs("span",{children:[u.jsx(G,{kind:"ghost",className:"btn-play",onClick:this.handleRunAll,disabled:F,icon:u.jsx(re,{icon:_l,transform:"grow-4"}),tooltip:"Run ".concat(ar.NOTEBOOK.RUN.getDisplayText()),"aria-label":"Run"}),M!=null&&u.jsx(pt,{children:M})]}),u.jsxs("span",{children:[u.jsx(G,{kind:"ghost",className:"btn-play",onClick:this.handleRunSelected,disabled:F,icon:u.jsx(re,{icon:Bw,transform:"grow-4"}),tooltip:"Run Selected ".concat(ar.NOTEBOOK.RUN_SELECTED.getDisplayText()),"aria-label":"Run Selected"}),U!=null&&u.jsx(pt,{children:U})]}),u.jsx(G,{kind:"ghost",className:"mr-auto",disabled:x,onClick:this.handleSave,icon:up,tooltip:"Save ".concat(ui.SAVE.getDisplayText()),"aria-label":"Save"}),u.jsx(G,{kind:"ghost",className:"btn-overflow btn-link-icon",disabled:x,icon:np,tooltip:"More Actions...",onClick:()=>{},children:u.jsx(ai,{actions:this.getDropdownOverflowActions,popperOptions:bn.POPPER_OPTIONS})})]}),u.jsx(zE,{isLoaded:m,isLoading:v,error:h,onChange:this.handleEditorChange,onRunCommand:this.handleRunCommand,session:p,sessionLanguage:C,onEditorInitialized:this.handleEditorInitialized,onEditorWillDestroy:this.handleEditorWillDestroy,settings:O,focusOnMount:E,ref:Q=>{this.notebook=Q}})]}),P&&u.jsx(mj,{content:(t=O.value)!==null&&t!==void 0?t:"",onLinkClick:this.handleLinkClick,onRunCode:this.handleRunCommand,transformImageUri:this.handleTransformLinkUri,transformLinkUri:this.handleTransformLinkUri}),u.jsx(Ob,{isOpen:w,type:"file",defaultValue:T,title:D?"Rename":"Save file as",onSubmit:this.handleSaveAsSubmit,onCancel:this.handleSaveAsCancel,notifyOnExtensionChange:!0,storage:r}),u.jsx(ls,{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"}),u.jsx(se,{actions:L})]})]})}}gr(bn,"COMPONENT","NotebookPanel");gr(bn,"POPPER_OPTIONS",{placement:"bottom-end"});gr(bn,"DEFAULT_NAME","Untitled");gr(bn,"defaultProps",{isDashboardActive:!0,isPreview:!1,session:null,sessionLanguage:null,defaultNotebookSettings:null});var gj=(n,e)=>{var t=Hp(n),r=Ut(n),i=jT(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}},pj=$t(gj,{saveSettings:bd},null,{forwardRef:!0})(bn);const la=pj;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 gg(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){gs(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 Cj(n){if(n==null)throw new TypeError("Cannot destructure "+n)}function ph(){return ph=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},ph.apply(this,arguments)}function gs(n,e,t){return e=bj(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function bj(n){var e=Sj(n,"string");return typeof e=="symbol"?e:String(e)}function Sj(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Sc extends y.Component{constructor(e){super(e),gs(this,"buttonRef",void 0),gs(this,"irisGridRef",void 0),this.irisGridRef=he.createRef(),this.buttonRef=he.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=ph({},(Cj(e),e));return u.jsx(ho,gg(gg({ref:this.irisGridRef,onStateChange:this.handleGridStateChange,onPanelStateUpdate:this.handlePanelStateUpdate},t),{},{children:u.jsxs(G,{ref:this.buttonRef,kind:"primary",className:"btn-pandas",onClick:this.handleReload,tooltip:"Click to refresh pandas dataframe, updates do not occur automatically.",children:["pandas dataframe",u.jsxs("span",{children:[u.jsx(re,{icon:Dh,transform:"shrink-1",className:"mr-1"}),"Reload"]})]})}))}}gs(Sc,"defaultProps",{panelState:null});gs(Sc,"COMPONENT","PandasPanel");const pg=Sc;function wj(n){Zi(n);var{hydrate:e}=n,t=Pa();return qh({dashboardProps:n,componentName:vs.COMPONENT,component:vs,supportedTypes:t.VariableType.FIGURE,hydrate:e}),null}function yj(n){Zi(n);var{id:e,layout:t}=n,r=Pa(),i=y.useCallback(a=>{var{metadata:o,panelId:s=tt.generate(),table:l}=a,{settings:d}=o,h=()=>zu.makeModelFromSettings(r,d,l),c=Lt.titleFromSettings(d),m={type:"react-component",component:vs.COMPONENT,props:{localDashboardId:e,id:s,metadata:o,makeModel:h},title:c,id:s},{root:v}=t;X.openComponent({root:v,config:m})},[r,e,t]);return Ye(t.eventHub,gn.CREATE_CHART,i),null}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 bg(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){Ej(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 Ej(n,e,t){return e=Tj(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Tj(n){var e=Pj(n,"string");return typeof e=="symbol"?e:String(e)}function Pj(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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=ae.module("ConsolePlugin");function Sg(n){return n.notebook!==void 0}function Oj(n){Zi(n)}function Dj(n){Oj(n);var{id:e,hydrateConsole:t,layout:r,panelManager:i,registerComponent:a,notebooksUrl:o}=n,s=y.useRef(0),[l,d]=y.useState(new Map),[h,c]=y.useState(new Map),m=yh(),v=y.useCallback(()=>i.getLastUsedPanelOfType(rs),[i]),f=y.useCallback((I,R)=>{d(k=>new Map(k.set(I,R)))},[d]),g=y.useCallback(I=>{d(R=>(R.delete(I),new Map(R)))},[d]),p=y.useCallback((I,R)=>{c(k=>new Map(k.set(I,R)))},[c]),C=y.useCallback(I=>{c(R=>(R.delete(I),new Map(R)))},[c]),b=y.useCallback(function(I){var R=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,k=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,H=I&&I.trim();if(!H)bt.info("Ignoring empty code");else{var K=v();if(!K||!(K instanceof rs.WrappedComponent)){bt.error("Console panel not found");return}bt.debug("Send command: ",I,R,k),K.addCommand(I,R,k)}},[v]),S=y.useCallback(I=>{m(p1(e,I))},[m,e]),w=y.useCallback(I=>{var{language:R}=I,k=R==="python"?"py":R,H=null;return k==null?(bt.debug("No extension for language",R),H="Untitled-".concat(s.current)):H="Untitled-".concat(s.current,".").concat(k),s.current+=1,H},[]),E=y.useCallback(function(I){var R=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&&h.has(k))return h.get(k);if(R)return tt.generate()},[l,h]),T=y.useCallback((I,R)=>{X.renameComponent(r.root,{id:I},R)},[r.root]),P=y.useCallback((I,R)=>{bt.debug("Rename file panel",I,R);var k;if(l.has(I)&&(k=l.get(I),g(I),k!=null&&f(R,k)),h.has(I)&&(k=h.get(I),C(I),k!=null&&p(R,k)),k===void 0){bt.debug2("File ".concat(I," isn't open, no need to rename the tab"));return}T(k,ge.getBaseName(R))},[l,h,T,f,p,g,C]),D=y.useCallback(I=>{var R=E(I,!1);if(R==null){bt.error("Could not find panel id for file metadata",I);return}X.activateTab(r.root,{id:R})},[E,r.root]),O=y.useCallback((I,R,k)=>{if(bt.debug("registerFilePanel",I,R,k),R==null||R.id==null){bt.debug("Ignore empty file id",R);return}var{id:H}=R;if(k){p(H,I);return}if(l.has(H)){var K=l.get(H);if(I===K){bt.debug("Update tab title for file ".concat(H));var{itemName:ee}=R;P(H,ee)}else bt.error("File ".concat(H," already associated with a different tab ").concat(K));return}f(H,I),h.has(H)&&C(H)},[l,h,P,f,p,C]),N=y.useCallback((I,R)=>{if(bt.debug("unregisterFileTab",I,R),I==null||I.id==null){bt.debug("Ignore empty file id",I);return}var{id:k}=I;if(R){C(k);return}g(k)},[g,C]),_=y.useCallback((I,R)=>{bt.debug("closeFilePanel",I);var{id:k}=I,H=null,K=!1;if(l.has(k))H=l.get(k);else if(h.has(k))H=h.get(k),K=!0;else{bt.debug("File ".concat(k," isn't open, ignore close event"));return}N(I,K),X.closeComponent(r.root,{id:H},R)},[r.root,l,h,N]),F=y.useCallback(I=>{var{itemName:R}=I;return ge.getBaseName(R)},[]),x=y.useCallback(I=>{var{id:R}=I;return bt.debug("fileIsOpen",I,R,l),R!=null&&l.has(R)},[l]),L=y.useCallback(I=>{var{id:R}=I;return bt.debug("fileIsOpenAsPreview",I,R,h),R!=null&&h.has(R)},[h]),M=y.useCallback(I=>{if(I!=null){var R=i.getOpenedPanelById(I);R&&Sg(R)&&R.focus()}},[i]),U=y.useCallback(I=>{var{id:R,settings:k,fileMetadata:H,session:K,sessionLanguage:ee,isPreview:W=!1}=I,te={settings:k,fileMetadata:H},ne=F(H);return{type:"react-component",component:la.COMPONENT,isFocusOnShow:!1,props:{localDashboardId:e,metadata:{id:R},session:K,sessionLanguage:ee,panelState:te,isPreview:W,notebooksUrl:o},title:ne,id:R}},[F,e,o]),V=y.useCallback(function(I,R,k){var H=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{id:null,itemName:w(k)},K=E(H);if(x(H)&&K!=null){bt.debug("File is already open, focus panel"),D(H),M(K);return}var ee=X.getStackForComponentTypes(r.root,[la.COMPONENT]),W=U({id:K,settings:k,fileMetadata:H,session:I,sessionLanguage:R});bt.debug("createNotebook",W,l),X.openComponentInStack(ee,W)},[x,M,w,E,r.root,U,l,D]),z=y.useCallback(function(I,R,k,H){var K=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;bt.debug("selectNotebook",H,K);var ee=x(H),W=L(H),[te]=[...h.values()],ne=!K,oe=ne&&te?te:E(H);if(oe==null||oe==="")throw new Error("Unable to retrieve or create panelId for metadata",H);if(ee||W)D(H);else{var de=X.getStackForComponentTypes(r.root,[la.COMPONENT]),je=U({id:oe,settings:k,fileMetadata:H,session:I,sessionLanguage:R,isPreview:ne});X.openComponentInStack(de,je)}if(W&&K){var ct=H.id,mt=X.getStackForConfig(r.root,{component:la.COMPONENT,id:oe}),Xe=X.getContentItemInStack(mt,{component:la.COMPONENT,id:oe});Xe&&Ir(Xe)&&(Xe.container.emit(Ke.PROMOTE_FROM_PREVIEW),C(ct),f(ct,oe))}K&&M(oe)},[D,x,L,M,E,r.root,U,h,C,f]),Q=y.useCallback(function(I,R){var k=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},H=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,K=i.getLastUsedPanelOfType(la);K&&Sg(K)?k!=null&&k.value!=null&&K.notebook!=null&&K.notebook.append(k.value):H&&V(I,R,k)},[V,i]),Z=y.useCallback((I,R)=>eh.hydrate(bg(bg({},I),{},{notebooksUrl:o}),R),[o]);return za(a,rs,t),za(a,ch),za(a,fh),za(a,gh),za(a,la,Z),Ye(r.eventHub,Ar.SEND_COMMAND,b),Ye(r.eventHub,Ar.SETTINGS_CHANGED,S),Ye(r.eventHub,Ke.CLOSE_FILE,_),Ye(r.eventHub,Ke.CREATE_NOTEBOOK,V),Ye(r.eventHub,Ke.SELECT_NOTEBOOK,z),Ye(r.eventHub,Ke.RENAME,T),Ye(r.eventHub,Ke.RENAME_FILE,P),Ye(r.eventHub,Ke.SEND_TO_NOTEBOOK,Q),Ye(r.eventHub,Ke.REGISTER_FILE,O),Ye(r.eventHub,Ke.UNREGISTER_FILE,N),null}var $o=ae.module("FilterPlugin");function wg(n,e){return n.concat(e)}function Rj(n){Zi(n);var{id:e,layout:t,registerComponent:r}=n,i=yh(),[a]=y.useState(()=>new Map),[o]=y.useState(()=>new Map),[s]=y.useState(()=>new Map),l=y.useCallback(()=>{var p=Array.from(a.values()).reduce(wg,[]).sort((S,w)=>{var E=Qr.toLower(S.name),T=Qr.toLower(w.name);if(E!==T)return E>T?1:-1;var P=Qr.toLower(S.type),D=Qr.toLower(w.type);return P!==D?P>D?1:-1:0}).reduce((S,w)=>((S.length===0||Qr.toLower(S[S.length-1].name)!==Qr.toLower(w.name)||Qr.toLower(S[S.length-1].type)!==Qr.toLower(w.type))&&S.push(w),S),[]),C=Array.from(o.values()).reduce(wg,[]).sort((S,w)=>S.timestamp-w.timestamp),b=new Map(s);$o.debug("sendUpdate",{columns:p,filters:C,tableMap:b}),i(Hn(e,{columns:p,filters:C,tableMap:b}))},[i,e,a,o,s]),d=y.useCallback((p,C)=>{$o.debug2("handleColumnsChanged",p,C),a.set(p,[].concat(C)),l()},[a,l]),h=y.useCallback((p,C)=>{$o.debug2("handleFiltersChanged",p,C),o.set(p,[].concat(C)),l()},[o,l]),c=y.useCallback((p,C)=>{$o.debug2("handleTableChanged",p,C),s.set(X.getIdFromPanel(p),C),l()},[s,l]),m=y.useCallback(p=>{$o.debug2("handlePanelUnmount",p),a.delete(p),o.delete(p),s.delete(X.getIdFromPanel(p)),l()},[a,o,s,l]),v=y.useCallback(p=>{var{title:C="DropdownFilter",metadata:b={},panelState:S=null,id:w=tt.generate(),focusElement:E=X.DEFAULT_FOCUS_SELECTOR,createNewStack:T=!1,dragEvent:P=null}=p,D={type:"react-component",component:Sa.COMPONENT,props:{id:w,metadata:b,panelState:S,localDashboardId:e},title:C,id:w},{root:O}=t;X.openComponent({root:O,config:D,focusElement:E,createNewStack:T,dragEvent:P})},[t,e]),f=y.useCallback(p=>{var{title:C="InputFilter",metadata:b={},panelState:S=null,id:w=tt.generate(),focusElement:E=X.DEFAULT_FOCUS_SELECTOR,createNewStack:T=!1,dragEvent:P=void 0}=p,D={type:"react-component",component:is.COMPONENT,props:{id:w,metadata:b,panelState:S,localDashboardId:e},title:C,id:w},{root:O}=t;X.openComponent({root:O,config:D,focusElement:E,createNewStack:T,dragEvent:P})},[t,e]),g=y.useCallback(p=>{var{title:C="FilterSets",metadata:b={},panelState:S=null,id:w=tt.generate(),focusElement:E=X.DEFAULT_FOCUS_SELECTOR,createNewStack:T=!1,dragEvent:P=null}=p,D={type:"react-component",component:Iu.COMPONENT,props:{id:w,metadata:b,panelState:S,localDashboardId:e},title:C,id:w},{root:O}=t;X.openComponent({root:O,config:D,focusElement:E,createNewStack:T,dragEvent:P})},[t,e]);return y.useEffect(function(){var C=[r(Sa.COMPONENT,Sa),r(is.COMPONENT,is),r(Iu.COMPONENT,Iu)];return()=>{C.forEach(b=>b())}},[r]),Ye(t.eventHub,it.COLUMNS_CHANGED,d),Ye(t.eventHub,it.FILTERS_CHANGED,h),Ye(t.eventHub,it.TABLE_CHANGED,c),Ye(t.eventHub,it.OPEN_DROPDOWN,v),Ye(t.eventHub,it.OPEN_INPUT,f),Ye(t.eventHub,it.OPEN_FILTER_SET_MANAGER,g),Ye(t.eventHub,Ee.UNMOUNT,m),null}function Nj(n){Zi(n);var{hydrate:e}=n,t=Pa(),r=y.useMemo(()=>[t.VariableType.TABLE,t.VariableType.TREETABLE,t.VariableType.HIERARCHICALTABLE],[t]);return qh({dashboardProps:n,componentName:ho.COMPONENT,component:ho,supportedTypes:r,hydrate:e}),null}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 Fi(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){Ab(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 Ab(n,e,t){return e=Fj(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Fj(n){var e=Ij(n,"string");return typeof e=="symbol"?e:String(e)}function Ij(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Lb(n){var e=n;return typeof e.getCoordinateForColumn=="function"}function Eg(n){var e=n;return Lb(n)&&typeof e.setFilterMap=="function"&&typeof e.unsetFilterValue=="function"}function Tg(n){var e;return n.description===void 0||!((e=n.description)!==null&&e!==void 0&&e.startsWith("Preview of type: "))}var Uo=ae.module("LinkerUtils");class xd{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 Uo.debug2("Incompatible panel ids",e,t,r),"invalid";if(e.panelComponent==null||t.panelComponent==null)return Uo.error("PanelComponent should not be null",e,t),"invalid";var a=(i=xd.ALLOWED_LINKS.get(e.panelComponent))===null||i===void 0?void 0:i.includes(t.panelComponent);if(a===void 0||!a)return Uo.debug2("Incompatible panel components",e,t),"invalid";var{columnType:o}=e,{columnType:s}=t,l=s===null||j.isCompatibleType(o,s);if(!l)return Uo.debug2("Incompatible type",o,s),"invalid";switch(t.panelComponent){case X.getComponentName(vs):return"chartLink";case X.getComponentName(ho):return"tableLink";case X.getComponentName(Sa):return"filterSource"}return Uo.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:tt.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:tt.generate(),end:Fi(Fi({},a.end),{},{panelId:r})}))}),i}}Ab(xd,"ALLOWED_LINKS",new Map([[X.getComponentName(ho),[X.getComponentName(ho),X.getComponentName(vs),X.getComponentName(Sa)]]]));const Ga=xd;function kb(n,e,t){return e=_j(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function _j(n){var e=xj(n,"string");return typeof e=="symbol"?e:String(e)}function xj(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Mj=ae.module("LinkerLink"),Pg=.015,Og=1.5,jb=12,Hb=12,Dg=2,bl=Math.sqrt((Hb*.5)**2+jb**2),Rg=Math.asin(Hb*.5/jb),Ng=15,Ii=Math.PI*.5;class to extends y.Component{static makeCirclePath(e,t,r){return"M ".concat(e," ").concat(t," m -").concat(r,",0 a ").concat(r,",").concat(r," 0 1,0 ").concat(r*2,",0 a ").concat(r,",").concat(r," 0 1,0 -").concat(r*2,",0 z")}static getLabelForLinkFilter(e,t){try{if(j.isNumberType(e)||j.isCharType(e))return Ap(t);if(j.isTextType(e))return Mp(t);if(j.isDateType(e))return Lp(t);if(j.isBooleanType(e)){if(t===pe.eq)return"is equal to";if(t===pe.notEq)return"is not equal to"}throw new Error("Unrecognized column type: ".concat(e))}catch(r){return Mj.warn(r),""}}constructor(e){super(e),kb(this,"getOperators",Ce((t,r)=>{var{onOperatorChanged:i}=this.props,a=j.getFilterTypes(r);return j.isBooleanType(r)&&(a=[pe.eq,pe.notEq]),a.flatMap((o,s)=>{if(o==="eqIgnoreCase"||o==="notEqIgnoreCase")return[];var l="";return o==="startsWith"?l="a*":o==="endsWith"?l="*z":l=j.getFilterOperatorString(o),[{title:to.getLabelForLinkFilter(r,o),icon:u.jsx("b",{children: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:h}=this.props,{isHovering:c}=this.state,m=Math.sqrt((i-o)**2+(a-s)**2),v=Math.atan2(s-a,o-i),f=Math.sin(v),g=Math.cos(v)+2,p=window.innerWidth,C=window.innerHeight,b=0,S=0,w=Math.max(b,Math.min(i+(o-i)/2+f*(m*Pg)**Og,p)),E=Math.max(S,Math.min(a+(s-a)/2+g*(m*Pg)**Og,C)),T="M ".concat(i," ").concat(a," Q ").concat(w," ").concat(E," ").concat(o," ").concat(s),P="M ".concat(b," ").concat(S," L ").concat(b," ").concat(C," L ").concat(p," ").concat(C," L ").concat(p," ").concat(S,` z
|
|
36
36
|
`).concat(to.makeCirclePath(i,a,Ng),`
|
|
37
37
|
`).concat(to.makeCirclePath(o,s,Ng)),D="link-select-clip-".concat(l),O=Math.atan2(s-E,o-w),N=O-Rg+Math.PI,_=O+Rg+Math.PI,F=o+Math.cos(O)*Dg,x=s+Math.sin(O)*Dg,L=F+Math.cos(N)*bl,M=x+Math.sin(N)*bl,U=F+Math.cos(_)*bl,V=x+Math.sin(_)*bl,z="".concat(F,",").concat(x," ").concat(L,",").concat(M," ").concat(U,",").concat(V),Q=.25*i+.5*w+.25*o,Z=.25*a+.5*E+.25*s,I=w-i+(o-w),R=E-a+(s-E),k=R/I,H=20,K=H/Math.sqrt(1+k**2),ee=K*k,W=K*-1,te=ee*-1;Number.isFinite(k)?k>0?(K*=-1,ee*=-1,W*=-1,te*=-1,W-=50-10*(Math.abs(v)%Ii),te+=10*(Math.abs(v)%Ii),K-=50-10*(Math.abs(v)%Ii),ee+=10*(Math.abs(v)%Ii)):k<0?(W+=10*(Math.abs(v)%Ii),te+=10*(Math.abs(v)%Ii),K+=10*(Math.abs(v)%Ii),ee+=10*(Math.abs(v)%Ii)):(W=15,te=10,K=-25,ee=10):(W=10,te=5,K=10,ee=-35);var ne="";t!==void 0&&(t==="startsWith"?ne="a*":t==="endsWith"?ne="*z":ne=j.getFilterOperatorString(t));var oe=h!=="chartLink"&&h!=="filterSource";return u.jsxs(u.Fragment,{children:[u.jsxs("svg",{className:J(e,{hovering:c}),children:[u.jsx("clipPath",{id:D,children:u.jsx("path",{d:P,clipRule:"evenodd"})}),u.jsx("path",{className:"link-select",d:T,onClick:this.handleClick,onMouseEnter:this.handleMouseEnter,onMouseLeave:this.handleMouseLeave,clipPath:"url(#".concat(D,")"),"data-testid":"link-select"}),u.jsx("path",{className:"link-background",d:T}),u.jsx("path",{className:"link-foreground",d:T}),u.jsx("circle",{className:"link-dot",cx:i,cy:a,r:"5"}),u.jsx("polygon",{className:"link-triangle",points:z})]}),d!=null&&r&&u.jsxs(u.Fragment,{children:[oe&&u.jsx(G,{kind:"primary",className:"btn-fab btn-operator",style:{top:Z+(k>=0?ee:te),left:Q+(k>=0?K:W)},onClick:()=>{},icon:u.jsxs("div",{className:"fa-md fa-layers",children:[u.jsx("b",{children:ne}),u.jsx(re,{icon:ti,transform:"right-8 down-9 shrink-5"})]}),tooltip:"Change comparison operator",children:u.jsx(ai,{actions:this.getDropdownActions,popperOptions:{placement:"bottom-start"}})}),u.jsx(G,{kind:"primary",className:"btn-fab btn-delete",style:{top:Z+(k<0?ee:te),left:Q+(k<0?K:W)},onClick:this.handleDelete,icon:jr,tooltip:"Delete"})]})]})}}kb(to,"defaultProps",{className:"",isSelected:!1,onClick(){},onDelete(){}});const Aj=to;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){wc(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 wc(n,e,t){return e=Lj(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Lj(n){var e=kj(n,"string");return typeof e=="symbol"?e:String(e)}function kj(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 _u=ae.module("LinkerOverlayContent");class $b extends y.Component{constructor(e){super(e),wc(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=he.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){_u.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(!Lb(a))throw new Error("Panel does not have getCoordinateForColumn method: ".concat(r));try{var o=a.getCoordinateForColumn(i);if(o!=null)return o}catch{_u.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 X.getTabPoint(s)}handleOperatorChanged(e,t){var{links:r,onLinksUpdated:i}=this.props,a=r.map(o=>o.id===e?Ig(Ig({},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=Be(e.x,0,window.innerWidth-t.width),i=Be(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=Be(window.innerWidth-(e.clientX+i.width+t.x),0,window.innerWidth-i.width),o=Be(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:h,isDragging:c,mode:m}=this.state,v=t.map(f=>{try{var g,p,{id:C,type:b,isReversed:S,start:w,end:E,operator:T}=f,P=w.columnType,[D,O]=this.getPointFromLinkPoint(w),N=(g=d?.x)!==null&&g!==void 0?g:D,_=(p=d?.y)!==null&&p!==void 0?p:O;if(E!=null&&([N,_]=this.getPointFromLinkPoint(E)),S!=null&&S){var[F,x]=[D,O];[D,O]=[N,_],[N,_]=[F,x]}var L=J("linker-link",{disabled:e},{"link-filter-source":b==="filterSource"},{"link-invalid":b==="invalid"},{interactive:f.end==null},{"link-is-selected":r.has(C)},{"danger-delete":m==="delete"});return{x1:D,y1:O,x2:N,y2:_,id:C,className:L,operator:T,startColumnType:P,type:b}}catch(M){return _u.warn("Unable to get point for link",f,M),null}}).filter(f=>f!=null);return u.jsxs("div",{className:J("linker-overlay",{"danger-delete":m==="delete"}),children:[v.map(f=>{var{x1:g,y1:p,x2:C,y2:b,id:S,className:w,operator:E,startColumnType:T,type:P}=f;return u.jsx(Aj,{className:w,id:S,x1:g,y1:p,x2:C,y2:b,onClick:a,onDelete:o,isSelected:r.has(S),operator:E,startColumnType:T,type:P,onOperatorChanged:this.handleOperatorChanged},S)}),u.jsxs("div",{className:J("linker-toast-dialog",{dragging:c}),ref:this.dialogRef,style:{bottom:h?.y,right:h?.x},"data-testid":"linker-toast-dialog",children:[u.jsx(G,{draggable:!0,kind:"inline",className:"btn-drag-handle",icon:rd,onClick:()=>{},onMouseDown:this.handleMouseDown,children:!c&&u.jsx(pt,{children:"Drag to reposition"})}),u.jsx("div",{className:"toast-body",children:i}),u.jsxs("div",{className:"toast-footer",children:[u.jsx(G,{kind:"secondary",onClick:s,children:"Clear All"}),u.jsx(G,{kind:"primary",onClick:l,children:"Done"})]})]}),u.jsx(se,{actions:[{action:this.handleEscapePressed,shortcut:ui.LINKER_CLOSE,isGlobal:!0}]})]})}}wc($b,"defaultProps",{disabled:"false"});const jj=$b;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 xg(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){Ub(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 Ub(n,e,t){return e=Hj(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Hj(n){var e=$j(n,"string");return typeof e=="symbol"?e:String(e)}function $j(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Mt=ae.module("Linker"),Uj=(n,e)=>({activeTool:Cd(n),dh:gd(n),isolatedLinkerPanelId:uc(n,e.localDashboardId),links:yo(n,e.localDashboardId),timeZone:ys(n)}),Bj=$t(Uj,{setActiveTool:Sd,setDashboardLinks:cc,addDashboardLinks:v1,deleteDashboardLinks:f1,setDashboardIsolatedLinkerPanelId:Eb,setDashboardColumnSelectionValidator:g1});class Vj extends y.Component{constructor(e){super(e),Ub(this,"getCachedLinks",Ce((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){Mt.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(gn.COLUMN_SELECTED,this.handleGridColumnSelect),t.on(gn.DATA_SELECTED,this.handleUpdateValues),t.on(gn.STATE_CHANGED,this.handleStateChange),t.on(hh.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(gn.COLUMN_SELECTED,this.handleGridColumnSelect),t.off(gn.DATA_SELECTED,this.handleUpdateValues),t.off(gn.STATE_CHANGED,this.handleStateChange),t.off(hh.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){Mt.debug("handleFilterColumnSelect",this.isOverlayShown());var{links:r,localDashboardId:i,setActiveTool:a,setDashboardIsolatedLinkerPanelId:o}=this.props,s=X.getIdFromPanel(e),l=r.filter(d=>{var h,c;return((h=d.start)===null||h===void 0?void 0:h.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){Mt.debug("handleColumnsChanged",e,t);var{links:r}=this.props,i=X.getIdFromPanel(e);if(i==null){Mt.error("Invalid panelId",e);return}var a=r.filter(o=>{var{start:s,end:l}=o;return s.panelId===i&&Ga.findColumn(t,s)==null||l!=null&&l.panelId===i&&Ga.findColumn(t,l)==null});this.deleteLinks(a)}handleGridColumnSelect(e,t){if(!Tg(t)){Mt.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=X.getIdFromPanel(e);if(s!=null){var l=X.getComponentNameFromPanel(e),{name:d,type:h}=t;if(o==null||o.start==null){var c={id:tt.generate(),start:{panelId:s,panelComponent:l,columnName:d,columnType:h},type:"invalid",isReversed:r};Mt.debug("starting link",c),this.setState({linkInProgress:c})}else{var{links:m}=this.props,{start:v,id:f,isReversed:g}=o,p={panelId:s,panelComponent:l,columnName:d,columnType:h},C=Ga.getLinkType(g!==void 0&&g?p:v,g!==void 0&&g?v:p,i??a);switch(C){case"invalid":Mt.debug("Ignore invalid link connection",o,p);return;case"filterSource":{var b=g!==void 0&&g?v.panelId:p.panelId,S=m.filter(D=>{var{end:O}=D;return O?.panelId===b});this.deleteLinks(S);break}case"chartLink":{var w=g===!0?v:p,E=g===!0?p:v;Mt.debug("creating chartlink",{existingLinkEnd:w,start:v,end:p});var T=m.filter(D=>{var{end:O,start:N}=D;return N?.panelId===E.panelId&&O?.panelId===w.panelId&&O?.columnName===w.columnName&&O?.columnType===w.columnType});this.deleteLinks(T);break}}var P={start:g!==void 0&&g?p:v,end:g!==void 0&&g?v:p,id:f,type:C,operator:pe.eq};Mt.info("creating link",P),this.setState({linkInProgress:void 0,selectedIds:new Set([f])},()=>{this.addLinks([P])})}}}}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?Eg(s)?s.unsetFilterValue(a,o):Mt.debug("endPanel.unsetFilterValue not implemented",s):Mt.debug("endPanel no longer exists, ignoring unsetFilterValue",i)}}setPanelFilterMap(e,t){Mt.debug("Set filter data for panel:",e,t);var{panelManager:r}=this.props,i=r.getOpenedPanelById(e);i?Eg(i)?i.setFilterMap(t):Mt.debug("panel.setFilterMap not implemented",e,i):Mt.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]):Mt.error("Unable to find link to delete",e)}handleUpdateValues(e,t){for(var r=X.getIdFromPanel(e),{dh:i,links:a,timeZone:o}=this.props,s=new Map,l=0;l<a.length;l+=1){var{start:d,end:h,operator:c}=a[l];if(d.panelId===r&&h!=null){var{panelId:m,columnName:v,columnType:f}=h,g=s.has(m)?s.get(m):new Map,p=g.has(v)===!0?g.get(v).filterList:[],{visibleIndex:C,isExpandable:b,isGrouped:S}=t[d.columnName],{value:w}=t[d.columnName],E="".concat(w);if(w===null&&b&&S&&(w=void 0),f!=null&&j.isDateType(f)){var T=new Tt(i,{timeZone:o,showTimeZone:!1,showTSeparator:!0,defaultDateTimeFormatString:ya.FULL_DATE_FORMAT});E=T.format(w)}var P={operator:c,text:E,value:w,startColumnIndex:C};p.push(P),g.set(v,{columnType:f,filterList:p}),s.set(m,g)}}s.forEach((D,O)=>{this.setPanelFilterMap(O,D)})}handlePanelCloned(e,t){var{links:r}=this.props,i=X.getIdFromPanel(e),a=t.id;if(i!=null){var o=Ga.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){Mt.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:xg(xg({},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(!Tg(t))return Mt.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=X.getIdFromPanel(e);if(s==null)return!1;var l={panelId:s,panelComponent:X.getComponentNameFromPanel(e),columnName:t.name,columnType:t.type},d=a!==void 0&&a?Ga.getLinkType(l,o,i):Ga.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:u.jsx(Lr,{in:s,timeout:Je.transitionMs,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0,onExited:this.handleExited,children:u.jsx(jj,{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 Gj=Bj(Vj);const Wj=Gj;function zj(n){Zi(n);var{id:e,layout:t,panelManager:r}=n;return u.jsx(Wj,{layout:t,localDashboardId:e,panelManager:r})}function Bb(n,e,t){return e=Kj(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Kj(n){var e=Yj(n,"string");return typeof e=="symbol"?e:String(e)}function Yj(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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}}Bb(vo,"DEFAULT_TITLE","Note");Bb(vo,"DEFAULT_CONTENT",`# Markdown Note
|
|
38
38
|
|
|
@@ -41,4 +41,4 @@ This note can be edited using **markdown** for styling.`);const xu=vo;function q
|
|
|
41
41
|
Web UI Version: ${e}
|
|
42
42
|
Java Version: ${s}
|
|
43
43
|
Barrage Version: ${o}`,children:"Copy Versions"})]})]})]}),u.jsx("div",{className:"app-settings-footer-item",children:u.jsx(NH,{})})]}),u.jsx("div",{className:"app-settings-footer-section",children:u.jsx("div",{className:"logo",children:u.jsx("a",{target:"_blank",rel:"noreferrer noopener",href:"https://deephaven.io",className:"d-inline-block custom-link p-1",children:u.jsx("img",{src:Wb,alt:"Deephaven Data Labs",width:"230px"})})})})]})]})]})}}const zg=10;function Xa(n){const{forwardedProps:{menuItem:{action:e,title:t,disabled:r},iconElement:i,displayShortcut:a,isMouseSelected:o,isKeyboardSelected:s,closeMenu:l}}=n,d=y.useRef(),h=y.useRef(),c=y.useRef(null),[m,v]=y.useState(!1),f=y.useCallback(C=>{d.current!=null&&h.current!=null&&c.current&&(Math.abs(d.current-C.clientX)>=zg||Math.abs(h.current-C.clientY)>=zg)&&(v(!0),window.removeEventListener("mousemove",f),l(),e(C),c.current=null)},[e,l]);function g(C){d.current=C.clientX,h.current=C.clientY,c.current=C.target,window.addEventListener("mousemove",f)}function p(C){c.current===C.target&&(v(!0),l(),e(),window.removeEventListener("mousemove",f)),c.current=null}return y.useEffect(function(){return function(){return window.removeEventListener("mousemove",f)}},[f]),u.jsxs("button",{type:"button",className:J("btn-context-menu",{disabled:r},{active:o&&!r},{"keyboard-active":s&&!r}),onMouseDown:g,onMouseUp:p,disabled:m,children:[u.jsx("span",{className:J("icon"),children:i}),u.jsx("span",{className:"title",children:t}),u.jsx("span",{className:"shortcut",children:a})]})}function Tc(n){const{handleControlSelect:e,handleToolSelect:t,onClearFilter:r}=n,i=y.useMemo(()=>[{title:"Input Filter",icon:Qw,menuElement:u.jsx(Xa,{}),action:a=>{e(Vi.INPUT_FILTER,a)},order:10},{title:"Dropdown Filter",icon:dp,menuElement:u.jsx(Xa,{}),action:a=>{e(Vi.DROPDOWN_FILTER,a)},order:15},{title:"Markdown Widget",icon:Zw,menuElement:u.jsx(Xa,{}),action:a=>{e(Vi.MARKDOWN,a)},order:20},{title:"Filter Sets",icon:Uu,menuElement:u.jsx(Xa,{}),action:a=>{e(Vi.FILTER_SET_MANAGER,a)},order:25},{disabled:!0,menuElement:u.jsx("div",{className:"context-menu-group-header",children:"Tools"}),order:30},{title:"Linker",icon:op,action:()=>{t(Sr.LINKER)},order:40,shortcut:ui.LINKER},{disabled:!0,menuElement:u.jsx("div",{className:"context-menu-group-header",children:"Actions"}),order:50},{title:"Clear All Filters",icon:Jw,action:()=>{r()},order:60,shortcut:xr.TABLE.CLEAR_ALL_FILTERS}],[e,t,r]);return u.jsx(ai,{popperClassName:"controls-menu-popper",actions:i})}Tc.propTypes={handleControlSelect:Y.func,handleToolSelect:Y.func,onClearFilter:Y.func};Tc.defaultProps={handleControlSelect:()=>{},handleToolSelect:()=>{},onClearFilter:()=>{}};Xa.propTypes={forwardedProps:Y.shape({iconElement:Y.node,displayShortcut:Y.string,isMouseSelected:Y.bool.isRequired,isKeyboardSelected:Y.bool.isRequired,closeMenu:Y.func.isRequired,menuItem:Y.shape({action:Y.func,title:Y.string,disabled:Y.bool}).isRequired})};Xa.defaultProps={forwardedProps:null};const GH=Qi(Gb,null),WH={layoutStorage:GH},zH=n=>n.layoutStorage,KH=n=>n.serverConfigValues;Object.entries(WH).map(([n,e])=>Es.register(n,e));const Kg=10;function YH(n){const{onExportLayout:e,onImportLayout:t,onResetLayout:r,onSelect:i,widgets:a=[]}=n,[o,s]=y.useState(!1),[l,d]=y.useState(""),h=y.useRef(null),c=y.useRef(),m=y.useCallback((w,E)=>{w!=null&&i(w,E)},[i]),v=y.useCallback(w=>{d(w.target.value)},[]),f=y.useCallback(w=>{c.current!=null&&(Math.abs(c.current.x-w.clientX)>=Kg||Math.abs(c.current.y-w.clientY)>=Kg)&&(s(!0),window.removeEventListener("mousemove",f),m(c.current.widget,w),c.current=void 0)},[c,m]),g=y.useCallback((w,E)=>{c.current={x:w.clientX,y:w.clientY,widget:E},window.addEventListener("mousemove",f)},[f]),p=y.useCallback((w,E)=>{window.removeEventListener("mousemove",f),c.current?.widget===E&&(s(!0),m(E)),c.current=void 0},[f,c,m]),C=y.useMemo(()=>a.filter(w=>l?w.name?.toLowerCase().includes(l.toLowerCase()):!0),[l,a]).sort((w,E)=>w.name?.localeCompare(E.name??"")??0),b=y.useMemo(()=>C.map(w=>u.jsx("li",{children:u.jsxs(G,{kind:"ghost","data-testid":`panel-list-item-${w.name??""}-button`,onMouseDown:E=>{g(E,w)},onMouseUp:E=>{p(E,w)},onKeyDown:E=>{(E.key==="Enter"||E.key===" ")&&m(w)},disabled:o,onClick:()=>{},children:[u.jsx(Cp,{type:w.type})," ",w.name??""]})},w.name)),[C,o,g,p,m]),S=y.useMemo(()=>b.length===0?u.jsx("span",{children:"No bound variables found."}):null,[b]);return u.jsxs("div",{className:"widget-list-container d-flex flex-column",children:[u.jsx("div",{className:"widget-list-header",children:u.jsx(fo,{value:l,placeholder:"Find Table, Plot or Widget",onChange:v,ref:h})}),u.jsxs("ul",{className:"widget-list flex-grow-1",children:[S&&u.jsx("li",{className:"widget-list-message",children:S}),!S&&b]}),u.jsx("div",{children:u.jsx("hr",{})}),u.jsxs("div",{className:"widget-list-footer",children:[u.jsxs(G,{kind:"ghost",onClick:e,children:[u.jsxs("div",{className:"fa-md fa-layers",children:[u.jsx(re,{mask:$u,icon:Zc,transform:"right-5 down-5"}),u.jsx(re,{icon:Zc,transform:"right-8 down-6"})]}),"Export Layout"]}),u.jsxs(G,{kind:"ghost",onClick:t,children:[u.jsxs("div",{className:"fa-md fa-layers",children:[u.jsx(re,{mask:$u,icon:Bu,transform:"right-5 down-5"}),u.jsx(re,{icon:Bu,transform:"right-8 down-6"})]}),"Import Layout"]}),u.jsx(G,{kind:"ghost",icon:va,onClick:r,tooltip:"Reset Layout"})]})]})}async function qH(n,e,t,r){let i,a,o,s;if(Rl(t)?(i=t.settings,a=t.table,o=void 0,s=t.tableSettings):(i={},a="",o=t.name??t.figure,s={}),r!=null&&(r.tableSettings!=null&&(s=r.tableSettings),r.table!=null&&(a=r.table),r.figure!=null&&(o=r.figure),r.settings!=null&&(i={...i,...r.settings})),o!=null){const h={title:o,name:o,type:n.VariableType.FIGURE},c=await e.getObject(h);return zu.makeModel(n,i,c)}const l={title:o,name:a,type:n.VariableType.TABLE},d=await e.getObject(l);return new ye(n).applyTableSettings(d,s,ys(Hh.getState())),zu.makeModelFromSettings(n,i,d)}const XH=async(n,e,t)=>{const{name:r,type:i}=t,a={title:r,name:r,type:i},o=await e.getObject(a);return HL.makeModel(n,o)};function QH({onAutoFillClick:n=()=>{}}){return u.jsxs("div",{className:"empty-dashboard-container",children:[u.jsxs("div",{className:"hint-container",children:[u.jsx(re,{icon:lp})," ",u.jsx("br",{}),"Use the panel list to add objects from a query."]}),u.jsxs("div",{className:"empty-dashboard",children:[u.jsx("div",{className:"add-panels-hint",children:"Drag Panels Here"}),u.jsx(G,{kind:"tertiary",onClick:n,children:"Auto fill objects"})]})]})}function ZH(n){return n.version===2}function JH(n){return Array.isArray(n)}const wl=ae.module("UserLayoutUtils"),e$={layoutConfig:[{type:"column",content:[{type:"row",height:40,content:[{type:"stack",content:[{type:"react-component",component:rs.COMPONENT,title:rs.TITLE,isClosable:!1},{type:"react-component",component:gh.COMPONENT,title:gh.TITLE,isClosable:!1}]},{type:"stack",width:25,content:[{type:"react-component",component:ch.COMPONENT,title:ch.TITLE,isClosable:!1},{type:"react-component",component:fh.COMPONENT,title:fh.TITLE,isClosable:!1}]}]},{type:"row",content:[{type:"stack",title:"Notebooks",content:[]}]}]}],links:[],filterSets:[],version:2},t$={layoutConfig:[],links:[],filterSets:[],version:2};function Zb(n){if(ZH(n))return n;if(JH(n))return{layoutConfig:n,links:[],filterSets:[],version:2};throw new Error(`Unexpected layout import format: ${n}`)}async function r$(n,e=!0){try{const t=await n.getLayouts();if(t.length>0)try{const r=await n.getLayout(t[0]);return Zb(r)}catch(r){wl.error("Unable to load layout",t[0],":",r),wl.warn("No valid layouts found, falling back to default layout")}}catch(t){wl.error("Unable to fetch layout list",t),wl.warn("Falling back to default layout")}return e?e$:t$}function n$(n){const{filterSets:e,layoutConfig:t,links:r}=n;return{filterSets:e,layoutConfig:t,links:r,version:2}}const Il={exportLayout:n$,getDefaultLayout:r$,normalizeLayout:Zb},yl=ae.module("DownloadServiceWorkerUtils");class Ad{static DOWNLOAD_PATH="/download/";static registerOnLoaded(){new URL("./",window.location.href).origin===window.location.origin&&("serviceWorker"in navigator?window.addEventListener("load",()=>{const t=new URL("./download/serviceWorker.js",window.location.href);navigator.serviceWorker.register(t).then(r=>{r.update(),yl.info("Registering service worker on ",t,r)}).catch(r=>{yl.error("Failed to register service worker",r)})}):yl.info("Service worker is not supported."))}static async getServiceWorker(){if("serviceWorker"in navigator){const t=(await navigator.serviceWorker.getRegistrations()).find(r=>r.scope.endsWith(Ad.DOWNLOAD_PATH));if(t&&t.active)return yl.info("Download service worker is active."),t.active;throw new Error("Can not find download service worker.")}throw new Error("Download service worker is not available.")}static unregisterSW(){}}const St=ae.module("AppMainContainer");class Qa extends y.Component{static handleWindowBeforeUnload(e){e.preventDefault(),e.returnValue=""}static hydrateConsole(e,t){return eh.hydrate({...e,unzip:r=>ep.loadAsync(r).then(i=>Object.values(i.files))},t)}static handleRefresh(){St.info("Refreshing application"),window.location.reload()}constructor(e){super(e),this.handleSettingsMenuHide=this.handleSettingsMenuHide.bind(this),this.handleSettingsMenuShow=this.handleSettingsMenuShow.bind(this),this.handleError=this.handleError.bind(this),this.handleControlSelect=this.handleControlSelect.bind(this),this.handleToolSelect=this.handleToolSelect.bind(this),this.handleClearFilter=this.handleClearFilter.bind(this),this.handleDataChange=this.handleDataChange.bind(this),this.handleAutoFillClick=this.handleAutoFillClick.bind(this),this.handleGoldenLayoutChange=this.handleGoldenLayoutChange.bind(this),this.handleLayoutConfigChange=this.handleLayoutConfigChange.bind(this),this.handleExportLayoutClick=this.handleExportLayoutClick.bind(this),this.handleImportLayoutClick=this.handleImportLayoutClick.bind(this),this.handleImportLayoutFiles=this.handleImportLayoutFiles.bind(this),this.handleLoadTablePlugin=this.handleLoadTablePlugin.bind(this),this.handleResetLayoutClick=this.handleResetLayoutClick.bind(this),this.handleWidgetMenuClick=this.handleWidgetMenuClick.bind(this),this.handleWidgetsMenuClose=this.handleWidgetsMenuClose.bind(this),this.handleWidgetSelect=this.handleWidgetSelect.bind(this),this.handlePaste=this.handlePaste.bind(this),this.hydrateChart=this.hydrateChart.bind(this),this.hydrateTable=this.hydrateTable.bind(this),this.hydrateDefault=this.hydrateDefault.bind(this),this.openNotebookFromURL=this.openNotebookFromURL.bind(this),this.handleDisconnect=this.handleDisconnect.bind(this),this.handleReconnect=this.handleReconnect.bind(this),this.handleReconnectAuthFailed=this.handleReconnectAuthFailed.bind(this),this.importElement=he.createRef(),this.state={contextActions:[{action:()=>{this.handleToolSelect(Sr.LINKER)},shortcut:ui.LINKER,isGlobal:!0},{action:()=>{this.sendClearFilter()},shortcut:xr.TABLE.CLEAR_ALL_FILTERS,isGlobal:!0},{action:()=>{St.debug("Consume unhandled save shortcut")},shortcut:ui.SAVE,isGlobal:!0}],isAuthFailed:!1,isDisconnected:!1,isPanelsMenuShown:!1,isSettingsMenuShown:!1,widgets:[]}}componentDidMount(){this.initWidgets(),this.startListeningForDisconnect(),window.addEventListener("beforeunload",Qa.handleWindowBeforeUnload)}componentDidUpdate(e){const{dashboardData:t}=this.props;e.dashboardData!==t&&this.handleDataChange(t)}componentWillUnmount(){this.deinitWidgets(),this.stopListeningForDisconnect(),window.removeEventListener("beforeunload",Qa.handleWindowBeforeUnload)}goldenLayout;importElement;widgetListenerRemover;initWidgets(){const{connection:e}=this.props;if(e.subscribeToFieldUpdates==null){St.warn("subscribeToFieldUpdates not supported, not initializing widgets");return}this.widgetListenerRemover=e.subscribeToFieldUpdates(t=>{St.debug("Got updates",t),this.setState(({widgets:r})=>{const{updated:i,created:a,removed:o}=t,s=[...i,...o],l=r.filter(h=>!s.some(c=>c.name===h.name));return[...i,...a].forEach(h=>{h.name!=null&&h.name!==""&&l.push(h)}),{widgets:l}})})}deinitWidgets(){this.widgetListenerRemover?.()}openNotebookFromURL(){const{match:e}=this.props,{notebookPath:t}=e.params;if(t){const{session:r,sessionConfig:i}=this.props;if(r==null||i==null){St.error("No session available to open notebook URL",t);return}const a={id:`/${t}`,itemName:`/${t}`},o=i.type,s={value:null,language:o};this.emitLayoutEvent(Ke.SELECT_NOTEBOOK,r,o,s,a,!0)}}sendClearFilter(){this.emitLayoutEvent(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(vb.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=Il.exportLayout(t);St.info("handleExportLayoutClick exportedConfig",r);const i=new Blob([JSON.stringify(r)],{type:"application/json"}),a=un.i18n.DateTimeFormat.format("yyyy-MM-dd-HHmmss",new Date),o=document.createElement("a");o.href=URL.createObjectURL(i),o.download=`deephaven-app-layout-${a}.json`,o.click()}catch(e){St.error("Unable to export layout",e)}}handleImportLayoutClick(){St.info("handleImportLayoutClick"),this.setState({isPanelsMenuShown:!1}),this.importElement.current!=null&&(this.importElement.current.value="",this.importElement.current.click())}handleResetLayoutClick(){St.info("handleResetLayoutClick"),this.setState({isPanelsMenuShown:!1}),this.resetLayout()}handleImportLayoutFiles(e){e.stopPropagation(),e.preventDefault(),e.target.files!=null&&this.importLayoutFile(e.target.files?.[0])}handleDisconnect(){St.info("Disconnected from server"),this.setState({isDisconnected:!0})}handleReconnect(){St.info("Reconnected to server"),this.setState({isDisconnected:!1})}handleReconnectAuthFailed(){St.warn("Reconnect authentication failed"),this.setState({isAuthFailed:!0})}async importLayoutFile(e){try{const{updateDashboardData:t,updateWorkspaceData:r}=this.props,i=await e.text(),a=JSON.parse(i),{filterSets:o,layoutConfig:s,links:l}=Il.normalizeLayout(a);r({layoutConfig:s}),t(wn,{filterSets:o,links:l})}catch(t){St.error("Unable to import layout",t)}}async resetLayout(){const{layoutStorage:e,session:t}=this.props,{filterSets:r,layoutConfig:i,links:a}=await Il.getDefaultLayout(e,t!==void 0),{updateDashboardData:o,updateWorkspaceData:s}=this.props;s({layoutConfig:i}),o(wn,{filterSets:r,links:a})}handlePaste(e){if(e.target instanceof HTMLElement&&e.target.closest(".monaco-editor"))return;const{clipboardData:t}=e,r=t.getData("Text"),i=/“|”/g;i.test(r)&&(e.preventDefault(),e.stopPropagation(),document.execCommand("insertText",!1,r.replace(i,'"')))}handleLoadTablePlugin(e){const{plugins:t}=this.props,r=t.get(e);if(r!=null){if(fy(r))return r.component;if(gy(r))return r.TablePlugin}const i=`Unable to find table plugin ${e}.`;throw St.error(i),new Error(i)}startListeningForDisconnect(){const{connection:e}=this.props;e.addEventListener(un.IdeConnection.EVENT_DISCONNECT,this.handleDisconnect),e.addEventListener(un.IdeConnection.EVENT_RECONNECT,this.handleReconnect),e.addEventListener(un.CoreClient.EVENT_RECONNECT_AUTH_FAILED,this.handleReconnectAuthFailed)}stopListeningForDisconnect(){const{connection:e}=this.props;e.removeEventListener(un.IdeConnection.EVENT_DISCONNECT,this.handleDisconnect),e.removeEventListener(un.IdeConnection.EVENT_RECONNECT,this.handleReconnect),e.removeEventListener(un.CoreClient.EVENT_RECONNECT_AUTH_FAILED,this.handleReconnectAuthFailed)}hydrateDefault(e,t){const{connection:r}=this.props,{metadata:i}=e;if(i?.type!=null&&(i?.id!=null||i?.name!=null)){const a=i.id!=null?{type:i.type,id:i.id}:{type:i.type,name:i.name,title:i.name};return{fetch:()=>r.getObject(a),...e,localDashboardId:t}}return eh.hydrate(e,t)}hydrateTable(e,t){const{connection:r}=this.props;let i;if(Nb(e.metadata))i=e.metadata;else if(Rb(e.metadata))i={name:e.metadata.table,type:e.metadata.type??un.VariableType.TABLE};else throw new Error("Metadata is required for table panel");return{...e,getDownloadWorker:Ad.getServiceWorker,loadPlugin:this.handleLoadTablePlugin,localDashboardId:t,makeModel:()=>XH(un,r,i)}}hydrateChart(e,t){const{connection:r}=this.props;return{...e,localDashboardId:t,makeModel:()=>{const{metadata:i}=e,a=S1(e)?e.panelState:void 0;if(i==null)throw new Error("Metadata is required for chart panel");return qH(un,r,i,a)}}}openWidget(e,t){const{connection:r}=this.props;this.emitLayoutEvent(Ee.OPEN,{dragEvent:t,fetch:()=>r.getObject(e),widget:e})}getDashboardPlugins=Ce(e=>[...e.entries()].filter(([,r])=>by(r)).map(([r,{DashboardPlugin:i}])=>u.jsx(i,{},r)).concat([...e.values()].filter(Sy).map(({component:r,name:i})=>u.jsx(r,{},i))));render(){const{activeTool:e,plugins:t,user:r,workspace:i,serverConfigValues:a}=this.props,{data:o}=i,{layoutConfig:s}=o,{permissions:l}=r,{canUsePanels:d}=l,{contextActions:h,isAuthFailed:c,isDisconnected:m,isPanelsMenuShown:v,isSettingsMenuShown:f,widgets:g}=this.state,p=this.getDashboardPlugins(t);return u.jsxs("div",{className:J("app-main-tabs","w-100","h-100","d-flex","flex-column",e?`active-tool-${e.toLowerCase()}`:""),onPaste:this.handlePaste,tabIndex:-1,children:[u.jsx("nav",{className:"nav-container",children:u.jsxs("div",{className:"app-main-top-nav-menus",children:[u.jsx("img",{src:Wb,alt:"Deephaven Data Labs",width:"115px",className:"ml-1"}),u.jsxs("div",{children:[u.jsxs(G,{kind:"ghost",className:"btn-panels-menu",icon:ey,onClick:()=>{},children:["Controls",u.jsx(Tc,{handleControlSelect:this.handleControlSelect,handleToolSelect:this.handleToolSelect,onClearFilter:this.handleClearFilter})]}),d&&u.jsxs(G,{kind:"ghost",className:"btn-panels-menu btn-show-panels","data-testid":"app-main-panels-button",onClick:this.handleWidgetMenuClick,icon:ty,children:["Panels",u.jsx(ud,{isShown:v,className:"panels-menu-popper",onExited:this.handleWidgetsMenuClose,options:{placement:"bottom"},closeOnBlur:!0,interactive:!0,children:u.jsx(YH,{widgets:g,onExportLayout:this.handleExportLayoutClick,onImportLayout:this.handleImportLayoutClick,onResetLayout:this.handleResetLayoutClick,onSelect:this.handleWidgetSelect})})]}),u.jsx(G,{kind:"ghost",className:J("btn-settings-menu",{"text-warning":r.operateAs!=null&&r.operateAs!==r.name}),onClick:this.handleSettingsMenuShow,icon:u.jsxs("span",{className:"fa-layers",children:[u.jsx(re,{icon:Cs,transform:"grow-3 right-1 down-1"}),m&&!c&&u.jsxs(u.Fragment,{children:[u.jsx(re,{icon:ss,color:Je.background,transform:"grow-2 right-8 down-8.5 rotate-45"}),u.jsx(re,{icon:Jc,color:Je.danger,transform:"shrink-5 right-6 down-6"})]})]}),tooltip:m&&!c?"Server disconnected":"User Settings"})]})]})}),u.jsxs(zD,{emptyDashboard:u.jsx(QH,{onAutoFillClick:this.handleAutoFillClick}),id:wn,layoutConfig:s,onGoldenLayoutChange:this.handleGoldenLayoutChange,onLayoutConfigChange:this.handleLayoutConfigChange,onLayoutInitialized:this.openNotebookFromURL,hydrate:this.hydrateDefault,children:[u.jsx(Nj,{hydrate:this.hydrateTable}),u.jsx(wj,{hydrate:this.hydrateChart}),u.jsx(yj,{}),u.jsx(Dj,{hydrateConsole:Qa.hydrateConsole,notebooksUrl:new URL("notebooks/",document.baseURI).href}),u.jsx(Rj,{}),u.jsx(Xj,{hydrate:this.hydrateTable}),u.jsx(qj,{}),u.jsx(zj,{}),p]}),u.jsx(Lr,{in:f,timeout:Je.transitionMidMs,classNames:"slide-left",mountOnEnter:!0,unmountOnExit:!0,children:u.jsx(Fn,{serverConfigValues:a,onDone:this.handleSettingsMenuHide,user:r})}),u.jsx(se,{actions:h}),u.jsx("input",{ref:this.importElement,type:"file",accept:".json",style:{display:"none"},onChange:this.handleImportLayoutFiles}),u.jsx(py,{isOpen:m&&!c,debounceMs:1e3,children:u.jsx(Cy,{icon:Jc,title:u.jsxs(u.Fragment,{children:[u.jsx(jn,{})," Attempting to reconnect..."]}),subtitle:"Please check your network connection."})}),u.jsx(ls,{confirmButtonText:"Refresh",onConfirm:Qa.handleRefresh,isOpen:c,headerText:"Authentication failed",bodyText:"Credentials are invalid. Please refresh your browser to try and reconnect."})]})}}const i$=n=>({activeTool:Cd(n),dashboardData:yr(n,wn),layoutStorage:zH(n),plugins:HT(n),connection:h1(n,wn),session:Ta(n,wn)?.session,sessionConfig:Ta(n,wn)?.config,user:kp(n),workspace:pd(n),serverConfigValues:KH(n)}),a$=$t(i$,{setActiveTool:Sd,updateDashboardData:Hn,updateWorkspaceData:nC})(US(Qa));function o$(){return u.jsxs("div",{className:"app",children:[u.jsx(a$,{}),u.jsx(fp,{})]})}const s$=ae.module("LocalWorkspaceStorage");class Za{static STORAGE_KEY="deephaven.WorkspaceStorage";static async makeDefaultWorkspaceData(e,t){const{filterSets:r,links:i,layoutConfig:a}=await Il.getDefaultLayout(e,t?.isConsoleAvailable);return{settings:{defaultDateTimeFormat:Tt.DEFAULT_DATETIME_FORMAT_STRING,formatter:[],timeZone:Tt.DEFAULT_TIME_ZONE_ID,showTimeZone:!1,showTSeparator:!0,disableMoveConfirmation:!1,defaultDecimalFormatOptions:{defaultFormatString:et.DEFAULT_FORMAT_STRING},defaultIntegerFormatOptions:{defaultFormatString:Et.DEFAULT_FORMAT_STRING},truncateNumbersWithPound:!1,defaultNotebookSettings:{isMinimapEnabled:!1}},layoutConfig:a,closed:[{}],links:i,filterSets:r}}static async makeDefaultWorkspace(e,t){return{data:await Za.makeDefaultWorkspaceData(e,t)}}layoutStorage;constructor(e){this.layoutStorage=e}async load(e){try{return JSON.parse(localStorage.getItem(Za.STORAGE_KEY)??"")}catch{return s$.info("Unable to load workspace data, initializing to default data"),Za.makeDefaultWorkspace(this.layoutStorage,e)}}async save(e){return localStorage.setItem(Za.STORAGE_KEY,JSON.stringify(e)),e}}class l${storageService;root;constructor(e,t=""){this.storageService=e,this.root=t}async getLayouts(){return(await this.storageService.listItems(this.root,"*.json")).map(t=>t.basename)}async getLayout(e){const r=await(await this.storageService.loadFile(`${this.root}/${e}`)).text();return JSON.parse(r)}}const Vo=ae.module("GrpcFileStorageTable");class Jl{static REFRESH_DEBOUNCE=50;storageService;baseRoot;root;currentSize=0;currentViewport;listeners=[];viewportUpdatePromise;currentViewportData;childTables=new Map;constructor(e,t="",r=t){this.storageService=e,this.baseRoot=t,this.root=r,r===t&&(this.doRefresh=rt(this.doRefresh.bind(this),Jl.REFRESH_DEBOUNCE))}removeBaseRoot(e){return ge.removeRoot(this.baseRoot,e)}getViewportData(){return this.viewportUpdatePromise||this.refreshInternal(),this.viewportUpdatePromise??Promise.resolve({items:[],offset:0})}getSnapshot(e){throw new Error("Method not implemented.")}get size(){return this.currentSize}setExpanded(e,t){const r=e.split("/");let i=r.shift();if((i===void 0||i==="")&&(i=r.shift()),i===void 0||i==="")throw new Error(`Invalid path: ${e}`);const a=r.join("/");if(t){if(!this.childTables.has(i)){const o=new Jl(this.storageService,this.baseRoot,`${this.root}/${i}`);this.childTables.set(i,o)}a&&this.childTables.get(i)?.setExpanded(a,t)}else this.childTables.has(i)&&(a?this.childTables.get(i)?.setExpanded(a,t):this.childTables.delete(i));this.currentViewport&&this.refreshInternal()}collapseAll(){this.childTables.clear(),this.currentViewport&&this.refreshInternal()}setSearch(e){throw new Error("Method not implemented.")}setViewport(e){this.currentViewport=e,this.refreshInternal()}setFilters(){throw new Error("Method not implemented.")}setSorts(){throw new Error("Method not implemented.")}setReversed(){throw new Error("Method not implemented.")}close(){this.listeners=[]}onUpdate(e){return this.listeners=[...this.listeners,e],()=>{this.listeners=this.listeners.filter(t=>t!==e)}}doRefresh(e){Vo.debug2("doRefresh",this.root),e(this.fetchData())}refresh(){Vo.debug2("refresh",this.root),this.viewportUpdatePromise?.cancel();const e=new Promise(r=>{this.doRefresh(r)}),t=Te.makeCancelable(e.then(r=>{if(this.viewportUpdatePromise!==t)throw new sd;return this.currentViewportData=r,this.sendUpdate(),r}));t.catch(r=>{Te.isCanceled(r)||Vo.error("Error updating viewport",r)}),this.viewportUpdatePromise=t}refreshInternal(){try{this.refresh()}catch(e){Te.isCanceled(e)||Vo.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,Vo.debug2(this.root,"items",r,e),r=r.slice(e.top,e.bottom),{items:r,offset:e.top}}sendUpdate(){const{listeners:e}=this,t=this.currentViewportData??{items:[],offset:0};for(let r=0;r<e.length;r+=1)e[r](t)}}const d$=ae.module("GrpcFileStorage");class Pc{static REFRESH_THROTTLE=150;storageService;tables=[];root;constructor(e,t=""){this.storageService=e,this.root=t}removeRoot(e){return ge.removeRoot(this.root,e)}addRoot(e){return ge.addRoot(this.root,e)}async createDirectory(e){return await this.storageService.createDirectory(this.addRoot(e)),this.refreshTables(),{type:"directory",id:e,filename:e,basename:ge.getBaseName(e)}}async getTable(){const e=new Jl(this.storageService,this.root);return this.tables.push(e),e}async saveFile(e){const t=dh.storage.FileContents.text(e.content);return await this.storageService.saveFile(this.addRoot(e.filename),t,!0),this.refreshTables(),e}async loadFile(e){const r=await(await this.storageService.loadFile(this.addRoot(e))).text();return{filename:e,basename:ge.getBaseName(e),content:r}}async copyFile(e,t){const r=await this.storageService.loadFile(this.addRoot(e));await this.storageService.saveFile(this.addRoot(t),r,!1),this.refreshTables()}async deleteFile(e){await this.storageService.deleteItem(this.addRoot(e)),this.refreshTables()}async moveFile(e,t){await this.storageService.moveItem(this.addRoot(e),this.addRoot(t)),this.refreshTables()}async info(e){const t=await this.storageService.listItems(this.addRoot(ge.getPath(e)),ge.getBaseName(e));if(t.length===0)throw new fc;if(t.length>1)throw d$.error("More than one matching file found, should never happen.",t),new Error("More than one matching file found");const r=t[0];return{filename:this.removeRoot(r.filename),basename:r.basename,id:this.removeRoot(r.filename),type:r.type}}refreshTables=Ki(()=>{this.tables.forEach(e=>e.refresh())},Pc.REFRESH_THROTTLE)}const u$=ae.module("AppInit");function Oc(n){const{workspace:e,setActiveTool:t,setApi:r,setCommandHistoryStorage:i,setDashboardData:a,setFileStorage:o,setLayoutStorage:s,setDashboardConnection:l,setDashboardSessionWrapper:d,setPlugins:h,setUser:c,setWorkspace:m,setWorkspaceStorage:v,setServerConfigValues:f}=n,g=Pa(),p=wy(),C=yy(),b=Ey(),S=Ty(),w=Py(),[E,T]=y.useState();y.useEffect(function(){h(b)},[b,h]),y.useEffect(function(){async function _(){try{const F=await Oy(),x=await Dy(g,C,F),L=p.getStorageService(),M=new l$(L,"/layouts"),U=new Pc(L,"/notebooks"),V=new Za(M),z=new bH,Q=await V.load({isConsoleAvailable:x!==void 0}),{data:Z}=Q,{settings:I}=Z;I.defaultDecimalFormatOptions===void 0&&(I.defaultDecimalFormatOptions={defaultFormatString:et.DEFAULT_FORMAT_STRING}),I.defaultIntegerFormatOptions===void 0&&(I.defaultIntegerFormatOptions={defaultFormatString:Et.DEFAULT_FORMAT_STRING}),I.truncateNumbersWithPound===void 0&&(I.truncateNumbersWithPound=!1);const{shortcutOverrides:R={}}=I,H=hn.isMacPlatform?R.mac??{}:R.windows??{};Object.entries(H).forEach(([ee,W])=>{qe.get(ee)?.setKeyState(W)});const K={filterSets:Z.filterSets,links:Z.links};r(g),t(Sr.DEFAULT),f(S),i(z),a(wn,K),o(U),s(M),l(wn,C),x!==void 0&&d(wn,x),c(w),v(V),m(Q)}catch(F){u$.error(F),T(F)}}_()},[g,p,C,S,t,r,i,a,o,s,l,d,c,m,v,f,w]);const P=e==null&&E==null,D=!P&&E==null,O=E!=null?`${E}`:null;return u.jsxs(u.Fragment,{children:[D&&u.jsx(o$,{}),u.jsx(td,{isLoading:P&&O==null,isLoaded:D,errorMessage:O})]})}Oc.propTypes={workspace:Y.shape({}),workspaceStorage:Y.shape({close:Y.func}),setActiveTool:Y.func.isRequired,setApi:Y.func.isRequired,setCommandHistoryStorage:Y.func.isRequired,setDashboardData:Y.func.isRequired,setFileStorage:Y.func.isRequired,setLayoutStorage:Y.func.isRequired,setDashboardConnection:Y.func.isRequired,setDashboardSessionWrapper:Y.func.isRequired,setPlugins:Y.func.isRequired,setUser:Y.func.isRequired,setWorkspace:Y.func.isRequired,setWorkspaceStorage:Y.func.isRequired};Oc.defaultProps={workspace:null,workspaceStorage:null};const h$=n=>({workspace:pd(n),workspaceStorage:LT(n)}),Yg=$t(h$,{setActiveTool:Sd,setApi:GT,setCommandHistoryStorage:zT,setDashboardData:RC,setFileStorage:KT,setLayoutStorage:SH,setDashboardConnection:c1,setDashboardSessionWrapper:m1,setPlugins:qT,setUser:VT,setWorkspace:rC,setWorkspaceStorage:WT,setServerConfigValues:XT})(Oc),c$=document.location.pathname;function m$(){return u.jsx(BS,{basename:c$,children:u.jsxs(VS,{children:[u.jsx(Wc,{exact:!0,path:"/",component:Yg}),u.jsx(Wc,{path:"/notebooks/:notebookPath+",component:Yg}),u.jsx(GS,{from:"*",to:"/"})]})})}function w$(){return Ad.registerOnLoaded(),Cr.init({getWorker:()=>new KS}),window["__react-beautiful-dnd-disable-dev-warnings"]=!0,u.jsx(WS,{store:Hh,children:u.jsx(m$,{})})}export{w$ as AppRoot,w$ as default};
|
|
44
|
-
//# sourceMappingURL=AppRoot-
|
|
44
|
+
//# sourceMappingURL=AppRoot-cf779af5.js.map
|