@deephaven/embed-widget 1.15.1 → 1.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/build/assets/{App-CypmLgmL.js → App-Ca5Ruy2E.js} +2 -2
  2. package/build/assets/{App-CypmLgmL.js.map → App-Ca5Ruy2E.js.map} +1 -1
  3. package/build/assets/{Chart-BsXISs8I.js → Chart-BTkEZV67.js} +2 -2
  4. package/build/assets/{Chart-BsXISs8I.js.map → Chart-BTkEZV67.js.map} +1 -1
  5. package/build/assets/{IrisGrid-CjstqkdZ.js → IrisGrid-B4lUy4sd.js} +5 -5
  6. package/build/assets/{IrisGrid-CjstqkdZ.js.map → IrisGrid-B4lUy4sd.js.map} +1 -1
  7. package/build/assets/IrisGridThemeProvider-ZZ-85ME3.js +12 -0
  8. package/build/assets/IrisGridThemeProvider-ZZ-85ME3.js.map +1 -0
  9. package/build/assets/LocalWorkspaceStorage-CAcGwSuV.js +2 -0
  10. package/build/assets/LocalWorkspaceStorage-CAcGwSuV.js.map +1 -0
  11. package/build/assets/{LogPanel-dUVSBPpo.js → LogPanel-CpZTGwJv.js} +4 -4
  12. package/build/assets/{LogPanel-dUVSBPpo.js.map → LogPanel-CpZTGwJv.js.map} +1 -1
  13. package/build/assets/{MarkdownEditor-D53YrMF9.js → MarkdownEditor-BOGDnkaM.js} +2 -2
  14. package/build/assets/{MarkdownEditor-D53YrMF9.js.map → MarkdownEditor-BOGDnkaM.js.map} +1 -1
  15. package/build/assets/{MarkdownNotebook-BkTy95vu.js → MarkdownNotebook-Dsw8M9b9.js} +2 -2
  16. package/build/assets/{MarkdownNotebook-BkTy95vu.js.map → MarkdownNotebook-Dsw8M9b9.js.map} +1 -1
  17. package/build/assets/Plot-Xv-druQg.js +2 -0
  18. package/build/assets/{Plot-BmYKhm84.js.map → Plot-Xv-druQg.js.map} +1 -1
  19. package/build/assets/{Plotly-BTLqRIq-.js → Plotly-CJhuCDFM.js} +2 -2
  20. package/build/assets/{Plotly-BTLqRIq-.js.map → Plotly-CJhuCDFM.js.map} +1 -1
  21. package/build/assets/{index-B6BgIG1u.js → index-CaeBLWf2.js} +3 -3
  22. package/build/assets/{index-B6BgIG1u.js.map → index-CaeBLWf2.js.map} +1 -1
  23. package/build/assets/{index-DG2tw4ib.js → index-Dy719bYK.js} +4 -4
  24. package/build/assets/{index-DG2tw4ib.js.map → index-Dy719bYK.js.map} +1 -1
  25. package/build/assets/{index-DsTg7BZt.js → index-xys9qLny.js} +4 -4
  26. package/build/assets/{index-DsTg7BZt.js.map → index-xys9qLny.js.map} +1 -1
  27. package/build/assets/plotly-BJo_M7Cs.js +7 -0
  28. package/build/assets/{plotly-ODN7AY4u.js.map → plotly-BJo_M7Cs.js.map} +1 -1
  29. package/build/index.html +2 -2
  30. package/package.json +11 -11
  31. package/build/assets/IrisGridThemeProvider-Bm5JMU4l.js +0 -12
  32. package/build/assets/IrisGridThemeProvider-Bm5JMU4l.js.map +0 -1
  33. package/build/assets/LocalWorkspaceStorage-CtMRGP9F.js +0 -2
  34. package/build/assets/LocalWorkspaceStorage-CtMRGP9F.js.map +0 -1
  35. package/build/assets/Plot-BmYKhm84.js +0 -2
  36. package/build/assets/plotly-ODN7AY4u.js +0 -7
@@ -1,5 +1,5 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./Chart-BsXISs8I.js","./vendor-CU9m3C3n.js","./helpers-BosuxZz1.js","./vendor-CdNlUFKS.css","./index-B6BgIG1u.js","./index-CSv_gtZy.css","./Plotly-BTLqRIq-.js","./plotly-ODN7AY4u.js","./LogPanel-dUVSBPpo.js","./LogPanel-1yyBsI72.css","./DownsamplingError--AAvWHv_.js","./useMergeRef-BVbjpcbf.js","./Chart-CTDcF-lR.css","./IrisGrid-CjstqkdZ.js","./IrisGridThemeProvider-Bm5JMU4l.js","./useResizeObserver-DBuxCPgF.js","./IrisGridThemeProvider-Dsd6y6kc.css","./IrisGrid-BIOgeeAe.css","./MarkdownEditor-D53YrMF9.js","./MarkdownNotebook-BkTy95vu.js","./MarkdownNotebook-CmpkKxys.css"])))=>i.map(i=>d[i]);
2
- import{r as E,D as p,G as Me,H as Gs,J as Re,bp as Bs,I as Ne,bq as jn,br as Us,bs as Ws,bt as zs,bu as qs,ah as Ge,C as Ue,_ as zr,bv as En,ae as Be,bw as Ks,E as Xs,bx as U,bn as gi,bc as bi,by as Ys,bz as Zs,be as Qs,bA as jr,bB as wt,af as Et,aS as Js,aR as Ci,R as eo,L as sl,N as to,bC as ie}from"./vendor-CU9m3C3n.js";import{ca as ro,cb as no,cc as io,cd as ao,ce as lo,cf as so,cg as oo,ch as uo,ci as ho,cj as co,ck as _n,am as Gt,B as Le,cl as Ze,cm as hn,ai as _r,aj as vo,ak as po,E as Q,c3 as mo,aG as fo,aC as go,be as Vn,aH as bo,cn as It,co as ae,bD as dt,r as yi,bZ as ut,bF as wn,aK as Co,a6 as ol,L as yo,O as He,cp as So,cq as kt,cr as Tt,b4 as Pt,J,cs as Xt,ct as ht,cu as ul,cv as qr,aU as dl,cw as $n,cx as Kr,b_ as Xr,cy as gr,cz as br,cA as Hn,aq as H,_ as cr,cB as hl,cC as Gn,aw as Eo,cD as wo,cE as cl,Z as To,aS as Po,aE as ke,cF as Do,cG as Oo,cH as vl,cI as pl,b$ as Ve,cJ as oe,cK as Vr,U as Tn,A as Pn,G as ml,cL as Fo,V as Si,cM as Ei,c0 as No,cN as fl,u as Yr,bi as Dt,bf as we,b6 as $r,c6 as Lr,cO as Mo,aA as Ro,c8 as gl,c9 as bl,c7 as Cl,ao as yl,bt as Io,br as ko,bd as Sl,bg as El,bw as wl,ap as Lo,ar as Ao,a5 as xo,cP as jo,cQ as _o}from"./LogPanel-dUVSBPpo.js";import{T as Vo,ap as $o,aq as Ho,ac as Go,a as ee,ao as Bo,u as R,ar as Uo,L as vt,as as At,k as Wo,at as zo,au as Bn,av as Tl,aw as qo,ax as Pl,v as Zr,ay as Dl,az as wi,aA as Ti,aB as Ko,aC as Xo,d as Yo,G as Zo,e as Qo,aD as Jo,aE as eu,aF as tu,aG as ru,aH as nu,aI as iu,h as cn,aJ as au,aK as lu,aL as su,aM as ou,aN as uu}from"./index-B6BgIG1u.js";function Un(n){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,t=du(n,e);t.forEach(r=>{n[r]=n[r].bind(n)})}function du(n,e){for(var t=new Set,r=n,i=0;r!=null&&r!==Object.prototype&&(i<=1||e);){for(var a of Object.getOwnPropertyNames(r)){var l;a!=="constructor"&&typeof((l=Object.getOwnPropertyDescriptor(r,a))===null||l===void 0?void 0:l.value)=="function"&&t.add(a)}r=Object.getPrototypeOf(r),i+=1}return[...t.keys()]}function hu(n){return n!=null}function Wn(n){var{className:e,isFlipped:t,children:r,"data-testid":i}=n,a=u=>{if(r.length!==2)throw new Error("CardFlip requires 2 children to function");return r[u]},l=E.useRef(null),s=E.useCallback(u=>{u.target===u.currentTarget&&document.body.classList.add("card-flip--is-flipping")},[]),o=E.useCallback(u=>{u.target===u.currentTarget&&document.body.classList.remove("card-flip--is-flipping")},[]);return E.useEffect(function(){if(!l.current)throw Error("ref undefined");l.current.addEventListener("transitionstart",s);var d=l.current;return function(){if(d!=null)return d.removeEventListener("transitionstart",s)}},[s]),p.jsxs("div",{className:Me(e,{"card-flip--show-front":t,"card-flip--show-back":!t}),"data-testid":i,children:[p.jsx("div",{className:"card-flip--back",children:a(0)}),p.jsx("div",{ref:l,className:"card-flip--front",onTransitionEnd:o,children:a(1)})]})}var cu=["classNames","timeout","children","onEnter"];function Pi(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Di(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Pi(Object(t),!0).forEach(function(r){vu(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Pi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function vu(n,e,t){return(e=pu(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function pu(n){var e=mu(n,"string");return typeof e=="symbol"?e:e+""}function mu(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function fu(n,e){if(n==null)return{};var t,r,i=gu(n,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(n);for(r=0;r<a.length;r++)t=a[r],e.indexOf(t)===-1&&{}.propertyIsEnumerable.call(n,t)&&(i[t]=n[t])}return i}function gu(n,e){if(n==null)return{};var t={};for(var r in n)if({}.hasOwnProperty.call(n,r)){if(e.indexOf(r)!==-1)continue;t[r]=n[r]}return t}var bu={display:"contents"};function Dn(n){var{classNames:e,timeout:t=Vo.transitionMs,children:r,onEnter:i}=n,a=fu(n,cu),l=E.useRef(null),s=E.useCallback(u=>{var d=l.current;d&&(i==null||i(d,u))},[i]),o=E.useCallback(u=>{l.current=u==null?void 0:u.firstElementChild},[]);return p.jsx(Gs,Di(Di({nodeRef:l,timeout:t,classNames:Me("fade",e),onEnter:s},a),{},{children:p.jsx("div",{ref:o,style:bu,children:r})}))}var zn=Re.forwardRef((n,e)=>{var{children:t,className:r,disabled:i=!1,id:a,isLinked:l=!1,isLinkedSource:s=!1,isInvalid:o=!1,onClick:u,onMouseEnter:d,onMouseLeave:h,style:c,"data-testid":v}=n,{UNSAFE_className:g}=Bs({},"button");return p.jsxs("button",{ref:e,type:"button",className:Me("btn-socketed",{"btn-socketed-linked":l!==void 0&&l||s},{"btn-socketed-linked-source":s},{"is-invalid":o},r,g),id:a,onClick:u,onMouseEnter:d,onMouseLeave:h,style:c,disabled:i,"data-testid":v,children:[t,p.jsx(Ne,{icon:$o,className:"linked btn-socketed-icon",transform:"down-1"}),p.jsx(Ne,{icon:Ho,className:"is-invalid btn-socketed-icon"})]})});zn.displayName="SocketedButton";function Oi(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function Cu(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Oi(a,r,i,l,s,"next",o)}function s(o){Oi(a,r,i,l,s,"throw",o)}l(void 0)})}}var Ol=E.createContext(null);Ol.displayName="DeferredApiContext";function yu(n){var[e,t]=E.useState(null),[r,i]=E.useState(null),a=E.useContext(Ol),l=E.useContext(Go);return E.useEffect(()=>{if(a==null){if(l!=null){t(l),i(null);return}t(null),i(new Error("No API available in useDeferredApi. Was code wrapped in ApiBootstrap or DeferredApiContext.Provider?"));return}var s=!1;function o(){return u.apply(this,arguments)}function u(){return u=Cu(function*(){if(n==null)s||(t(null),i(new Error("No widget provided to useDeferredApi")));else if(typeof a=="function")try{var d=yield a(n);s||(t(d),i(null))}catch(h){s||(t(null),i(h??new Error("Null error")))}else t(a)}),u.apply(this,arguments)}return o(),()=>{s=!0}},[l,a,n]),[e,r]}function Fi(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function vn(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Fi(Object(t),!0).forEach(function(r){Su(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Fi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Su(n,e,t){return(e=Eu(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Eu(n){var e=wu(n,"string");return typeof e=="symbol"?e:e+""}function wu(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Fl(n,e){return function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:e,r=arguments.length>1?arguments[1]:void 0;switch(r==null?void 0:r.type){case n:{var i=r.payload;return i==null?null:t!=null?vn(vn({},t),i):vn({},i)}default:return t}}}function Ot(n,e){return function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:e,r=arguments.length>1?arguments[1]:void 0;switch(r==null?void 0:r.type){case n:return r.payload;default:return t}}}const Tu=Ot(ro,null),Pu=Ot(no,null),Du=Ot(io,null),Ou=Ot(ao,null),Fu=Ot(lo,null),Nu=Ot(so,null),Mu=jn({commandHistoryStorage:Ou,fileStorage:Fu,workspaceStorage:Nu}),Ru=Fl(oo,null),Iu=Fl(uo,null),ku=Ot(ho,null),Lu=Ot(co,null);var Au={activeTool:Pu,api:Tu,plugins:Du,storage:Mu,user:Ru,workspace:Iu,defaultWorkspaceSettings:ku,serverConfigValues:Lu},Ni=ee.module("redux-logger"),xu=n=>e=>t=>{Ni.debug("dispatching",t);var r=e(t);return Ni.debug("next state",n.getState()),r},ju=ee.module("redux-crashReporter"),_u=n=>e=>t=>{try{return e(t)}catch(r){throw ju.error("Error executing",t," with state ",n.getState(),":",r),r}};const Vu=[xu,_u,Us];var pn;Object.entries(Au).map(n=>{var[e,t]=n;return _n.register(e,t)});var $u=(pn=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__)!==null&&pn!==void 0?pn:qs,Nl=Ws(jn(_n.reducers),$u(zs(...Vu)));_n.setListener(n=>{Nl.replaceReducer(jn(n))});class Hu extends Gt{format(e){switch(e){case 1:case!0:return"true";case 0:case!1:return"false";default:return""}}}class Gu extends Gt{format(e){return String.fromCharCode(e)}}class Bu extends Gt{format(e){return"".concat(e)}}class Uu extends Gt{format(e){return e}}function Mi(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Ri(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Mi(Object(t),!0).forEach(function(r){qn(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Mi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function qn(n,e,t){return(e=Wu(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Wu(n){var e=zu(n,"string");return typeof e=="symbol"?e:e+""}function zu(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var qu=/\s*(\d{4})([-./](\d{1,2}|[a-z]+))?([-./](\d{1,2}))?([tT\s](\d{2})([:](\d{2}))?([:](\d{2}))?([.](\d{1,9}))?)?(.*)/;class le{static makeDateWrapper(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:1,l=arguments.length>5&&arguments[5]!==void 0?arguments[5]:0,s=arguments.length>6&&arguments[6]!==void 0?arguments[6]:0,o=arguments.length>7&&arguments[7]!==void 0?arguments[7]:0,u=arguments.length>8&&arguments[8]!==void 0?arguments[8]:0;if(!t)throw new Error("No timezone provided");var d="".concat(r).padStart(4,"0"),h="".concat(i+1).padStart(2,"0"),c="".concat(a).padStart(2,"0"),v="".concat(l).padStart(2,"0"),g="".concat(s).padStart(2,"0"),m="".concat(o).padStart(2,"0"),f="".concat(u).padStart(9,"0"),b="".concat(d,"-").concat(h,"-").concat(c," ").concat(v,":").concat(g,":").concat(m,".").concat(f);return e.i18n.DateTimeFormat.parse(le.FULL_DATE_FORMAT,b,e.i18n.TimeZone.getTimeZone(t))}static getNextNanos(e){var t=parseInt(e,10),r="0".repeat(9-e.length),i="".concat(t+1).concat(r);return parseInt(i,10)}static getNextDate(e,t,r,i){var{year:a,month:l,date:s,hours:o,minutes:u,seconds:d,nanos:h}=r;if(t.nanos!=null){if(t.nanos.length===9)return null;h=le.getNextNanos(t.nanos),h>999999999&&(d+=1,h=0)}else t.seconds!=null?d+=1:t.minutes!=null?u+=1:t.hours!=null?o+=1:t.date!=null?s+=1:t.month!=null?l+=1:a+=1;var c=new Date(a,l,s,o,u,d);return le.makeDateWrapper(e,i,c.getFullYear(),c.getMonth(),c.getDate(),c.getHours(),c.getMinutes(),c.getSeconds(),h)}static parseMonth(e){var t=parseInt(e,10);if(!Number.isNaN(t))return t>=1&&t<=12?t-1:NaN;var r=e.trim().toLowerCase();if(r.length>=3){for(var i=0;i<le.months.length;i+=1)if(le.months[i].startsWith(r))return i}return NaN}static parseDateValues(e,t,r,i,a,l,s){var o=parseInt(e,10),u=t!=null?this.parseMonth(t):0,d=r!=null?parseInt(r,10):1,h=i!=null?parseInt(i,10):0,c=a!=null?parseInt(a,10):0,v=l!=null?parseInt(l,10):0,g=s!=null?parseInt(s.padEnd(9,"0"),10):0;return Number.isNaN(o)||Number.isNaN(u)||Number.isNaN(d)||Number.isNaN(h)||Number.isNaN(c)||Number.isNaN(v)||Number.isNaN(g)?null:{year:o,month:u,date:d,hours:h,minutes:c,seconds:v,nanos:g}}static parseDateTimeString(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,r=qu.exec(e);if(r==null)throw new Error("Unexpected date string: ".concat(e));var[,i,,a,,l,,s,,o,,u,,d,h]=r;if(!t&&h!=null&&h.length>0)throw new Error("Unexpected characters after date string '".concat(e,"': ").concat(h));var c={year:i,month:a,date:l,hours:s,minutes:o,seconds:u,nanos:d};return t?Ri(Ri({},c),{},{overflow:h}):c}static parseDateRange(e,t,r){var i=t.trim().toLowerCase();if(i.length===0)throw new Error("Cannot parse date range from empty string");if(i==="null")return[null,null];if(i==="today"){var a=new Date(Date.now()),l=le.makeDateWrapper(e,r,a.getFullYear(),a.getMonth(),a.getDate()),s=new Date(a.getFullYear(),a.getMonth(),a.getDate()+1),o=le.makeDateWrapper(e,r,s.getFullYear(),s.getMonth(),s.getDate());return[l,o]}if(i==="yesterday"){var u=new Date(Date.now()),d=new Date(u.getFullYear(),u.getMonth(),u.getDate()-1),h=le.makeDateWrapper(e,r,d.getFullYear(),d.getMonth(),d.getDate()),c=le.makeDateWrapper(e,r,u.getFullYear(),u.getMonth(),u.getDate());return[h,c]}if(i==="now"){var v=new Date(Date.now()),g=e.DateWrapper.ofJsDate(v);return[g,null]}var m=le.parseDateTimeString(i);if(m.year==null&&m.month==null&&m.date==null)throw new Error("Unable to extract year, month, or day ".concat(i));var f=le.parseDateValues(m.year,m.month,m.date,m.hours,m.minutes,m.seconds,m.nanos);if(f==null)throw new Error("Unable to extract date values from ".concat(m));var b=le.makeDateWrapper(e,r,f.year,f.month,f.date,f.hours,f.minutes,f.seconds,f.nanos),y=le.getNextDate(e,m,f,r);return[b,y]}static getJsDate(e){return typeof e=="number"?new Date(e):e.asDate()}static trimDateTimeStringTimeZone(e){var{overflow:t=""}=le.parseDateTimeString(e,!0);if(t==="")return e;if(!/^\s[A-Za-z]+/.test(t))throw new Error("Unexpected timezone format in overflow: '".concat(e,"'"));return e.slice(0,-t.length)}}qn(le,"FULL_DATE_FORMAT","yyyy-MM-dd HH:mm:ss.SSSSSSSSS");qn(le,"months",["january","february","march","april","may","june","july","august","september","october","november","december"]);function Kp(n,e){return n===e?{operator:"notEq",value:""}:{operator:"eq",value:n}}function Xp(n,e,t,r){return function(a){var l=t.trim();if(l==="")return null;var s=Ml(e,o=>n.makeSearchTextFilter(o,l,r),"or");return s(a)}}function Ml(n,e){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"or";return function(i){var a=i==null?void 0:i.findColumns(typeof n=="string"?[n]:n);if(a==null||a.length===0)return null;var l=a.map(e);return l.reduce((s,o)=>s[t](o))}}function Ku(n,e,t,r){return Ml(e,i=>i.filter()[r](n.makeFilterValue(i.type,t)),"or")}function Yp(n,e,t,r,i){return function(l){var s=l==null?void 0:l.findColumn(e),o=t==="all"||r&&t.size===0;return s==null||o?null:n.makeSelectValueFilter(s,[...t.keys()],i)}}function Zp(n){return function(t){return t.filter().isNull().not().and(t.filter().notEq(n.makeFilterValue(t.type,"")))}}function Qp(n,e){return function(r){var i=r.filter(),a=n.makeFilterValue(r.type,""),l=i.eq(a);return e?i.isNull().or(l):l.or(i.notEq(a))}}function Kn(n,e,t){return(e=Xu(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Xu(n){var e=Yu(n,"string");return typeof e=="symbol"?e:e+""}function Yu(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class vr{}Kn(vr,"not","not");Kn(vr,"and","and");Kn(vr,"or","or");function Jp(n){if(!(n==="not"||n==="and"||n==="or"))throw new Error("operator is not a valid FilterOperatorValue")}function ce(n,e,t){return(e=Zu(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Zu(n){var e=Qu(n,"string");return typeof e=="symbol"?e:e+""}function Qu(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class P{}ce(P,"eq","eq");ce(P,"eqIgnoreCase","eqIgnoreCase");ce(P,"notEq","notEq");ce(P,"notEqIgnoreCase","notEqIgnoreCase");ce(P,"greaterThan","greaterThan");ce(P,"greaterThanOrEqualTo","greaterThanOrEqualTo");ce(P,"lessThan","lessThan");ce(P,"lessThanOrEqualTo","lessThanOrEqualTo");ce(P,"in","in");ce(P,"inIgnoreCase","inIgnoreCase");ce(P,"notIn","notIn");ce(P,"notInIgnoreCase","notInIgnoreCase");ce(P,"isTrue","isTrue");ce(P,"isFalse","isFalse");ce(P,"isNull","isNull");ce(P,"invoke","invoke");ce(P,"contains","contains");ce(P,"notContains","notContains");ce(P,"containsIgnoreCase","containsIgnoreCase");ce(P,"startsWith","startsWith");ce(P,"endsWith","endsWith");ce(P,"containsAny","containsAny");function Ju(n){switch(n){case P.eq:return"is exactly";case P.eqIgnoreCase:return"is exactly (ignore case)";case P.notEq:return"is not exactly";case P.notEqIgnoreCase:return"is not exactly (ignore case)";case P.contains:return"contains";case P.notContains:return"does not contain";case P.startsWith:return"starts with";case P.endsWith:return"ends with";default:throw new Error("Unrecognized text filter type ".concat(n))}}function ed(n){switch(n){case P.eq:return"is equal to";case P.notEq:return"is not equal to";case P.greaterThan:return"greater than";case P.greaterThanOrEqualTo:return"greater than or equal to";case P.lessThan:return"less than";case P.lessThanOrEqualTo:return"less than or equal to";default:throw new Error("Unrecognized number filter type ".concat(n))}}function td(n){switch(n){case P.eq:return"date is";case P.notEq:return"date is not";case P.notEqIgnoreCase:case P.greaterThan:return"date is after";case P.greaterThanOrEqualTo:return"date is after or equal";case P.lessThan:return"date is before";case P.lessThanOrEqualTo:return"date is before or equal";default:throw new Error("Unrecognized date filter type ".concat(n))}}function em(n){switch(n){case P.isTrue:return"Is True";case P.isFalse:return"Is False";case P.isNull:return"Is Null";default:throw new Error("Unrecognized boolean filter type ".concat(n))}}var rd="DH_ITEM_KEY",Ii=ee.module("ViewportDataUtils");function Rl(n){return"".concat(rd,"_").concat(n)}function tm(n,e){var{bulkUpdate:t}=n;return function(i){var{columns:a,offset:l,rows:s}=i.detail;Ii.debug("table updated",i.detail);var o=new Map;s.forEach((u,d)=>{var h=e(u,a),c=Rl(l+d);o.set(c,{key:c,item:h})}),Ii.debug("update keys",o),t(o)}}function rm(n,e){return e.reduce((t,r)=>(t[r.name]=n.get(r),t),{})}function*nm(n,e){for(var t=n;t<=e;++t)yield{key:Rl(t)}}function nd(n){return n==null||id(n)?0:n.size}function id(n){return n!=null&&typeof n=="object"&&"isClosed"in n&&typeof n.isClosed=="boolean"?n.isClosed:!1}function im(n,e,t,r){var i=n+e-1,[a,l]=[0,r-1],s=Ge(n-t,a,l),o=Ge(i+t,a,l);return[s,o]}var On;function ki(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function Ct(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){ki(a,r,i,l,s,"next",o)}function s(o){ki(a,r,i,l,s,"throw",o)}l(void 0)})}}function Lt(n,e,t){return(e=ad(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ad(n){var e=ld(n,"string");return typeof e=="symbol"?e:e+""}function ld(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var at=ee.module("TableUtils");function am(n){return n===S.sortDirection.ascending||n===S.sortDirection.descending||n===S.sortDirection.reverse||n===S.sortDirection.none}class S{static copyTableAndApplyFilters(e){var t=arguments;return Ct(function*(){if(e==null)return null;for(var r=yield e.copy(),i=t.length,a=new Array(i>1?i-1:0),l=1;l<i;l++)a[l-1]=t[l];return r.applyFilter(hn(...a.map(s=>s(r)))),r})()}static getSortIndex(e,t){for(var r=0;r<e.length;r+=1){var i,a=e[r];if(((i=a.column)===null||i===void 0?void 0:i.name)===t)return r}return null}static getSortForColumn(e,t){var r=S.getSortIndex(e,t);return r!=null?e[r]:null}static getFilterText(e){return e?e.toString():null}static getFilterTypes(e){return S.isBooleanType(e)?[P.isTrue,P.isFalse,P.isNull]:S.isCharType(e)||S.isNumberType(e)||S.isDateType(e)?[P.eq,P.notEq,P.greaterThan,P.greaterThanOrEqualTo,P.lessThan,P.lessThanOrEqualTo]:S.isTextType(e)?[P.eq,P.eqIgnoreCase,P.notEq,P.notEqIgnoreCase,P.contains,P.notContains,P.startsWith,P.endsWith]:[]}static getNextSort(e,t,r){var i=e[r];if(i==null)return null;var a=S.getSortForColumn(t,i.name);return a===null?this.makeColumnSort(e,r,S.sortDirection.ascending,!1):a.direction===S.sortDirection.ascending?this.makeColumnSort(e,r,S.sortDirection.descending,!1):null}static makeColumnSort(e,t,r,i){var a=e[t];return a==null||r===S.sortDirection.none?null:{column:{name:a.name,type:a.type},isAbs:i,direction:r}}static toggleSortForColumn(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(t[r]==null)return[];var a=S.getNextSort(t,e,r);return S.setSortForColumn(e,t[r].name,a,i)}static sortColumn(e,t,r,i,a,l){if(r<0||r>=t.length)return[];var s=S.makeColumnSort(t,r,i,a);return S.setSortForColumn(e,t[r].name,s,l)}static setSortForColumn(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,a=S.getSortIndex(e,t),l=[];return i&&(l=l.concat(e.filter(s=>{var{direction:o}=s;return o!==S.sortDirection.reverse})),a!==null&&l.splice(a,1)),r!==null&&l.push(r),l}static getNormalizedType(e){switch(e){case"boolean":case"java.lang.Boolean":case S.dataType.BOOLEAN:return S.dataType.BOOLEAN;case"char":case"java.lang.Character":case S.dataType.CHAR:return S.dataType.CHAR;case"java.lang.String":case S.dataType.STRING:return S.dataType.STRING;case"io.deephaven.db.tables.utils.DBDateTime":case"io.deephaven.time.DateTime":case"com.illumon.iris.db.tables.utils.DBDateTime":case"java.time.Instant":case"java.time.ZonedDateTime":case S.dataType.DATETIME:return S.dataType.DATETIME;case"double":case"java.lang.Double":case"float":case"java.lang.Float":case"java.math.BigDecimal":case S.dataType.DECIMAL:return S.dataType.DECIMAL;case"int":case"java.lang.Integer":case"long":case"java.lang.Long":case"short":case"java.lang.Short":case"byte":case"java.lang.Byte":case"java.math.BigInteger":case S.dataType.INT:return S.dataType.INT;default:return S.dataType.UNKNOWN}}static isLongType(e){switch(e){case"long":case"java.lang.Long":return!0;default:return!1}}static isDateType(e){switch(e){case"io.deephaven.db.tables.utils.DBDateTime":case"io.deephaven.time.DateTime":case"java.time.Instant":case"java.time.ZonedDateTime":case"com.illumon.iris.db.tables.utils.DBDateTime":return!0;default:return!1}}static isNumberType(e){return S.isIntegerType(e)||S.isDecimalType(e)}static isIntegerType(e){switch(e){case"int":case"java.lang.Integer":case"java.math.BigInteger":case"long":case"java.lang.Long":case"short":case"java.lang.Short":case"byte":case"java.lang.Byte":return!0;default:return!1}}static isDecimalType(e){switch(e){case"double":case"java.lang.Double":case"java.math.BigDecimal":case"float":case"java.lang.Float":return!0;default:return!1}}static isBigDecimalType(e){switch(e){case"java.math.BigDecimal":return!0;default:return!1}}static isBigIntegerType(e){switch(e){case"java.math.BigInteger":return!0;default:return!1}}static isBooleanType(e){switch(e){case"boolean":case"java.lang.Boolean":return!0;default:return!1}}static isCharType(e){switch(e){case"char":case"java.lang.Character":return!0;default:return!1}}static isStringType(e){switch(e){case"java.lang.String":return!0;default:return!1}}static isTextType(e){return this.isStringType(e)||this.isCharType(e)}static getBaseType(e){return e.split("[]")[0]}static isCompatibleType(e,t){return S.getNormalizedType(e)===S.getNormalizedType(t)}static quoteValue(e){return e.length>=2&&(e.charAt(0)==='"'&&e.charAt(e.length-1)==='"'||e.charAt(0)==="'"&&e.charAt(e.length-1)==="'")?e:'"'.concat(e,'"')}static isRangeOperation(e){switch(e){case"<":case"<=":case"=<":case">":case">=":case"=>":return!0;default:return!1}}static makeRangeFilterWithOperation(e,t,r){switch(t){case"=":return e.eq(r);case"<":return e.lessThan(r);case"<=":case"=<":return e.lessThanOrEqualTo(r);case">":return e.greaterThan(r);case">=":case"=>":return e.greaterThanOrEqualTo(r);case"!=":case"!":return e.notEq(r);default:return null}}static makeCancelableTablePromise(e){return Le.makeCancelable(e,t=>{t.close()})}static makeCancelableTableEventPromise(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;return S.makeCancelableEventPromise(e,t,{timeout:r,matcher:i??void 0})}static makeCancelableEventPromise(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},{timeout:i=0,matcher:a}=r,l,s,o=!0,u=new Promise((d,h)=>{s=setTimeout(()=>{l(),o=!1,h(new Bo('Event "'.concat(t,'" timed out.')))},i),l=e.addEventListener(t,c=>{if(a!=null&&!a(c)){at.debug2("Event triggered, but matcher returned false.");return}at.debug2("Event triggered, resolving."),l(),clearTimeout(s),o=!1,d(c)})});return u.cancel=()=>{if(o){at.debug2("Pending promise cleanup."),l(),clearTimeout(s),o=!1;return}at.debug2("Ignoring non-pending promise cancel.")},u}static removeCommas(e){return e.replace(/[\s|,]/g,"")}static makeBooleanValue(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;if(e===""&&t)return null;switch(e==null?void 0:e.toLowerCase()){case"null":return null;case"0":case"f":case"fa":case"fal":case"fals":case"false":case"n":case"no":return!1;case"1":case"t":case"tr":case"tru":case"true":case"y":case"ye":case"yes":return!0;default:throw new Error("Invalid boolean '".concat(e,"'"))}}static makeNumberValue(e){if(e==="null"||e==="")return null;var t=e.toLowerCase().trim();if(t==="∞"||t==="infinity"||t==="inf")return Number.POSITIVE_INFINITY;if(t==="-∞"||t==="-infinity"||t==="-inf")return Number.NEGATIVE_INFINITY;var r=S.removeCommas(t);if(S.NUMBER_REGEX.test(r))return parseFloat(r);throw new Error("Invalid number '".concat(e,"'"))}static getFilterOperatorString(e){switch(e){case P.eq:return"=";case P.notEq:return"!=";case P.greaterThan:return">";case P.greaterThanOrEqualTo:return">=";case P.lessThan:return"<";case P.lessThanOrEqualTo:return"<=";case P.contains:return"~";case P.notContains:return"!~";default:throw new Error("Unexpected filter type ".concat(e))}}static isPartitionedTable(e){return e!=null&&e.getMergedTable!==void 0&&e.getKeyTable!==void 0&&e.getKeys!==void 0}static isTreeTable(e){return e!=null&&e.expand!==void 0&&e.collapse!==void 0}static sortColumns(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return[...e].sort((r,i)=>{var a=r.name.toUpperCase(),l=i.name.toUpperCase();return Ze.sort(a,l,t)})}constructor(e){Lt(this,"dh",void 0),this.dh=e,Un(this)}createDistinctSortedColumnTable(e,t,r){var i=arguments,a=this;return Ct(function*(){if(e==null)return null;for(var l=e,s=i.length,o=new Array(s>3?s-3:0),u=3;u<s;u++)o[u-3]=i[u];o.length>0&&(l=yield e.copy(),yield l.applyFilter(hn(...o.map(v=>v(l)))));var d=l.findColumn(t),h=yield l.selectDistinct([d]);l!==e&&l.close();var c=h.findColumn(t).sort()[r]();return a.applySort(h,[c])})()}doesColumnValueExist(e,t,r,i){var a=this;return Ct(function*(){if(e==null)return null;var l=Ku(a,t,r,i?"eq":"eqIgnoreCase"),s=yield e.copy();yield a.applyFilter(s,hn(l(s)));var o=nd(s);return s.close(),o>0})()}getValueType(e){if(e==null)return this.dh.ValueType.STRING;var t=S.getNormalizedType(e);switch(t){case S.dataType.BOOLEAN:return this.dh.ValueType.BOOLEAN;case S.dataType.CHAR:case S.dataType.STRING:return this.dh.ValueType.STRING;case S.dataType.DATETIME:return this.dh.ValueType.DATETIME;case S.dataType.DECIMAL:case S.dataType.INT:return S.isBigDecimalType(e)||S.isBigIntegerType(e)?this.dh.ValueType.STRING:this.dh.ValueType.NUMBER;default:return this.dh.ValueType.STRING}}makeQuickFilter(e,t,r){for(var i=t.split("||"),a=null,l=0;l<i.length;l+=1){for(var s=i[l],o=s.split("&&"),u=null,d=0;d<o.length;d+=1){var h=o[d].trim();if(h.length>0){var c=this.makeQuickFilterFromComponent(e,h,r);if(c)u?u=u.and(c):u=c;else throw new Error("Unable to parse quick filter from text ".concat(t))}}a&&u?a=a.or(u):a=u}return a}makeQuickFilterFromComponent(e,t,r){var{type:i}=e;return S.isNumberType(i)?this.makeQuickNumberFilter(e,t):S.isBooleanType(i)?this.makeQuickBooleanFilter(e,t):r!=null&&S.isDateType(i)?this.makeQuickDateFilter(e,t,r):S.isCharType(i)?this.makeQuickCharFilter(e,t):this.makeQuickTextFilter(e,t)}makeQuickNumberFilter(e,t){var r=e.filter(),{dh:i}=this,a=null,l=/\s*(>=|<=|=>|=<|>|<|!=|=|!)?(\s*-\s*)?(\s*\d*(?:,\d{3})*(?:\.\d*)?\s*)?(null|nan|infinity|inf|\u221E)?(.*)/i,s=l.exec(t),o=null,u=null,d=null,h=null,c=null;if(s!==null&&s.length>3&&([,o,u,d,h,c]=s),c!=null&&c.trim().length>0)return null;if(o==null&&(o="="),h!=null){if(!(o==="="||o==="!"||o==="!="))return null;switch(h=h.trim().toLowerCase(),h){case"null":a=r.isNull();break;case"nan":a=i.FilterCondition.invoke("isNaN",r);break;case"infinity":case"inf":case"∞":u!=null?a=i.FilterCondition.invoke("isInf",r).and(r.lessThan(i.FilterValue.ofNumber(0))):a=i.FilterCondition.invoke("isInf",r).and(r.greaterThan(i.FilterValue.ofNumber(0)));break}return a!==null&&(o==="!"||o==="!=")&&(a=a.not()),a}if(d==null)return null;if(d=S.removeCommas(d),S.isLongType(e.type))try{d=i.FilterValue.ofNumber(i.LongWrapper.ofString("".concat(u!=null?"-":"").concat(d)))}catch(v){return at.warn("Unable to create long filter",v),null}else{if(d=parseFloat(d),d==null||Number.isNaN(d))return null;d=i.FilterValue.ofNumber(u!=null?0-d:d)}return a=e.filter(),S.makeRangeFilterWithOperation(a,o,d)}static escapeQuickTextFilter(e){if(e==null)return null;var t=/^(!~|!=|~|=|!)?(.*)/,r=/^\\*null$/,i=t.exec(e),a=null,l=null;return i!==null&&i.length>2&&([,a,l]=i),a!=null?"\\".concat(a).concat(l??""):l!=null&&r.test(l.toLowerCase())||l!=null&&l.startsWith("*")?"\\".concat(l):l!=null&&l.endsWith("*")&&!l.endsWith("\\*")?(l=l.substring(0,l.length-1),"".concat(l,"\\*")):"".concat(a??"").concat(l??"")}static unescapeQuickTextFilter(e){var t=/^(\\!~|\\!=|\\~|\\=|\\!)?(.*)/,r=/^\\*null$/,i=t.exec(e),a=null,l=null;return i!==null&&i.length>2&&([,a,l]=i),a!=null&&(a=a.replace("\\","")),l!=null&&r.test(l.toLowerCase())&&(l=l.replace("\\","")),a==null&&l!=null&&l.startsWith("\\*")&&(l=l.substring(1)),a==null&&l!=null&&l.endsWith("\\*")?(l=l.substring(0,l.length-2),"".concat(l,"*")):"".concat(a??"").concat(l??"")}makeQuickTextFilter(e,t){var{dh:r}=this,i="".concat(t).trim(),a=/^(!~|!=|~|=|!)?(.*)/,l=a.exec(i),s=null,o=null;if(l!==null&&l.length>2&&([,s,o]=l,o!=null&&(o=o.trim())),o==null||o.length===0&&!(s==="="||s==="!="))return null;s==null&&(s="=");var u=e.filter();if(o.toLowerCase()==="null")switch(s){case"=":return u.isNull();case"!=":case"!":return u.isNull().not()}var d=null,h=null;switch(o.startsWith("*")?(d="*",o=o.substring(1)):o.endsWith("*")&&!o.endsWith("\\*")&&(h="*",o=o.substring(0,o.length-1)),o=S.unescapeQuickTextFilter(o),s){case"~":return u.isNull().not().and(u.invoke("matches",r.FilterValue.ofString("(?s)(?i).*\\Q".concat(o,"\\E.*"))));case"!~":return u.isNull().or(u.invoke("matches",r.FilterValue.ofString("(?s)(?i).*\\Q".concat(o,"\\E.*"))).not());case"!=":return d==="*"?u.isNull().or(u.invoke("matches",r.FilterValue.ofString("(?s)(?i).*\\Q".concat(o,"\\E$"))).not()):h==="*"?u.isNull().or(u.invoke("matches",r.FilterValue.ofString("(?s)(?i)^\\Q".concat(o,"\\E.*"))).not()):u.notEqIgnoreCase(r.FilterValue.ofString(o.toLowerCase()));case"=":return d==="*"?u.isNull().not().and(u.invoke("matches",r.FilterValue.ofString("(?s)(?i).*\\Q".concat(o,"\\E$")))):h==="*"?u.isNull().not().and(u.invoke("matches",r.FilterValue.ofString("(?s)(?i)^\\Q".concat(o,"\\E.*")))):u.eqIgnoreCase(r.FilterValue.ofString(o.toLowerCase()))}return null}makeQuickBooleanFilter(e,t){var r=/^(!=|=|!)?(.*)/,i=r.exec("".concat(t).trim());if(i===null)return null;var[,a,l]=i,s=a==="!"||a==="!=",o=l.trim().toLowerCase(),u=e.filter();try{var d=S.makeBooleanValue(o);return d!=null&&d?u=u.isTrue():d===null?u=u.isNull():u=u.isFalse(),s?u.not():u}catch{return null}}makeQuickDateFilter(e,t,r){var i=t.trim(),a=/\s*(>=|<=|=>|=<|>|<|!=|!|=)?(.*)/,l=a.exec(i);if(l==null||l.length<=2)throw new Error("Unable to parse date filter: ".concat(t));var s=null,o=null;[,s,o]=l;var u=P.eq;switch(s){case"<":u=P.lessThan;break;case"<=":case"=<":u=P.lessThanOrEqualTo;break;case">":u=P.greaterThan;break;case">=":case"=>":u=P.greaterThanOrEqualTo;break;case"!=":case"!":u=P.notEq;break;case"=":case"==":default:u=P.eq;break}return this.makeQuickDateFilterWithOperation(e,o,u,r)}makeQuickDateFilterWithOperation(e,t,r,i){var{dh:a}=this,[l,s]=le.parseDateRange(a,t,i),o=l!=null?a.FilterValue.ofNumber(l):null,u=s!=null?a.FilterValue.ofNumber(s):null,d=e.filter();if(o==null)return r===P.notEq?d.isNull().not():d.isNull();switch(r){case P.eq:{if(u!=null){var h=d.greaterThanOrEqualTo(o),c=d.lessThan(u);return h.and(c)}return d.eq(o)}case P.lessThan:return d.lessThan(o);case P.lessThanOrEqualTo:return u!=null?d.lessThan(u):d.lessThanOrEqualTo(o);case P.greaterThan:return u!=null?d.greaterThanOrEqualTo(u):d.greaterThan(o);case P.greaterThanOrEqualTo:return d.greaterThanOrEqualTo(o);case P.notEq:{if(u!=null){var v=d.lessThan(o),g=d.greaterThanOrEqualTo(u);return v.or(g)}return d.notEq(o)}default:throw new Error("Invalid operator: ".concat(r))}}makeQuickCharFilter(e,t){var{dh:r}=this,i="".concat(t).trim(),a=/^(>=|<=|=>|=<|>|<|!=|=|!)?(null|"."|'.'|.)?(.*)/,l=a.exec(i),s=null,o=null,u=null;if(l!==null&&l.length>3&&([,s,o,u]=l),u!=null&&u.trim().length>0||o==null||o.length===0)return null;s==null&&(s="=");var d=e.filter();if(o.toLowerCase()==="null")switch(s){case"=":return d.isNull();case"!=":case"!":return d.isNull().not();default:return null}var h=r.FilterValue.ofString(S.isRangeOperation(s)?S.quoteValue(o):o);return S.makeRangeFilterWithOperation(d,s,h)}makeAdvancedFilter(e,t,r){for(var{filterItems:i,filterOperators:a,invertSelection:l,selectedValues:s}=t,o=null,u=0;u<i.length;u+=1){var d=i[u],{selectedType:h,value:c}=d;if(h!=null&&h.length>0&&c!=null&&c.length>0)try{var v=this.makeAdvancedValueFilter(e,h,c,r);if(v!=null){if(u===0)o=v;else if(o!==null&&u-1<a.length){var g=a[u-1];if(g===vr.and)o=o.and(v);else if(g===vr.or)o=o.or(v);else{at.error("Unexpected filter operator",g,v),o=null;break}}}else at.debug2("Empty filter ignored for",h,c)}catch(f){at.error("Unable to create filter",f),o=null;break}}var m=this.makeSelectValueFilter(e,s,l);return m!=null&&(o!=null?o=o.and(m):o=m),o}makeAdvancedValueFilter(e,t,r,i){var{dh:a}=this;if(S.isDateType(e.type))return this.makeQuickDateFilterWithOperation(e,r,t,i);if(S.isNumberType(e.type)||S.isCharType(e.type))return this.makeQuickFilter(e,"".concat(S.getFilterOperatorString(t)).concat(r));var l=this.makeFilterValue(e.type,r),s=e.filter();switch(t){case P.eq:return s.eq(l);case P.eqIgnoreCase:return s.eqIgnoreCase(l);case P.notEq:return s.notEq(l);case P.notEqIgnoreCase:return s.notEqIgnoreCase(l);case P.greaterThan:return s.greaterThan(l);case P.greaterThanOrEqualTo:return s.greaterThanOrEqualTo(l);case P.lessThan:return s.lessThan(l);case P.lessThanOrEqualTo:return s.lessThanOrEqualTo(l);case P.isTrue:return s.isTrue();case P.isFalse:return s.isFalse();case P.isNull:return s.isNull();case P.contains:return s.isNull().not().and(s.invoke("matches",a.FilterValue.ofString("(?s)(?i).*\\Q".concat(r,"\\E.*"))));case P.notContains:return s.isNull().or(s.invoke("matches",a.FilterValue.ofString("(?s)(?i).*\\Q".concat(r,"\\E.*"))).not());case P.startsWith:return s.isNull().not().and(s.invoke("matches",a.FilterValue.ofString("(?s)(?i)^\\Q".concat(r,"\\E.*"))));case P.endsWith:return s.isNull().not().and(s.invoke("matches",a.FilterValue.ofString("(?s)(?i).*\\Q".concat(r,"\\E$"))));case P.in:case P.inIgnoreCase:case P.notIn:case P.notInIgnoreCase:case P.invoke:default:throw new Error("Unexpected filter operation: ".concat(t))}}makeSearchTextFilter(e,t,r){var i=this.getValueType(e.type);try{if(i===this.dh.ValueType.BOOLEAN){var a=this.makeQuickBooleanFilter(e,t);return R(a),a}if(i===this.dh.ValueType.DATETIME)return this.makeQuickDateFilterWithOperation(e,le.trimDateTimeStringTimeZone(t),"eq",r);if(i===this.dh.ValueType.NUMBER){var l=this.makeQuickNumberFilter(e,t);return R(l),l}return S.isBigDecimalType(e.type)||S.isBigIntegerType(e.type)?e.filter().eq(this.makeFilterValue(e.type,t)):e.filter().containsIgnoreCase(this.makeFilterValue(e.type,t))}catch{return this.makeNeverFilter(e)}}applyNeverFilter(e,t){var r=arguments,i=this;return Ct(function*(){var a=r.length>2&&r[2]!==void 0?r[2]:S.APPLY_TABLE_CHANGE_TIMEOUT_MS;if(e==null)return null;var l=e.findColumn(t),s=[i.makeNeverFilter(l)];return yield i.applyFilter(e,s,a),e})()}applyCustomColumns(e,t){var r=arguments,i=this;return Ct(function*(){var a=r.length>2&&r[2]!==void 0?r[2]:S.APPLY_TABLE_CHANGE_TIMEOUT_MS,{dh:l}=i;return S.executeAndWaitForEvent(s=>s==null?void 0:s.applyCustomColumns(t),e,l.Table.EVENT_CUSTOMCOLUMNSCHANGED,a)})()}applyFilter(e,t){var r=arguments,i=this;return Ct(function*(){var a=r.length>2&&r[2]!==void 0?r[2]:S.APPLY_TABLE_CHANGE_TIMEOUT_MS,{dh:l}=i;return S.executeAndWaitForEvent(s=>s==null?void 0:s.applyFilter(t),e,l.Table.EVENT_FILTERCHANGED,a)})()}applySort(e,t){var r=arguments,i=this;return Ct(function*(){var a=r.length>2&&r[2]!==void 0?r[2]:S.APPLY_TABLE_CHANGE_TIMEOUT_MS,{dh:l}=i;return S.executeAndWaitForEvent(s=>s==null?void 0:s.applySort(t),e,l.Table.EVENT_SORTCHANGED,a)})()}makeNeverFilter(e){var{dh:t}=this,r=null;S.isTextType(e.type)?r=t.FilterValue.ofString("a"):S.isBooleanType(e.type)?r=t.FilterValue.ofBoolean(!0):S.isDateType(e.type)?r=t.FilterValue.ofNumber(t.DateWrapper.ofJsDate(new Date)):r=t.FilterValue.ofNumber(0);var i=e.filter().eq(r),a=e.filter().notEq(r);return i.and(a)}makeFilterValue(e,t){var{dh:r}=this,i=S.getBaseType(e);return S.isTextType(i)?r.FilterValue.ofString(t):S.isLongType(i)?r.FilterValue.ofNumber(r.LongWrapper.ofString(S.removeCommas(t))):r.FilterValue.ofNumber(S.removeCommas(t))}makeFilterRawValue(e,t){var{dh:r}=this;return S.isCharType(e)?r.FilterValue.ofString(typeof t=="number"?String.fromCharCode(t):t):S.isTextType(e)?r.FilterValue.ofString(t):S.isBooleanType(e)?r.FilterValue.ofBoolean(t):r.FilterValue.ofNumber(t)}makeNullableEqFilter(e,t){return t==null?e.filter().isNull():e.filter().eq(this.makeFilterRawValue(e.type,t))}makeValue(e,t,r){var{dh:i}=this;if(t==="null")return null;if(S.isTextType(e))return t;if(S.isLongType(e))return i.LongWrapper.ofString(S.removeCommas(t));if(S.isBooleanType(e))return S.makeBooleanValue(t,!0);if(S.isDateType(e)){var[a]=le.parseDateRange(i,t,r);return a}return S.isNumberType(e)?S.makeNumberValue(t):(at.error("Unexpected column type",e),null)}makeSelectValueFilter(e,t,r){var{dh:i}=this;if(t.length===0)return r?null:this.makeNeverFilter(e);for(var a=[],l=!1,s=0;s<t.length;s+=1){var o=t[s];o==null?l=!0:S.isTextType(e.type)?a.push(i.FilterValue.ofString(typeof o=="number"?String.fromCharCode(o):o)):S.isBooleanType(e.type)?a.push(i.FilterValue.ofBoolean(!!o)):a.push(i.FilterValue.ofNumber(o))}return l?a.length>0?r?e.filter().isNull().not().and(e.filter().notIn(a)):e.filter().isNull().or(e.filter().in(a)):r?e.filter().isNull().not():e.filter().isNull():r?e.filter().notIn(a):e.filter().in(a)}}On=S;Lt(S,"dataType",{BOOLEAN:"boolean",CHAR:"char",DATETIME:"datetime",DECIMAL:"decimal",INT:"int",STRING:"string",UNKNOWN:"unknown"});Lt(S,"sortDirection",{ascending:"ASC",descending:"DESC",reverse:"REVERSE",none:null});Lt(S,"APPLY_TABLE_CHANGE_TIMEOUT_MS",3e4);Lt(S,"REVERSE_TYPE",Object.freeze({NONE:"none",PRE_SORT:"pre-sort",POST_SORT:"post-sort"}));Lt(S,"NUMBER_REGEX",/^-?\d+(\.\d+)?$/);Lt(S,"executeAndWaitForEvent",function(){var n=Ct(function*(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:On.APPLY_TABLE_CHANGE_TIMEOUT_MS;if(t==null)return null;var a=On.makeCancelableTableEventPromise(t,r,i);return e(t),yield a,t});return function(e,t,r){return n.apply(this,arguments)}}());function xt(n,e,t){return(e=sd(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function sd(n){var e=od(n,"string");return typeof e=="symbol"?e:e+""}function od(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Ke{static makeColumnFormatMap(e){return e==null?new Map:e.reduce((t,r)=>{var i=S.getNormalizedType(r.columnType);if(i===null)return t;t.has(i)||t.set(i,new Map);var a=t.get(i);return a==null||a.set(r.columnName,r.format),t},new Map)}static makeColumnFormattingRule(e,t,r){return{columnType:e,columnName:t,format:r}}constructor(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Q,r=arguments.length>2?arguments[2]:void 0,i=arguments.length>3?arguments[3]:void 0,a=arguments.length>4?arguments[4]:void 0,l=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!1,s=arguments.length>6&&arguments[6]!==void 0?arguments[6]:!0,o=arguments.length>7&&arguments[7]!==void 0?arguments[7]:!0;xt(this,"defaultColumnFormatter",void 0),xt(this,"typeFormatterMap",void 0),xt(this,"columnFormatMap",void 0),xt(this,"truncateNumbersWithPound",void 0),xt(this,"showEmptyStrings",void 0),xt(this,"showNullStrings",void 0),this.defaultColumnFormatter=new Bu,this.typeFormatterMap=new Map([[S.dataType.BOOLEAN,new Hu],[S.dataType.CHAR,new Gu],[S.dataType.DATETIME,new _r(e,r)],[S.dataType.DECIMAL,new vo(e,i)],[S.dataType.INT,new po(e,a)],[S.dataType.STRING,new Uu]]),this.columnFormatMap=Ke.makeColumnFormatMap(t),this.truncateNumbersWithPound=l,this.showEmptyStrings=s,this.showNullStrings=o}getColumnFormatMapForType(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,r=S.getNormalizedType(e);if(r!==null)return t&&!this.columnFormatMap.has(r)&&this.columnFormatMap.set(r,new Map),this.columnFormatMap.get(r)}getColumnFormat(e,t){var r,i=this.getColumnFormatMapForType(e);return(r=i==null?void 0:i.get(t))!==null&&r!==void 0?r:null}getColumnTypeFormatter(e){var t=S.getNormalizedType(e),r=this.defaultColumnFormatter;if(t){var i;r=(i=this.typeFormatterMap.get(t))!==null&&i!==void 0?i:r}return r}getFormattedString(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"",i=arguments.length>3?arguments[3]:void 0;if(e==null)return"";var a=this.getColumnTypeFormatter(t),l=i||this.getColumnFormat(t,r);return a.format(e,l??void 0)}get timeZone(){var e=this.typeFormatterMap.get(S.dataType.DATETIME);return Uo(e,_r),e.dhTimeZone.id}}function ud(n,e){var t=Il(e),r=kl(e),{defaultDecimalFormatOptions:i,defaultIntegerFormatOptions:a,truncateNumbersWithPound:l,showEmptyStrings:s,showNullStrings:o}=e??{};return new Ke(n,t,r,i,a,l,s,o)}function Il(n){if(n&&n.formatter){var{formatter:e}=n;return e}}function kl(n){return{timeZone:n==null?void 0:n.timeZone,defaultDateTimeFormatString:n==null?void 0:n.defaultDateTimeFormat,showTimeZone:n==null?void 0:n.showTimeZone,showTSeparator:n==null?void 0:n.showTSeparator}}function dd(n,e,t){var r=n.getColumnFormat(t,e);return r!=null&&(r.type===Gt.TYPE_CONTEXT_PRESET||r.type===Gt.TYPE_CONTEXT_CUSTOM)}const Fn={createFormatterFromSettings:ud,getColumnFormats:Il,getDateTimeFormatterOptions:kl,isCustomColumnFormatDefined:dd};function hd(n){return typeof n.id=="string"&&n.layout instanceof mo&&n.panelManager instanceof fo&&typeof n.registerComponent=="function"}function Yt(n){if(!hd(n))throw new Error("Expected dashboard plugin props, but instead received ".concat(n))}function er(n,e,t,r){var i,a=(i=e.COMPONENT)!==null&&i!==void 0?i:e.displayName;if(a==null)throw new Error("ComponentType must have a `COMPONENT` or `displayName` attribute.");Re.useEffect(()=>{var l=n(a,e,t,r);return()=>{l()}},[e,r,t,a,n])}function Qr(){var n=E.useContext(go);if(n==null)throw new Error("LayoutManager not available, did you add a LayoutManagerContext.Provider to the tree?");return n}function cd(n,e,t,r,i){if(e>t)throw new Error("Persisted state ".concat(i," is a newer version than the current version. Persisted version: ").concat(e,". Current version: ").concat(t));for(var a=n,l=e;l<t;){var s=r.filter(u=>u.from===l);if(s.length===0)throw new Error("No migration found for persisted state ".concat(i," from version ").concat(l));if(s.length>1)throw new Error("Multiple migrations found for persisted state ".concat(i," from version ").concat(l));var o=s[0];try{a=o.migrate(a),l+=1}catch(u){throw new Error("Error migrating persisted state ".concat(i," from version ").concat(o.from,": ").concat(u),{cause:u})}}return a}function Ll(n,e){var t=Vn(),r=E.useMemo(()=>Ue(),[]),i=E.useContext(bo),{type:a,version:l,migrations:s=[],deleteOnUnmount:o=!0}=e,[u,d]=E.useState(()=>{var c=t!=null?i==null?void 0:i.getState(t,a):void 0;return c==null?typeof n=="function"?n():n:c.version!==l?cd(c.state,c.version,l,s,a):c.state}),h=E.useMemo(()=>({type:a,version:l,state:u}),[u,a,l]);return E.useDebugValue(h),E.useEffect(function(){t!=null&&(i==null||i.addState(r,t,h))},[i,r,t,h]),E.useEffect(function(){return()=>{o&&t!=null&&(i==null||i.removeState(r,t,a))}},[i,o,r,t,a]),E.useEffect(()=>()=>{t!=null&&(i==null||i.deregisterHook(r,t,a))},[i,r,t,a]),[u,d]}function Li(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 vd(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Li(Object(t),!0).forEach(function(r){pd(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Li(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function pd(n,e,t){return(e=md(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function md(n){var e=fd(n,"string");return typeof e=="symbol"?e:e+""}function fd(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var gd=E.lazy(()=>zr(()=>import("./Chart-BsXISs8I.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12]),import.meta.url));function Al(n){return p.jsx(E.Suspense,{fallback:p.jsx(vt,{"data-testid":"lazy-chart-loading"}),children:p.jsx(gd,vd({},n))})}function Ai(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 Er(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ai(Object(t),!0).forEach(function(r){Pe(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ai(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Pe(n,e,t){return(e=bd(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function bd(n){var e=Cd(n,"string");return typeof e=="symbol"?e:e+""}function Cd(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var tr=ee.module("ChartUtils"),xi="io.deephaven.time.DateTime",yd=36e5,Sd=1e6;function Ed(n){return n.asDate!==void 0}function wd(n){return n.asNumber!==void 0}function ji(n){return n.dhTimeZone!==void 0}function Td(n){return n!=null&&n.range!=null&&(n.autorange===!1||n.autorange===void 0)}function Pd(){try{var n=document.createElement("canvas"),e=n.getContext("webgl")||n.getContext("experimental-webgl");return e!=null&&e instanceof WebGLRenderingContext}catch{return!1}}var Dd=Pd();class I{static getPlotlyErrorBars(e,t,r){var i=r.map((l,s)=>l-e[s]),a=t.map((l,s)=>e[s]-l);return{type:"data",symmetric:!1,array:i,arrayminus:a}}static convertNumberPrefix(e){return e.replace(/\u00A4\u00A4/g,"USD").replace(/\u00A4/g,"$")}static getPlotlyNumberFormat(e,t,r){if(r==null||r==="")return null;var i=r.split(";"),a=i[0].match(/^([^#,0.]*)([#,]*)([0,]*)(\.?)(0*)(#*)(E?0*)(%?)(.*)/);R(a);var[,l,s,o,,u,d,h,c,v]=a,g=o.replace(",","").length,m=s.indexOf(",")>=0||o.indexOf(",")>=0,f=m?",":"",b=h!=null&&h!==""?"e":"f",y=c!==""?c:b,C=u.length+d.length,T="",w="0".concat(g).concat(f,".").concat(C).concat(T).concat(y),O=I.convertNumberPrefix(l),D=I.convertNumberPrefix(v);return{tickformat:w,tickprefix:O,ticksuffix:D,automargin:!0}}static addTickSpacing(e,t,r){var{gapBetweenMajorTicks:i}=t;if(i!=null&&i>0){var a=e||{},l=i;return r&&(l=i/Sd),t.log&&(l=Math.log(l)),a.tickmode="linear",a.dtick=l,a}return e}static getSourceForAxis(e,t){for(var r=0;r<e.series.length;r+=1)for(var i=e.series[r],a=0;a<i.sources.length;a+=1){var l=i.sources[a];if(l.axis===t)return l}return null}static getSeriesVisibility(e,t){return t!=null&&t.hiddenSeries!=null&&t.hiddenSeries.includes(e)?"legendonly":!0}static getHiddenLabels(e){return e!=null&&e.hiddenSeries?[...e.hiddenSeries]:[]}static makeSeriesData(e,t,r,i){var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:I.ORIENTATION.VERTICAL;return{type:e,mode:t,name:r,orientation:a,showlegend:i??void 0}}static getMarkerSymbol(e){switch(e){case"SQUARE":return"square";case"CIRCLE":return"circle";case"DIAMOND":return"diamond";case"UP_TRIANGLE":return"triangle-up";case"DOWN_TRIANGLE":return"triangle-down";case"RIGHT_TRIANGLE":return"triangle-right";case"LEFT_TRIANGLE":return"triangle-left";case"ELLIPSE":case"HORIZONTAL_RECTANGLE":case"VERTICAL_RECTANGLE":default:throw new Error("Unrecognized shape ".concat(e))}}static getAllAxes(e){return e.charts.reduce((t,r)=>[...t,...r.axes],[])}static getAxisTypeMap(e){var t=I.getAllAxes(e);return I.groupArray(t,"type")}static getChartForSeries(e,t){for(var{charts:r}=e,i=0;i<r.length;i+=1)for(var a=r[i],l=0;l<a.series.length;l+=1)if(t===a.series[l])return a;return null}static getLayoutRanges(e){for(var t={},r=Object.keys(e).filter(s=>s.indexOf("axis")>=0),i=0;i<r.length;i+=1){var a=r[i],l=e[a];Td(l)&&(t[a]=[...l.range])}return t}static getAxisLayoutProperty(e,t){var r=t>0?"".concat(t+1):"";return"".concat(e??"","axis").concat(r)}static periodToDecimal(e){var t=e.split(":");return Number(t[0])+Number(t[1])/60}static decimalToPeriod(e){var t=Math.floor(e),r=Math.round((e-t)*60);return"".concat(t.toString().padStart(2,"0"),":").concat(r.toString().padStart(2,"0"))}static groupArray(e,t){return e.reduce((r,i)=>{var a,l=i[t],s=(a=r.get(l))!==null&&a!==void 0?a:[];return s.push(i),r.set(l,s),r},new Map)}static normalizeColorway(e){if(e!=null){if(Array.isArray(e))return e;if(typeof e=="string")return e.split(" ");tr.warn("Unexpected colorway format: ".concat(e))}}static titleFromSettings(e){var{series:t,xAxis:r,title:i="".concat((t??[]).join(", ")," by ").concat(r)}=e;return i}static getTimeZoneDiff(e,t){return t?(e.standardOffset-t.standardOffset)/60:0}static createClosedRangesForPartialHoliday(e,t){var r=t.map(h=>[I.periodToDecimal(h.open),I.periodToDecimal(h.close)]);r.sort((h,c)=>h[0]-c[0]),r.length===0&&r.push([0,24]);var i=e.map(h=>[I.periodToDecimal(h.open),I.periodToDecimal(h.close)]);i.sort((h,c)=>h[0]-c[0]);for(var a=[],l=0;l<r.length;l+=1){for(var s=r[l],o=s[0],u=0;u<i.length;u+=1){var d=i[u];d[1]>o&&d[0]<s[1]&&(d[0]>o&&a.push([o,d[0]]),o=d[1])}o<s[1]&&a.push([o,s[1]])}return a}constructor(e){Pe(this,"dh",void 0),Pe(this,"daysOfWeek",void 0),this.dh=e,this.daysOfWeek=Object.freeze(e.calendar.DayOfWeek.values()),Un(this)}getAxisFormats(e,t){for(var r=new Map,i={tickformat:null,ticksuffix:null},a=I.getAllAxes(e),l=I.groupArray(a,"type"),{charts:s}=e,o=0;o<s.length;o+=1)for(var u=s[o],d=0;d<u.series.length;d+=1)for(var h=u.series[d],{sources:c}=h,v=c.filter(N=>N.axis),g=0;g<v.length;g+=1){var m=v[g],{axis:f}=m,{type:b}=f,y=l.get(b);R(y);var C=y.indexOf(f),T=this.getAxisPropertyName(b);if(T!=null){var w=I.getAxisLayoutProperty(T,C);if(r.has(w))tr.debug("".concat(w," already added."));else{tr.debug("Adding ".concat(w," to axisFormats."));var O=this.getPlotlyAxisFormat(m,t);if(O===null)r.set(w,i);else{r.set(w,O);var{businessCalendar:D}=f;if(D!=null&&(O.rangebreaks=this.createRangeBreaksFromBusinessCalendar(D,t)),r.size===u.axes.length)return r}}}}return r}getPlotlyChartType(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,{dh:i}=this;switch(e){case i.plot.SeriesPlotStyle.SCATTER:case i.plot.SeriesPlotStyle.LINE:return!t&&Dd&&r?"scattergl":"scatter";case i.plot.SeriesPlotStyle.BAR:case i.plot.SeriesPlotStyle.STACKED_BAR:return"bar";case i.plot.SeriesPlotStyle.PIE:return"pie";case i.plot.SeriesPlotStyle.TREEMAP:return"treemap";case i.plot.SeriesPlotStyle.HISTOGRAM:return"histogram";case i.plot.SeriesPlotStyle.OHLC:return"ohlc";default:return}}getPlotlyChartMode(e,t,r){var{dh:i}=this,a=new Set;switch(e){case i.plot.SeriesPlotStyle.SCATTER:(t??!1)&&a.add(I.MODE_LINES),(r??!0)&&a.add(I.MODE_MARKERS);break;case i.plot.SeriesPlotStyle.LINE:(t??!0)&&a.add(I.MODE_LINES),(r??!1)&&a.add(I.MODE_MARKERS);break}return a.size>0?[...a].join("+"):void 0}getPlotlyProperty(e,t){var{dh:r}=this;switch(e){case r.plot.SeriesPlotStyle.PIE:switch(t){case r.plot.SourceType.X:return"labels";case r.plot.SourceType.Y:return"values"}break;case r.plot.SeriesPlotStyle.OHLC:switch(t){case r.plot.SourceType.TIME:return"x"}break;case r.plot.SeriesPlotStyle.TREEMAP:switch(t){case r.plot.SourceType.X:return"ids";case r.plot.SourceType.Y:return"values";case r.plot.SourceType.LABEL:return"labels";case r.plot.SourceType.PARENT:return"parents";case r.plot.SourceType.COLOR:return"marker.colors"}break}switch(t){case r.plot.SourceType.X:return"x";case r.plot.SourceType.Y:return"y";case r.plot.SourceType.Z:return"z";case r.plot.SourceType.X_LOW:return"xLow";case r.plot.SourceType.X_HIGH:return"xHigh";case r.plot.SourceType.Y_LOW:return"yLow";case r.plot.SourceType.Y_HIGH:return"yHigh";case r.plot.SourceType.TIME:return"time";case r.plot.SourceType.OPEN:return"open";case r.plot.SourceType.HIGH:return"high";case r.plot.SourceType.LOW:return"low";case r.plot.SourceType.CLOSE:return"close";case r.plot.SourceType.SHAPE:return"shape";case r.plot.SourceType.SIZE:return"size";case r.plot.SourceType.LABEL:return"label";case r.plot.SourceType.COLOR:return"color";case r.plot.SourceType.PARENT:return"parent";case r.plot.SourceType.HOVER_TEXT:return"hovertext";case r.plot.SourceType.TEXT:return"text";default:throw new Error("Unrecognized source type: ".concat(t))}}getPlotlySeriesOrientation(e){var t,{dh:r}=this,{sources:i}=e;return i.length===2&&((t=i[0])===null||t===void 0||(t=t.axis)===null||t===void 0?void 0:t.type)===r.plot.AxisType.Y?I.ORIENTATION.HORIZONTAL:I.ORIENTATION.VERTICAL}makeSeriesDataFromSeries(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,{name:l,isLinesVisible:s,isShapesVisible:o,plotStyle:u,lineColor:d,shapeColor:h,sources:c,shape:v,shapeSize:g}=e,m=c.some(T=>{var w;return(w=T.axis)===null||w===void 0?void 0:w.businessCalendar}),f=this.getChartType(u,m,a),b=this.getPlotlyChartMode(u,s??void 0,o??void 0),y=this.getPlotlySeriesOrientation(e),C=I.makeSeriesData(f,b,l,i,y);return this.addSourcesToSeriesData(C,u,c,t),this.addStylingToSeriesData(C,u,d,h,v,g,r),C}addSourcesToSeriesData(e,t,r,i){for(var a=e,l=0;l<r.length;l+=1){var s=r[l],{axis:o,type:u}=s,d=this.getPlotlyProperty(t,u);En.set(a,d,[]);var h=o!=null?this.getAxisPropertyName(o.type):null;if(h!=null){var c=i.get(o.type);if(c){var v=c.indexOf(o),g=v>0?"".concat(v+1):"";a["".concat(h,"axis")]="".concat(h).concat(g)}}}}addStylingToSeriesData(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:null,l=arguments.length>5&&arguments[5]!==void 0?arguments[5]:null,s=arguments.length>6&&arguments[6]!==void 0?arguments[6]:null,{dh:o}=this,u=e;if(u.marker={line:{}},u.line={width:1},t===o.plot.SeriesPlotStyle.AREA?u.fill="tozeroy":t===o.plot.SeriesPlotStyle.STACKED_AREA?u.stackgroup="stack":t===o.plot.SeriesPlotStyle.STEP?u.line.shape="hv":t===o.plot.SeriesPlotStyle.HISTOGRAM?u.width=[]:t===o.plot.SeriesPlotStyle.PIE?u.textinfo="label+percent":t===o.plot.SeriesPlotStyle.TREEMAP&&(u.hoverinfo="text",u.textinfo="label+text",u.tiling={packing:"squarify",pad:0},u.textposition="middle center"),r!=null&&(t===o.plot.SeriesPlotStyle.BAR?u.marker.color=r:u.line.color=r),i!=null&&(u.marker.color=i),a!=null&&a.length>0)try{u.marker.symbol=I.getMarkerSymbol(a)}catch(d){tr.warn("Unable to handle shape",a,":",d)}l!=null&&(u.marker.size=l*I.DEFAULT_MARKER_SIZE),s!=null&&t!==o.plot.SeriesPlotStyle.PIE&&(u.visible=s)}getChartType(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,{dh:i}=this;switch(e){case i.plot.SeriesPlotStyle.HISTOGRAM:return"bar";default:return this.getPlotlyChartType(e,t,r)}}getAxisPropertyName(e){var{dh:t}=this;switch(e){case t.plot.AxisType.X:return"x";case t.plot.AxisType.Y:return"y";default:return null}}getAxisSide(e){var{dh:t}=this;switch(e){case t.plot.AxisPosition.BOTTOM:return"bottom";case t.plot.AxisPosition.TOP:return"top";case t.plot.AxisPosition.LEFT:return"left";case t.plot.AxisPosition.RIGHT:return"right";default:return}}updateFigureAxes(e,t,r){for(var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,l=e,s=I.getAllAxes(t),o=0;o<t.charts.length;o+=1){var u=t.charts[o],d=r==null?void 0:r(u),h=this.getChartBounds(t,u,i,a);this.updateLayoutAxes(l,u.axes,s,i,a,h,d)}this.removeStaleAxes(l,s)}getChartBounds(e,t,r,i){var a,{dh:l}=this,{cols:s,rows:o}=e,{column:u,colspan:d,row:h,rowspan:c}=t,v=u+d,g=h+c,m=1/s,f=1/o,b=I.AXIS_SIZE_PX/r,y=I.AXIS_SIZE_PX/i,C={bottom:(o-g)*f+(g<o?y/2:0),top:(o-h)*f-(h>0?y/2:0),left:u*m+(u>0?b/2:0),right:v*m-(v<s?b/2:0)},T=I.groupArray(t.axes,"position"),w=(a=T.get(l.plot.AxisPosition.RIGHT))!==null&&a!==void 0?a:[];return w.length>0&&(r>0?C.right-=(C.right-C.left)*Math.max(0,Math.min(I.LEGEND_WIDTH_PX/r,I.MAX_LEGEND_SIZE)):C.right-=(C.right-C.left)*I.DEFAULT_AXIS_SIZE),C}getPlotlyDateFormat(e,t,r){var{dh:i}=this,a=r==null?void 0:r.replace("%","%%").replace(/S{9}/g,"%9f").replace(/S{8}/g,"%8f").replace(/S{7}/g,"%7f").replace(/S{6}/g,"%6f").replace(/S{5}/g,"%5f").replace(/S{4}/g,"%4f").replace(/S{3}/g,"%3f").replace(/S{2}/g,"%2f").replace(/S{1}/g,"%1f").replace(/y{4}/g,"%Y").replace(/y{2}/g,"%y").replace(/M{4}/g,"%B").replace(/M{3}/g,"%b").replace(/M{2}/g,"%m").replace(/M{1}/g,"%-m").replace(/E{4,}/g,"%A").replace(/E{1,}/g,"%a").replace(/d{2}/g,"%d").replace(/([^%]|^)d{1}/g,"$1%-d").replace(/H{2}/g,"%H").replace(/h{2}/g,"%I").replace(/h{1}/g,"%-I").replace(/m{2}/g,"%M").replace(/s{2}/g,"%S").replace("'T'","T").replace(" z",""),l,s=e==null?void 0:e.getColumnTypeFormatter(t);return s!=null&&ji(s)&&s.dhTimeZone!=null&&s.showTimeZone&&(l=i.i18n.DateTimeFormat.format(" z",new Date,s.dhTimeZone)),{tickformat:a,ticksuffix:l,automargin:!0}}getPlotlyAxisFormat(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null,{dh:r}=this,{axis:i,columnType:a}=e,{formatPattern:l}=i,s=null;return S.isDateType(a)?(s=this.getPlotlyDateFormat(t,a,l),s=I.addTickSpacing(s,i,!0)):S.isNumberType(a)&&(s=I.getPlotlyNumberFormat(t,a,l),s=I.addTickSpacing(s,i,!1)),i.formatType===r.plot.AxisFormatType.CATEGORY&&(s?s.type="category":s={type:"category",tickformat:void 0,ticksuffix:void 0}),s}updateLayoutAxes(e,t,r){for(var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,l=arguments.length>5&&arguments[5]!==void 0?arguments[5]:{left:0,top:0,right:1,bottom:1},s=arguments.length>6?arguments[6]:void 0,{dh:o}=this,u=i>0?Math.max(I.MIN_AXIS_SIZE,Math.min(I.AXIS_SIZE_PX/a,I.MAX_AXIS_SIZE)):I.DEFAULT_AXIS_SIZE,d=a>0?Math.max(I.MIN_AXIS_SIZE,Math.min(I.AXIS_SIZE_PX/i,I.MAX_AXIS_SIZE)):I.DEFAULT_AXIS_SIZE,h=e,c=I.groupArray(t,"position"),v=I.groupArray(t,"type"),g=[...v.keys()],m=I.groupArray(r,"type"),f=0;f<g.length;f+=1){var b=g[f],y=this.getAxisPropertyName(b);if(y!=null){var C=v.get(b),T=m.get(b),w=b===o.plot.AxisType.Y,O=w?a:i;R(C),R(T);for(var D=0;D<C.length;D+=1){var N=C[D],M=T.indexOf(N),F=I.getAxisLayoutProperty(y,M);h[F]==null&&(h[F]={});var k=h[F];if(k!=null){this.updateLayoutAxis(k,N,D,c,u,d,l);var{range:L,autorange:V}=k;if(s!=null&&L!==void 0&&(V===void 0||V===!1)){var X=s(N),[Y,Z]=X(L);tr.debug("Setting downsample range",O,Y,Z),N.range(O,Y,Z)}else N.range(O)}}}}}removeStaleAxes(e,t){for(var r=e,i=I.groupArray(t,"type"),a=[...i.keys()],l=0;l<a.length;l+=1){var s=a[l],o=i.get(s);R(o);var u=o.length,d=this.getAxisPropertyName(s);if(d!=null)for(var h=I.getAxisLayoutProperty(d,u);r[h]!=null;)delete r[h],u+=1,h=I.getAxisLayoutProperty(d,u)}}updateLayoutAxis(e,t,r,i,a,l,s){var o,{dh:u}=this,d=t.type===u.plot.AxisType.Y,h=d?l:a,c=e,v=(o=t.label)!==null&&o!==void 0?o:"";if(c.title!==void 0&&typeof c.title!="string"?c.title.text=v:c.title={text:v},t.log&&(c.type="log"),c.side=this.getAxisSide(t.position),r>0){var g,m;c.overlaying=(g=this.getAxisPropertyName(t.type))!==null&&g!==void 0?g:void 0;var f=(m=i.get(t.position))!==null&&m!==void 0?m:[],b=f.indexOf(t);b>0&&(c.anchor="free",t.position===u.plot.AxisPosition.RIGHT?c.position=s.right+(b-f.length+1)*h:t.position===u.plot.AxisPosition.TOP?c.position=s.top+(b-f.length+1)*h:t.position===u.plot.AxisPosition.BOTTOM?c.position=s.bottom+(f.length-b+1)*h:t.position===u.plot.AxisPosition.LEFT&&(c.position=s.left+(f.length-b+1)*h))}else if(t.type===u.plot.AxisType.X){var y=i.get(u.plot.AxisPosition.LEFT)||[],C=i.get(u.plot.AxisPosition.RIGHT)||[],T=Math.max(s.left,s.left+(y.length-1)*l),w=Math.min(s.right-(C.length-1)*l,s.right);c.domain=[T,w]}else if(t.type===u.plot.AxisType.Y){var O=i.get(u.plot.AxisPosition.BOTTOM)||[],D=i.get(u.plot.AxisPosition.TOP)||[],N=Math.max(s.bottom,s.bottom+(O.length-1)*a),M=Math.min(s.top-(D.length-1)*a,s.top);c.domain=[N,M]}var{minRange:F,maxRange:k,log:L}=t;(!Number.isNaN(F)||!Number.isNaN(k))&&(c.autorangeoptions={},Number.isNaN(F)||(c.autorangeoptions.minallowed=L?Math.log10(F):F),Number.isNaN(k)||(c.autorangeoptions.maxallowed=L?Math.log10(k):k))}createBoundsFromPeriods(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;if(e.length===0)return[];for(var r=e.map(o=>[(I.periodToDecimal(o.open)+t)%24,(I.periodToDecimal(o.close)+t)%24]).sort((o,u)=>o[0]-u[0]),i=[],a=0;a<r.length;a+=1){var l=r[a],s=r[(a+1)%r.length];i.push([l[1],s[0]])}return i}createBreaksFromPeriods(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=this.createBoundsFromPeriods(e,t);return r.map(i=>({pattern:"hour",bounds:i}))}createBoundsFromDays(e){var t=this.daysOfWeek.length;if(e.length===t)return[];for(var r=e.map(o=>this.daysOfWeek.indexOf(o)),i=new Set(r),a=new Set,l=0;l<t;l+=1)!i.has(l)&&i.has((l-1+t)%t)&&a.add(l);var s=[];return a.forEach(o=>{for(var u=0;u<t;u+=1){var d=(o+u)%t;if(i.has(d)){s.push([o,d]);return}}throw new Error("Unable to find open day for closed day ".concat(o,", businessDays: ").concat(e))}),s}createBreaksFromDays(e){var t=this.createBoundsFromDays(e);return t.map(r=>({pattern:"day of week",bounds:r}))}createRangeBreaksFromBusinessCalendar(e,t){var r=[],{businessPeriods:i,businessDays:a,holidays:l,timeZone:s}=e,o=t==null?void 0:t.getColumnTypeFormatter(xi),u;ji(o)&&(u=o.dhTimeZone);var d=I.getTimeZoneDiff(s,u);return l.length>0&&r.push(...this.createRangeBreakValuesFromHolidays(l,s,u,e)),r.push(...this.createBreaksFromPeriods(i,d)),r.push(...this.createBreaksFromDays(a)),r}createRangeBreakValuesFromHolidays(e,t,r,i){var a=[],l=[];return e.forEach(s=>{s.businessPeriods.length>0?l.push(...this.createPartialHoliday(s,t,r,i)):a.push(this.createFullHoliday(s,t,r))}),[{values:a},...l]}createFullHoliday(e,t,r){return this.adjustDateForTimeZone("".concat(e.date.toString()," 00:00:00.000000"),t,r)}createPartialHoliday(e,t,r,i){var a;if(e.businessPeriods.length===0)return[];var l=e.date.toString();if(i){var s=new Date(l).getDay(),o=i.businessDays.includes(this.daysOfWeek[s]);if(!o)return[]}for(var u=I.createClosedRangesForPartialHoliday(e.businessPeriods,(a=i==null?void 0:i.businessPeriods)!==null&&a!==void 0?a:[]),d=[],h=0;h<u.length;h+=1){var[c,v]=u[h];if(c!==v){var g=[this.adjustDateForTimeZone("".concat(l," ").concat(I.decimalToPeriod(c),":00.000000"),t,r)],m=yd*(v-c);d.push({values:g,dvalue:m})}}return d}adjustDateForTimeZone(e,t,r){return r&&r.standardOffset!==t.standardOffset?this.unwrapValue(this.wrapValue(e,xi,t),r):e}makeFigureSettings(e,t){var{dh:r}=this,{series:i,xAxis:a,type:l}=e,s=I.titleFromSettings(e),o={formatType:"".concat(r.plot.AxisFormatType.NUMBER),type:"".concat(r.plot.AxisType.X),position:"".concat(r.plot.AxisPosition.BOTTOM)},u={formatType:"".concat(r.plot.AxisFormatType.NUMBER),type:"".concat(r.plot.AxisType.Y),position:"".concat(r.plot.AxisPosition.LEFT)};return{charts:[{chartType:"".concat(r.plot.ChartType.XY),axes:[o,u],series:(i??[]).map(d=>({plotStyle:"".concat(l),name:d,dataSources:[{type:"".concat(r.plot.SourceType.X),columnName:a??"",axis:o,table:t},{type:"".concat(r.plot.SourceType.Y),columnName:d,axis:u,table:t}]}))}],title:s}}unwrapValue(e,t){var{dh:r}=this;if(e!=null){if(Ed(e))return r.i18n.DateTimeFormat.format(I.DATE_FORMAT,e,t);if(wd(e))return e.asNumber()}return e}wrapValue(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null,{dh:i}=this;if(S.isDateType(t)&&typeof e=="string"){var a=e,l=I.DATE_FORMAT.substr(0,e.length),s=i.i18n.DateTimeFormat.parse(l,a);if(!r)return s;var o="".concat(l," Z"),u=i.i18n.DateTimeFormat.format("Z",s,r),d=i.i18n.DateTimeFormat.parse(o,"".concat(a," ").concat(u)),h=i.i18n.DateTimeFormat.format("Z",d,r);return i.i18n.DateTimeFormat.parse(o,"".concat(a," ").concat(h))}return e}makeLayoutAxis(e,t){var{dh:r}=this,i={automargin:!0,gridcolor:t.gridcolor,linecolor:t.linecolor,rangeslider:{visible:!1},showline:!0,ticks:"outside",ticklen:5,tickcolor:t.paper_bgcolor,tickfont:{color:t.zerolinecolor},title:{font:{color:t.title_color}},legend:{font:{color:t.legend_color}}};return e===r.plot.AxisType.X?Object.assign(i,{showgrid:!0}):e===r.plot.AxisType.Y&&Object.assign(i,{zerolinecolor:t.zerolinecolor,zerolinewidth:2}),i}makeDefaultTemplate(e){var{error_band_line_color:t,ohlc_increasing:r,ohlc_decreasing:i,title_color:a,indicator_increasing:l,indicator_decreasing:s,indicator_gauge:o}=e;return{data:{bar:[{marker:{line:{color:"transparent"}}}],scatter:[{error_x:{color:t},error_y:{color:t}}],ohlc:[{increasing:{line:{color:r}},decreasing:{line:{color:i}}}],pie:[{outsidetextfont:{color:a}}],treemap:[{outsidetextfont:{color:a}}],indicator:[{title:{font:{color:a}},delta:{decreasing:{color:s},increasing:{color:l}},gauge:{bar:{color:o}}}]},layout:this.makeDefaultLayout(e)}}makeDefaultLayout(e){var{dh:t}=this,{paper_bgcolor:r,plot_bgcolor:i,title_color:a,coastline_color:l,land_color:s,ocean_color:o,lake_color:u,river_color:d,map_style:h}=e,c={paper_bgcolor:r,plot_bgcolor:i,autosize:!0,colorway:I.normalizeColorway(e==null?void 0:e.colorway),font:{family:"'Fira Sans', sans-serif",color:a},title:{font:{color:a},xanchor:"center",xref:"paper",yanchor:"top",pad:Er({},I.DEFAULT_TITLE_PADDING),y:1},legend:{font:{color:a}},margin:Er({},I.DEFAULT_MARGIN),xaxis:this.makeLayoutAxis(t.plot.AxisType.X,e),yaxis:this.makeLayoutAxis(t.plot.AxisType.Y,e),polar:{angularaxis:this.makeLayoutAxis(t.plot.AxisType.SHAPE,e),radialaxis:this.makeLayoutAxis(t.plot.AxisType.SHAPE,e),bgcolor:e.plot_bgcolor},scene:{xaxis:this.makeLayoutAxis(t.plot.AxisType.X,e),yaxis:this.makeLayoutAxis(t.plot.AxisType.Y,e),zaxis:this.makeLayoutAxis(null,e)},geo:{showcoastlines:!0,showframe:!1,showland:!0,showocean:!0,showlakes:!0,showrivers:!0,bgcolor:r,coastlinecolor:l,landcolor:s,oceancolor:o,lakecolor:u,rivercolor:d},map:{style:h}};return c.datarevision=0,c}hydrateSettings(e){var{dh:t}=this;return Er(Er({},e),{},{type:e.type!=null?t.plot.SeriesPlotStyle[e.type]:void 0})}}Pe(I,"DEFAULT_AXIS_SIZE",.15);Pe(I,"MIN_AXIS_SIZE",.025);Pe(I,"MAX_AXIS_SIZE",.2);Pe(I,"AXIS_SIZE_PX",75);Pe(I,"LEGEND_WIDTH_PX",50);Pe(I,"MAX_LEGEND_SIZE",.25);Pe(I,"ORIENTATION",Object.freeze({HORIZONTAL:"h",VERTICAL:"v"}));Pe(I,"DATE_FORMAT","yyyy-MM-dd HH:mm:ss.SSSSSS");Pe(I,"DEFAULT_MARGIN",Object.freeze({l:60,r:50,t:30,b:60,pad:0}));Pe(I,"DEFAULT_TITLE_PADDING",Object.freeze({t:8}));Pe(I,"SUBTITLE_LINE_HEIGHT",25);Pe(I,"DEFAULT_MARKER_SIZE",6);Pe(I,"MODE_MARKERS","markers");Pe(I,"MODE_LINES","lines");function fe(n,e,t){return(e=Od(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Od(n){var e=Fd(n,"string");return typeof e=="symbol"?e:e+""}function Fd(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class ne{constructor(e){fe(this,"dh",void 0),fe(this,"listeners",void 0),fe(this,"formatter",void 0),fe(this,"renderOptions",void 0),fe(this,"rect",void 0),fe(this,"isDownsamplingDisabled",void 0),fe(this,"title",void 0),this.dh=e,this.listeners=[],this.isDownsamplingDisabled=!1}getData(){return[]}getDefaultTitle(){return""}getLayout(){return{}}getFilterColumnMap(){return new Map}isFilterRequired(){return!1}setFilter(e){}close(){}setFormatter(e){this.formatter=e}setRenderOptions(e){this.renderOptions=e}setDownsamplingDisabled(e){this.isDownsamplingDisabled=e}setDimensions(e){this.rect=e}setTitle(e){this.title=e}subscribe(e){this.listeners.push(e)}unsubscribe(e){this.listeners=this.listeners.filter(t=>t!==e)}fireEvent(e){for(var t=0;t<this.listeners.length;t+=1)this.listeners[t](e)}fireUpdate(e){this.fireEvent(new CustomEvent(ne.EVENT_UPDATED,{detail:e}))}fireDisconnect(){this.fireEvent(new CustomEvent(ne.EVENT_DISCONNECT))}fireReconnect(){this.fireEvent(new CustomEvent(ne.EVENT_RECONNECT))}fireDownsampleStart(e){this.fireEvent(new CustomEvent(ne.EVENT_DOWNSAMPLESTARTED,{detail:e}))}fireDownsampleFinish(e){this.fireEvent(new CustomEvent(ne.EVENT_DOWNSAMPLEFINISHED,{detail:e}))}fireDownsampleFail(e){this.fireEvent(new CustomEvent(ne.EVENT_DOWNSAMPLEFAILED,{detail:e}))}fireDownsampleNeeded(e){this.fireEvent(new CustomEvent(ne.EVENT_DOWNSAMPLENEEDED,{detail:e}))}fireLoadFinished(){this.fireEvent(new CustomEvent(ne.EVENT_LOADFINISHED))}fireError(e){this.fireEvent(new CustomEvent(ne.EVENT_ERROR,{detail:e}))}fireBlocker(e){this.fireEvent(new CustomEvent(ne.EVENT_BLOCKER,{detail:e}))}fireBlockerClear(){this.fireEvent(new CustomEvent(ne.EVENT_BLOCKER_CLEAR))}fireLayoutUpdated(e){this.fireEvent(new CustomEvent(ne.EVENT_LAYOUT_UPDATED,{detail:e}))}}fe(ne,"EVENT_UPDATED","ChartModel.EVENT_UPDATED");fe(ne,"EVENT_DISCONNECT","ChartModel.EVENT_DISCONNECT");fe(ne,"EVENT_RECONNECT","ChartModel.EVENT_RECONNECT");fe(ne,"EVENT_DOWNSAMPLESTARTED","ChartModel.EVENT_DOWNSAMPLESTARTED");fe(ne,"EVENT_DOWNSAMPLEFINISHED","ChartModel.EVENT_DOWNSAMPLEFINISHED");fe(ne,"EVENT_DOWNSAMPLEFAILED","ChartModel.EVENT_DOWNSAMPLEFAILED");fe(ne,"EVENT_DOWNSAMPLENEEDED","ChartModel.EVENT_DOWNSAMPLENEEDED");fe(ne,"EVENT_LOADFINISHED","ChartModel.EVENT_LOADFINISHED");fe(ne,"EVENT_ERROR","ChartModel.EVENT_ERROR");fe(ne,"EVENT_BLOCKER","ChartModel.EVENT_BLOCKER");fe(ne,"EVENT_BLOCKER_CLEAR","ChartModel.EVENT_BLOCKER_CLEAR");fe(ne,"EVENT_LAYOUT_UPDATED","ChartModel.EVENT_LAYOUT_UPDATED");function _i(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Vi(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?_i(Object(t),!0).forEach(function(r){pe(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):_i(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function pe(n,e,t){return(e=Nd(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Nd(n){var e=Md(n,"string");return typeof e=="symbol"?e:e+""}function Md(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Se=ee.module("FigureChartModel");class pr extends ne{constructor(e,t){var r,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};super(e),r=this,pe(this,"chartUtils",void 0),pe(this,"dh",void 0),pe(this,"figure",void 0),pe(this,"settings",void 0),pe(this,"data",void 0),pe(this,"layout",void 0),pe(this,"seriesDataMap",void 0),pe(this,"pendingSeries",void 0),pe(this,"oneClicks",void 0),pe(this,"filterColumnMap",void 0),pe(this,"lastFilter",void 0),pe(this,"isConnected",void 0),pe(this,"seriesToProcess",void 0),pe(this,"addPendingSeries",En.debounce(()=>{for(var a=I.getAxisTypeMap(this.figure),{pendingSeries:l}=this,s=function(){var d,h=l[o],c=r.figure.charts.find(v=>v.series.includes(h));r.addSeries(h,a,(d=c==null?void 0:c.showLegend)!==null&&d!==void 0?d:null),h.subscribe()},o=0;o<l.length;o+=1)s();this.pendingSeries=[]},pr.ADD_SERIES_DEBOUNCE)),pe(this,"getTimeZone",Be((a,l)=>{if(l!=null){var s=l.getColumnTypeFormatter(a);if(s!=null)return s.dhTimeZone}},{max:100})),pe(this,"getValueTranslator",Be((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.unwrapValue(o,s)},{max:100})),pe(this,"getValueParser",Be((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.wrapValue(o,a,s)},{max:100})),pe(this,"getRangeParser",Be((a,l)=>s=>{var[o,u]=s,d=this.getValueParser(a,l);return o=d(o),u=d(u),[o,u]},{max:100})),pe(this,"getAxisRangeParser",Be((a,l)=>s=>{var o=I.getSourceForAxis(a,s);return o!=null?this.getRangeParser(o.columnType,l):u=>u},{max:100})),this.handleFigureUpdated=this.handleFigureUpdated.bind(this),this.handleFigureDisconnected=this.handleFigureDisconnected.bind(this),this.handleFigureReconnected=this.handleFigureReconnected.bind(this),this.handleFigureSeriesAdded=this.handleFigureSeriesAdded.bind(this),this.handleDownsampleStart=this.handleDownsampleStart.bind(this),this.handleDownsampleFinish=this.handleDownsampleFinish.bind(this),this.handleDownsampleFail=this.handleDownsampleFail.bind(this),this.handleDownsampleNeeded=this.handleDownsampleNeeded.bind(this),this.handleRequestFailed=this.handleRequestFailed.bind(this),this.dh=e,this.chartUtils=new I(e),this.figure=t,this.settings=i,this.data=[],this.layout={grid:{rows:t.rows,columns:t.cols,pattern:"independent"}},this.seriesDataMap=new Map,this.pendingSeries=[],this.oneClicks=[],this.filterColumnMap=new Map,this.lastFilter=new Map,this.isConnected=!0,this.seriesToProcess=new Set,this.setTitle(this.getDefaultTitle()),this.initAllSeries(),this.updateAxisPositions(),this.startListeningFigure()}close(){this.figure.close(),this.addPendingSeries.cancel(),this.stopListeningFigure()}getDefaultTitle(){if(this.figure.title!=null&&this.figure.title.length>0)return this.figure.title;if(this.figure.charts.length===1){var e;return(e=this.figure.charts[0].title)!==null&&e!==void 0?e:""}return""}initAllSeries(){var e=this;this.oneClicks=[],this.filterColumnMap.clear();var{charts:t}=this.figure,r=I.getAxisTypeMap(this.figure),i=[];this.seriesToProcess=new Set;for(var a=function(){for(var c=t[l],v=0;v<c.series.length;v+=1){var g=c.series[v];i.push(g.name),e.addSeries(g,r,c.showLegend)}var{axes:m,title:f}=c;if(f!=null&&f.length>0&&(t.length>1||e.figure.title!=null)){var b=m.find(F=>F.type===e.dh.plot.AxisType.X),y=m.find(F=>F.type===e.dh.plot.AxisType.Y);if(b==null||y==null)Se.warn("Chart title provided, but unknown how to map to the correct axes for this chart type",c);else{var C,T,w,O,D=((C=(T=r.get(b.type))===null||T===void 0?void 0:T.findIndex(F=>F===b))!==null&&C!==void 0?C:0)+1,N=((w=(O=r.get(y.type))===null||O===void 0?void 0:O.findIndex(F=>F===y))!==null&&w!==void 0?w:0)+1,M={align:"center",x:.5,y:1,yshift:17,text:f,showarrow:!1,xref:"x".concat(D," domain"),yref:"y".concat(N," domain")};e.layout.annotations==null?e.layout.annotations=[M]:e.layout.annotations.push(M)}}},l=0;l<t.length;l+=1)a();for(var s=[...this.seriesDataMap.keys()],o=s.filter(h=>i.indexOf(h)<0),u=0;u<o.length;u+=1){var d=o[u];this.seriesDataMap.delete(d)}}addSeries(e,t,r){var i,a,{dh:l}=this,s=this.chartUtils.makeSeriesDataFromSeries(e,t,I.getSeriesVisibility(e.name,this.settings),r,(i=(a=this.renderOptions)===null||a===void 0?void 0:a.webgl)!==null&&i!==void 0?i:!0);if(this.seriesDataMap.set(e.name,s),this.seriesToProcess.add(e.name),this.data=[...this.seriesDataMap.values()],e.plotStyle===l.plot.SeriesPlotStyle.STACKED_BAR?this.layout.barmode="stack":e.plotStyle===l.plot.SeriesPlotStyle.PIE&&(this.layout.hiddenlabels=I.getHiddenLabels(this.settings)),this.layout.showlegend=this.data.length>1||e.plotStyle===l.plot.SeriesPlotStyle.PIE?r??void 0:!1,e.oneClick!=null){for(var{oneClick:o}=e,{columns:u}=o,d=0;d<u.length;d+=1)this.filterColumnMap.set(u[d].name,u[d]);this.oneClicks.push(o)}this.updateLayoutFormats()}subscribe(e){super.subscribe(e),this.listeners.length===1&&(this.initAllSeries(),this.subscribeFigure())}unsubscribe(e){super.unsubscribe(e),this.listeners.length===0&&this.unsubscribeFigure()}subscribeFigure(){if(!this.isConnected){Se.debug("Ignoring subscribe when figure in disconnected state");return}this.figure.subscribe(this.isDownsamplingDisabled?this.dh.plot.DownsampleOptions.DISABLE:this.dh.plot.DownsampleOptions.DEFAULT),this.figure.errors.length>0&&(Se.error("Errors in figure",this.figure.errors),this.fireError(this.figure.errors))}unsubscribeFigure(){this.figure.unsubscribe()}startListeningFigure(){var{dh:e}=this;this.figure.addEventListener(e.plot.Figure.EVENT_UPDATED,this.handleFigureUpdated),this.figure.addEventListener(e.plot.Figure.EVENT_SERIES_ADDED,this.handleFigureSeriesAdded),this.figure.addEventListener(e.plot.Figure.EVENT_DISCONNECT,this.handleFigureDisconnected),this.figure.addEventListener(e.plot.Figure.EVENT_RECONNECT,this.handleFigureReconnected),this.figure.addEventListener(e.plot.Figure.EVENT_DOWNSAMPLESTARTED,this.handleDownsampleStart),this.figure.addEventListener(e.plot.Figure.EVENT_DOWNSAMPLEFINISHED,this.handleDownsampleFinish),this.figure.addEventListener(e.plot.Figure.EVENT_DOWNSAMPLEFAILED,this.handleDownsampleFail),this.figure.addEventListener(e.plot.Figure.EVENT_DOWNSAMPLENEEDED,this.handleDownsampleNeeded),this.figure.addEventListener(e.Client.EVENT_REQUEST_FAILED,this.handleRequestFailed)}stopListeningFigure(){var{dh:e}=this;this.figure.removeEventListener(e.plot.Figure.EVENT_UPDATED,this.handleFigureUpdated),this.figure.removeEventListener(e.plot.Figure.EVENT_SERIES_ADDED,this.handleFigureSeriesAdded),this.figure.removeEventListener(e.plot.Figure.EVENT_DISCONNECT,this.handleFigureDisconnected),this.figure.removeEventListener(e.plot.Figure.EVENT_RECONNECT,this.handleFigureReconnected),this.figure.removeEventListener(e.plot.Figure.EVENT_DOWNSAMPLESTARTED,this.handleDownsampleStart),this.figure.removeEventListener(e.plot.Figure.EVENT_DOWNSAMPLEFINISHED,this.handleDownsampleFinish),this.figure.removeEventListener(e.plot.Figure.EVENT_DOWNSAMPLEFAILED,this.handleDownsampleFail),this.figure.removeEventListener(e.plot.Figure.EVENT_DOWNSAMPLENEEDED,this.handleDownsampleNeeded),this.figure.removeEventListener(e.Client.EVENT_REQUEST_FAILED,this.handleRequestFailed)}handleDownsampleStart(e){Se.debug("Downsample started",e),this.fireDownsampleStart(e.detail)}handleDownsampleFinish(e){Se.debug("Downsample finished",e),this.fireDownsampleFinish(e.detail)}handleDownsampleFail(e){Se.error("Downsample failed",e),this.fireDownsampleFail(e.detail)}handleDownsampleNeeded(e){Se.info("Downsample needed",e),this.fireDownsampleNeeded(e.detail)}handleFigureUpdated(e){var{detail:t}=e,{series:r}=t;Se.debug2("handleFigureUpdated",r);for(var i=0;i<r.length;i+=1){var a=r[i];Se.debug2("handleFigureUpdated updating series",a.name);for(var{sources:l}=a,s=0;s<l.length;s+=1){var o=l[s],{columnType:u,type:d}=o,h=this.getValueTranslator(u,this.formatter),c=t.getArray(a,d,h);this.setDataArrayForSeries(a,d,c)}this.seriesToProcess.delete(a.name),this.cleanSeries(a)}this.seriesToProcess.size===0&&this.fireLoadFinished();var{data:v}=this;this.fireUpdate(v)}handleRequestFailed(e){Se.error("Request failed",e),this.fireError(["".concat(e.detail)])}resubscribe(){this.listeners.length>0&&(this.unsubscribeFigure(),this.subscribeFigure())}setFormatter(e){super.setFormatter(e),this.updateLayoutFormats(),this.resubscribe()}setRenderOptions(e){super.setRenderOptions(e),this.initAllSeries()}setDownsamplingDisabled(e){super.setDownsamplingDisabled(e),this.resubscribe()}handleFigureDisconnected(e){Se.debug("Figure disconnected",e),this.isConnected=!1,this.listeners.length>0&&this.unsubscribeFigure(),this.fireDisconnect()}handleFigureReconnected(e){Se.debug("Figure reconnected",e),this.isConnected=!0,this.initAllSeries(),this.fireReconnect(),this.listeners.length>0&&this.subscribeFigure()}handleFigureSeriesAdded(e){var{detail:t}=e;Se.debug("handleFigureSeriesAdded",t),this.pendingSeries.push(t),this.addPendingSeries()}setDimensions(e){super.setDimensions(e),this.updateAxisPositions()}setTitle(e){var t,r;super.setTitle(e);var i=(t=(r=(e??"").match(/<br>/g))===null||r===void 0?void 0:r.length)!==null&&t!==void 0?t:0,a=I.DEFAULT_MARGIN.t+i*I.SUBTITLE_LINE_HEIGHT;this.layout.margin?this.layout.margin.t=a:this.layout.margin={t:a},typeof this.layout.title=="string"?this.layout.title={text:e}:(this.layout.title=Vi({},this.layout.title),this.layout.title.text=e,this.layout.title.pad=Vi({},this.layout.title.pad),this.layout.title.pad.t=I.DEFAULT_TITLE_PADDING.t+i*I.SUBTITLE_LINE_HEIGHT*.5),this.fireLayoutUpdated({title:this.layout.title})}getPlotWidth(){var e,t,r,i;return!this.rect||!this.rect.width?0:Math.max(this.rect.width-((e=(t=this.layout.margin)===null||t===void 0?void 0:t.l)!==null&&e!==void 0?e:0)-((r=(i=this.layout.margin)===null||i===void 0?void 0:i.r)!==null&&r!==void 0?r:0),0)}getPlotHeight(){var e,t,r,i;return!this.rect||!this.rect.height?0:Math.max(this.rect.height-((e=(t=this.layout.margin)===null||t===void 0?void 0:t.t)!==null&&e!==void 0?e:0)-((r=(i=this.layout.margin)===null||i===void 0?void 0:i.b)!==null&&r!==void 0?r:0),0)}updateAxisPositions(){var e=this.getPlotWidth(),t=this.getPlotHeight();this.chartUtils.updateFigureAxes(this.layout,this.figure,r=>this.getAxisRangeParser(r,this.formatter),e,t)}updateLayoutFormats(){if(this.formatter){var e=this.chartUtils.getAxisFormats(this.figure,this.formatter);e.forEach((t,r)=>{Se.debug("Assigning ".concat(r),this.layout[r],t);var i=this.layout[r];i!=null?Object.assign(i,t):Se.debug("Ignoring null layout.".concat(r))})}}setDataArrayForSeries(e,t,r){var{name:i,plotStyle:a}=e,l=this.seriesDataMap.get(i),s=this.chartUtils.getPlotlyProperty(a,t);l&&En.set(l,s,r)}cleanSeries(e){var{dh:t}=this,{name:r,plotStyle:i}=e,a=this.seriesDataMap.get(r);if(a!=null){if(i===t.plot.SeriesPlotStyle.HISTOGRAM){var{xLow:l,xHigh:s}=a;if(l&&s&&l.length===s.length){for(var o=[],u=0;u<l.length;u+=1)o.push(s[u]-l[u]);a.width=o}}else if(i===t.plot.SeriesPlotStyle.LINE||i===t.plot.SeriesPlotStyle.ERROR_BAR||i===t.plot.SeriesPlotStyle.BAR){var{x:d,xLow:h,xHigh:c,y:v,yLow:g,yHigh:m}=a;h&&c&&h!==d&&(a.error_x=I.getPlotlyErrorBars(d,h,c)),g&&m&&g!==v&&(a.error_y=I.getPlotlyErrorBars(v,g,m))}else if(i===t.plot.SeriesPlotStyle.TREEMAP){var{ids:f,labels:b}=a;f!==void 0&&b===void 0&&(a.labels=f)}}}getData(){return this.data}getLayout(){return this.layout}getFilterColumnMap(){return new Map(this.filterColumnMap)}isFilterRequired(){return this.oneClicks.find(e=>e.requireAllFiltersToDisplay)!=null}setFilter(e){var t=this;if(this.oneClicks.length===0){Se.warn("Trying to set a filter, but no one click!");return}Se.debug("setFilter",e);for(var r=function(){var l=t.oneClicks[i],{columns:s}=l,o=new Set([...e.keys(),...t.lastFilter.keys()]);o.forEach(u=>{var d=e.get(u);t.lastFilter.get(u)!==d&&s.find(h=>h.name===u)!=null&&l.setValueForColumn(u,d)})},i=0;i<this.oneClicks.length;i+=1)r();this.lastFilter=new Map(e)}setFigure(e){this.close(),this.figure=e,this.setTitle(this.getDefaultTitle()),this.initAllSeries(),this.updateAxisPositions(),this.startListeningFigure(),this.listeners.length>0&&this.subscribeFigure()}updateSettings(e){this.settings=e}}pe(pr,"ADD_SERIES_DEBOUNCE",50);function $i(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function mn(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){$i(a,r,i,l,s,"next",o)}function s(o){$i(a,r,i,l,s,"throw",o)}l(void 0)})}}class Bt{static makeModelFromSettings(e,t,r){return mn(function*(){var i=yield Bt.makeFigureFromSettings(e,t,r);return new pr(e,i,t)})()}static makeFigureFromSettings(e,t,r){return mn(function*(){var i=yield r.copy();return i.applyCustomColumns(r.customColumns),i.applyFilter(r.filter),i.applySort(r.sort),e.plot.Figure.create(new I(e).makeFigureSettings(t,i))})()}static makeModel(e,t,r){return mn(function*(){return new pr(e,r,t)})()}}function Hi(n){return n.setFigure!==void 0}function Gi(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Rd(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Gi(Object(t),!0).forEach(function(r){Id(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Gi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Id(n,e,t){return(e=kd(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function kd(n){var e=Ld(n,"string");return typeof e=="symbol"?e:e+""}function Ld(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ad=E.lazy(()=>zr(()=>import("./IrisGrid-CjstqkdZ.js"),__vite__mapDeps([13,1,2,3,4,5,8,9,14,11,15,16,17]),import.meta.url)),Jr=E.forwardRef((n,e)=>p.jsx(E.Suspense,{fallback:p.jsx(vt,{"data-testid":"lazy-iris-grid-loading"}),children:p.jsx(Ad,Rd({ref:e},n))}));Jr.displayName="LazyIrisGrid";var Nn=function(n){return n.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS="filter-control-change-clears-all-filters",n.LINK_CHANGE_CLEARS_ALL_FILTERS="link-change-clears-all-filters",n}(Nn||{}),xd=Object.freeze([[Nn.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS,!1],[Nn.LINK_CHANGE_CLEARS_ALL_FILTERS,!1]]);const xl={DEFAULTS:xd};var K=function(n){return n.COUNT="Count",n.MIN="Min",n.MAX="Max",n.SUM="Sum",n.ABS_SUM="AbsSum",n.VAR="Var",n.AVG="Avg",n.MEDIAN="Median",n.STD="Std",n.FIRST="First",n.LAST="Last",n.SKIP="Skip",n.COUNT_DISTINCT="CountDistinct",n.DISTINCT="Distinct",n.UNIQUE="Unique",n}(K||{}),lm=[K.SUM,K.ABS_SUM,K.MIN,K.MAX,K.VAR,K.AVG,K.MEDIAN,K.STD,K.FIRST,K.LAST,K.COUNT_DISTINCT,K.DISTINCT,K.COUNT,K.UNIQUE],jd=n=>{switch(n){default:return!1}},_d=n=>{switch(n){case K.MEDIAN:return!0;default:return!1}},jl=(n,e)=>{switch(n){case K.COUNT:case K.FIRST:case K.LAST:case K.COUNT_DISTINCT:case K.DISTINCT:case K.UNIQUE:return!0;case K.MEDIAN:case K.MIN:case K.MAX:return S.isNumberType(e)||S.isDateType(e)||S.isTextType(e);case K.SUM:case K.ABS_SUM:case K.VAR:case K.AVG:case K.STD:return S.isNumberType(e);case K.SKIP:return!1}},_l=(n,e)=>n.filter(t=>t.isProxy!==!0&&jl(e,t.type)),Vd=(n,e,t,r)=>_l(n,e).map(i=>{var{name:a}=i;return a}).filter(i=>t.includes(i)?!r:r);const fn={isValidOperation:jl,isRollupOperation:jd,isRollupProhibited:_d,filterValidColumns:_l,getOperationColumnNames:Vd};function $d(n){return(n==null?void 0:n.hasExpandableRows)!==void 0}function lr(n,e,t){return(e=Hd(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Hd(n){var e=Gd(n,"string");return typeof e=="symbol"?e:e+""}function Gd(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Bd=function(n){return n.DOWN="DOWN",n.UP="UP",n.LEFT="LEFT",n.RIGHT="RIGHT",n}({});class j{static normalize(e,t,r,i){var a=e,l=t,s=r,o=i;return a!=null&&s!=null&&s<a&&(a=s,s=e),l!=null&&o!=null&&o<l&&(l=o,o=t),[a,l,s,o]}static makeNormalized(e,t,r,i){return new j(...j.normalize(e,t,r,i))}static makeCell(e,t){return new j(e,t,e,t)}static makeColumn(e){return new j(e,null,e,null)}static makeRow(e){return new j(null,e,null,e)}static minOrNull(e,t){return e==null||t==null?null:Math.min(e,t)}static maxOrNull(e,t){return e==null||t==null?null:Math.max(e,t)}static consolidate(e){for(var t=e.slice(),r=!0;r;){r=!1;for(var i=0;i<t.length&&!r;i+=1)for(var a=t[i],l=t.length-1;l>i;l-=1){var s=t[l];if(a.contains(s))t.splice(l,1);else if(s.contains(a)){r=!0,t[i]=s,t.splice(l,1);break}else if(a.startRow===s.startRow&&a.endRow===s.endRow){if(a.touches(s)){var{startRow:o,endRow:u}=a,d=j.minOrNull(a.startColumn,s.startColumn),h=j.maxOrNull(a.endColumn,s.endColumn);r=!0,t[i]=new j(d,o,h,u),t.splice(l,1);break}}else if(a.startColumn===s.startColumn&&a.endColumn===s.endColumn&&a.touches(s)){var{startColumn:c,endColumn:v}=a,g=j.minOrNull(a.startRow,s.startRow),m=j.maxOrNull(a.endRow,s.endRow);r=!0,t[i]=new j(c,g,v,m),t.splice(l,1);break}}}return t}static isAxisRangeTouching(e,t,r,i){return e==null?t==null||r==null?!0:r<=t+1:t==null?i==null?!0:i>=e-1:r==null?i==null?!0:e<=i+1:i==null?t>=r-1:r>=e-1?r<=t+1:i>=e-1}static rangeArraysEqual(e,t){if(e===t)return!0;if(e==null||t==null||e.length!==t.length)return!1;for(var r=0;r<e.length;r+=1)if(!e[r].equals(t[r]))return!1;return!0}static intersection(e,t){if(e.equals(t))return e;var{startColumn:r,startRow:i,endColumn:a,endRow:l}=e;return r=r!=null&&t.startColumn!=null?Math.max(r,t.startColumn):r??t.startColumn,a=a!=null&&t.endColumn!=null?Math.min(a,t.endColumn):a??t.endColumn,i=i!=null&&t.startRow!=null?Math.max(i,t.startRow):i??t.startRow,l=l!=null&&t.endRow!=null?Math.min(l,t.endRow):l??t.endRow,r!=null&&r>(a??-1)||i!=null&&i>(l??-1)?null:new j(r,i,a,l)}static subtractFromRange(e,t){var r=[],i=j.intersection(e,t);return i==null?[e]:(i.startRow!=null&&(e.startRow==null||e.startRow<i.startRow)&&r.push(new j(e.startColumn,e.startRow,e.endColumn,i.startRow-1)),i.startColumn!=null&&(e.startColumn==null||e.startColumn<i.startColumn)&&r.push(new j(e.startColumn,i.startRow,i.startColumn-1,i.endRow)),i.endColumn!=null&&(e.endColumn==null||e.endColumn>i.endColumn)&&r.push(new j(i.endColumn+1,i.startRow,e.endColumn,i.endRow)),i.endRow!=null&&(e.endRow==null||e.endRow>i.endRow)&&r.push(new j(e.startColumn,i.endRow+1,e.endColumn,e.endRow)),r)}static subtractFromRanges(e,t){for(var r=[],i=0;i<e.length;i+=1)r.push(...j.subtractFromRange(e[i],t));return r}static subtractRangesFromRanges(e,t){for(var r=[...e],i=0;i<t.length;i+=1)r=j.subtractFromRanges(r,t[i]);return r}static isBounded(e){return e.startRow!=null&&e.startColumn!=null&&e.endRow!=null&&e.endColumn!=null}static boundedRange(e,t,r){var i,a,l,s;return j.isBounded(e)?e:new j((i=e.startColumn)!==null&&i!==void 0?i:0,(a=e.startRow)!==null&&a!==void 0?a:0,(l=e.endColumn)!==null&&l!==void 0?l:t-1,(s=e.endRow)!==null&&s!==void 0?s:r-1)}static boundedRanges(e,t,r){return e.map(i=>j.boundedRange(i,t,r))}static offset(e,t,r){return new j(e.startColumn!=null?e.startColumn+t:null,e.startRow!=null?e.startRow+r:null,e.endColumn!=null?e.endColumn+t:null,e.endRow!=null?e.endRow+r:null)}static nextCell(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:j.SELECTION_DIRECTION.DOWN;if(e.length===0)return null;var a=-1;if(t!=null&&r!=null&&(a=e.findIndex(c=>c.containsCell(t,r)),a>=0)){var l=e[a],s=l.nextCell(t,r,i);if(s!=null)return s}switch(i){case j.SELECTION_DIRECTION.DOWN:case j.SELECTION_DIRECTION.RIGHT:{var o=a<e.length-1?a+1:0,u=e[o];return u.startCell(i)}case j.SELECTION_DIRECTION.LEFT:case j.SELECTION_DIRECTION.UP:{var d=a>0?a-1:e.length-1,h=e[d];return h.startCell(i)}default:throw new Error("Invalid direction: ".concat(i))}}static cellCount(e){return e.reduce((t,r)=>{var i,a,l,s;return t+(((i=r.endRow)!==null&&i!==void 0?i:NaN)-((a=r.startRow)!==null&&a!==void 0?a:NaN)+1)*(((l=r.endColumn)!==null&&l!==void 0?l:NaN)-((s=r.startColumn)!==null&&s!==void 0?s:NaN)+1)},0)}static rowCount(e){return e.reduce((t,r)=>{var i,a;return t+((i=r.endRow)!==null&&i!==void 0?i:NaN)-((a=r.startRow)!==null&&a!==void 0?a:NaN)+1},0)}static columnCount(e){return e.reduce((t,r)=>{var i,a;return t+((i=r.endColumn)!==null&&i!==void 0?i:NaN)-((a=r.startColumn)!==null&&a!==void 0?a:NaN)+1},0)}static containsCell(e,t,r){for(var i=0;i<e.length;i+=1){var a=e[i];if(a.containsCell(t,r))return!0}return!1}static forEachCell(e,t){for(var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:j.SELECTION_DIRECTION.RIGHT,i=0;i<e.length;i+=1)e[i].forEach(t,r)}constructor(e,t,r,i){lr(this,"startColumn",void 0),lr(this,"startRow",void 0),lr(this,"endColumn",void 0),lr(this,"endRow",void 0),this.startColumn=e,this.startRow=t,this.endColumn=r,this.endRow=i}equals(e){return this.startColumn===e.startColumn&&this.startRow===e.startRow&&this.endColumn===e.endColumn&&this.endRow===e.endRow}contains(e){return(this.startColumn==null||e.startColumn!=null&&this.startColumn<=e.startColumn)&&(this.startRow==null||e.startRow!=null&&this.startRow<=e.startRow)&&(this.endColumn==null||e.endColumn!=null&&this.endColumn>=e.endColumn)&&(this.endRow==null||e.endRow!=null&&this.endRow>=e.endRow)}containsCell(e,t){return e==null||t==null?!1:(this.startColumn==null||this.startColumn<=e)&&(this.endColumn==null||this.endColumn>=e)&&(this.startRow==null||this.startRow<=t)&&(this.endRow==null||this.endRow>=t)}touches(e){return j.isAxisRangeTouching(this.startRow,this.endRow,e.startRow,e.endRow)&&j.isAxisRangeTouching(this.startColumn,this.endColumn,e.startColumn,e.endColumn)}subtract(e){return j.subtractFromRange(this,e)}startCell(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:j.SELECTION_DIRECTION.DOWN;if(!j.isBounded(this))throw new Error("Cannot get the startCell of an unbounded range");switch(e){case j.SELECTION_DIRECTION.DOWN:case j.SELECTION_DIRECTION.RIGHT:return{column:this.startColumn,row:this.startRow};case j.SELECTION_DIRECTION.LEFT:case j.SELECTION_DIRECTION.UP:return{column:this.endColumn,row:this.endRow};default:throw new Error("Invalid direction: ".concat(e))}}nextCell(e,t,r){if(!j.isBounded(this))throw new Error("Bounded range required");if(e==null||t==null)throw new Error("Require a non-null cursor");var{startColumn:i,endColumn:a,startRow:l,endRow:s}=this;switch(r){case j.SELECTION_DIRECTION.DOWN:if(t<s)return{column:e,row:Math.max(t+1,l)};if(e<a)return{column:Math.max(e+1,i),row:l};break;case j.SELECTION_DIRECTION.UP:if(t>l)return{column:e,row:Math.min(t-1,s)};if(e>i)return{column:Math.min(e-1,a),row:s};break;case j.SELECTION_DIRECTION.RIGHT:if(e<a)return{column:Math.max(e+1,i),row:t};if(t<s)return{column:i,row:Math.max(t+1,l)};break;case j.SELECTION_DIRECTION.LEFT:if(e>i)return{column:Math.min(e-1,a),row:t};if(t>l)return{column:a,row:Math.min(t-1,s)};break;default:throw new Error("Invalid direction: ".concat(r))}return null}forEach(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:j.SELECTION_DIRECTION.RIGHT,r=0,{column:i,row:a}=this.startCell(t);i!=null&&a!=null;){var l;e(i,a,r),r+=1,{column:i,row:a}=(l=this.nextCell(i,a,t))!==null&&l!==void 0?l:{}}}}lr(j,"SELECTION_DIRECTION",Bd);function Ud(n){return Array.isArray(n)&&n.length===2&&(n[0]===null||typeof n[0]=="number")&&(n[1]===null||typeof n[1]=="number")}function wr(n){return Ud(n)&&n[0]!=null&&n[1]!=null}function Bi(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Tr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Bi(Object(t),!0).forEach(function(r){Vl(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Bi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Vl(n,e,t){return(e=Wd(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Wd(n){var e=zd(n,"string");return typeof e=="symbol"?e:e+""}function zd(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function sm(n){return(n==null?void 0:n.href)!==void 0}class G{static getGridPointFromXY(e,t,r){var i=G.getColumnAtX(e,r),a=G.getRowAtY(t,r),l=G.getColumnHeaderDepthAtY(t,r);return{x:e,y:t,row:a,column:i,columnHeaderDepth:l}}static getCellInfoFromXY(e,t,r){var{row:i,column:a}=G.getGridPointFromXY(e,t,r),{allColumnWidths:l,allRowHeights:s,allColumnXs:o,allRowYs:u,modelColumns:d,modelRows:h}=r,c=i!==null?h.get(i):null,v=a!==null?d.get(a):null,g=a!==null?o.get(a):null,m=i!==null?u.get(i):null,f=a!==null?l.get(a):null,b=i!==null?s.get(i):null;return{row:i,column:a,modelRow:c??null,modelColumn:v??null,left:g??null,top:m??null,columnWidth:f??null,rowHeight:b??null}}static getColumnHeaderDepthAtY(e,t){var r=G.getRowAtY(e,t),{columnHeaderHeight:i,columnHeaderMaxDepth:a}=t;if(r===null&&e<=i*a)return Ge(a-Math.ceil(e/i),0,a-1)}static iterateFloatingStart(e,t,r){for(var i=0;i<e&&i<t;i+=1){var a=r(i);if(a!==void 0)return a}}static iterateFloatingEnd(e,t,r){for(var i=0;i<e&&t-(e-i)>=0;i+=1){var a=r(t-(e-i));if(a!==void 0)return a}}static iterateFloating(e,t,r,i){var a=G.iterateFloatingStart(e,r,i);return a!==void 0?a:G.iterateFloatingEnd(t,r,i)}static iterateAllItems(e,t,r,i,a,l){var s=Math.max(e,r),o=Math.min(t,a-i-1),u=G.iterateFloating(r,i,a,l);if(u!==void 0)return u;for(var d=s;d<=o;d+=1)if(u=l(d),u!==void 0)return u}static isInItem(e,t,r,i){var a,l,s=(a=t.get(e))!==null&&a!==void 0?a:0,o=(l=r.get(e))!==null&&l!==void 0?l:0;return s<=i&&i<=s+o}static getItemAtOffset(e,t,r,i,a,l,s){var o=arguments.length>7&&arguments[7]!==void 0?arguments[7]:!1,u=o?void 0:G.iterateFloating(r,i,t,c=>{if(G.isInItem(c,l,s,e))return c});if(!o&&u!==void 0)return u;for(var d=0;d<a.length;d+=1){var h=a[d];if(G.isInItem(h,l,s,e))return h}return null}static getColumnAtX(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{columnCount:i,floatingLeftColumnCount:a,floatingRightColumnCount:l,visibleColumns:s,allColumnXs:o,allColumnWidths:u,gridX:d}=t;return e<d?null:this.getItemAtOffset(e-d,i,a,l,s,o,u,r)}static getRowAtY(e,t){var{floatingTopRowCount:r,floatingBottomRowCount:i,rowCount:a,visibleRows:l,allRowYs:s,allRowHeights:o,gridY:u}=t;return e<u?null:this.getItemAtOffset(e-u,a,r,i,l,s,o)}static getNextShownItem(e,t,r,i){var a=r.findIndex(o=>o===e)||0;for(a-=1;a!=null&&a>=0;){var l=r[a],s=t.get(l);if(s!=null&&i.get(s)!==0)return l;a-=1}return null}static getNextShownColumn(e,t){var{modelColumns:r,visibleColumns:i,userColumnWidths:a}=t;return G.getNextShownItem(e,r,i,a)}static getNextShownRow(e,t){var{modelRows:r,visibleRows:i,userRowHeights:a}=t;return G.getNextShownItem(e,r,i,a)}static hasColumnSeparatorAtDepth(e,t,r,i){return t==null||r==null?!1:i==null?!0:e.textForColumnHeader(r,t)!==e.textForColumnHeader(i,t)}static getColumnSeparatorIndex(e,t,r,i,a){var{rowHeaderWidth:l,columnHeaderHeight:s,floatingColumns:o,floatingLeftWidth:u,visibleColumns:d,allColumnXs:h,allColumnWidths:c,columnHeaderMaxDepth:v,modelColumns:g}=r,{allowColumnResize:m,headerSeparatorHandleSize:f}=i;if(v*s<t||!m||f<=0)return null;for(var b=e-l,y=f*.5,C=G.getColumnHeaderDepthAtY(t,r),T=!1,w=o.length-1;w>=0;w-=1){var O,D,N=o[w],M=(O=h.get(N))!==null&&O!==void 0?O:0,F=(D=c.get(N))!==null&&D!==void 0?D:0,k=F===0;if(!T||!k){var L=M+F;k?L+=y:T&&(L-=y);var V=L-y,X=L+y;if(V<=b&&b<=X&&G.hasColumnSeparatorAtDepth(a,C,g.get(N),g.get(N+1)))return N;T=k}}T=!1;for(var Y=d.length-1;Y>=0;Y-=1){var Z,se,re=d[Y],Ce=(Z=h.get(re))!==null&&Z!==void 0?Z:0,ge=(se=c.get(re))!==null&&se!==void 0?se:0,A=ge===0;if(Ce<u-ge)return null;if(!T||!A){var x=Ce+ge;A?x+=y:T&&(x-=y);var _=x-y,B=x+y;if(_<=b&&b<=B&&G.hasColumnSeparatorAtDepth(a,C,g.get(re),g.get(re+1)))return re;T=A}}return null}static isItemHidden(e,t){return t.get(e)===0}static isColumnHidden(e,t){var{allColumnWidths:r}=t;return G.isItemHidden(e,r)}static isFloatingRow(e,t){if(e==null)return!1;var{floatingTopRowCount:r,floatingBottomRowCount:i,rowCount:a}=t;return e<r||e>=a-i}static isFloatingColumn(e,t){if(e==null)return!1;var{floatingLeftColumnCount:r,floatingRightColumnCount:i,columnCount:a}=t;return e<r||e>=a-i}static getHiddenItems(e,t,r){if(!G.isItemHidden(e,t))return[];for(var i=[e],a=r.findIndex(o=>o===e),l=a-1;l>=0;l-=1){var s=r[l];if(!G.isItemHidden(s,t))break;i.push(s)}return i}static getHiddenColumns(e,t){var{visibleColumns:r,allColumnWidths:i}=t;return G.getHiddenItems(e,i,r)}static getRowSeparatorIndex(e,t,r,i){var{rowHeaderWidth:a,columnHeaderHeight:l,visibleRows:s,allRowYs:o,allRowHeights:u}=r,{allowRowResize:d,headerSeparatorHandleSize:h}=i;if(a<e||!d||h<=0)return null;for(var c=t-l,v=h*.5,g=!1,m=s.length-1;m>=0;m-=1){var f,b,y=s[m],C=(f=o.get(y))!==null&&f!==void 0?f:0,T=(b=u.get(y))!==null&&b!==void 0?b:0,w=T===0;if(!g||!w){var O=C+T;w?O+=v:g&&(O-=v);var D=O-v,N=O+v;if(D<=c&&c<=N)return y;g=w}}return null}static isRowHidden(e,t){var{allRowHeights:r}=t;return G.isItemHidden(e,r)}static getHiddenRows(e,t){var{visibleRows:r,allRowHeights:i}=t;return G.getHiddenItems(e,i,r)}static moveItem(e,t,r){if(e===t)return r;var i=[...r],a=i[i.length-1];return a!=null&&!wr(a.from)&&a.to===e?a.from===t?i.pop():i[i.length-1]=Tr(Tr({},a),{},{to:t}):i.push({from:e,to:t}),i}static moveRange(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(e[0]===e[1])return G.moveItem(e[0],t,r);var a=t;if(i&&e[0]<t&&(a-=e[1]-e[0]),e[0]===a)return r;var l=[...r],s=l[l.length-1];s!=null&&wr(s.from)&&s.from[1]-s.from[0]===e[1]-e[0]&&s.to===e[0]?l[l.length-1]=Tr(Tr({},s),{},{to:a}):l.push({from:e,to:a});var o=l[l.length-1];return wr(o.from)&&o.from[0]===o.to&&l.pop(),l}static moveItemOrRange(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;return Array.isArray(e)?G.moveRange(e,t,r,i):G.moveItem(e,t,r)}static applyItemMoves(e,t,r){for(var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,a=[[e,t]],l=function(){var{from:u,to:d}=r[s],h=1,c;wr(u)?(h=u[1]-u[0]+1,[c]=u):c=u;for(var v=i?d:c,g=v+h-1,m=i?c:d,f=m-v,b=[],y=function(){var w,O,D=(w=a[C][0])!==null&&w!==void 0?w:Number.NEGATIVE_INFINITY,N=(O=a[C][1])!==null&&O!==void 0?O:Number.POSITIVE_INFINITY,M,F=[[D,v-1],[v,g],[g+1,N]].map(k=>{var[L,V]=k;return[Math.max(L,D),Math.min(V,N)]}).filter(k=>{var[L,V]=k;return L<=V}).map(k=>{var[L,V]=k;return v<=L&&g>=V?(M=[L+f,V+f],M):g<L?[L-h,V-h]:k}).map(k=>{var[L,V]=k;return m>L&&m<=V?[[L,m-1],[m+h,V+h]]:k===M?[k]:m<=L?[[L+h,V+h]]:[k]}).flat();b.push(...F)},C=0;C<a.length;C+=1)y();a=b.map(T=>{var[w,O]=T;return[Number.isFinite(w)?w:null,Number.isFinite(O)?O:null]})},s=i?r.length-1:0;i?s>=0:s<r.length;i?s-=1:s+=1)l();return a}static translateRange(e,t,r,i){for(var a=G.applyItemMoves(e.startColumn,e.endColumn,t,i),l=G.applyItemMoves(e.startRow,e.endRow,r,i),s=[],o=0;o<a.length;o+=1)for(var u=a[o],d=0;d<l.length;d+=1){var h=l[d];s.push(new j(u[0],h[0],u[1],h[1]))}return s}static getModelIndex(e,t){var r=G.applyItemMoves(e,e,t,!0)[0][0];return r}static getModelIndexes(e,t){return e.map(r=>G.getModelIndex(r,t))}static getModelRangeIndexes(e,t,r){return G.applyItemMoves(e,t,r,!0)}static getModelRange(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Q,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Q;return G.translateRange(e,t,r,!0)}static getModelRanges(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Q,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Q,i=[],a=0;a<e.length;a+=1)i.push(...G.getModelRange(e[a],t,r));return i}static getVisibleRangeIndexes(e,t,r){return G.applyItemMoves(e,t,r,!1)}static getVisibleRange(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Q,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Q;return this.translateRange(e,t,r,!1)}static getVisibleRanges(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Q,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Q,i=[],a=0;a<e.length;a+=1)i.push(...G.getVisibleRange(e[a],t,r));return i}static getVisibleIndex(e,t){var r=G.applyItemMoves(e,e,t)[0][0];return r}static getVisibleIndexes(e,t){return e.map(r=>G.getVisibleIndex(r,t))}static isMacPlatform(){var{platform:e}=window.navigator;return e.startsWith("Mac")}static getModifierKey(){return G.isMacPlatform()?"metaKey":"ctrlKey"}static isModifierKeyDown(e){var t=G.getModifierKey();return e[t]}static checkColumnHidden(e,t){return t.get(e)===0}static checkAllColumnsHidden(e,t){return t.size===0?!1:e.every(r=>t.get(r)===0)}static getScrollDragBounds(e,t,r){var{gridX:i,gridY:a,width:l,height:s,floatingTopRowCount:o,floatingBottomRowCount:u,floatingLeftColumnCount:d,floatingRightColumnCount:h,floatingLeftWidth:c,floatingRightWidth:v,floatingTopHeight:g,floatingBottomHeight:m,columnCount:f,rowCount:b}=e,y=i,C=a,T=l,w=s;return r!=null&&(r>d&&(y+=c),r<f-h&&(T-=v)),t!=null&&(t>o&&(C+=g),t<b-u&&(w-=m)),{x1:y,y1:C,x2:T,y2:w}}static getScrollDelta(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1024,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:768,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:20,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:20,{deltaX:l,deltaY:s}=e;return!G.isMacPlatform()&&e.shiftKey&&e.deltaX===0&&e.deltaY!==0&&(l=e.deltaY,s=e.deltaX),(e==null?void 0:e.deltaMode)===WheelEvent.DOM_DELTA_PAGE?(l*=t,s*=r):(e==null?void 0:e.deltaMode)===WheelEvent.DOM_DELTA_LINE&&(G.isMacPlatform()?(l=Math.round(l*i),s=Math.round(s*a)):(l=Math.round(l*this.PIXELS_PER_LINE),s=Math.round(s*this.PIXELS_PER_LINE))),{deltaX:l,deltaY:s}}static compareRanges(e,t){return e[0]==null||e[1]==null||t[0]==null||t[1]==null?0:e[0]!==t[0]?e[0]-t[0]:e[1]-t[1]}static mergeSortedRanges(e){for(var t=[],r=0;r<e.length;r+=1){var i=e[r],a=i[0],l=i[1];r===0?t.push([a,l]):a-1<=t[t.length-1][1]?t[t.length-1][1]=Math.max(t[t.length-1][1],l):t.push([a,l])}return t}static translateTokenBox(e,t){var{x1:r,y1:i,x2:a,y2:l}=e,{gridX:s,gridY:o,width:u,height:d,verticalBarWidth:h,horizontalBarHeight:c}=t,v=Ge(s+r,s,u-h),g=Ge(s+a,s,u-h),m=Ge(o+i,o,d-c),f=Ge(o+l,o,d-c);return{x1:v,y1:m,x2:g,y2:f,token:e.token}}static getTextRenderMetrics(e,t,r){var{metrics:i,model:a,theme:l}=e,{firstColumn:s,allColumnXs:o,allColumnWidths:u,allRowYs:d,allRowHeights:h,modelRows:c,modelColumns:v}=i,{cellHorizontalPadding:g,treeDepthIndent:m,treeHorizontalPadding:f}=l,b=At(c,r),y=At(v,t),C=a.textAlignForCell(y,b),T=At(o,t),w=At(d,r),O=At(u,t),D=At(h,r),N=t===s,M=0;$d(a)&&a.hasExpandableRows&&N&&(M=m*(a.depthForRow(r)+1)+f);var F=O-M,k=T+g,L=w+D*.5;return C==="right"?k=T+F-g:C==="center"&&(k=T+F*.5),k+=M,{width:F-g*2,x:k,y:L}}static findTokensWithProtocolInText(e){var t=Ks(e);return t.filter(r=>r.type==="url"?/^https?:\/\//.test(r.value):!0)}}Vl(G,"PIXELS_PER_LINE",100/3);function Ui(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 Wi(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ui(Object(t),!0).forEach(function(r){qd(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ui(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function qd(n,e,t){return(e=Kd(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Kd(n){var e=Xd(n,"string");return typeof e=="symbol"?e:e+""}function Xd(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Mn(n,e){var t=!1,r=Be(n,Wi(Wi({},e),{},{dispose:()=>{t||(t=!0,r.clear(),t=!1)}}));return r}function Yd(n,e,t){return(e=Zd(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Zd(n){var e=Qd(n,"string");return typeof e=="symbol"?e:e+""}function Qd(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var gn=5e3;class Jd extends Xs{constructor(){super(...arguments),Yd(this,"getCachedTokensInText",Mn((e,t)=>{if(t>=e.length)return G.findTokensWithProtocolInText(e);var r=e.slice(t-1,gn).search(/\s/),i=t+r;r===-1&&(i=Math.min(gn,e.length));var a=e.substring(0,i);return G.findTokensWithProtocolInText(a)},{max:1e4}))}get floatingTopRowCount(){return 0}get floatingBottomRowCount(){return 0}get floatingLeftColumnCount(){return 0}get floatingRightColumnCount(){return 0}get columnHeaderMaxDepth(){return 1}truncationCharForCell(e,t){}textAlignForCell(e,t){return"left"}colorForCell(e,t,r){return r.textColor}backgroundColorForCell(e,t,r){return null}colorForColumnHeader(e){return null}textForRowHeader(e){return""}textForRowFooter(e){return""}isColumnMovable(e){return!0}isRowMovable(e){return!0}getColumnHeaderGroup(e,t){}getColumnHeaderParentGroup(e,t){}tokensForCell(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:gn,i=this.textForCell(e,t);return this.getCachedTokensInText(i,r)}renderTypeForCell(e,t){return"text"}}function Rn(n,e,t){return(e=eh(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function eh(n){var e=th(n,"string");return typeof e=="symbol"?e:e+""}function th(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var pt=[],zi=new Set;class W extends Jd{constructor(e){super(),Rn(this,"dh",void 0),Rn(this,"listenerCount",void 0),this.dh=e,this.listenerCount=0}addEventListener(e,t,r){super.addEventListener(e,t,r),this.listenerCount+=1,this.listenerCount===1&&this.startListening()}removeEventListener(e,t,r){super.removeEventListener(e,t,r),this.listenerCount-=1,this.listenerCount===0&&this.stopListening()}startListening(){}stopListening(){}get aggregatedColumns(){return pt}get groupedColumns(){return pt}get originalColumns(){return this.columns}sourceForCell(e,t){return{column:e,row:t}}getClearFilterRange(e){return this.isFilterable(e)?[e,e]:null}get initialMovedColumns(){return pt}get initialMovedRows(){return pt}get initialColumnHeaderGroups(){return pt}get layoutHints(){return null}get frontColumns(){return pt}get backColumns(){return pt}get keyColumnSet(){return zi}get valueColumnSet(){return zi}get frozenColumns(){return pt}isColumnFrozen(e){return!1}isColumnSortable(e){return!1}get isFilterRequired(){return!1}get isReversible(){return!0}get isColumnStatisticsAvailable(){return!1}get description(){return""}get isAggregatedColumnsAvailable(){return!1}get isCustomColumnsAvailable(){return!1}get isFormatColumnsAvailable(){return!1}get isExportAvailable(){return!1}get isValuesTableAvailable(){return!1}get isChartBuilderAvailable(){return!1}get isOrganizeColumnsAvailable(){return!1}get isRollupAvailable(){return!1}get isSelectDistinctAvailable(){return!1}get isTotalsAvailable(){return!1}get isViewportPending(){return!1}isFilterable(e){return!1}close(){}isRowMovable(){return!1}get isSeekRowAvailable(){return!1}dataBarOptionsForCell(e,t,r){throw new Error("Method not implemented.")}tooltipForCell(e,t){return null}}Rn(W,"EVENT",Object.freeze({UPDATED:"UPDATED",FORMATTER_UPDATED:"FORMATTER_UPDATED",REQUEST_FAILED:"REQUEST_FAILED",COLUMNS_CHANGED:"COLUMNS_CHANGED",TABLE_CHANGED:"TABLE_CHANGED",FILTERS_CHANGED:"FILTERS_CHANGED",SORTS_CHANGED:"SORTS_CHANGED",DISCONNECT:"DISCONNECT",RECONNECT:"RECONNECT",TOTALS_UPDATED:"TOTALS_UPDATED",PENDING_DATA_UPDATED:"PENDING_DATA_UPDATED",VIEWPORT_UPDATED:"VIEWPORT_UPDATED"}));function yt(n,e,t){return(e=rh(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function rh(n){var e=nh(n,"string");return typeof e=="symbol"?e:e+""}function nh(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ih=ee.module("ColumnHeaderGroup");function bn(n){return n instanceof Cr}class Cr{constructor(e){var{name:t,children:r,color:i,depth:a,childIndexes:l,parent:s}=e;yt(this,"name",void 0),yt(this,"children",void 0),yt(this,"depth",void 0),yt(this,"parent",void 0),yt(this,"color",void 0),yt(this,"childIndexes",void 0),yt(this,"getVisibleRange",U(o=>{var u=this.childIndexes.flat(),d=G.getVisibleIndexes(u,o),h=Math.min(...d),c=Math.max(...d);return c-h!==u.length-1&&ih.warn("Column header group ".concat(this.name," is not contiguous")),[h,c]})),this.name=t,this.children=r,this.color=i??void 0,this.depth=a,this.childIndexes=l,this.parent=s}setParent(e){this.parent=e}addChildren(e){var t=new Set(this.children.concat(e));this.children=[...t]}removeChildren(e){var t=new Set(this.children);e.forEach(r=>t.delete(r)),this.children=[...t]}get isNew(){return this.name.startsWith(Cr.NEW_GROUP_PREFIX)}isValid(){return this.children.length===this.childIndexes.length}}yt(Cr,"NEW_GROUP_PREFIX",":newGroup");function Qe(n){return(n==null?void 0:n.isPartitionRequired)!==void 0&&(n==null?void 0:n.partitionColumns)!==void 0&&(n==null?void 0:n.partitionKeysTable)!==void 0&&(n==null?void 0:n.partitionMergedTable)!==void 0&&(n==null?void 0:n.partitionTable)!==void 0}function ah(n){return Qe(n)&&n.partitionConfig!==void 0}var lh=["selectedValues"],sh=["selectedValues"];function qi(n,e){if(n==null)return{};var t,r,i=oh(n,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(n);for(r=0;r<a.length;r++)t=a[r],e.indexOf(t)===-1&&{}.propertyIsEnumerable.call(n,t)&&(i[t]=n[t])}return i}function oh(n,e){if(n==null)return{};var t={};for(var r in n)if({}.hasOwnProperty.call(n,r)){if(e.indexOf(r)!==-1)continue;t[r]=n[r]}return t}function Ki(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function $e(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ki(Object(t),!0).forEach(function(r){In(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ki(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function In(n,e,t){return(e=uh(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function uh(n){var e=dh(n,"string");return typeof e=="symbol"?e:e+""}function dh(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var rr=ee.module("IrisGridUtils");function om(n){return n.partition!==void 0}function Xi(n){return Array.isArray(n.partitions)}function mt(n,e){return n>=0&&n<e.length}function hh(n){return(n==null?void 0:n.asDate)!=null}class ${static dehydrateGridState(e,t){var{isStuckToBottom:r,isStuckToRight:i,movedColumns:a,movedRows:l}=t,{columns:s}=e;return{isStuckToBottom:r,isStuckToRight:i,movedColumns:[...a].filter(o=>{var{to:u,from:d}=o;return mt(u,s)&&(typeof d=="number"&&mt(d,s)||Array.isArray(d)&&mt(d[0],s)&&mt(d[1],s))}).map(o=>{var{to:u,from:d}=o;return{to:s[u].name,from:Array.isArray(d)?[s[d[0]].name,s[d[1]].name]:s[d].name}}),movedRows:[...l]}}static hydrateGridState(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[],{isStuckToBottom:i,isStuckToRight:a,movedColumns:l,movedRows:s}=t,{columns:o}=e,u=$.parseCustomColumnNames(r),d=o.map(h=>{var{name:c}=h;return c}).concat(u);return{isStuckToBottom:i,isStuckToRight:a,movedColumns:[...l].map(h=>{var{to:c,from:v}=h,g=m=>typeof m=="string"?d.findIndex(f=>f===m):m;return{to:g(c),from:Array.isArray(v)?[g(v[0]),g(v[1])]:g(v)}}).filter(h=>{var{to:c,from:v}=h;return mt(c,d)&&(typeof v=="number"&&mt(v,d)||Array.isArray(v)&&mt(v[0],d)&&mt(v[1],d))}),movedRows:[...s]}}static dehydrateIrisGridPanelState(e,t){var{isSelectingPartition:r,partitions:i,advancedSettings:a}=t;return{isSelectingPartition:r,partitions:i,advancedSettings:[...a]}}static hydrateIrisGridPanelState(e,t){var{isSelectingPartition:r,advancedSettings:i}=t,a=[];return Xi(t)?a=t.partitions:t.partition!=null&&(a=[t.partition]),{isSelectingPartition:r,partitions:a,advancedSettings:new Map([...xl.DEFAULTS,...i])}}static dehydrateQuickFilters(e){return[...e].map(t=>{var[r,i]=t,{text:a}=i;return[r,{text:a}]})}static dehydrateLong(e){return e!=null?"".concat(e):null}static dehydrateSort(e){return e.map(t=>{var{column:r,isAbs:i,direction:a}=t;return{column:r.name,isAbs:i,direction:a}})}static extractTableSettings(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],{irisGridPanelState:r,irisGridState:i}=e,a=Xi(r)?r.partitions:[r.partition],{advancedFilters:l,quickFilters:s,sorts:o}=i;return{advancedFilters:l,inputFilters:t,partitions:a,quickFilters:s,sorts:o}}static getInputFiltersForColumns(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];return t.filter(r=>{var{name:i,type:a}=r;return e.find(l=>{var{name:s,type:o}=l;return s===i&&o===a})})}static getFiltersFromFilterMap(e){for(var t=[],r=Array.from(e.keys()),i=0;i<r.length;i+=1){var a=r[i],l=e.get(a);(l==null?void 0:l.filter)!=null&&t.push(l.filter)}return t}static getHiddenColumns(e){return[...e.entries()].filter(t=>{var[,r]=t;return r===0}).map(t=>{var[r]=t;return r})}static parseCustomColumnNames(e){return e.map(t=>t.split("=")[0])}static getRemovedCustomColumnNames(e,t){var r=$.parseCustomColumnNames(e),i=$.parseCustomColumnNames(t);return r.filter(a=>!i.includes(a))}static removeSortsInColumns(e,t){return e.filter(r=>!t.includes(r.column.name))}static removeFiltersInColumns(e,t,r){var i=e.map(l=>{var{name:s}=l;return s}),a=new Map(t);return r.forEach(l=>a.delete(i.indexOf(l))),a}static removeColumnFromMovedColumns(e,t,r){for(var i=e.map(o=>{var{name:u}=o;return u}),a=[...t],l=function(){for(var u=r[s],d=i.findIndex(b=>b===u),h=[],c=0;c<a.length;c+=1){var v=a[c],g=$e({},v),[m,f]=Array.isArray(v.from)?v.from:[v.from,v.from];d<=v.to&&(g.to-=1),d<m&&(m-=1),d<=f&&(f-=1),m<=f&&m!==g.to&&(m===f?h.push($e($e({},g),{},{from:m})):h.push($e($e({},g),{},{from:[m,f]}))),d=G.applyItemMoves(d,d,[v])[0][0]}a=h,i.splice(i.findIndex(b=>b===u),1)},s=0;s<r.length;s+=1)l();return a}static removeColumnsFromSelectDistinctColumns(e,t){return e.filter(r=>!t.includes(r))}static getVisibleColumnsInRange(e,t,r,i,a){for(var l=[],s=t;s<=r;s+=1){var o=G.getModelIndex(s,i);o>=0&&o<e.length&&!a.includes(o)&&l.push(e[o])}return l}static getPrevVisibleColumns(e,t,r,i,a){for(var l=[],s=t;s>=0&&l.length<r;){var o=G.getModelIndex(s,i);o>=0&&o<e.length&&!a.includes(o)&&l.unshift(e[o]),s-=1}return l}static getNextVisibleColumns(e,t,r,i,a){for(var l=[],s=t;s<e.length&&l.length<r;){var o=G.getModelIndex(s,i);o>=0&&o<e.length&&!a.includes(o)&&l.push(e[o]),s+=1}return l}static getColumnsToFetch(e,t,r){var i=[...t];return r.forEach(a=>{var l=e.find(s=>{var{name:o}=s;return o===a});l!=null&&!t.includes(l)&&i.push(l)}),i}static getModelViewportColumns(e,t,r,i){var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:[],l=arguments.length>5&&arguments[5]!==void 0?arguments[5]:[],s=arguments.length>6&&arguments[6]!==void 0?arguments[6]:0;if(!(t==null||r==null)){var o=$.getVisibleColumnsInRange(e,t,r,i,a),u=o.length*s,d=$.getPrevVisibleColumns(e,t-1,u,i,a),h=$.getNextVisibleColumns(e,r+1,u,i,a),c=[...d,...o,...h];return $.getColumnsToFetch(e,c,l)}}static isValidSnapshotRanges(e){if(e==null||e.length===0)return!1;for(var t=new Map,r=0;r<e.length;r+=1){var i=e[r],a="".concat(i.startRow,":").concat(i.endRow),l="".concat(i.startColumn,":").concat(i.endColumn);t.has(a)||t.set(a,[]),t.get(a).push(l)}for(var s=[...t.keys()],o=t.get(s[0]).sort().join(","),u=1;u<s.length;u+=1)if(t.get(s[u]).sort().join(",")!==o)return!1;return!0}static isValidIndex(e){return!Number.isInteger(e)||typeof e!="number"?!1:e>=0}static columnsFromRanges(e,t){if(e==null||e.length===0)return[];if(e[0].startColumn===null&&e[0].endColumn===null)return[...t];for(var r=new Set,i=0;i<e.length;i+=1){var a=e[i];R(a.startColumn),R(a.endColumn);for(var l=(s=a.startColumn)!==null&&s!==void 0?s:0;l<=((o=a.endColumn)!==null&&o!==void 0?o:t.length-1);l+=1){var s,o;r.add(l)}}return[...r].map(u=>t[u])}static snapshotDataToMatrix(e){for(var{columns:t,rows:r}=e,i=[],a=0;a<r.length;a+=1){for(var l=r[a],s=[],o=0;o<t.length;o+=1){var u=t[o],d=l.get(u);s.push(d)}i.push(s)}return i}static getModelRollupConfig(e,t,r){var i,a;if(((i=t==null||(a=t.columns)===null||a===void 0?void 0:a.length)!==null&&i!==void 0?i:0)===0)return null;for(var{columns:l=[],showConstituents:s=!0,showNonAggregatedColumns:o=!0,includeDescriptions:u=!0}=t??{},{aggregations:d=[]}=r??{},h=d.filter(y=>{var{operation:C}=y;return!fn.isRollupProhibited(C)}),c=h.map(y=>{var{operation:C,selected:T,invert:w}=y;return fn.isRollupOperation(C)?[]:fn.getOperationColumnNames(e,C,T,w)}),v={},g=0;g<h.length;g+=1)v[h[g].operation]=c[g];if(o){var m=new Set(e.map(y=>y.name).filter(y=>!l.includes(y)));if(c.forEach(y=>{y.forEach(C=>m.delete(C))}),m.size>0){var f,b=(f=v[K.FIRST])!==null&&f!==void 0?f:[];v[K.FIRST]=[...b,...m]}}return{groupingColumns:l,includeConstituents:s,includeDescriptions:u,aggregations:v}}static getPendingErrors(e){e.forEach((t,r)=>{if(!$.isValidIndex(r))throw new Error("Invalid rowIndex ".concat(r));var{data:i}=t;i.forEach((a,l)=>{if(!$.isValidIndex(l))throw new Error("Invalid columnIndex ".concat(l))})})}static getColumn(e,t){return t<e.length?e[t]:(rr.error("Unable to retrieve column",t,">=",e.length),null)}static getColumnByName(e,t){var r=Object.values(e).find(i=>{var{name:a}=i;return a===t});return r==null&&rr.error("Unable to retrieve column by name",t,e.map(i=>{var{name:a}=i;return a})),r}static changeFilterColumnNamesToIndexes(e,t){return t.map(r=>{var{name:i,filter:a}=r,l=e.findIndex(s=>s.name===i);return l<0?null:[l,a]}).filter(r=>r!=null)}static combineFiltersFromList(e,t){t.sort((d,h)=>d.operator==="eq"&&h.operator!=="eq"?1:d.operator!=="eq"&&h.operator==="eq"?-1:d.startColumnIndex-h.startColumnIndex);for(var r="",i=0;i<t.length;i+=1){var{text:a,value:l,operator:s}=t[i];if(l!==void 0){var o="";s!==void 0&&(l==null&&s==="eq"?o="=":s!=="eq"&&(s==="startsWith"||s==="endsWith"?o="*":o=S.getFilterOperatorString(s)));var u="".concat(o).concat(a);s==="startsWith"&&(u="".concat(a).concat(o)),e!=null&&l!==null&&S.isCharType(e)&&(u="".concat(o).concat(String.fromCharCode(parseInt(a,10)))),i!==0&&(r+=s==="eq"?" || ":" && "),r+=u}}return r}static parseColumnHeaderGroups(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:c=>new Cr(c),i=1,a=new Map,l=new Map,s=t==null?void 0:t.filter(c=>{var{children:v}=c;return v!=null&&v.length>0});if(s.length===0)return{groups:[],maxDepth:i,parentMap:a,groupMap:l};var o=new Map(s.map(c=>[c.name,c])),u=new Set,d=c=>{var v,{name:g}=c;R(g,"Column header group has no name");var m=e.getColumnIndexByName(g);if(m!=null&&m>=0)throw new Error("Column header group has same name as column: ".concat(g));var f=l.get(g);if(f)return f;var b=[],y=1;if(c.children==null)throw new Error("Column header group ".concat(g," has no children"));c.children.forEach(w=>{if(u.has(w))throw new Error("Column group child ".concat(w," specified in multiple groups"));u.add(w);var O=o.get(w),D=e.getColumnIndexByName(w);if(O){var N=d(O);b.push(...N.childIndexes),y=Math.max(y,N.depth+1)}else if(D!=null)b.push(D),y=Math.max(y,1);else throw new Error("Unknown child ".concat(w," in group ").concat(g))});var C=$e($e({},c),{},{name:g,children:c.children,depth:y,childIndexes:b.flat()}),T=r(C);return l.set(g,T),(v=c.children)===null||v===void 0||v.forEach(w=>a.set(w,T)),i=Math.max(i,T.depth+1),T},h=new Set;return s.forEach(c=>{var{name:v}=c;if(h.has(v))throw new Error("Duplicate column group name: ".concat(v));h.add(v),d(c)}),l.forEach(c=>{var v;c.setParent((v=a.get(c.name))===null||v===void 0?void 0:v.name)}),{groups:[...l.values()],maxDepth:i,groupMap:l,parentMap:a}}static convertValueToText(e,t){if(t!=null&&S.isCharType(t)&&e!=null&&typeof e=="number")return String.fromCharCode(e);if(S.isDateType(t)&&hh(e)){var r=new Date(e.asDate()),i=r.getTimezoneOffset(),a=new Date(r.getTime()-i*60*1e3),l=a.toISOString(),s=l.replace("T"," ").substring(0,23);return s}return e==null?"":"".concat(e)}constructor(e){In(this,"dh",void 0),In(this,"tableUtils",void 0),this.dh=e,this.tableUtils=new S(e),Un(this)}dehydrateIrisGridState(e,t){var{aggregationSettings:r={aggregations:Q,showOnTop:!1},advancedFilters:i,customColumnFormatMap:a,columnAlignmentMap:l=It,isFilterBarShown:s,metrics:{userColumnWidths:o,userRowHeights:u}={userColumnWidths:It,userRowHeights:It},quickFilters:d,customColumns:h,conditionalFormats:c=Q,reverse:v,rollupConfig:g,showSearchBar:m,searchValue:f,selectDistinctColumns:b=Q,selectedSearchColumns:y,sorts:C,invertSearchColumns:T,pendingDataMap:w=It,frozenColumns:O,columnHeaderGroups:D,partitionConfig:N}=t,{columns:M}=e,F=Qe(e)?e.partitionColumns:[];return{advancedFilters:this.dehydrateAdvancedFilters(M,i),aggregationSettings:r,customColumnFormatMap:[...a],columnAlignmentMap:[...l],isFilterBarShown:s,quickFilters:$.dehydrateQuickFilters(d),sorts:$.dehydrateSort(C),userColumnWidths:[...o].filter(k=>{var[L]=k;return L!=null&&L>=0&&L<M.length}).map(k=>{var[L,V]=k;return[M[L].name,V]}),userRowHeights:[...u],customColumns:[...h],conditionalFormats:[...c],reverse:v,rollupConfig:g,showSearchBar:m,searchValue:f,selectDistinctColumns:[...b],selectedSearchColumns:y,invertSearchColumns:T,pendingDataMap:this.dehydratePendingDataMap(M,w),frozenColumns:O,columnHeaderGroups:D==null?void 0:D.map(k=>{var L;return{name:k.name,children:k.children,color:(L=k.color)!==null&&L!==void 0?L:null}}),partitionConfig:this.dehydratePartitionConfig(F,N)}}hydrateIrisGridState(e,t){var r,i,{advancedFilters:a,aggregationSettings:l={aggregations:[],showOnTop:!1},customColumnFormatMap:s,columnAlignmentMap:o=[],isFilterBarShown:u,quickFilters:d,sorts:h,customColumns:c,conditionalFormats:v,userColumnWidths:g,userRowHeights:m,reverseType:f,reverse:b,rollupConfig:y=void 0,showSearchBar:C,searchValue:T,selectDistinctColumns:w,selectedSearchColumns:O,invertSearchColumns:D=!0,pendingDataMap:N=[],frozenColumns:M,columnHeaderGroups:F,partitionConfig:k}=t,{columns:L,formatter:V}=e,X=Qe(e)?e.partitionColumns:[];return{advancedFilters:this.hydrateAdvancedFilters(L,a,V.timeZone),aggregationSettings:l,customColumnFormatMap:new Map(s),columnAlignmentMap:new Map(o),isFilterBarShown:u,quickFilters:this.hydrateQuickFilters(L,d,V.timeZone),sorts:this.hydrateSort(L,h,!0),userColumnWidths:new Map(g.map(Y=>{var[Z,se]=Y;return typeof Z=="string"||Z instanceof String?[L.findIndex(re=>{var{name:Ce}=re;return Ce===Z}),se]:[Z,se]}).filter(Y=>{var[Z]=Y;return Z!=null&&Z>=0&&Z<L.length})),customColumns:c,conditionalFormats:v,userRowHeights:new Map(m),reverse:f===S.REVERSE_TYPE.POST_SORT||b,rollupConfig:y,showSearchBar:C,searchValue:T,selectDistinctColumns:w,selectedSearchColumns:O,invertSearchColumns:D,pendingDataMap:this.hydratePendingDataMap(L,N),frozenColumns:M,columnHeaderGroups:$.parseColumnHeaderGroups(e,(r=F??((i=e.layoutHints)===null||i===void 0?void 0:i.columnGroups))!==null&&r!==void 0?r:[]).groups,partitionConfig:this.hydratePartitionConfig(X,k)}}hydrateQuickFilters(e,t,r){var i=t.map(a=>{var[l,s]=a,{text:o}=s,u=null;try{var d=$.getColumn(e,l);d!=null&&(u=this.tableUtils.makeQuickFilter(d,o,r))}catch(h){rr.error("hydrateQuickFilters error with",o,h)}return[l,{text:o,filter:u}]});return new Map(i)}dehydrateAdvancedFilters(e,t){return[...t].map(r=>{var[i,a]=r,l=$.getColumn(e,i);R(l);var s=this.dehydrateAdvancedFilterOptions(l,a.options);return[i,{options:s}]})}hydrateAdvancedFilters(e,t,r){var i=t.map(a=>{var[l,s]=a,o=$.getColumn(e,l);R(o);var u=this.hydrateAdvancedFilterOptions(o,s.options),d=null;try{var h=$.getColumn(e,l);h!=null&&(d=this.tableUtils.makeAdvancedFilter(o,u,r))}catch(c){rr.error("hydrateAdvancedFilters error with",u,c)}return[l,{options:u,filter:d}]});return new Map(i)}dehydrateAdvancedFilterOptions(e,t){var{selectedValues:r}=t,i=qi(t,lh);return $e({selectedValues:r==null?void 0:r.map(a=>this.dehydrateValue(a,e==null?void 0:e.type))},i)}hydrateAdvancedFilterOptions(e,t){var{selectedValues:r}=t,i=qi(t,sh);return $e({selectedValues:r==null?void 0:r.map(a=>this.hydrateValue(a,e==null?void 0:e.type))},i)}dehydratePendingDataMap(e,t){return[...t].map(r=>{var[i,{data:a}]=r;return[i,{data:[...a].filter(l=>{var[s]=l;return typeof s=="number"}).map(l=>{var[s,o]=l;return[e[s].name,this.dehydrateValue(o.value,e[s].type)]})}]})}hydratePendingDataMap(e,t){var r=new Map,i=a=>(r.has(a)||r.set(a,e.findIndex(l=>{var{name:s}=l;return s===a})),r.get(a));return new Map(t.map(a=>{var[l,{data:s}]=a;return[l,{data:new Map(s.map(o=>{var u,[d,h]=o,c=i(d);return R(c),[(u=i(d))!==null&&u!==void 0?u:null,{value:this.hydrateValue(h,e[c].type)}]}))}]}))}dehydratePartitionConfig(e,t){return t==null?t:$e($e({},t),{},{partitions:t.partitions.map((r,i)=>this.dehydrateValue(r,e[i].type))})}hydratePartitionConfig(e,t){return t==null?t:$e($e({},t),{},{partitions:t.partitions.map((r,i)=>this.hydrateValue(r,e[i].type))})}dehydrateValue(e,t){return S.isDateType(t)?this.dehydrateDateTime(e):S.isLongType(t)?$.dehydrateLong(e):e}hydrateValue(e,t){return S.isDateType(t)?this.hydrateDateTime(e):S.isLongType(t)?this.hydrateLong(e):e}dehydrateDateTime(e){return e!=null?this.dh.i18n.DateTimeFormat.format(le.FULL_DATE_FORMAT,e):null}hydrateDateTime(e){return e!=null?this.dh.i18n.DateTimeFormat.parse(le.FULL_DATE_FORMAT,e):null}hydrateLong(e){return e!=null?this.dh.LongWrapper.ofString(e):null}hydrateSort(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{dh:i}=this;return t.map(a=>{var{column:l,isAbs:s,direction:o}=a;if(o===S.sortDirection.reverse)return i.Table.reverse();var u=typeof l=="string"?$.getColumnByName(e,l):$.getColumn(e,l);return u!=null?{column:{name:u.name,type:u.type},isAbs:s,direction:o}:null}).filter(a=>a!=null&&(a.direction!==S.sortDirection.reverse||!r))}hydrateDhSort(e,t){var{dh:r}=this;return t.map(i=>{var{column:{name:a},isAbs:l,direction:s}=i;if(s===S.sortDirection.reverse)return r.Table.reverse();var o=$.getColumnByName(e,a);if(o!=null){var u=o.sort();return l&&(u=u.abs()),s===S.sortDirection.descending?u=u.desc():u=u.asc(),u}return null}).filter(hu)}applyTableSettings(e,t,r){var{columns:i}=e,a=[];t.quickFilters&&(a=$.getFiltersFromFilterMap(this.hydrateQuickFilters(i,t.quickFilters,r)));var l=[];t.advancedFilters&&(l=$.getFiltersFromFilterMap(this.hydrateAdvancedFilters(i,t.advancedFilters,r)));var s=this.getFiltersFromInputFilters(i,t.inputFilters,r),o=[];t.sorts&&(o=this.hydrateDhSort(i,this.hydrateSort(i,t.sorts)));var u=[...a,...l],{partitions:d,partitionColumns:h}=t;if(d&&d.length&&h&&h!==null&&h!==void 0&&h.length){for(var c=h.map(m=>$.getColumnByName(i,m)),v=0;v<c.length;v+=1)if(c[v]!==void 0&&d[v]!=null){var g=c[v].filter().eq(this.dh.FilterValue.ofString(d[v]));u=[g,...u]}}u=[...s,...u],e.applyFilter(u),e.applySort(o)}getFiltersFromInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],r=arguments.length>2?arguments[2]:void 0;return t.map(i=>{var{name:a,type:l,value:s}=i,o=e.find(u=>{var{name:d,type:h}=u;return d===a&&h===l});if(o)try{return this.tableUtils.makeQuickFilter(o,s,r)}catch(u){rr.debug("Unable to create input filter",u)}return null}).filter(i=>i!=null)}rangeSetFromRanges(e){var{dh:t}=this,r=e.slice().sort((i,a)=>(R(i.startRow),R(a.startRow),i.startRow-a.startRow)).map(i=>{var{startRow:a,endRow:l}=i;return R(a),R(l),t.RangeSet.ofRange(a,l)});return t.RangeSet.ofRanges(r)}static colorForValue(e,t,r,i){return S.isDateType(t)||r==="Date"?(R(e.dateColor),e.dateColor):S.isNumberType(t)?i>0?(R(e.positiveNumberColor),e.positiveNumberColor):i<0?(R(e.negativeNumberColor),e.negativeNumberColor):(R(e.zeroNumberColor),e.zeroNumberColor):e.textColor}static textAlignForValue(e,t){return S.isDateType(e)||t==="Date"?"center":S.isNumberType(e)?"right":"left"}}function Cn(n,e,t){return(e=ch(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ch(n){var e=vh(n,"string");return typeof e=="symbol"?e:e+""}function vh(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class ph extends Error{constructor(e,t){super("".concat(t," can't be empty (on pending row ").concat(e+1,")")),Cn(this,"isMissingKey",!0),Cn(this,"rowIndex",void 0),Cn(this,"columnName",void 0),this.rowIndex=e,this.columnName=t}}function Yi(n,e,t){return(e=mh(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function mh(n){var e=fh(n,"string");return typeof e=="symbol"?e:e+""}function fh(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class gh extends Error{constructor(e,t){super(e,t),Yi(this,"ranges",void 0),Yi(this,"text",void 0),this.ranges=t==null?void 0:t.ranges,this.text=t==null?void 0:t.text,this.name="GridCommitError",this.cause=t==null?void 0:t.cause}toString(){return"".concat(this.message).concat(this.cause!==void 0?": ".concat(this.cause):"")}}function Zi(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 Pr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Zi(Object(t),!0).forEach(function(r){q(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Zi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Qi(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function ft(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Qi(a,r,i,l,s,"next",o)}function s(o){Qi(a,r,i,l,s,"throw",o)}l(void 0)})}}function q(n,e,t){return(e=bh(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function bh(n){var e=Ch(n,"string");return typeof e=="symbol"?e:e+""}function Ch(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ue=ee.module("IrisGridTableModelTemplate"),yh=150,Sh=0;function ct(n){return n.table!==void 0}class Ut extends W{seekRow(e,t,r,i,a,l,s){throw new Error("Method not implemented.")}export(){throw new Error("Method not implemented.")}columnStatistics(e){throw new Error("Method not implemented.")}get customColumns(){return[]}set customColumns(e){throw new Error("Method not implemented.")}get formatColumns(){return[]}set formatColumns(e){throw new Error("Method not implemented.")}updateFrozenColumns(e){throw new Error("Method not implemented.")}get rollupConfig(){throw new Error("Method not implemented.")}set rollupConfig(e){throw new Error("Method not implemented.")}get selectDistinctColumns(){throw new Error("Method not implemented.")}set selectDistinctColumns(e){throw new Error("Method not implemented.")}get columns(){return this.table.columns}constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Ke(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:new Map;super(e),q(this,"dh",void 0),q(this,"irisGridUtils",void 0),q(this,"tableUtils",void 0),q(this,"irisFormatter",void 0),q(this,"irisColumnAlignmentMap",void 0),q(this,"inputTable",void 0),q(this,"subscription",void 0),q(this,"table",void 0),q(this,"viewport",void 0),q(this,"viewportData",void 0),q(this,"formattedStringData",void 0),q(this,"pendingStringData",void 0),q(this,"isSaveInProgress",void 0),q(this,"totalsTable",void 0),q(this,"totalsTablePromise",void 0),q(this,"totals",void 0),q(this,"totalsDataMap",void 0),q(this,"pendingNewDataMap",void 0),q(this,"pendingNewRowCount",0),q(this,"_columnHeaderGroupMap",new Map),q(this,"columnHeaderParentMap",new Map),q(this,"_columnHeaderMaxDepth",null),q(this,"_columnHeaderGroups",[]),q(this,"_isColumnHeaderGroupsInitialized",!1),q(this,"_movedColumns",null),q(this,"getMemoizedInitialMovedColumns",U(l=>{var s,o,u,d;if(!l)return[];var h=[],{groupMap:c}=$.parseColumnHeaderGroups(this,(s=l==null?void 0:l.columnGroups)!==null&&s!==void 0?s:[]),v=(D,N)=>{var M=this.getColumnIndexByName(D);if(M==null)throw new Error("Unknown layout hint column: ".concat(D));var F=G.getVisibleIndex(M,h);h=G.moveItem(F,N,h)},g=(D,N)=>{var M=c.get(D);if(M==null)throw new Error("Unknown layout hint group: ".concat(D));var F=M.getVisibleRange(h);h=G.moveRange(F,N,h)},m=(o=l.frontColumns)!==null&&o!==void 0?o:[],f=(u=l.backColumns)!==null&&u!==void 0?u:[],b=(d=l.frozenColumns)!==null&&d!==void 0?d:[];if(m.length>0||f.length>0||b.length>0){var y=new Set,C=0;b==null||b.forEach(D=>{if(y.has(D))throw new Error("Column specified in multiple layout hints: ".concat(D));v(D,C),C+=1}),m.forEach(D=>{if(y.has(D))throw new Error("Column specified in multiple layout hints: ".concat(D));v(D,C),C+=1});var T=this.columns.length-1;f==null||f.forEach(D=>{if(y.has(D))throw new Error("Column specified in multiple layout hints: ".concat(D));v(D,T),T-=1})}var w=l==null?void 0:l.columnGroups;if(w){var O=[...c.values()];O.sort((D,N)=>D.depth-N.depth),O.forEach(D=>{var N=D.children[0],M=this.getColumnIndexByName(N),F;if(M!=null)F=G.getVisibleIndex(M,h);else{var k=c.get(N);if(!k)throw new Error("Unknown column ".concat(N," in group ").concat(D.name));var L=k.getVisibleRange(h);[,F]=L}for(var V=1;V<D.children.length;V+=1){var X=D.children[V],Y=c.get(X),Z=this.getColumnIndexByName(X);if(Y){var se=Y.getVisibleRange(h)[0]<F,re=se?F-Y.childIndexes.length+1:F+1;g(X,re),F=re+Y.childIndexes.length-1}else if(Z!=null){var Ce=G.getVisibleIndex(Z,h)<F,ge=Ce?F:F+1;v(X,ge),F=ge}}})}return this._movedColumns=h,h})),q(this,"getMemoizedInitialColumnHeaderGroups",U(l=>{var s;return $.parseColumnHeaderGroups(this,(s=l==null?void 0:l.columnGroups)!==null&&s!==void 0?s:[]).groups})),q(this,"getColumnIndicesByNameMap",U(l=>{var s=new Map;return l.forEach((o,u)=>{var{name:d}=o;return s.set(d,u)}),s})),q(this,"setViewport",gi((l,s,o)=>{if(s<l){ue.error("Invalid viewport",l,s);return}var{viewport:u}=this;if(u!=null&&u.top===l&&u.bottom===s&&u.columns===o){ue.debug2("Ignoring duplicate viewport",u);return}this.viewport={top:l,bottom:s,columns:o},ue.debug2("setViewport",this.viewport),this.applyViewport()},yh)),q(this,"applyViewport",gi(()=>{if(this.viewport){ue.debug2("applyViewport",this.viewport);var{top:l,bottom:s,columns:o}=this.viewport,[u,d]=this.getCachedViewportRowRange(l,s);this.applyBufferedViewport(u,d,o)}},Sh,{leading:!1})),q(this,"getCachedFormattedString",Mn((l,s,o,u,d)=>l.getFormattedString(s,o,u,d),{max:1e4})),q(this,"getCachedCustomColumnFormatFlag",Mn(Fn.isCustomColumnFormatDefined,{max:1e4})),q(this,"getCachedViewportRowRange",U((l,s)=>{var o=s-l,u=Math.max(0,l-o*Ut.ROW_BUFFER_PAGES),d=s+o*Ut.ROW_BUFFER_PAGES;return[u,d]})),q(this,"getCachedPendingErrors",U((l,s,o)=>{var u=new Map;return l.forEach((d,h)=>{for(var{data:c}=d,v=0;v<o;v+=1)if(!c.has(v)){var g;u.has(h)||u.set(h,[]),(g=u.get(h))===null||g===void 0||g.push(new ph(h,s[v].name))}}),u})),this.handleTableDisconnect=this.handleTableDisconnect.bind(this),this.handleTableReconnect=this.handleTableReconnect.bind(this),this.handleTableUpdate=this.handleTableUpdate.bind(this),this.handleTotalsUpdate=this.handleTotalsUpdate.bind(this),this.handleRequestFailed=this.handleRequestFailed.bind(this),this.handleCustomColumnsChanged=this.handleCustomColumnsChanged.bind(this),this.dh=e,this.irisFormatter=r,this.irisColumnAlignmentMap=a,this.irisGridUtils=new $(e),this.inputTable=i,this.subscription=null,this.table=t,this.tableUtils=new S(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}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 ae(W.EVENT.DISCONNECT))}handleTableReconnect(){this.dispatchEvent(new ae(W.EVENT.RECONNECT))}handleTableUpdate(e){this.copyViewportData(e.detail),this.dispatchEvent(new ae(W.EVENT.UPDATED))}handleTotalsUpdate(e){this.copyTotalsData(e.detail),this.dispatchEvent(new ae(W.EVENT.UPDATED))}handleRequestFailed(e){this.dispatchEvent(new ae(W.EVENT.REQUEST_FAILED,e))}handleCustomColumnsChanged(){this.dispatchEvent(new ae(W.EVENT.COLUMNS_CHANGED,{detail:this.columns}))}get rowCount(){var e,t;return Math.max(this.table.size,0)+this.pendingNewRowCount+((e=(t=this.totals)===null||t===void 0||(t=t.operationOrder)===null||t===void 0?void 0:t.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(!$.isValidIndex(r))throw new Error("Invalid rowIndex ".concat(r));var{data:i}=t;i.forEach((a,l)=>{if(!$.isValidIndex(l))throw new Error("Invalid columnIndex ".concat(l))})}),this.pendingNewDataMap=e,this.pendingNewRowCount=Math.max(this.pendingNewRowCount,this.maxPendingDataRow),this.formattedStringData=[],this.dispatchEvent(new ae(W.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 ae(W.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;return this.totals!=null&&this.totals.showOnTop?0:(e=(t=this.totals)===null||t===void 0||(t=t.operationOrder)===null||t===void 0?void 0:t.length)!==null&&e!==void 0?e:0}get floatingTopRowCount(){var e,t;return this.totals!=null&&this.totals.showOnTop&&(e=(t=this.totals)===null||t===void 0||(t=t.operationOrder)===null||t===void 0?void 0:t.length)!==null&&e!==void 0?e:0}get isValuesTableAvailable(){return this.table.selectDistinct!=null&&this.table.copy!=null}get isChartBuilderAvailable(){return!0}get isOrganizeColumnsAvailable(){return!0}get isTotalsAvailable(){return this.table.getTotalsTable!=null}get isEditable(){return!this.isSaveInProgress&&this.inputTable!=null}get isDeletable(){return this.keyColumnSet.size>0}get isViewportPending(){if(this.viewport==null||this.viewport.columns===void 0||this.viewportData==null)return!0;if(this.viewport.columns.length===0||this.viewportData.rows.length===0)return!1;var e=this.viewport.top<this.viewportData.offset,t=this.viewportData.offset+this.viewportData.rows.length<this.viewport.bottom,r=this.viewportData.rows[0].data.get(this.viewport.columns[0].index)===void 0,i=this.viewportData.rows[0].data.get(this.viewport.columns[this.viewport.columns.length-1].index)===void 0;return e||t||r||i}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=this.valueForCell(e,t);if(a===null)return null;if(a===void 0)return;var l=this.sourceColumn(e,t),s=this.getCachedCustomColumnFormatFlag(this.formatter,l.name,l.type),o;if(!s){var u=this.formatForCell(e,t);(u==null?void 0:u.formatString)!=null&&(o=u)}var d=this.displayString(a,l.type,l.name,o);this.cacheFormattedValue(e,t,d)}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(S.isTextType((r=this.columns[e])===null||r===void 0?void 0:r.type)){if(i===null)return this.formatter.showNullStrings?"null":"";if(i==="")return this.formatter.showEmptyStrings?"empty":""}return i??""}truncationCharForCell(e){var t=this.columns[e],{type:r}=t;if(S.isNumberType(r)&&this.formatter.truncateNumbersWithPound)return"#"}colorForCell(e,t,r){var i=this.dataForCell(e,t);if(i){var{format:a,value:l}=i;if(l==null||l==="")return R(r.nullStringColor),r.nullStringColor;if((a==null?void 0:a.color)!=null&&a.color!=="")return a.color;if(this.isPendingRow(t))return R(r.pendingTextColor),r.pendingTextColor;if(l!=null){var s=this.sourceColumn(e,t);return $.colorForValue(r,s.type,s.name,l)}}else if(this.isPendingRow(t)&&this.isKeyColumn(e))return R(r.errorTextColor),r.errorTextColor;return r.textColor}backgroundColorForCell(e,t,r){var i,a;return(i=(a=this.formatForCell(e,t))===null||a===void 0?void 0:a.backgroundColor)!==null&&i!==void 0?i:null}textAlignForCell(e,t){var r=this.sourceColumn(e,t),i=this.columnAlignmentMap.get(r.name);return i??$.textAlignForValue(r.type,r.name)}textForColumnHeader(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,i=this.columnAtDepth(e,r);return bn(i)?i.isNew?"":i.name:(t=i==null?void 0:i.displayName)!==null&&t!==void 0?t:i==null?void 0:i.name}colorForColumnHeader(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=this.columnAtDepth(e,t);if(bn(r)){var i;return(i=r.color)!==null&&i!==void 0?i:null}return null}tooltipForCell(e,t){return S.isDateType(this.columns[e].type)?this.displayString(this.valueForCell(e,t),this.columns[e].type,this.columns[e].name,{formatString:le.FULL_DATE_FORMAT}):null}getColumnHeaderGroup(e,t){var r=this.columnAtDepth(e,t);if(bn(r))return r}getColumnHeaderParentGroup(e,t){var r,i;return this.columnHeaderParentMap.get((r=(i=this.columnAtDepth(e,t))===null||i===void 0?void 0:i.name)!==null&&r!==void 0?r:"")}columnAtDepth(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;if(r===0)return this.columns[e];var i=(t=this.columns[e])===null||t===void 0?void 0:t.name,a=this.columnHeaderParentMap.get(i);if(a){for(var l=a.depth;l<r;){if(a=this.columnHeaderParentMap.get(a.name),!a)return;l=a.depth}if(a.depth===r)return a}}textForRowFooter(e){var t=this.totalsRow(e);return t!=null&&this.totals?this.totals.operationOrder[t]:""}get initialMovedColumns(){var e;return this.getMemoizedInitialMovedColumns((e=this.layoutHints)!==null&&e!==void 0?e:void 0)}get initialColumnHeaderGroups(){var e;return this.getMemoizedInitialColumnHeaderGroups((e=this.layoutHints)!==null&&e!==void 0?e:void 0)}get columnHeaderMaxDepth(){var e;return(e=this._columnHeaderMaxDepth)!==null&&e!==void 0?e:1}set columnHeaderMaxDepth(e){this._columnHeaderMaxDepth=e}get columnHeaderGroupMap(){return this.initializeColumnHeaderGroups(),this._columnHeaderGroupMap}get columnHeaderGroups(){return this.initializeColumnHeaderGroups(),this._columnHeaderGroups}set columnHeaderGroups(e){if(e!==this._columnHeaderGroups){var{groups:t,maxDepth:r,parentMap:i,groupMap:a}=$.parseColumnHeaderGroups(this,e??this.initialColumnHeaderGroups);this._columnHeaderGroups=t,this.columnHeaderMaxDepth=r,this.columnHeaderParentMap=i,this._columnHeaderGroupMap=a,this._isColumnHeaderGroupsInitialized=!0}}initializeColumnHeaderGroups(){if(!this._isColumnHeaderGroupsInitialized){var e,t;this.columnHeaderGroups=$.parseColumnHeaderGroups(this,(e=(t=this.layoutHints)===null||t===void 0?void 0:t.columnGroups)!==null&&e!==void 0?e:[]).groups}}row(e){var t,r,i,a,l,s,o,u,d=(t=(r=this.totals)===null||r===void 0||(r=r.operationOrder)===null||r===void 0?void 0:r.length)!==null&&t!==void 0?t:0,h=(i=(a=this.totals)===null||a===void 0?void 0:a.showOnTop)!==null&&i!==void 0?i:!1,c=this.totalsRow(e);if(c!=null){var v,g,m,f=(v=this.totals)===null||v===void 0?void 0:v.operationOrder[c];return R(f),(g=(m=this.totalsDataMap)===null||m===void 0?void 0:m.get(f))!==null&&g!==void 0?g:null}var b=this.pendingRow(e);if(b!=null){var y;return(y=this.pendingNewDataMap.get(b))!==null&&y!==void 0?y:null}var C=(l=(s=this.viewportData)===null||s===void 0?void 0:s.offset)!==null&&l!==void 0?l:0,T=(h?e-d:e)-C;return(o=(u=this.viewportData)===null||u===void 0||(u=u.rows)===null||u===void 0?void 0:u[T])!==null&&o!==void 0?o:null}sourceColumn(e,t){var r=this.totalsRow(t);if(r!=null){var i,a,l,s,o=(i=this.totals)===null||i===void 0?void 0:i.operationOrder[r],u=(a=(l=this.totals)===null||l===void 0?void 0:l.defaultOperation)!==null&&a!==void 0?a:K.SUM,d=this.columns[e],h=(s=this.totalsTable)===null||s===void 0?void 0:s.columns.find(c=>{var v;return c.name==="".concat(d.name,"__").concat(o)||(o===u||((v=this.totals)===null||v===void 0||(v=v.operationMap[c.name])===null||v===void 0?void 0:v.length)===1)&&c.name===d.name});if(h!=null)return h}return this.columns[e]}totalsRow(e){var t,r,i,a,l=(t=(r=this.totals)===null||r===void 0||(r=r.operationOrder)===null||r===void 0?void 0:r.length)!==null&&t!==void 0?t:0,s=(i=(a=this.totals)===null||a===void 0?void 0:a.showOnTop)!==null&&i!==void 0?i:!1,o=s?e:e-this.table.size;return o>=0&&o<l?o:null}pendingRow(e){if(!this.isEditable)return null;var t=e-this.floatingTopRowCount-this.table.size;return t>=0?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){ue.warn("invalid data!");return}this.viewportData=this.extractViewportData(e),this.formattedStringData=[]}copyTotalsData(e){var t,r,i,a=this;if(e==null){ue.warn("invalid data!");return}var{columns:l,rows:s}=e;if(s.length!==1){ue.error("Unexpected number of rows received for totals table, ignoring update");return}for(var o=new Map,u=s[0],d=(t=(r=this.totals)===null||r===void 0?void 0:r.defaultOperation)!==null&&t!==void 0?t:K.SUM,h=(i=this.totals)===null||i===void 0?void 0:i.operationMap,c=function(){var m,f,b=l[v],[y,C=(m=h==null||(f=h[y])===null||f===void 0?void 0:f[0])!==null&&m!==void 0?m:d]=b.name.split("__");o.has(C)||o.set(C,{data:new Map});var{data:T}=o.get(C),w=a.columns.findIndex(O=>O.name===y);T.set(w,{value:u.get(b),format:u.getFormat(b)})},v=0;v<l.length;v+=1)c();ue.debug2("copyTotalsData",o),this.totalsDataMap=o,this.formattedStringData=[]}getColumnIndexByName(e){return this.getColumnIndicesByNameMap(this.columns).get(e)}extractViewportData(e){for(var t={offset:e.offset,rows:[]},{columns:r}=e,i=0;i<e.rows.length;i+=1){var a=e.rows[i],l=this.extractViewportRow(a,r);t.rows.push(l)}return t}extractViewportRow(e,t){for(var r=new Map,i=0;i<t.length;i+=1){var a=t[i],l=this.getColumnIndexByName(a.name);r.set(l??a.name,{value:e.get(a),format:e.getFormat(a)})}return{data:r}}closeSubscription(){ue.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 ae(W.EVENT.FORMATTER_UPDATED))}get columnAlignmentMap(){return this.irisColumnAlignmentMap}set columnAlignmentMap(e){this.irisColumnAlignmentMap=e}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(this.irisGridUtils.hydrateDhSort(this.columns,e)),this.applyViewport()}set totalsConfig(e){if(ue.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 ae(W.EVENT.UPDATED));return}this.totalsTablePromise=Le.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{Le.isCanceled(t)||(ue.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new ae(W.EVENT.REQUEST_FAILED,{detail:t})))})}}setTotalsTable(e){ue.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){if(this.dispatchEvent(new ae(W.EVENT.VIEWPORT_UPDATED)),ue.debug2("applyBufferedViewport",e,t,r),this.subscription==null){var i;ue.debug2("applyBufferedViewport creating new subscription"),this.subscription=(i=this.table.setViewport(e,t,r))!==null&&i!==void 0?i:null}else ue.debug2("applyBufferedViewport using existing subscription"),this.subscription.setViewport(e,t,r)}snapshot(e){var t=arguments,r=this;return ft(function*(){var i=t.length>1&&t[1]!==void 0?t[1]:!1,a=t.length>2&&t[2]!==void 0?t[2]:M=>M,l=t.length>3&&t[3]!==void 0?t[3]:!0;if(r.subscription==null)throw new Error("No subscription available");var s=l?j.consolidate(e):e;if(!$.isValidSnapshotRanges(s))throw new Error("Invalid snapshot ranges ".concat(e));for(var o=new Set,u=[],d=new Set,h=0;h<s.length;h+=1){var c=s[h];R(c.endRow),R(c.startRow);for(var v=c.startRow;v<=c.endRow&&v<r.floatingTopRowCount;v+=1)o.add(v);c.endRow>=r.floatingTopRowCount&&c.startRow<=r.floatingTopRowCount+r.table.size&&u.push(new j(c.startColumn,Math.min(Math.max(0,c.startRow-r.floatingTopRowCount)),c.endColumn,Math.min(Math.max(0,c.endRow-r.floatingTopRowCount),r.table.size-r.floatingTopRowCount)));for(var g=Math.max(c.startRow,r.floatingTopRowCount+r.table.size);g<=c.endRow&&g<r.floatingTopRowCount+r.table.size+r.floatingBottomRowCount;g+=1)d.add(g)}var m=$.columnsFromRanges(s,r.columns),f=[];i&&f.push(m.map(M=>M.name));for(var b=[...o].sort(),y=function*(){var F=b[C],k=m.map(L=>{var V=r.getColumnIndexByName(L.name);return R(V),a(r.valueForCell(V,F),L)});i&&k.push(r.textForRowFooter(F)),f.push(k)},C=0;C<b.length;C+=1)yield*y();if(u.length>0){var T=r.irisGridUtils.rangeSetFromRanges(u),w=yield r.subscription.snapshot(T,m);f.push(...w.rows.map(M=>m.map(F=>a(M.get(F),F))))}for(var O=[...d].sort(),D=function*(){var F=O[N],k=m.map(L=>{var V=r.getColumnIndexByName(L.name);return R(V),a(r.valueForCell(V,F),L)});i&&k.push(r.textForRowFooter(F)),f.push(k)},N=0;N<O.length;N+=1)yield*D();return f})()}textSnapshot(e){var t=arguments,r=this;return ft(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);ue.debug2("textSnapshot",e,i);var l=yield r.snapshot(e,i,a,!1);return l.map(s=>s.join(" ")).join(`
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./Chart-BTkEZV67.js","./vendor-CU9m3C3n.js","./helpers-BosuxZz1.js","./vendor-CdNlUFKS.css","./index-CaeBLWf2.js","./index-CSv_gtZy.css","./Plotly-CJhuCDFM.js","./plotly-BJo_M7Cs.js","./LogPanel-CpZTGwJv.js","./LogPanel-1yyBsI72.css","./DownsamplingError--AAvWHv_.js","./useMergeRef-BVbjpcbf.js","./Chart-CTDcF-lR.css","./IrisGrid-B4lUy4sd.js","./IrisGridThemeProvider-ZZ-85ME3.js","./useResizeObserver-DBuxCPgF.js","./IrisGridThemeProvider-Dsd6y6kc.css","./IrisGrid-BIOgeeAe.css","./MarkdownEditor-BOGDnkaM.js","./MarkdownNotebook-Dsw8M9b9.js","./MarkdownNotebook-CmpkKxys.css"])))=>i.map(i=>d[i]);
2
+ import{r as E,D as p,G as Me,H as Gs,J as Re,bp as Bs,I as Ne,bq as jn,br as Us,bs as Ws,bt as zs,bu as qs,ah as Ge,C as Ue,_ as zr,bv as En,ae as Be,bw as Ks,E as Xs,bx as U,bn as gi,bc as bi,by as Ys,bz as Zs,be as Qs,bA as jr,bB as wt,af as Et,aS as Js,aR as Ci,R as eo,L as sl,N as to,bC as ie}from"./vendor-CU9m3C3n.js";import{ca as ro,cb as no,cc as io,cd as ao,ce as lo,cf as so,cg as oo,ch as uo,ci as ho,cj as co,ck as _n,am as Gt,B as Le,cl as Ze,cm as hn,ai as _r,aj as vo,ak as po,E as Q,c3 as mo,aG as fo,aC as go,be as Vn,aH as bo,cn as It,co as ae,bD as dt,r as yi,bZ as ut,bF as wn,aK as Co,a6 as ol,L as yo,O as He,cp as So,cq as kt,cr as Tt,b4 as Pt,J,cs as Xt,ct as ht,cu as ul,cv as qr,aU as dl,cw as $n,cx as Kr,b_ as Xr,cy as gr,cz as br,cA as Hn,aq as H,_ as cr,cB as hl,cC as Gn,aw as Eo,cD as wo,cE as cl,Z as To,aS as Po,aE as ke,cF as Do,cG as Oo,cH as vl,cI as pl,b$ as Ve,cJ as oe,cK as Vr,U as Tn,A as Pn,G as ml,cL as Fo,V as Si,cM as Ei,c0 as No,cN as fl,u as Yr,bi as Dt,bf as we,b6 as $r,c6 as Lr,cO as Mo,aA as Ro,c8 as gl,c9 as bl,c7 as Cl,ao as yl,bt as Io,br as ko,bd as Sl,bg as El,bw as wl,ap as Lo,ar as Ao,a5 as xo,cP as jo,cQ as _o}from"./LogPanel-CpZTGwJv.js";import{T as Vo,ap as $o,aq as Ho,ac as Go,a as ee,ao as Bo,u as R,ar as Uo,L as vt,as as At,k as Wo,at as zo,au as Bn,av as Tl,aw as qo,ax as Pl,v as Zr,ay as Dl,az as wi,aA as Ti,aB as Ko,aC as Xo,d as Yo,G as Zo,e as Qo,aD as Jo,aE as eu,aF as tu,aG as ru,aH as nu,aI as iu,h as cn,aJ as au,aK as lu,aL as su,aM as ou,aN as uu}from"./index-CaeBLWf2.js";function Un(n){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,t=du(n,e);t.forEach(r=>{n[r]=n[r].bind(n)})}function du(n,e){for(var t=new Set,r=n,i=0;r!=null&&r!==Object.prototype&&(i<=1||e);){for(var a of Object.getOwnPropertyNames(r)){var l;a!=="constructor"&&typeof((l=Object.getOwnPropertyDescriptor(r,a))===null||l===void 0?void 0:l.value)=="function"&&t.add(a)}r=Object.getPrototypeOf(r),i+=1}return[...t.keys()]}function hu(n){return n!=null}function Wn(n){var{className:e,isFlipped:t,children:r,"data-testid":i}=n,a=u=>{if(r.length!==2)throw new Error("CardFlip requires 2 children to function");return r[u]},l=E.useRef(null),s=E.useCallback(u=>{u.target===u.currentTarget&&document.body.classList.add("card-flip--is-flipping")},[]),o=E.useCallback(u=>{u.target===u.currentTarget&&document.body.classList.remove("card-flip--is-flipping")},[]);return E.useEffect(function(){if(!l.current)throw Error("ref undefined");l.current.addEventListener("transitionstart",s);var d=l.current;return function(){if(d!=null)return d.removeEventListener("transitionstart",s)}},[s]),p.jsxs("div",{className:Me(e,{"card-flip--show-front":t,"card-flip--show-back":!t}),"data-testid":i,children:[p.jsx("div",{className:"card-flip--back",children:a(0)}),p.jsx("div",{ref:l,className:"card-flip--front",onTransitionEnd:o,children:a(1)})]})}var cu=["classNames","timeout","children","onEnter"];function Pi(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Di(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Pi(Object(t),!0).forEach(function(r){vu(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Pi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function vu(n,e,t){return(e=pu(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function pu(n){var e=mu(n,"string");return typeof e=="symbol"?e:e+""}function mu(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function fu(n,e){if(n==null)return{};var t,r,i=gu(n,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(n);for(r=0;r<a.length;r++)t=a[r],e.indexOf(t)===-1&&{}.propertyIsEnumerable.call(n,t)&&(i[t]=n[t])}return i}function gu(n,e){if(n==null)return{};var t={};for(var r in n)if({}.hasOwnProperty.call(n,r)){if(e.indexOf(r)!==-1)continue;t[r]=n[r]}return t}var bu={display:"contents"};function Dn(n){var{classNames:e,timeout:t=Vo.transitionMs,children:r,onEnter:i}=n,a=fu(n,cu),l=E.useRef(null),s=E.useCallback(u=>{var d=l.current;d&&(i==null||i(d,u))},[i]),o=E.useCallback(u=>{l.current=u==null?void 0:u.firstElementChild},[]);return p.jsx(Gs,Di(Di({nodeRef:l,timeout:t,classNames:Me("fade",e),onEnter:s},a),{},{children:p.jsx("div",{ref:o,style:bu,children:r})}))}var zn=Re.forwardRef((n,e)=>{var{children:t,className:r,disabled:i=!1,id:a,isLinked:l=!1,isLinkedSource:s=!1,isInvalid:o=!1,onClick:u,onMouseEnter:d,onMouseLeave:h,style:c,"data-testid":v}=n,{UNSAFE_className:g}=Bs({},"button");return p.jsxs("button",{ref:e,type:"button",className:Me("btn-socketed",{"btn-socketed-linked":l!==void 0&&l||s},{"btn-socketed-linked-source":s},{"is-invalid":o},r,g),id:a,onClick:u,onMouseEnter:d,onMouseLeave:h,style:c,disabled:i,"data-testid":v,children:[t,p.jsx(Ne,{icon:$o,className:"linked btn-socketed-icon",transform:"down-1"}),p.jsx(Ne,{icon:Ho,className:"is-invalid btn-socketed-icon"})]})});zn.displayName="SocketedButton";function Oi(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function Cu(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Oi(a,r,i,l,s,"next",o)}function s(o){Oi(a,r,i,l,s,"throw",o)}l(void 0)})}}var Ol=E.createContext(null);Ol.displayName="DeferredApiContext";function yu(n){var[e,t]=E.useState(null),[r,i]=E.useState(null),a=E.useContext(Ol),l=E.useContext(Go);return E.useEffect(()=>{if(a==null){if(l!=null){t(l),i(null);return}t(null),i(new Error("No API available in useDeferredApi. Was code wrapped in ApiBootstrap or DeferredApiContext.Provider?"));return}var s=!1;function o(){return u.apply(this,arguments)}function u(){return u=Cu(function*(){if(n==null)s||(t(null),i(new Error("No widget provided to useDeferredApi")));else if(typeof a=="function")try{var d=yield a(n);s||(t(d),i(null))}catch(h){s||(t(null),i(h??new Error("Null error")))}else t(a)}),u.apply(this,arguments)}return o(),()=>{s=!0}},[l,a,n]),[e,r]}function Fi(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function vn(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Fi(Object(t),!0).forEach(function(r){Su(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Fi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Su(n,e,t){return(e=Eu(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Eu(n){var e=wu(n,"string");return typeof e=="symbol"?e:e+""}function wu(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Fl(n,e){return function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:e,r=arguments.length>1?arguments[1]:void 0;switch(r==null?void 0:r.type){case n:{var i=r.payload;return i==null?null:t!=null?vn(vn({},t),i):vn({},i)}default:return t}}}function Ot(n,e){return function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:e,r=arguments.length>1?arguments[1]:void 0;switch(r==null?void 0:r.type){case n:return r.payload;default:return t}}}const Tu=Ot(ro,null),Pu=Ot(no,null),Du=Ot(io,null),Ou=Ot(ao,null),Fu=Ot(lo,null),Nu=Ot(so,null),Mu=jn({commandHistoryStorage:Ou,fileStorage:Fu,workspaceStorage:Nu}),Ru=Fl(oo,null),Iu=Fl(uo,null),ku=Ot(ho,null),Lu=Ot(co,null);var Au={activeTool:Pu,api:Tu,plugins:Du,storage:Mu,user:Ru,workspace:Iu,defaultWorkspaceSettings:ku,serverConfigValues:Lu},Ni=ee.module("redux-logger"),xu=n=>e=>t=>{Ni.debug("dispatching",t);var r=e(t);return Ni.debug("next state",n.getState()),r},ju=ee.module("redux-crashReporter"),_u=n=>e=>t=>{try{return e(t)}catch(r){throw ju.error("Error executing",t," with state ",n.getState(),":",r),r}};const Vu=[xu,_u,Us];var pn;Object.entries(Au).map(n=>{var[e,t]=n;return _n.register(e,t)});var $u=(pn=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__)!==null&&pn!==void 0?pn:qs,Nl=Ws(jn(_n.reducers),$u(zs(...Vu)));_n.setListener(n=>{Nl.replaceReducer(jn(n))});class Hu extends Gt{format(e){switch(e){case 1:case!0:return"true";case 0:case!1:return"false";default:return""}}}class Gu extends Gt{format(e){return String.fromCharCode(e)}}class Bu extends Gt{format(e){return"".concat(e)}}class Uu extends Gt{format(e){return e}}function Mi(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Ri(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Mi(Object(t),!0).forEach(function(r){qn(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Mi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function qn(n,e,t){return(e=Wu(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Wu(n){var e=zu(n,"string");return typeof e=="symbol"?e:e+""}function zu(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var qu=/\s*(\d{4})([-./](\d{1,2}|[a-z]+))?([-./](\d{1,2}))?([tT\s](\d{2})([:](\d{2}))?([:](\d{2}))?([.](\d{1,9}))?)?(.*)/;class le{static makeDateWrapper(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:1,l=arguments.length>5&&arguments[5]!==void 0?arguments[5]:0,s=arguments.length>6&&arguments[6]!==void 0?arguments[6]:0,o=arguments.length>7&&arguments[7]!==void 0?arguments[7]:0,u=arguments.length>8&&arguments[8]!==void 0?arguments[8]:0;if(!t)throw new Error("No timezone provided");var d="".concat(r).padStart(4,"0"),h="".concat(i+1).padStart(2,"0"),c="".concat(a).padStart(2,"0"),v="".concat(l).padStart(2,"0"),g="".concat(s).padStart(2,"0"),m="".concat(o).padStart(2,"0"),f="".concat(u).padStart(9,"0"),b="".concat(d,"-").concat(h,"-").concat(c," ").concat(v,":").concat(g,":").concat(m,".").concat(f);return e.i18n.DateTimeFormat.parse(le.FULL_DATE_FORMAT,b,e.i18n.TimeZone.getTimeZone(t))}static getNextNanos(e){var t=parseInt(e,10),r="0".repeat(9-e.length),i="".concat(t+1).concat(r);return parseInt(i,10)}static getNextDate(e,t,r,i){var{year:a,month:l,date:s,hours:o,minutes:u,seconds:d,nanos:h}=r;if(t.nanos!=null){if(t.nanos.length===9)return null;h=le.getNextNanos(t.nanos),h>999999999&&(d+=1,h=0)}else t.seconds!=null?d+=1:t.minutes!=null?u+=1:t.hours!=null?o+=1:t.date!=null?s+=1:t.month!=null?l+=1:a+=1;var c=new Date(a,l,s,o,u,d);return le.makeDateWrapper(e,i,c.getFullYear(),c.getMonth(),c.getDate(),c.getHours(),c.getMinutes(),c.getSeconds(),h)}static parseMonth(e){var t=parseInt(e,10);if(!Number.isNaN(t))return t>=1&&t<=12?t-1:NaN;var r=e.trim().toLowerCase();if(r.length>=3){for(var i=0;i<le.months.length;i+=1)if(le.months[i].startsWith(r))return i}return NaN}static parseDateValues(e,t,r,i,a,l,s){var o=parseInt(e,10),u=t!=null?this.parseMonth(t):0,d=r!=null?parseInt(r,10):1,h=i!=null?parseInt(i,10):0,c=a!=null?parseInt(a,10):0,v=l!=null?parseInt(l,10):0,g=s!=null?parseInt(s.padEnd(9,"0"),10):0;return Number.isNaN(o)||Number.isNaN(u)||Number.isNaN(d)||Number.isNaN(h)||Number.isNaN(c)||Number.isNaN(v)||Number.isNaN(g)?null:{year:o,month:u,date:d,hours:h,minutes:c,seconds:v,nanos:g}}static parseDateTimeString(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,r=qu.exec(e);if(r==null)throw new Error("Unexpected date string: ".concat(e));var[,i,,a,,l,,s,,o,,u,,d,h]=r;if(!t&&h!=null&&h.length>0)throw new Error("Unexpected characters after date string '".concat(e,"': ").concat(h));var c={year:i,month:a,date:l,hours:s,minutes:o,seconds:u,nanos:d};return t?Ri(Ri({},c),{},{overflow:h}):c}static parseDateRange(e,t,r){var i=t.trim().toLowerCase();if(i.length===0)throw new Error("Cannot parse date range from empty string");if(i==="null")return[null,null];if(i==="today"){var a=new Date(Date.now()),l=le.makeDateWrapper(e,r,a.getFullYear(),a.getMonth(),a.getDate()),s=new Date(a.getFullYear(),a.getMonth(),a.getDate()+1),o=le.makeDateWrapper(e,r,s.getFullYear(),s.getMonth(),s.getDate());return[l,o]}if(i==="yesterday"){var u=new Date(Date.now()),d=new Date(u.getFullYear(),u.getMonth(),u.getDate()-1),h=le.makeDateWrapper(e,r,d.getFullYear(),d.getMonth(),d.getDate()),c=le.makeDateWrapper(e,r,u.getFullYear(),u.getMonth(),u.getDate());return[h,c]}if(i==="now"){var v=new Date(Date.now()),g=e.DateWrapper.ofJsDate(v);return[g,null]}var m=le.parseDateTimeString(i);if(m.year==null&&m.month==null&&m.date==null)throw new Error("Unable to extract year, month, or day ".concat(i));var f=le.parseDateValues(m.year,m.month,m.date,m.hours,m.minutes,m.seconds,m.nanos);if(f==null)throw new Error("Unable to extract date values from ".concat(m));var b=le.makeDateWrapper(e,r,f.year,f.month,f.date,f.hours,f.minutes,f.seconds,f.nanos),y=le.getNextDate(e,m,f,r);return[b,y]}static getJsDate(e){return typeof e=="number"?new Date(e):e.asDate()}static trimDateTimeStringTimeZone(e){var{overflow:t=""}=le.parseDateTimeString(e,!0);if(t==="")return e;if(!/^\s[A-Za-z]+/.test(t))throw new Error("Unexpected timezone format in overflow: '".concat(e,"'"));return e.slice(0,-t.length)}}qn(le,"FULL_DATE_FORMAT","yyyy-MM-dd HH:mm:ss.SSSSSSSSS");qn(le,"months",["january","february","march","april","may","june","july","august","september","october","november","december"]);function Kp(n,e){return n===e?{operator:"notEq",value:""}:{operator:"eq",value:n}}function Xp(n,e,t,r){return function(a){var l=t.trim();if(l==="")return null;var s=Ml(e,o=>n.makeSearchTextFilter(o,l,r),"or");return s(a)}}function Ml(n,e){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"or";return function(i){var a=i==null?void 0:i.findColumns(typeof n=="string"?[n]:n);if(a==null||a.length===0)return null;var l=a.map(e);return l.reduce((s,o)=>s[t](o))}}function Ku(n,e,t,r){return Ml(e,i=>i.filter()[r](n.makeFilterValue(i.type,t)),"or")}function Yp(n,e,t,r,i){return function(l){var s=l==null?void 0:l.findColumn(e),o=t==="all"||r&&t.size===0;return s==null||o?null:n.makeSelectValueFilter(s,[...t.keys()],i)}}function Zp(n){return function(t){return t.filter().isNull().not().and(t.filter().notEq(n.makeFilterValue(t.type,"")))}}function Qp(n,e){return function(r){var i=r.filter(),a=n.makeFilterValue(r.type,""),l=i.eq(a);return e?i.isNull().or(l):l.or(i.notEq(a))}}function Kn(n,e,t){return(e=Xu(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Xu(n){var e=Yu(n,"string");return typeof e=="symbol"?e:e+""}function Yu(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class vr{}Kn(vr,"not","not");Kn(vr,"and","and");Kn(vr,"or","or");function Jp(n){if(!(n==="not"||n==="and"||n==="or"))throw new Error("operator is not a valid FilterOperatorValue")}function ce(n,e,t){return(e=Zu(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Zu(n){var e=Qu(n,"string");return typeof e=="symbol"?e:e+""}function Qu(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class P{}ce(P,"eq","eq");ce(P,"eqIgnoreCase","eqIgnoreCase");ce(P,"notEq","notEq");ce(P,"notEqIgnoreCase","notEqIgnoreCase");ce(P,"greaterThan","greaterThan");ce(P,"greaterThanOrEqualTo","greaterThanOrEqualTo");ce(P,"lessThan","lessThan");ce(P,"lessThanOrEqualTo","lessThanOrEqualTo");ce(P,"in","in");ce(P,"inIgnoreCase","inIgnoreCase");ce(P,"notIn","notIn");ce(P,"notInIgnoreCase","notInIgnoreCase");ce(P,"isTrue","isTrue");ce(P,"isFalse","isFalse");ce(P,"isNull","isNull");ce(P,"invoke","invoke");ce(P,"contains","contains");ce(P,"notContains","notContains");ce(P,"containsIgnoreCase","containsIgnoreCase");ce(P,"startsWith","startsWith");ce(P,"endsWith","endsWith");ce(P,"containsAny","containsAny");function Ju(n){switch(n){case P.eq:return"is exactly";case P.eqIgnoreCase:return"is exactly (ignore case)";case P.notEq:return"is not exactly";case P.notEqIgnoreCase:return"is not exactly (ignore case)";case P.contains:return"contains";case P.notContains:return"does not contain";case P.startsWith:return"starts with";case P.endsWith:return"ends with";default:throw new Error("Unrecognized text filter type ".concat(n))}}function ed(n){switch(n){case P.eq:return"is equal to";case P.notEq:return"is not equal to";case P.greaterThan:return"greater than";case P.greaterThanOrEqualTo:return"greater than or equal to";case P.lessThan:return"less than";case P.lessThanOrEqualTo:return"less than or equal to";default:throw new Error("Unrecognized number filter type ".concat(n))}}function td(n){switch(n){case P.eq:return"date is";case P.notEq:return"date is not";case P.notEqIgnoreCase:case P.greaterThan:return"date is after";case P.greaterThanOrEqualTo:return"date is after or equal";case P.lessThan:return"date is before";case P.lessThanOrEqualTo:return"date is before or equal";default:throw new Error("Unrecognized date filter type ".concat(n))}}function em(n){switch(n){case P.isTrue:return"Is True";case P.isFalse:return"Is False";case P.isNull:return"Is Null";default:throw new Error("Unrecognized boolean filter type ".concat(n))}}var rd="DH_ITEM_KEY",Ii=ee.module("ViewportDataUtils");function Rl(n){return"".concat(rd,"_").concat(n)}function tm(n,e){var{bulkUpdate:t}=n;return function(i){var{columns:a,offset:l,rows:s}=i.detail;Ii.debug("table updated",i.detail);var o=new Map;s.forEach((u,d)=>{var h=e(u,a),c=Rl(l+d);o.set(c,{key:c,item:h})}),Ii.debug("update keys",o),t(o)}}function rm(n,e){return e.reduce((t,r)=>(t[r.name]=n.get(r),t),{})}function*nm(n,e){for(var t=n;t<=e;++t)yield{key:Rl(t)}}function nd(n){return n==null||id(n)?0:n.size}function id(n){return n!=null&&typeof n=="object"&&"isClosed"in n&&typeof n.isClosed=="boolean"?n.isClosed:!1}function im(n,e,t,r){var i=n+e-1,[a,l]=[0,r-1],s=Ge(n-t,a,l),o=Ge(i+t,a,l);return[s,o]}var On;function ki(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function Ct(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){ki(a,r,i,l,s,"next",o)}function s(o){ki(a,r,i,l,s,"throw",o)}l(void 0)})}}function Lt(n,e,t){return(e=ad(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ad(n){var e=ld(n,"string");return typeof e=="symbol"?e:e+""}function ld(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var at=ee.module("TableUtils");function am(n){return n===S.sortDirection.ascending||n===S.sortDirection.descending||n===S.sortDirection.reverse||n===S.sortDirection.none}class S{static copyTableAndApplyFilters(e){var t=arguments;return Ct(function*(){if(e==null)return null;for(var r=yield e.copy(),i=t.length,a=new Array(i>1?i-1:0),l=1;l<i;l++)a[l-1]=t[l];return r.applyFilter(hn(...a.map(s=>s(r)))),r})()}static getSortIndex(e,t){for(var r=0;r<e.length;r+=1){var i,a=e[r];if(((i=a.column)===null||i===void 0?void 0:i.name)===t)return r}return null}static getSortForColumn(e,t){var r=S.getSortIndex(e,t);return r!=null?e[r]:null}static getFilterText(e){return e?e.toString():null}static getFilterTypes(e){return S.isBooleanType(e)?[P.isTrue,P.isFalse,P.isNull]:S.isCharType(e)||S.isNumberType(e)||S.isDateType(e)?[P.eq,P.notEq,P.greaterThan,P.greaterThanOrEqualTo,P.lessThan,P.lessThanOrEqualTo]:S.isTextType(e)?[P.eq,P.eqIgnoreCase,P.notEq,P.notEqIgnoreCase,P.contains,P.notContains,P.startsWith,P.endsWith]:[]}static getNextSort(e,t,r){var i=e[r];if(i==null)return null;var a=S.getSortForColumn(t,i.name);return a===null?this.makeColumnSort(e,r,S.sortDirection.ascending,!1):a.direction===S.sortDirection.ascending?this.makeColumnSort(e,r,S.sortDirection.descending,!1):null}static makeColumnSort(e,t,r,i){var a=e[t];return a==null||r===S.sortDirection.none?null:{column:{name:a.name,type:a.type},isAbs:i,direction:r}}static toggleSortForColumn(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(t[r]==null)return[];var a=S.getNextSort(t,e,r);return S.setSortForColumn(e,t[r].name,a,i)}static sortColumn(e,t,r,i,a,l){if(r<0||r>=t.length)return[];var s=S.makeColumnSort(t,r,i,a);return S.setSortForColumn(e,t[r].name,s,l)}static setSortForColumn(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,a=S.getSortIndex(e,t),l=[];return i&&(l=l.concat(e.filter(s=>{var{direction:o}=s;return o!==S.sortDirection.reverse})),a!==null&&l.splice(a,1)),r!==null&&l.push(r),l}static getNormalizedType(e){switch(e){case"boolean":case"java.lang.Boolean":case S.dataType.BOOLEAN:return S.dataType.BOOLEAN;case"char":case"java.lang.Character":case S.dataType.CHAR:return S.dataType.CHAR;case"java.lang.String":case S.dataType.STRING:return S.dataType.STRING;case"io.deephaven.db.tables.utils.DBDateTime":case"io.deephaven.time.DateTime":case"com.illumon.iris.db.tables.utils.DBDateTime":case"java.time.Instant":case"java.time.ZonedDateTime":case S.dataType.DATETIME:return S.dataType.DATETIME;case"double":case"java.lang.Double":case"float":case"java.lang.Float":case"java.math.BigDecimal":case S.dataType.DECIMAL:return S.dataType.DECIMAL;case"int":case"java.lang.Integer":case"long":case"java.lang.Long":case"short":case"java.lang.Short":case"byte":case"java.lang.Byte":case"java.math.BigInteger":case S.dataType.INT:return S.dataType.INT;default:return S.dataType.UNKNOWN}}static isLongType(e){switch(e){case"long":case"java.lang.Long":return!0;default:return!1}}static isDateType(e){switch(e){case"io.deephaven.db.tables.utils.DBDateTime":case"io.deephaven.time.DateTime":case"java.time.Instant":case"java.time.ZonedDateTime":case"com.illumon.iris.db.tables.utils.DBDateTime":return!0;default:return!1}}static isNumberType(e){return S.isIntegerType(e)||S.isDecimalType(e)}static isIntegerType(e){switch(e){case"int":case"java.lang.Integer":case"java.math.BigInteger":case"long":case"java.lang.Long":case"short":case"java.lang.Short":case"byte":case"java.lang.Byte":return!0;default:return!1}}static isDecimalType(e){switch(e){case"double":case"java.lang.Double":case"java.math.BigDecimal":case"float":case"java.lang.Float":return!0;default:return!1}}static isBigDecimalType(e){switch(e){case"java.math.BigDecimal":return!0;default:return!1}}static isBigIntegerType(e){switch(e){case"java.math.BigInteger":return!0;default:return!1}}static isBooleanType(e){switch(e){case"boolean":case"java.lang.Boolean":return!0;default:return!1}}static isCharType(e){switch(e){case"char":case"java.lang.Character":return!0;default:return!1}}static isStringType(e){switch(e){case"java.lang.String":return!0;default:return!1}}static isTextType(e){return this.isStringType(e)||this.isCharType(e)}static getBaseType(e){return e.split("[]")[0]}static isCompatibleType(e,t){return S.getNormalizedType(e)===S.getNormalizedType(t)}static quoteValue(e){return e.length>=2&&(e.charAt(0)==='"'&&e.charAt(e.length-1)==='"'||e.charAt(0)==="'"&&e.charAt(e.length-1)==="'")?e:'"'.concat(e,'"')}static isRangeOperation(e){switch(e){case"<":case"<=":case"=<":case">":case">=":case"=>":return!0;default:return!1}}static makeRangeFilterWithOperation(e,t,r){switch(t){case"=":return e.eq(r);case"<":return e.lessThan(r);case"<=":case"=<":return e.lessThanOrEqualTo(r);case">":return e.greaterThan(r);case">=":case"=>":return e.greaterThanOrEqualTo(r);case"!=":case"!":return e.notEq(r);default:return null}}static makeCancelableTablePromise(e){return Le.makeCancelable(e,t=>{t.close()})}static makeCancelableTableEventPromise(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;return S.makeCancelableEventPromise(e,t,{timeout:r,matcher:i??void 0})}static makeCancelableEventPromise(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},{timeout:i=0,matcher:a}=r,l,s,o=!0,u=new Promise((d,h)=>{s=setTimeout(()=>{l(),o=!1,h(new Bo('Event "'.concat(t,'" timed out.')))},i),l=e.addEventListener(t,c=>{if(a!=null&&!a(c)){at.debug2("Event triggered, but matcher returned false.");return}at.debug2("Event triggered, resolving."),l(),clearTimeout(s),o=!1,d(c)})});return u.cancel=()=>{if(o){at.debug2("Pending promise cleanup."),l(),clearTimeout(s),o=!1;return}at.debug2("Ignoring non-pending promise cancel.")},u}static removeCommas(e){return e.replace(/[\s|,]/g,"")}static makeBooleanValue(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;if(e===""&&t)return null;switch(e==null?void 0:e.toLowerCase()){case"null":return null;case"0":case"f":case"fa":case"fal":case"fals":case"false":case"n":case"no":return!1;case"1":case"t":case"tr":case"tru":case"true":case"y":case"ye":case"yes":return!0;default:throw new Error("Invalid boolean '".concat(e,"'"))}}static makeNumberValue(e){if(e==="null"||e==="")return null;var t=e.toLowerCase().trim();if(t==="∞"||t==="infinity"||t==="inf")return Number.POSITIVE_INFINITY;if(t==="-∞"||t==="-infinity"||t==="-inf")return Number.NEGATIVE_INFINITY;var r=S.removeCommas(t);if(S.NUMBER_REGEX.test(r))return parseFloat(r);throw new Error("Invalid number '".concat(e,"'"))}static getFilterOperatorString(e){switch(e){case P.eq:return"=";case P.notEq:return"!=";case P.greaterThan:return">";case P.greaterThanOrEqualTo:return">=";case P.lessThan:return"<";case P.lessThanOrEqualTo:return"<=";case P.contains:return"~";case P.notContains:return"!~";default:throw new Error("Unexpected filter type ".concat(e))}}static isPartitionedTable(e){return e!=null&&e.getMergedTable!==void 0&&e.getKeyTable!==void 0&&e.getKeys!==void 0}static isTreeTable(e){return e!=null&&e.expand!==void 0&&e.collapse!==void 0}static sortColumns(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return[...e].sort((r,i)=>{var a=r.name.toUpperCase(),l=i.name.toUpperCase();return Ze.sort(a,l,t)})}constructor(e){Lt(this,"dh",void 0),this.dh=e,Un(this)}createDistinctSortedColumnTable(e,t,r){var i=arguments,a=this;return Ct(function*(){if(e==null)return null;for(var l=e,s=i.length,o=new Array(s>3?s-3:0),u=3;u<s;u++)o[u-3]=i[u];o.length>0&&(l=yield e.copy(),yield l.applyFilter(hn(...o.map(v=>v(l)))));var d=l.findColumn(t),h=yield l.selectDistinct([d]);l!==e&&l.close();var c=h.findColumn(t).sort()[r]();return a.applySort(h,[c])})()}doesColumnValueExist(e,t,r,i){var a=this;return Ct(function*(){if(e==null)return null;var l=Ku(a,t,r,i?"eq":"eqIgnoreCase"),s=yield e.copy();yield a.applyFilter(s,hn(l(s)));var o=nd(s);return s.close(),o>0})()}getValueType(e){if(e==null)return this.dh.ValueType.STRING;var t=S.getNormalizedType(e);switch(t){case S.dataType.BOOLEAN:return this.dh.ValueType.BOOLEAN;case S.dataType.CHAR:case S.dataType.STRING:return this.dh.ValueType.STRING;case S.dataType.DATETIME:return this.dh.ValueType.DATETIME;case S.dataType.DECIMAL:case S.dataType.INT:return S.isBigDecimalType(e)||S.isBigIntegerType(e)?this.dh.ValueType.STRING:this.dh.ValueType.NUMBER;default:return this.dh.ValueType.STRING}}makeQuickFilter(e,t,r){for(var i=t.split("||"),a=null,l=0;l<i.length;l+=1){for(var s=i[l],o=s.split("&&"),u=null,d=0;d<o.length;d+=1){var h=o[d].trim();if(h.length>0){var c=this.makeQuickFilterFromComponent(e,h,r);if(c)u?u=u.and(c):u=c;else throw new Error("Unable to parse quick filter from text ".concat(t))}}a&&u?a=a.or(u):a=u}return a}makeQuickFilterFromComponent(e,t,r){var{type:i}=e;return S.isNumberType(i)?this.makeQuickNumberFilter(e,t):S.isBooleanType(i)?this.makeQuickBooleanFilter(e,t):r!=null&&S.isDateType(i)?this.makeQuickDateFilter(e,t,r):S.isCharType(i)?this.makeQuickCharFilter(e,t):this.makeQuickTextFilter(e,t)}makeQuickNumberFilter(e,t){var r=e.filter(),{dh:i}=this,a=null,l=/\s*(>=|<=|=>|=<|>|<|!=|=|!)?(\s*-\s*)?(\s*\d*(?:,\d{3})*(?:\.\d*)?\s*)?(null|nan|infinity|inf|\u221E)?(.*)/i,s=l.exec(t),o=null,u=null,d=null,h=null,c=null;if(s!==null&&s.length>3&&([,o,u,d,h,c]=s),c!=null&&c.trim().length>0)return null;if(o==null&&(o="="),h!=null){if(!(o==="="||o==="!"||o==="!="))return null;switch(h=h.trim().toLowerCase(),h){case"null":a=r.isNull();break;case"nan":a=i.FilterCondition.invoke("isNaN",r);break;case"infinity":case"inf":case"∞":u!=null?a=i.FilterCondition.invoke("isInf",r).and(r.lessThan(i.FilterValue.ofNumber(0))):a=i.FilterCondition.invoke("isInf",r).and(r.greaterThan(i.FilterValue.ofNumber(0)));break}return a!==null&&(o==="!"||o==="!=")&&(a=a.not()),a}if(d==null)return null;if(d=S.removeCommas(d),S.isLongType(e.type))try{d=i.FilterValue.ofNumber(i.LongWrapper.ofString("".concat(u!=null?"-":"").concat(d)))}catch(v){return at.warn("Unable to create long filter",v),null}else{if(d=parseFloat(d),d==null||Number.isNaN(d))return null;d=i.FilterValue.ofNumber(u!=null?0-d:d)}return a=e.filter(),S.makeRangeFilterWithOperation(a,o,d)}static escapeQuickTextFilter(e){if(e==null)return null;var t=/^(!~|!=|~|=|!)?(.*)/,r=/^\\*null$/,i=t.exec(e),a=null,l=null;return i!==null&&i.length>2&&([,a,l]=i),a!=null?"\\".concat(a).concat(l??""):l!=null&&r.test(l.toLowerCase())||l!=null&&l.startsWith("*")?"\\".concat(l):l!=null&&l.endsWith("*")&&!l.endsWith("\\*")?(l=l.substring(0,l.length-1),"".concat(l,"\\*")):"".concat(a??"").concat(l??"")}static unescapeQuickTextFilter(e){var t=/^(\\!~|\\!=|\\~|\\=|\\!)?(.*)/,r=/^\\*null$/,i=t.exec(e),a=null,l=null;return i!==null&&i.length>2&&([,a,l]=i),a!=null&&(a=a.replace("\\","")),l!=null&&r.test(l.toLowerCase())&&(l=l.replace("\\","")),a==null&&l!=null&&l.startsWith("\\*")&&(l=l.substring(1)),a==null&&l!=null&&l.endsWith("\\*")?(l=l.substring(0,l.length-2),"".concat(l,"*")):"".concat(a??"").concat(l??"")}makeQuickTextFilter(e,t){var{dh:r}=this,i="".concat(t).trim(),a=/^(!~|!=|~|=|!)?(.*)/,l=a.exec(i),s=null,o=null;if(l!==null&&l.length>2&&([,s,o]=l,o!=null&&(o=o.trim())),o==null||o.length===0&&!(s==="="||s==="!="))return null;s==null&&(s="=");var u=e.filter();if(o.toLowerCase()==="null")switch(s){case"=":return u.isNull();case"!=":case"!":return u.isNull().not()}var d=null,h=null;switch(o.startsWith("*")?(d="*",o=o.substring(1)):o.endsWith("*")&&!o.endsWith("\\*")&&(h="*",o=o.substring(0,o.length-1)),o=S.unescapeQuickTextFilter(o),s){case"~":return u.isNull().not().and(u.invoke("matches",r.FilterValue.ofString("(?s)(?i).*\\Q".concat(o,"\\E.*"))));case"!~":return u.isNull().or(u.invoke("matches",r.FilterValue.ofString("(?s)(?i).*\\Q".concat(o,"\\E.*"))).not());case"!=":return d==="*"?u.isNull().or(u.invoke("matches",r.FilterValue.ofString("(?s)(?i).*\\Q".concat(o,"\\E$"))).not()):h==="*"?u.isNull().or(u.invoke("matches",r.FilterValue.ofString("(?s)(?i)^\\Q".concat(o,"\\E.*"))).not()):u.notEqIgnoreCase(r.FilterValue.ofString(o.toLowerCase()));case"=":return d==="*"?u.isNull().not().and(u.invoke("matches",r.FilterValue.ofString("(?s)(?i).*\\Q".concat(o,"\\E$")))):h==="*"?u.isNull().not().and(u.invoke("matches",r.FilterValue.ofString("(?s)(?i)^\\Q".concat(o,"\\E.*")))):u.eqIgnoreCase(r.FilterValue.ofString(o.toLowerCase()))}return null}makeQuickBooleanFilter(e,t){var r=/^(!=|=|!)?(.*)/,i=r.exec("".concat(t).trim());if(i===null)return null;var[,a,l]=i,s=a==="!"||a==="!=",o=l.trim().toLowerCase(),u=e.filter();try{var d=S.makeBooleanValue(o);return d!=null&&d?u=u.isTrue():d===null?u=u.isNull():u=u.isFalse(),s?u.not():u}catch{return null}}makeQuickDateFilter(e,t,r){var i=t.trim(),a=/\s*(>=|<=|=>|=<|>|<|!=|!|=)?(.*)/,l=a.exec(i);if(l==null||l.length<=2)throw new Error("Unable to parse date filter: ".concat(t));var s=null,o=null;[,s,o]=l;var u=P.eq;switch(s){case"<":u=P.lessThan;break;case"<=":case"=<":u=P.lessThanOrEqualTo;break;case">":u=P.greaterThan;break;case">=":case"=>":u=P.greaterThanOrEqualTo;break;case"!=":case"!":u=P.notEq;break;case"=":case"==":default:u=P.eq;break}return this.makeQuickDateFilterWithOperation(e,o,u,r)}makeQuickDateFilterWithOperation(e,t,r,i){var{dh:a}=this,[l,s]=le.parseDateRange(a,t,i),o=l!=null?a.FilterValue.ofNumber(l):null,u=s!=null?a.FilterValue.ofNumber(s):null,d=e.filter();if(o==null)return r===P.notEq?d.isNull().not():d.isNull();switch(r){case P.eq:{if(u!=null){var h=d.greaterThanOrEqualTo(o),c=d.lessThan(u);return h.and(c)}return d.eq(o)}case P.lessThan:return d.lessThan(o);case P.lessThanOrEqualTo:return u!=null?d.lessThan(u):d.lessThanOrEqualTo(o);case P.greaterThan:return u!=null?d.greaterThanOrEqualTo(u):d.greaterThan(o);case P.greaterThanOrEqualTo:return d.greaterThanOrEqualTo(o);case P.notEq:{if(u!=null){var v=d.lessThan(o),g=d.greaterThanOrEqualTo(u);return v.or(g)}return d.notEq(o)}default:throw new Error("Invalid operator: ".concat(r))}}makeQuickCharFilter(e,t){var{dh:r}=this,i="".concat(t).trim(),a=/^(>=|<=|=>|=<|>|<|!=|=|!)?(null|"."|'.'|.)?(.*)/,l=a.exec(i),s=null,o=null,u=null;if(l!==null&&l.length>3&&([,s,o,u]=l),u!=null&&u.trim().length>0||o==null||o.length===0)return null;s==null&&(s="=");var d=e.filter();if(o.toLowerCase()==="null")switch(s){case"=":return d.isNull();case"!=":case"!":return d.isNull().not();default:return null}var h=r.FilterValue.ofString(S.isRangeOperation(s)?S.quoteValue(o):o);return S.makeRangeFilterWithOperation(d,s,h)}makeAdvancedFilter(e,t,r){for(var{filterItems:i,filterOperators:a,invertSelection:l,selectedValues:s}=t,o=null,u=0;u<i.length;u+=1){var d=i[u],{selectedType:h,value:c}=d;if(h!=null&&h.length>0&&c!=null&&c.length>0)try{var v=this.makeAdvancedValueFilter(e,h,c,r);if(v!=null){if(u===0)o=v;else if(o!==null&&u-1<a.length){var g=a[u-1];if(g===vr.and)o=o.and(v);else if(g===vr.or)o=o.or(v);else{at.error("Unexpected filter operator",g,v),o=null;break}}}else at.debug2("Empty filter ignored for",h,c)}catch(f){at.error("Unable to create filter",f),o=null;break}}var m=this.makeSelectValueFilter(e,s,l);return m!=null&&(o!=null?o=o.and(m):o=m),o}makeAdvancedValueFilter(e,t,r,i){var{dh:a}=this;if(S.isDateType(e.type))return this.makeQuickDateFilterWithOperation(e,r,t,i);if(S.isNumberType(e.type)||S.isCharType(e.type))return this.makeQuickFilter(e,"".concat(S.getFilterOperatorString(t)).concat(r));var l=this.makeFilterValue(e.type,r),s=e.filter();switch(t){case P.eq:return s.eq(l);case P.eqIgnoreCase:return s.eqIgnoreCase(l);case P.notEq:return s.notEq(l);case P.notEqIgnoreCase:return s.notEqIgnoreCase(l);case P.greaterThan:return s.greaterThan(l);case P.greaterThanOrEqualTo:return s.greaterThanOrEqualTo(l);case P.lessThan:return s.lessThan(l);case P.lessThanOrEqualTo:return s.lessThanOrEqualTo(l);case P.isTrue:return s.isTrue();case P.isFalse:return s.isFalse();case P.isNull:return s.isNull();case P.contains:return s.isNull().not().and(s.invoke("matches",a.FilterValue.ofString("(?s)(?i).*\\Q".concat(r,"\\E.*"))));case P.notContains:return s.isNull().or(s.invoke("matches",a.FilterValue.ofString("(?s)(?i).*\\Q".concat(r,"\\E.*"))).not());case P.startsWith:return s.isNull().not().and(s.invoke("matches",a.FilterValue.ofString("(?s)(?i)^\\Q".concat(r,"\\E.*"))));case P.endsWith:return s.isNull().not().and(s.invoke("matches",a.FilterValue.ofString("(?s)(?i).*\\Q".concat(r,"\\E$"))));case P.in:case P.inIgnoreCase:case P.notIn:case P.notInIgnoreCase:case P.invoke:default:throw new Error("Unexpected filter operation: ".concat(t))}}makeSearchTextFilter(e,t,r){var i=this.getValueType(e.type);try{if(i===this.dh.ValueType.BOOLEAN){var a=this.makeQuickBooleanFilter(e,t);return R(a),a}if(i===this.dh.ValueType.DATETIME)return this.makeQuickDateFilterWithOperation(e,le.trimDateTimeStringTimeZone(t),"eq",r);if(i===this.dh.ValueType.NUMBER){var l=this.makeQuickNumberFilter(e,t);return R(l),l}return S.isBigDecimalType(e.type)||S.isBigIntegerType(e.type)?e.filter().eq(this.makeFilterValue(e.type,t)):e.filter().containsIgnoreCase(this.makeFilterValue(e.type,t))}catch{return this.makeNeverFilter(e)}}applyNeverFilter(e,t){var r=arguments,i=this;return Ct(function*(){var a=r.length>2&&r[2]!==void 0?r[2]:S.APPLY_TABLE_CHANGE_TIMEOUT_MS;if(e==null)return null;var l=e.findColumn(t),s=[i.makeNeverFilter(l)];return yield i.applyFilter(e,s,a),e})()}applyCustomColumns(e,t){var r=arguments,i=this;return Ct(function*(){var a=r.length>2&&r[2]!==void 0?r[2]:S.APPLY_TABLE_CHANGE_TIMEOUT_MS,{dh:l}=i;return S.executeAndWaitForEvent(s=>s==null?void 0:s.applyCustomColumns(t),e,l.Table.EVENT_CUSTOMCOLUMNSCHANGED,a)})()}applyFilter(e,t){var r=arguments,i=this;return Ct(function*(){var a=r.length>2&&r[2]!==void 0?r[2]:S.APPLY_TABLE_CHANGE_TIMEOUT_MS,{dh:l}=i;return S.executeAndWaitForEvent(s=>s==null?void 0:s.applyFilter(t),e,l.Table.EVENT_FILTERCHANGED,a)})()}applySort(e,t){var r=arguments,i=this;return Ct(function*(){var a=r.length>2&&r[2]!==void 0?r[2]:S.APPLY_TABLE_CHANGE_TIMEOUT_MS,{dh:l}=i;return S.executeAndWaitForEvent(s=>s==null?void 0:s.applySort(t),e,l.Table.EVENT_SORTCHANGED,a)})()}makeNeverFilter(e){var{dh:t}=this,r=null;S.isTextType(e.type)?r=t.FilterValue.ofString("a"):S.isBooleanType(e.type)?r=t.FilterValue.ofBoolean(!0):S.isDateType(e.type)?r=t.FilterValue.ofNumber(t.DateWrapper.ofJsDate(new Date)):r=t.FilterValue.ofNumber(0);var i=e.filter().eq(r),a=e.filter().notEq(r);return i.and(a)}makeFilterValue(e,t){var{dh:r}=this,i=S.getBaseType(e);return S.isTextType(i)?r.FilterValue.ofString(t):S.isLongType(i)?r.FilterValue.ofNumber(r.LongWrapper.ofString(S.removeCommas(t))):r.FilterValue.ofNumber(S.removeCommas(t))}makeFilterRawValue(e,t){var{dh:r}=this;return S.isCharType(e)?r.FilterValue.ofString(typeof t=="number"?String.fromCharCode(t):t):S.isTextType(e)?r.FilterValue.ofString(t):S.isBooleanType(e)?r.FilterValue.ofBoolean(t):r.FilterValue.ofNumber(t)}makeNullableEqFilter(e,t){return t==null?e.filter().isNull():e.filter().eq(this.makeFilterRawValue(e.type,t))}makeValue(e,t,r){var{dh:i}=this;if(t==="null")return null;if(S.isTextType(e))return t;if(S.isLongType(e))return i.LongWrapper.ofString(S.removeCommas(t));if(S.isBooleanType(e))return S.makeBooleanValue(t,!0);if(S.isDateType(e)){var[a]=le.parseDateRange(i,t,r);return a}return S.isNumberType(e)?S.makeNumberValue(t):(at.error("Unexpected column type",e),null)}makeSelectValueFilter(e,t,r){var{dh:i}=this;if(t.length===0)return r?null:this.makeNeverFilter(e);for(var a=[],l=!1,s=0;s<t.length;s+=1){var o=t[s];o==null?l=!0:S.isTextType(e.type)?a.push(i.FilterValue.ofString(typeof o=="number"?String.fromCharCode(o):o)):S.isBooleanType(e.type)?a.push(i.FilterValue.ofBoolean(!!o)):a.push(i.FilterValue.ofNumber(o))}return l?a.length>0?r?e.filter().isNull().not().and(e.filter().notIn(a)):e.filter().isNull().or(e.filter().in(a)):r?e.filter().isNull().not():e.filter().isNull():r?e.filter().notIn(a):e.filter().in(a)}}On=S;Lt(S,"dataType",{BOOLEAN:"boolean",CHAR:"char",DATETIME:"datetime",DECIMAL:"decimal",INT:"int",STRING:"string",UNKNOWN:"unknown"});Lt(S,"sortDirection",{ascending:"ASC",descending:"DESC",reverse:"REVERSE",none:null});Lt(S,"APPLY_TABLE_CHANGE_TIMEOUT_MS",3e4);Lt(S,"REVERSE_TYPE",Object.freeze({NONE:"none",PRE_SORT:"pre-sort",POST_SORT:"post-sort"}));Lt(S,"NUMBER_REGEX",/^-?\d+(\.\d+)?$/);Lt(S,"executeAndWaitForEvent",function(){var n=Ct(function*(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:On.APPLY_TABLE_CHANGE_TIMEOUT_MS;if(t==null)return null;var a=On.makeCancelableTableEventPromise(t,r,i);return e(t),yield a,t});return function(e,t,r){return n.apply(this,arguments)}}());function xt(n,e,t){return(e=sd(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function sd(n){var e=od(n,"string");return typeof e=="symbol"?e:e+""}function od(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Ke{static makeColumnFormatMap(e){return e==null?new Map:e.reduce((t,r)=>{var i=S.getNormalizedType(r.columnType);if(i===null)return t;t.has(i)||t.set(i,new Map);var a=t.get(i);return a==null||a.set(r.columnName,r.format),t},new Map)}static makeColumnFormattingRule(e,t,r){return{columnType:e,columnName:t,format:r}}constructor(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Q,r=arguments.length>2?arguments[2]:void 0,i=arguments.length>3?arguments[3]:void 0,a=arguments.length>4?arguments[4]:void 0,l=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!1,s=arguments.length>6&&arguments[6]!==void 0?arguments[6]:!0,o=arguments.length>7&&arguments[7]!==void 0?arguments[7]:!0;xt(this,"defaultColumnFormatter",void 0),xt(this,"typeFormatterMap",void 0),xt(this,"columnFormatMap",void 0),xt(this,"truncateNumbersWithPound",void 0),xt(this,"showEmptyStrings",void 0),xt(this,"showNullStrings",void 0),this.defaultColumnFormatter=new Bu,this.typeFormatterMap=new Map([[S.dataType.BOOLEAN,new Hu],[S.dataType.CHAR,new Gu],[S.dataType.DATETIME,new _r(e,r)],[S.dataType.DECIMAL,new vo(e,i)],[S.dataType.INT,new po(e,a)],[S.dataType.STRING,new Uu]]),this.columnFormatMap=Ke.makeColumnFormatMap(t),this.truncateNumbersWithPound=l,this.showEmptyStrings=s,this.showNullStrings=o}getColumnFormatMapForType(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,r=S.getNormalizedType(e);if(r!==null)return t&&!this.columnFormatMap.has(r)&&this.columnFormatMap.set(r,new Map),this.columnFormatMap.get(r)}getColumnFormat(e,t){var r,i=this.getColumnFormatMapForType(e);return(r=i==null?void 0:i.get(t))!==null&&r!==void 0?r:null}getColumnTypeFormatter(e){var t=S.getNormalizedType(e),r=this.defaultColumnFormatter;if(t){var i;r=(i=this.typeFormatterMap.get(t))!==null&&i!==void 0?i:r}return r}getFormattedString(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"",i=arguments.length>3?arguments[3]:void 0;if(e==null)return"";var a=this.getColumnTypeFormatter(t),l=i||this.getColumnFormat(t,r);return a.format(e,l??void 0)}get timeZone(){var e=this.typeFormatterMap.get(S.dataType.DATETIME);return Uo(e,_r),e.dhTimeZone.id}}function ud(n,e){var t=Il(e),r=kl(e),{defaultDecimalFormatOptions:i,defaultIntegerFormatOptions:a,truncateNumbersWithPound:l,showEmptyStrings:s,showNullStrings:o}=e??{};return new Ke(n,t,r,i,a,l,s,o)}function Il(n){if(n&&n.formatter){var{formatter:e}=n;return e}}function kl(n){return{timeZone:n==null?void 0:n.timeZone,defaultDateTimeFormatString:n==null?void 0:n.defaultDateTimeFormat,showTimeZone:n==null?void 0:n.showTimeZone,showTSeparator:n==null?void 0:n.showTSeparator}}function dd(n,e,t){var r=n.getColumnFormat(t,e);return r!=null&&(r.type===Gt.TYPE_CONTEXT_PRESET||r.type===Gt.TYPE_CONTEXT_CUSTOM)}const Fn={createFormatterFromSettings:ud,getColumnFormats:Il,getDateTimeFormatterOptions:kl,isCustomColumnFormatDefined:dd};function hd(n){return typeof n.id=="string"&&n.layout instanceof mo&&n.panelManager instanceof fo&&typeof n.registerComponent=="function"}function Yt(n){if(!hd(n))throw new Error("Expected dashboard plugin props, but instead received ".concat(n))}function er(n,e,t,r){var i,a=(i=e.COMPONENT)!==null&&i!==void 0?i:e.displayName;if(a==null)throw new Error("ComponentType must have a `COMPONENT` or `displayName` attribute.");Re.useEffect(()=>{var l=n(a,e,t,r);return()=>{l()}},[e,r,t,a,n])}function Qr(){var n=E.useContext(go);if(n==null)throw new Error("LayoutManager not available, did you add a LayoutManagerContext.Provider to the tree?");return n}function cd(n,e,t,r,i){if(e>t)throw new Error("Persisted state ".concat(i," is a newer version than the current version. Persisted version: ").concat(e,". Current version: ").concat(t));for(var a=n,l=e;l<t;){var s=r.filter(u=>u.from===l);if(s.length===0)throw new Error("No migration found for persisted state ".concat(i," from version ").concat(l));if(s.length>1)throw new Error("Multiple migrations found for persisted state ".concat(i," from version ").concat(l));var o=s[0];try{a=o.migrate(a),l+=1}catch(u){throw new Error("Error migrating persisted state ".concat(i," from version ").concat(o.from,": ").concat(u),{cause:u})}}return a}function Ll(n,e){var t=Vn(),r=E.useMemo(()=>Ue(),[]),i=E.useContext(bo),{type:a,version:l,migrations:s=[],deleteOnUnmount:o=!0}=e,[u,d]=E.useState(()=>{var c=t!=null?i==null?void 0:i.getState(t,a):void 0;return c==null?typeof n=="function"?n():n:c.version!==l?cd(c.state,c.version,l,s,a):c.state}),h=E.useMemo(()=>({type:a,version:l,state:u}),[u,a,l]);return E.useDebugValue(h),E.useEffect(function(){t!=null&&(i==null||i.addState(r,t,h))},[i,r,t,h]),E.useEffect(function(){return()=>{o&&t!=null&&(i==null||i.removeState(r,t,a))}},[i,o,r,t,a]),E.useEffect(()=>()=>{t!=null&&(i==null||i.deregisterHook(r,t,a))},[i,r,t,a]),[u,d]}function Li(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 vd(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Li(Object(t),!0).forEach(function(r){pd(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Li(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function pd(n,e,t){return(e=md(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function md(n){var e=fd(n,"string");return typeof e=="symbol"?e:e+""}function fd(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var gd=E.lazy(()=>zr(()=>import("./Chart-BTkEZV67.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12]),import.meta.url));function Al(n){return p.jsx(E.Suspense,{fallback:p.jsx(vt,{"data-testid":"lazy-chart-loading"}),children:p.jsx(gd,vd({},n))})}function Ai(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 Er(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ai(Object(t),!0).forEach(function(r){Pe(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ai(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Pe(n,e,t){return(e=bd(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function bd(n){var e=Cd(n,"string");return typeof e=="symbol"?e:e+""}function Cd(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var tr=ee.module("ChartUtils"),xi="io.deephaven.time.DateTime",yd=36e5,Sd=1e6;function Ed(n){return n.asDate!==void 0}function wd(n){return n.asNumber!==void 0}function ji(n){return n.dhTimeZone!==void 0}function Td(n){return n!=null&&n.range!=null&&(n.autorange===!1||n.autorange===void 0)}function Pd(){try{var n=document.createElement("canvas"),e=n.getContext("webgl")||n.getContext("experimental-webgl");return e!=null&&e instanceof WebGLRenderingContext}catch{return!1}}var Dd=Pd();class I{static getPlotlyErrorBars(e,t,r){var i=r.map((l,s)=>l-e[s]),a=t.map((l,s)=>e[s]-l);return{type:"data",symmetric:!1,array:i,arrayminus:a}}static convertNumberPrefix(e){return e.replace(/\u00A4\u00A4/g,"USD").replace(/\u00A4/g,"$")}static getPlotlyNumberFormat(e,t,r){if(r==null||r==="")return null;var i=r.split(";"),a=i[0].match(/^([^#,0.]*)([#,]*)([0,]*)(\.?)(0*)(#*)(E?0*)(%?)(.*)/);R(a);var[,l,s,o,,u,d,h,c,v]=a,g=o.replace(",","").length,m=s.indexOf(",")>=0||o.indexOf(",")>=0,f=m?",":"",b=h!=null&&h!==""?"e":"f",y=c!==""?c:b,C=u.length+d.length,T="",w="0".concat(g).concat(f,".").concat(C).concat(T).concat(y),O=I.convertNumberPrefix(l),D=I.convertNumberPrefix(v);return{tickformat:w,tickprefix:O,ticksuffix:D,automargin:!0}}static addTickSpacing(e,t,r){var{gapBetweenMajorTicks:i}=t;if(i!=null&&i>0){var a=e||{},l=i;return r&&(l=i/Sd),t.log&&(l=Math.log(l)),a.tickmode="linear",a.dtick=l,a}return e}static getSourceForAxis(e,t){for(var r=0;r<e.series.length;r+=1)for(var i=e.series[r],a=0;a<i.sources.length;a+=1){var l=i.sources[a];if(l.axis===t)return l}return null}static getSeriesVisibility(e,t){return t!=null&&t.hiddenSeries!=null&&t.hiddenSeries.includes(e)?"legendonly":!0}static getHiddenLabels(e){return e!=null&&e.hiddenSeries?[...e.hiddenSeries]:[]}static makeSeriesData(e,t,r,i){var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:I.ORIENTATION.VERTICAL;return{type:e,mode:t,name:r,orientation:a,showlegend:i??void 0}}static getMarkerSymbol(e){switch(e){case"SQUARE":return"square";case"CIRCLE":return"circle";case"DIAMOND":return"diamond";case"UP_TRIANGLE":return"triangle-up";case"DOWN_TRIANGLE":return"triangle-down";case"RIGHT_TRIANGLE":return"triangle-right";case"LEFT_TRIANGLE":return"triangle-left";case"ELLIPSE":case"HORIZONTAL_RECTANGLE":case"VERTICAL_RECTANGLE":default:throw new Error("Unrecognized shape ".concat(e))}}static getAllAxes(e){return e.charts.reduce((t,r)=>[...t,...r.axes],[])}static getAxisTypeMap(e){var t=I.getAllAxes(e);return I.groupArray(t,"type")}static getChartForSeries(e,t){for(var{charts:r}=e,i=0;i<r.length;i+=1)for(var a=r[i],l=0;l<a.series.length;l+=1)if(t===a.series[l])return a;return null}static getLayoutRanges(e){for(var t={},r=Object.keys(e).filter(s=>s.indexOf("axis")>=0),i=0;i<r.length;i+=1){var a=r[i],l=e[a];Td(l)&&(t[a]=[...l.range])}return t}static getAxisLayoutProperty(e,t){var r=t>0?"".concat(t+1):"";return"".concat(e??"","axis").concat(r)}static periodToDecimal(e){var t=e.split(":");return Number(t[0])+Number(t[1])/60}static decimalToPeriod(e){var t=Math.floor(e),r=Math.round((e-t)*60);return"".concat(t.toString().padStart(2,"0"),":").concat(r.toString().padStart(2,"0"))}static groupArray(e,t){return e.reduce((r,i)=>{var a,l=i[t],s=(a=r.get(l))!==null&&a!==void 0?a:[];return s.push(i),r.set(l,s),r},new Map)}static normalizeColorway(e){if(e!=null){if(Array.isArray(e))return e;if(typeof e=="string")return e.split(" ");tr.warn("Unexpected colorway format: ".concat(e))}}static titleFromSettings(e){var{series:t,xAxis:r,title:i="".concat((t??[]).join(", ")," by ").concat(r)}=e;return i}static getTimeZoneDiff(e,t){return t?(e.standardOffset-t.standardOffset)/60:0}static createClosedRangesForPartialHoliday(e,t){var r=t.map(h=>[I.periodToDecimal(h.open),I.periodToDecimal(h.close)]);r.sort((h,c)=>h[0]-c[0]),r.length===0&&r.push([0,24]);var i=e.map(h=>[I.periodToDecimal(h.open),I.periodToDecimal(h.close)]);i.sort((h,c)=>h[0]-c[0]);for(var a=[],l=0;l<r.length;l+=1){for(var s=r[l],o=s[0],u=0;u<i.length;u+=1){var d=i[u];d[1]>o&&d[0]<s[1]&&(d[0]>o&&a.push([o,d[0]]),o=d[1])}o<s[1]&&a.push([o,s[1]])}return a}constructor(e){Pe(this,"dh",void 0),Pe(this,"daysOfWeek",void 0),this.dh=e,this.daysOfWeek=Object.freeze(e.calendar.DayOfWeek.values()),Un(this)}getAxisFormats(e,t){for(var r=new Map,i={tickformat:null,ticksuffix:null},a=I.getAllAxes(e),l=I.groupArray(a,"type"),{charts:s}=e,o=0;o<s.length;o+=1)for(var u=s[o],d=0;d<u.series.length;d+=1)for(var h=u.series[d],{sources:c}=h,v=c.filter(N=>N.axis),g=0;g<v.length;g+=1){var m=v[g],{axis:f}=m,{type:b}=f,y=l.get(b);R(y);var C=y.indexOf(f),T=this.getAxisPropertyName(b);if(T!=null){var w=I.getAxisLayoutProperty(T,C);if(r.has(w))tr.debug("".concat(w," already added."));else{tr.debug("Adding ".concat(w," to axisFormats."));var O=this.getPlotlyAxisFormat(m,t);if(O===null)r.set(w,i);else{r.set(w,O);var{businessCalendar:D}=f;if(D!=null&&(O.rangebreaks=this.createRangeBreaksFromBusinessCalendar(D,t)),r.size===u.axes.length)return r}}}}return r}getPlotlyChartType(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,{dh:i}=this;switch(e){case i.plot.SeriesPlotStyle.SCATTER:case i.plot.SeriesPlotStyle.LINE:return!t&&Dd&&r?"scattergl":"scatter";case i.plot.SeriesPlotStyle.BAR:case i.plot.SeriesPlotStyle.STACKED_BAR:return"bar";case i.plot.SeriesPlotStyle.PIE:return"pie";case i.plot.SeriesPlotStyle.TREEMAP:return"treemap";case i.plot.SeriesPlotStyle.HISTOGRAM:return"histogram";case i.plot.SeriesPlotStyle.OHLC:return"ohlc";default:return}}getPlotlyChartMode(e,t,r){var{dh:i}=this,a=new Set;switch(e){case i.plot.SeriesPlotStyle.SCATTER:(t??!1)&&a.add(I.MODE_LINES),(r??!0)&&a.add(I.MODE_MARKERS);break;case i.plot.SeriesPlotStyle.LINE:(t??!0)&&a.add(I.MODE_LINES),(r??!1)&&a.add(I.MODE_MARKERS);break}return a.size>0?[...a].join("+"):void 0}getPlotlyProperty(e,t){var{dh:r}=this;switch(e){case r.plot.SeriesPlotStyle.PIE:switch(t){case r.plot.SourceType.X:return"labels";case r.plot.SourceType.Y:return"values"}break;case r.plot.SeriesPlotStyle.OHLC:switch(t){case r.plot.SourceType.TIME:return"x"}break;case r.plot.SeriesPlotStyle.TREEMAP:switch(t){case r.plot.SourceType.X:return"ids";case r.plot.SourceType.Y:return"values";case r.plot.SourceType.LABEL:return"labels";case r.plot.SourceType.PARENT:return"parents";case r.plot.SourceType.COLOR:return"marker.colors"}break}switch(t){case r.plot.SourceType.X:return"x";case r.plot.SourceType.Y:return"y";case r.plot.SourceType.Z:return"z";case r.plot.SourceType.X_LOW:return"xLow";case r.plot.SourceType.X_HIGH:return"xHigh";case r.plot.SourceType.Y_LOW:return"yLow";case r.plot.SourceType.Y_HIGH:return"yHigh";case r.plot.SourceType.TIME:return"time";case r.plot.SourceType.OPEN:return"open";case r.plot.SourceType.HIGH:return"high";case r.plot.SourceType.LOW:return"low";case r.plot.SourceType.CLOSE:return"close";case r.plot.SourceType.SHAPE:return"shape";case r.plot.SourceType.SIZE:return"size";case r.plot.SourceType.LABEL:return"label";case r.plot.SourceType.COLOR:return"color";case r.plot.SourceType.PARENT:return"parent";case r.plot.SourceType.HOVER_TEXT:return"hovertext";case r.plot.SourceType.TEXT:return"text";default:throw new Error("Unrecognized source type: ".concat(t))}}getPlotlySeriesOrientation(e){var t,{dh:r}=this,{sources:i}=e;return i.length===2&&((t=i[0])===null||t===void 0||(t=t.axis)===null||t===void 0?void 0:t.type)===r.plot.AxisType.Y?I.ORIENTATION.HORIZONTAL:I.ORIENTATION.VERTICAL}makeSeriesDataFromSeries(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,{name:l,isLinesVisible:s,isShapesVisible:o,plotStyle:u,lineColor:d,shapeColor:h,sources:c,shape:v,shapeSize:g}=e,m=c.some(T=>{var w;return(w=T.axis)===null||w===void 0?void 0:w.businessCalendar}),f=this.getChartType(u,m,a),b=this.getPlotlyChartMode(u,s??void 0,o??void 0),y=this.getPlotlySeriesOrientation(e),C=I.makeSeriesData(f,b,l,i,y);return this.addSourcesToSeriesData(C,u,c,t),this.addStylingToSeriesData(C,u,d,h,v,g,r),C}addSourcesToSeriesData(e,t,r,i){for(var a=e,l=0;l<r.length;l+=1){var s=r[l],{axis:o,type:u}=s,d=this.getPlotlyProperty(t,u);En.set(a,d,[]);var h=o!=null?this.getAxisPropertyName(o.type):null;if(h!=null){var c=i.get(o.type);if(c){var v=c.indexOf(o),g=v>0?"".concat(v+1):"";a["".concat(h,"axis")]="".concat(h).concat(g)}}}}addStylingToSeriesData(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:null,l=arguments.length>5&&arguments[5]!==void 0?arguments[5]:null,s=arguments.length>6&&arguments[6]!==void 0?arguments[6]:null,{dh:o}=this,u=e;if(u.marker={line:{}},u.line={width:1},t===o.plot.SeriesPlotStyle.AREA?u.fill="tozeroy":t===o.plot.SeriesPlotStyle.STACKED_AREA?u.stackgroup="stack":t===o.plot.SeriesPlotStyle.STEP?u.line.shape="hv":t===o.plot.SeriesPlotStyle.HISTOGRAM?u.width=[]:t===o.plot.SeriesPlotStyle.PIE?u.textinfo="label+percent":t===o.plot.SeriesPlotStyle.TREEMAP&&(u.hoverinfo="text",u.textinfo="label+text",u.tiling={packing:"squarify",pad:0},u.textposition="middle center"),r!=null&&(t===o.plot.SeriesPlotStyle.BAR?u.marker.color=r:u.line.color=r),i!=null&&(u.marker.color=i),a!=null&&a.length>0)try{u.marker.symbol=I.getMarkerSymbol(a)}catch(d){tr.warn("Unable to handle shape",a,":",d)}l!=null&&(u.marker.size=l*I.DEFAULT_MARKER_SIZE),s!=null&&t!==o.plot.SeriesPlotStyle.PIE&&(u.visible=s)}getChartType(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,{dh:i}=this;switch(e){case i.plot.SeriesPlotStyle.HISTOGRAM:return"bar";default:return this.getPlotlyChartType(e,t,r)}}getAxisPropertyName(e){var{dh:t}=this;switch(e){case t.plot.AxisType.X:return"x";case t.plot.AxisType.Y:return"y";default:return null}}getAxisSide(e){var{dh:t}=this;switch(e){case t.plot.AxisPosition.BOTTOM:return"bottom";case t.plot.AxisPosition.TOP:return"top";case t.plot.AxisPosition.LEFT:return"left";case t.plot.AxisPosition.RIGHT:return"right";default:return}}updateFigureAxes(e,t,r){for(var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,l=e,s=I.getAllAxes(t),o=0;o<t.charts.length;o+=1){var u=t.charts[o],d=r==null?void 0:r(u),h=this.getChartBounds(t,u,i,a);this.updateLayoutAxes(l,u.axes,s,i,a,h,d)}this.removeStaleAxes(l,s)}getChartBounds(e,t,r,i){var a,{dh:l}=this,{cols:s,rows:o}=e,{column:u,colspan:d,row:h,rowspan:c}=t,v=u+d,g=h+c,m=1/s,f=1/o,b=I.AXIS_SIZE_PX/r,y=I.AXIS_SIZE_PX/i,C={bottom:(o-g)*f+(g<o?y/2:0),top:(o-h)*f-(h>0?y/2:0),left:u*m+(u>0?b/2:0),right:v*m-(v<s?b/2:0)},T=I.groupArray(t.axes,"position"),w=(a=T.get(l.plot.AxisPosition.RIGHT))!==null&&a!==void 0?a:[];return w.length>0&&(r>0?C.right-=(C.right-C.left)*Math.max(0,Math.min(I.LEGEND_WIDTH_PX/r,I.MAX_LEGEND_SIZE)):C.right-=(C.right-C.left)*I.DEFAULT_AXIS_SIZE),C}getPlotlyDateFormat(e,t,r){var{dh:i}=this,a=r==null?void 0:r.replace("%","%%").replace(/S{9}/g,"%9f").replace(/S{8}/g,"%8f").replace(/S{7}/g,"%7f").replace(/S{6}/g,"%6f").replace(/S{5}/g,"%5f").replace(/S{4}/g,"%4f").replace(/S{3}/g,"%3f").replace(/S{2}/g,"%2f").replace(/S{1}/g,"%1f").replace(/y{4}/g,"%Y").replace(/y{2}/g,"%y").replace(/M{4}/g,"%B").replace(/M{3}/g,"%b").replace(/M{2}/g,"%m").replace(/M{1}/g,"%-m").replace(/E{4,}/g,"%A").replace(/E{1,}/g,"%a").replace(/d{2}/g,"%d").replace(/([^%]|^)d{1}/g,"$1%-d").replace(/H{2}/g,"%H").replace(/h{2}/g,"%I").replace(/h{1}/g,"%-I").replace(/m{2}/g,"%M").replace(/s{2}/g,"%S").replace("'T'","T").replace(" z",""),l,s=e==null?void 0:e.getColumnTypeFormatter(t);return s!=null&&ji(s)&&s.dhTimeZone!=null&&s.showTimeZone&&(l=i.i18n.DateTimeFormat.format(" z",new Date,s.dhTimeZone)),{tickformat:a,ticksuffix:l,automargin:!0}}getPlotlyAxisFormat(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null,{dh:r}=this,{axis:i,columnType:a}=e,{formatPattern:l}=i,s=null;return S.isDateType(a)?(s=this.getPlotlyDateFormat(t,a,l),s=I.addTickSpacing(s,i,!0)):S.isNumberType(a)&&(s=I.getPlotlyNumberFormat(t,a,l),s=I.addTickSpacing(s,i,!1)),i.formatType===r.plot.AxisFormatType.CATEGORY&&(s?s.type="category":s={type:"category",tickformat:void 0,ticksuffix:void 0}),s}updateLayoutAxes(e,t,r){for(var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,l=arguments.length>5&&arguments[5]!==void 0?arguments[5]:{left:0,top:0,right:1,bottom:1},s=arguments.length>6?arguments[6]:void 0,{dh:o}=this,u=i>0?Math.max(I.MIN_AXIS_SIZE,Math.min(I.AXIS_SIZE_PX/a,I.MAX_AXIS_SIZE)):I.DEFAULT_AXIS_SIZE,d=a>0?Math.max(I.MIN_AXIS_SIZE,Math.min(I.AXIS_SIZE_PX/i,I.MAX_AXIS_SIZE)):I.DEFAULT_AXIS_SIZE,h=e,c=I.groupArray(t,"position"),v=I.groupArray(t,"type"),g=[...v.keys()],m=I.groupArray(r,"type"),f=0;f<g.length;f+=1){var b=g[f],y=this.getAxisPropertyName(b);if(y!=null){var C=v.get(b),T=m.get(b),w=b===o.plot.AxisType.Y,O=w?a:i;R(C),R(T);for(var D=0;D<C.length;D+=1){var N=C[D],M=T.indexOf(N),F=I.getAxisLayoutProperty(y,M);h[F]==null&&(h[F]={});var k=h[F];if(k!=null){this.updateLayoutAxis(k,N,D,c,u,d,l);var{range:L,autorange:V}=k;if(s!=null&&L!==void 0&&(V===void 0||V===!1)){var X=s(N),[Y,Z]=X(L);tr.debug("Setting downsample range",O,Y,Z),N.range(O,Y,Z)}else N.range(O)}}}}}removeStaleAxes(e,t){for(var r=e,i=I.groupArray(t,"type"),a=[...i.keys()],l=0;l<a.length;l+=1){var s=a[l],o=i.get(s);R(o);var u=o.length,d=this.getAxisPropertyName(s);if(d!=null)for(var h=I.getAxisLayoutProperty(d,u);r[h]!=null;)delete r[h],u+=1,h=I.getAxisLayoutProperty(d,u)}}updateLayoutAxis(e,t,r,i,a,l,s){var o,{dh:u}=this,d=t.type===u.plot.AxisType.Y,h=d?l:a,c=e,v=(o=t.label)!==null&&o!==void 0?o:"";if(c.title!==void 0&&typeof c.title!="string"?c.title.text=v:c.title={text:v},t.log&&(c.type="log"),c.side=this.getAxisSide(t.position),r>0){var g,m;c.overlaying=(g=this.getAxisPropertyName(t.type))!==null&&g!==void 0?g:void 0;var f=(m=i.get(t.position))!==null&&m!==void 0?m:[],b=f.indexOf(t);b>0&&(c.anchor="free",t.position===u.plot.AxisPosition.RIGHT?c.position=s.right+(b-f.length+1)*h:t.position===u.plot.AxisPosition.TOP?c.position=s.top+(b-f.length+1)*h:t.position===u.plot.AxisPosition.BOTTOM?c.position=s.bottom+(f.length-b+1)*h:t.position===u.plot.AxisPosition.LEFT&&(c.position=s.left+(f.length-b+1)*h))}else if(t.type===u.plot.AxisType.X){var y=i.get(u.plot.AxisPosition.LEFT)||[],C=i.get(u.plot.AxisPosition.RIGHT)||[],T=Math.max(s.left,s.left+(y.length-1)*l),w=Math.min(s.right-(C.length-1)*l,s.right);c.domain=[T,w]}else if(t.type===u.plot.AxisType.Y){var O=i.get(u.plot.AxisPosition.BOTTOM)||[],D=i.get(u.plot.AxisPosition.TOP)||[],N=Math.max(s.bottom,s.bottom+(O.length-1)*a),M=Math.min(s.top-(D.length-1)*a,s.top);c.domain=[N,M]}var{minRange:F,maxRange:k,log:L}=t;(!Number.isNaN(F)||!Number.isNaN(k))&&(c.autorangeoptions={},Number.isNaN(F)||(c.autorangeoptions.minallowed=L?Math.log10(F):F),Number.isNaN(k)||(c.autorangeoptions.maxallowed=L?Math.log10(k):k))}createBoundsFromPeriods(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;if(e.length===0)return[];for(var r=e.map(o=>[(I.periodToDecimal(o.open)+t)%24,(I.periodToDecimal(o.close)+t)%24]).sort((o,u)=>o[0]-u[0]),i=[],a=0;a<r.length;a+=1){var l=r[a],s=r[(a+1)%r.length];i.push([l[1],s[0]])}return i}createBreaksFromPeriods(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=this.createBoundsFromPeriods(e,t);return r.map(i=>({pattern:"hour",bounds:i}))}createBoundsFromDays(e){var t=this.daysOfWeek.length;if(e.length===t)return[];for(var r=e.map(o=>this.daysOfWeek.indexOf(o)),i=new Set(r),a=new Set,l=0;l<t;l+=1)!i.has(l)&&i.has((l-1+t)%t)&&a.add(l);var s=[];return a.forEach(o=>{for(var u=0;u<t;u+=1){var d=(o+u)%t;if(i.has(d)){s.push([o,d]);return}}throw new Error("Unable to find open day for closed day ".concat(o,", businessDays: ").concat(e))}),s}createBreaksFromDays(e){var t=this.createBoundsFromDays(e);return t.map(r=>({pattern:"day of week",bounds:r}))}createRangeBreaksFromBusinessCalendar(e,t){var r=[],{businessPeriods:i,businessDays:a,holidays:l,timeZone:s}=e,o=t==null?void 0:t.getColumnTypeFormatter(xi),u;ji(o)&&(u=o.dhTimeZone);var d=I.getTimeZoneDiff(s,u);return l.length>0&&r.push(...this.createRangeBreakValuesFromHolidays(l,s,u,e)),r.push(...this.createBreaksFromPeriods(i,d)),r.push(...this.createBreaksFromDays(a)),r}createRangeBreakValuesFromHolidays(e,t,r,i){var a=[],l=[];return e.forEach(s=>{s.businessPeriods.length>0?l.push(...this.createPartialHoliday(s,t,r,i)):a.push(this.createFullHoliday(s,t,r))}),[{values:a},...l]}createFullHoliday(e,t,r){return this.adjustDateForTimeZone("".concat(e.date.toString()," 00:00:00.000000"),t,r)}createPartialHoliday(e,t,r,i){var a;if(e.businessPeriods.length===0)return[];var l=e.date.toString();if(i){var s=new Date(l).getDay(),o=i.businessDays.includes(this.daysOfWeek[s]);if(!o)return[]}for(var u=I.createClosedRangesForPartialHoliday(e.businessPeriods,(a=i==null?void 0:i.businessPeriods)!==null&&a!==void 0?a:[]),d=[],h=0;h<u.length;h+=1){var[c,v]=u[h];if(c!==v){var g=[this.adjustDateForTimeZone("".concat(l," ").concat(I.decimalToPeriod(c),":00.000000"),t,r)],m=yd*(v-c);d.push({values:g,dvalue:m})}}return d}adjustDateForTimeZone(e,t,r){return r&&r.standardOffset!==t.standardOffset?this.unwrapValue(this.wrapValue(e,xi,t),r):e}makeFigureSettings(e,t){var{dh:r}=this,{series:i,xAxis:a,type:l}=e,s=I.titleFromSettings(e),o={formatType:"".concat(r.plot.AxisFormatType.NUMBER),type:"".concat(r.plot.AxisType.X),position:"".concat(r.plot.AxisPosition.BOTTOM)},u={formatType:"".concat(r.plot.AxisFormatType.NUMBER),type:"".concat(r.plot.AxisType.Y),position:"".concat(r.plot.AxisPosition.LEFT)};return{charts:[{chartType:"".concat(r.plot.ChartType.XY),axes:[o,u],series:(i??[]).map(d=>({plotStyle:"".concat(l),name:d,dataSources:[{type:"".concat(r.plot.SourceType.X),columnName:a??"",axis:o,table:t},{type:"".concat(r.plot.SourceType.Y),columnName:d,axis:u,table:t}]}))}],title:s}}unwrapValue(e,t){var{dh:r}=this;if(e!=null){if(Ed(e))return r.i18n.DateTimeFormat.format(I.DATE_FORMAT,e,t);if(wd(e))return e.asNumber()}return e}wrapValue(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null,{dh:i}=this;if(S.isDateType(t)&&typeof e=="string"){var a=e,l=I.DATE_FORMAT.substr(0,e.length),s=i.i18n.DateTimeFormat.parse(l,a);if(!r)return s;var o="".concat(l," Z"),u=i.i18n.DateTimeFormat.format("Z",s,r),d=i.i18n.DateTimeFormat.parse(o,"".concat(a," ").concat(u)),h=i.i18n.DateTimeFormat.format("Z",d,r);return i.i18n.DateTimeFormat.parse(o,"".concat(a," ").concat(h))}return e}makeLayoutAxis(e,t){var{dh:r}=this,i={automargin:!0,gridcolor:t.gridcolor,linecolor:t.linecolor,rangeslider:{visible:!1},showline:!0,ticks:"outside",ticklen:5,tickcolor:t.paper_bgcolor,tickfont:{color:t.zerolinecolor},title:{font:{color:t.title_color}},legend:{font:{color:t.legend_color}}};return e===r.plot.AxisType.X?Object.assign(i,{showgrid:!0}):e===r.plot.AxisType.Y&&Object.assign(i,{zerolinecolor:t.zerolinecolor,zerolinewidth:2}),i}makeDefaultTemplate(e){var{error_band_line_color:t,ohlc_increasing:r,ohlc_decreasing:i,title_color:a,indicator_increasing:l,indicator_decreasing:s,indicator_gauge:o}=e;return{data:{bar:[{marker:{line:{color:"transparent"}}}],scatter:[{error_x:{color:t},error_y:{color:t}}],ohlc:[{increasing:{line:{color:r}},decreasing:{line:{color:i}}}],pie:[{outsidetextfont:{color:a}}],treemap:[{outsidetextfont:{color:a}}],indicator:[{title:{font:{color:a}},delta:{decreasing:{color:s},increasing:{color:l}},gauge:{bar:{color:o}}}]},layout:this.makeDefaultLayout(e)}}makeDefaultLayout(e){var{dh:t}=this,{paper_bgcolor:r,plot_bgcolor:i,title_color:a,coastline_color:l,land_color:s,ocean_color:o,lake_color:u,river_color:d,map_style:h}=e,c={paper_bgcolor:r,plot_bgcolor:i,autosize:!0,colorway:I.normalizeColorway(e==null?void 0:e.colorway),font:{family:"'Fira Sans', sans-serif",color:a},title:{font:{color:a},xanchor:"center",xref:"paper",yanchor:"top",pad:Er({},I.DEFAULT_TITLE_PADDING),y:1},legend:{font:{color:a}},margin:Er({},I.DEFAULT_MARGIN),xaxis:this.makeLayoutAxis(t.plot.AxisType.X,e),yaxis:this.makeLayoutAxis(t.plot.AxisType.Y,e),polar:{angularaxis:this.makeLayoutAxis(t.plot.AxisType.SHAPE,e),radialaxis:this.makeLayoutAxis(t.plot.AxisType.SHAPE,e),bgcolor:e.plot_bgcolor},scene:{xaxis:this.makeLayoutAxis(t.plot.AxisType.X,e),yaxis:this.makeLayoutAxis(t.plot.AxisType.Y,e),zaxis:this.makeLayoutAxis(null,e)},geo:{showcoastlines:!0,showframe:!1,showland:!0,showocean:!0,showlakes:!0,showrivers:!0,bgcolor:r,coastlinecolor:l,landcolor:s,oceancolor:o,lakecolor:u,rivercolor:d},map:{style:h}};return c.datarevision=0,c}hydrateSettings(e){var{dh:t}=this;return Er(Er({},e),{},{type:e.type!=null?t.plot.SeriesPlotStyle[e.type]:void 0})}}Pe(I,"DEFAULT_AXIS_SIZE",.15);Pe(I,"MIN_AXIS_SIZE",.025);Pe(I,"MAX_AXIS_SIZE",.2);Pe(I,"AXIS_SIZE_PX",75);Pe(I,"LEGEND_WIDTH_PX",50);Pe(I,"MAX_LEGEND_SIZE",.25);Pe(I,"ORIENTATION",Object.freeze({HORIZONTAL:"h",VERTICAL:"v"}));Pe(I,"DATE_FORMAT","yyyy-MM-dd HH:mm:ss.SSSSSS");Pe(I,"DEFAULT_MARGIN",Object.freeze({l:60,r:50,t:30,b:60,pad:0}));Pe(I,"DEFAULT_TITLE_PADDING",Object.freeze({t:8}));Pe(I,"SUBTITLE_LINE_HEIGHT",25);Pe(I,"DEFAULT_MARKER_SIZE",6);Pe(I,"MODE_MARKERS","markers");Pe(I,"MODE_LINES","lines");function fe(n,e,t){return(e=Od(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Od(n){var e=Fd(n,"string");return typeof e=="symbol"?e:e+""}function Fd(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class ne{constructor(e){fe(this,"dh",void 0),fe(this,"listeners",void 0),fe(this,"formatter",void 0),fe(this,"renderOptions",void 0),fe(this,"rect",void 0),fe(this,"isDownsamplingDisabled",void 0),fe(this,"title",void 0),this.dh=e,this.listeners=[],this.isDownsamplingDisabled=!1}getData(){return[]}getDefaultTitle(){return""}getLayout(){return{}}getFilterColumnMap(){return new Map}isFilterRequired(){return!1}setFilter(e){}close(){}setFormatter(e){this.formatter=e}setRenderOptions(e){this.renderOptions=e}setDownsamplingDisabled(e){this.isDownsamplingDisabled=e}setDimensions(e){this.rect=e}setTitle(e){this.title=e}subscribe(e){this.listeners.push(e)}unsubscribe(e){this.listeners=this.listeners.filter(t=>t!==e)}fireEvent(e){for(var t=0;t<this.listeners.length;t+=1)this.listeners[t](e)}fireUpdate(e){this.fireEvent(new CustomEvent(ne.EVENT_UPDATED,{detail:e}))}fireDisconnect(){this.fireEvent(new CustomEvent(ne.EVENT_DISCONNECT))}fireReconnect(){this.fireEvent(new CustomEvent(ne.EVENT_RECONNECT))}fireDownsampleStart(e){this.fireEvent(new CustomEvent(ne.EVENT_DOWNSAMPLESTARTED,{detail:e}))}fireDownsampleFinish(e){this.fireEvent(new CustomEvent(ne.EVENT_DOWNSAMPLEFINISHED,{detail:e}))}fireDownsampleFail(e){this.fireEvent(new CustomEvent(ne.EVENT_DOWNSAMPLEFAILED,{detail:e}))}fireDownsampleNeeded(e){this.fireEvent(new CustomEvent(ne.EVENT_DOWNSAMPLENEEDED,{detail:e}))}fireLoadFinished(){this.fireEvent(new CustomEvent(ne.EVENT_LOADFINISHED))}fireError(e){this.fireEvent(new CustomEvent(ne.EVENT_ERROR,{detail:e}))}fireBlocker(e){this.fireEvent(new CustomEvent(ne.EVENT_BLOCKER,{detail:e}))}fireBlockerClear(){this.fireEvent(new CustomEvent(ne.EVENT_BLOCKER_CLEAR))}fireLayoutUpdated(e){this.fireEvent(new CustomEvent(ne.EVENT_LAYOUT_UPDATED,{detail:e}))}}fe(ne,"EVENT_UPDATED","ChartModel.EVENT_UPDATED");fe(ne,"EVENT_DISCONNECT","ChartModel.EVENT_DISCONNECT");fe(ne,"EVENT_RECONNECT","ChartModel.EVENT_RECONNECT");fe(ne,"EVENT_DOWNSAMPLESTARTED","ChartModel.EVENT_DOWNSAMPLESTARTED");fe(ne,"EVENT_DOWNSAMPLEFINISHED","ChartModel.EVENT_DOWNSAMPLEFINISHED");fe(ne,"EVENT_DOWNSAMPLEFAILED","ChartModel.EVENT_DOWNSAMPLEFAILED");fe(ne,"EVENT_DOWNSAMPLENEEDED","ChartModel.EVENT_DOWNSAMPLENEEDED");fe(ne,"EVENT_LOADFINISHED","ChartModel.EVENT_LOADFINISHED");fe(ne,"EVENT_ERROR","ChartModel.EVENT_ERROR");fe(ne,"EVENT_BLOCKER","ChartModel.EVENT_BLOCKER");fe(ne,"EVENT_BLOCKER_CLEAR","ChartModel.EVENT_BLOCKER_CLEAR");fe(ne,"EVENT_LAYOUT_UPDATED","ChartModel.EVENT_LAYOUT_UPDATED");function _i(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Vi(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?_i(Object(t),!0).forEach(function(r){pe(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):_i(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function pe(n,e,t){return(e=Nd(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Nd(n){var e=Md(n,"string");return typeof e=="symbol"?e:e+""}function Md(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Se=ee.module("FigureChartModel");class pr extends ne{constructor(e,t){var r,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};super(e),r=this,pe(this,"chartUtils",void 0),pe(this,"dh",void 0),pe(this,"figure",void 0),pe(this,"settings",void 0),pe(this,"data",void 0),pe(this,"layout",void 0),pe(this,"seriesDataMap",void 0),pe(this,"pendingSeries",void 0),pe(this,"oneClicks",void 0),pe(this,"filterColumnMap",void 0),pe(this,"lastFilter",void 0),pe(this,"isConnected",void 0),pe(this,"seriesToProcess",void 0),pe(this,"addPendingSeries",En.debounce(()=>{for(var a=I.getAxisTypeMap(this.figure),{pendingSeries:l}=this,s=function(){var d,h=l[o],c=r.figure.charts.find(v=>v.series.includes(h));r.addSeries(h,a,(d=c==null?void 0:c.showLegend)!==null&&d!==void 0?d:null),h.subscribe()},o=0;o<l.length;o+=1)s();this.pendingSeries=[]},pr.ADD_SERIES_DEBOUNCE)),pe(this,"getTimeZone",Be((a,l)=>{if(l!=null){var s=l.getColumnTypeFormatter(a);if(s!=null)return s.dhTimeZone}},{max:100})),pe(this,"getValueTranslator",Be((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.unwrapValue(o,s)},{max:100})),pe(this,"getValueParser",Be((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.wrapValue(o,a,s)},{max:100})),pe(this,"getRangeParser",Be((a,l)=>s=>{var[o,u]=s,d=this.getValueParser(a,l);return o=d(o),u=d(u),[o,u]},{max:100})),pe(this,"getAxisRangeParser",Be((a,l)=>s=>{var o=I.getSourceForAxis(a,s);return o!=null?this.getRangeParser(o.columnType,l):u=>u},{max:100})),this.handleFigureUpdated=this.handleFigureUpdated.bind(this),this.handleFigureDisconnected=this.handleFigureDisconnected.bind(this),this.handleFigureReconnected=this.handleFigureReconnected.bind(this),this.handleFigureSeriesAdded=this.handleFigureSeriesAdded.bind(this),this.handleDownsampleStart=this.handleDownsampleStart.bind(this),this.handleDownsampleFinish=this.handleDownsampleFinish.bind(this),this.handleDownsampleFail=this.handleDownsampleFail.bind(this),this.handleDownsampleNeeded=this.handleDownsampleNeeded.bind(this),this.handleRequestFailed=this.handleRequestFailed.bind(this),this.dh=e,this.chartUtils=new I(e),this.figure=t,this.settings=i,this.data=[],this.layout={grid:{rows:t.rows,columns:t.cols,pattern:"independent"}},this.seriesDataMap=new Map,this.pendingSeries=[],this.oneClicks=[],this.filterColumnMap=new Map,this.lastFilter=new Map,this.isConnected=!0,this.seriesToProcess=new Set,this.setTitle(this.getDefaultTitle()),this.initAllSeries(),this.updateAxisPositions(),this.startListeningFigure()}close(){this.figure.close(),this.addPendingSeries.cancel(),this.stopListeningFigure()}getDefaultTitle(){if(this.figure.title!=null&&this.figure.title.length>0)return this.figure.title;if(this.figure.charts.length===1){var e;return(e=this.figure.charts[0].title)!==null&&e!==void 0?e:""}return""}initAllSeries(){var e=this;this.oneClicks=[],this.filterColumnMap.clear();var{charts:t}=this.figure,r=I.getAxisTypeMap(this.figure),i=[];this.seriesToProcess=new Set;for(var a=function(){for(var c=t[l],v=0;v<c.series.length;v+=1){var g=c.series[v];i.push(g.name),e.addSeries(g,r,c.showLegend)}var{axes:m,title:f}=c;if(f!=null&&f.length>0&&(t.length>1||e.figure.title!=null)){var b=m.find(F=>F.type===e.dh.plot.AxisType.X),y=m.find(F=>F.type===e.dh.plot.AxisType.Y);if(b==null||y==null)Se.warn("Chart title provided, but unknown how to map to the correct axes for this chart type",c);else{var C,T,w,O,D=((C=(T=r.get(b.type))===null||T===void 0?void 0:T.findIndex(F=>F===b))!==null&&C!==void 0?C:0)+1,N=((w=(O=r.get(y.type))===null||O===void 0?void 0:O.findIndex(F=>F===y))!==null&&w!==void 0?w:0)+1,M={align:"center",x:.5,y:1,yshift:17,text:f,showarrow:!1,xref:"x".concat(D," domain"),yref:"y".concat(N," domain")};e.layout.annotations==null?e.layout.annotations=[M]:e.layout.annotations.push(M)}}},l=0;l<t.length;l+=1)a();for(var s=[...this.seriesDataMap.keys()],o=s.filter(h=>i.indexOf(h)<0),u=0;u<o.length;u+=1){var d=o[u];this.seriesDataMap.delete(d)}}addSeries(e,t,r){var i,a,{dh:l}=this,s=this.chartUtils.makeSeriesDataFromSeries(e,t,I.getSeriesVisibility(e.name,this.settings),r,(i=(a=this.renderOptions)===null||a===void 0?void 0:a.webgl)!==null&&i!==void 0?i:!0);if(this.seriesDataMap.set(e.name,s),this.seriesToProcess.add(e.name),this.data=[...this.seriesDataMap.values()],e.plotStyle===l.plot.SeriesPlotStyle.STACKED_BAR?this.layout.barmode="stack":e.plotStyle===l.plot.SeriesPlotStyle.PIE&&(this.layout.hiddenlabels=I.getHiddenLabels(this.settings)),this.layout.showlegend=this.data.length>1||e.plotStyle===l.plot.SeriesPlotStyle.PIE?r??void 0:!1,e.oneClick!=null){for(var{oneClick:o}=e,{columns:u}=o,d=0;d<u.length;d+=1)this.filterColumnMap.set(u[d].name,u[d]);this.oneClicks.push(o)}this.updateLayoutFormats()}subscribe(e){super.subscribe(e),this.listeners.length===1&&(this.initAllSeries(),this.subscribeFigure())}unsubscribe(e){super.unsubscribe(e),this.listeners.length===0&&this.unsubscribeFigure()}subscribeFigure(){if(!this.isConnected){Se.debug("Ignoring subscribe when figure in disconnected state");return}this.figure.subscribe(this.isDownsamplingDisabled?this.dh.plot.DownsampleOptions.DISABLE:this.dh.plot.DownsampleOptions.DEFAULT),this.figure.errors.length>0&&(Se.error("Errors in figure",this.figure.errors),this.fireError(this.figure.errors))}unsubscribeFigure(){this.figure.unsubscribe()}startListeningFigure(){var{dh:e}=this;this.figure.addEventListener(e.plot.Figure.EVENT_UPDATED,this.handleFigureUpdated),this.figure.addEventListener(e.plot.Figure.EVENT_SERIES_ADDED,this.handleFigureSeriesAdded),this.figure.addEventListener(e.plot.Figure.EVENT_DISCONNECT,this.handleFigureDisconnected),this.figure.addEventListener(e.plot.Figure.EVENT_RECONNECT,this.handleFigureReconnected),this.figure.addEventListener(e.plot.Figure.EVENT_DOWNSAMPLESTARTED,this.handleDownsampleStart),this.figure.addEventListener(e.plot.Figure.EVENT_DOWNSAMPLEFINISHED,this.handleDownsampleFinish),this.figure.addEventListener(e.plot.Figure.EVENT_DOWNSAMPLEFAILED,this.handleDownsampleFail),this.figure.addEventListener(e.plot.Figure.EVENT_DOWNSAMPLENEEDED,this.handleDownsampleNeeded),this.figure.addEventListener(e.Client.EVENT_REQUEST_FAILED,this.handleRequestFailed)}stopListeningFigure(){var{dh:e}=this;this.figure.removeEventListener(e.plot.Figure.EVENT_UPDATED,this.handleFigureUpdated),this.figure.removeEventListener(e.plot.Figure.EVENT_SERIES_ADDED,this.handleFigureSeriesAdded),this.figure.removeEventListener(e.plot.Figure.EVENT_DISCONNECT,this.handleFigureDisconnected),this.figure.removeEventListener(e.plot.Figure.EVENT_RECONNECT,this.handleFigureReconnected),this.figure.removeEventListener(e.plot.Figure.EVENT_DOWNSAMPLESTARTED,this.handleDownsampleStart),this.figure.removeEventListener(e.plot.Figure.EVENT_DOWNSAMPLEFINISHED,this.handleDownsampleFinish),this.figure.removeEventListener(e.plot.Figure.EVENT_DOWNSAMPLEFAILED,this.handleDownsampleFail),this.figure.removeEventListener(e.plot.Figure.EVENT_DOWNSAMPLENEEDED,this.handleDownsampleNeeded),this.figure.removeEventListener(e.Client.EVENT_REQUEST_FAILED,this.handleRequestFailed)}handleDownsampleStart(e){Se.debug("Downsample started",e),this.fireDownsampleStart(e.detail)}handleDownsampleFinish(e){Se.debug("Downsample finished",e),this.fireDownsampleFinish(e.detail)}handleDownsampleFail(e){Se.error("Downsample failed",e),this.fireDownsampleFail(e.detail)}handleDownsampleNeeded(e){Se.info("Downsample needed",e),this.fireDownsampleNeeded(e.detail)}handleFigureUpdated(e){var{detail:t}=e,{series:r}=t;Se.debug2("handleFigureUpdated",r);for(var i=0;i<r.length;i+=1){var a=r[i];Se.debug2("handleFigureUpdated updating series",a.name);for(var{sources:l}=a,s=0;s<l.length;s+=1){var o=l[s],{columnType:u,type:d}=o,h=this.getValueTranslator(u,this.formatter),c=t.getArray(a,d,h);this.setDataArrayForSeries(a,d,c)}this.seriesToProcess.delete(a.name),this.cleanSeries(a)}this.seriesToProcess.size===0&&this.fireLoadFinished();var{data:v}=this;this.fireUpdate(v)}handleRequestFailed(e){Se.error("Request failed",e),this.fireError(["".concat(e.detail)])}resubscribe(){this.listeners.length>0&&(this.unsubscribeFigure(),this.subscribeFigure())}setFormatter(e){super.setFormatter(e),this.updateLayoutFormats(),this.resubscribe()}setRenderOptions(e){super.setRenderOptions(e),this.initAllSeries()}setDownsamplingDisabled(e){super.setDownsamplingDisabled(e),this.resubscribe()}handleFigureDisconnected(e){Se.debug("Figure disconnected",e),this.isConnected=!1,this.listeners.length>0&&this.unsubscribeFigure(),this.fireDisconnect()}handleFigureReconnected(e){Se.debug("Figure reconnected",e),this.isConnected=!0,this.initAllSeries(),this.fireReconnect(),this.listeners.length>0&&this.subscribeFigure()}handleFigureSeriesAdded(e){var{detail:t}=e;Se.debug("handleFigureSeriesAdded",t),this.pendingSeries.push(t),this.addPendingSeries()}setDimensions(e){super.setDimensions(e),this.updateAxisPositions()}setTitle(e){var t,r;super.setTitle(e);var i=(t=(r=(e??"").match(/<br>/g))===null||r===void 0?void 0:r.length)!==null&&t!==void 0?t:0,a=I.DEFAULT_MARGIN.t+i*I.SUBTITLE_LINE_HEIGHT;this.layout.margin?this.layout.margin.t=a:this.layout.margin={t:a},typeof this.layout.title=="string"?this.layout.title={text:e}:(this.layout.title=Vi({},this.layout.title),this.layout.title.text=e,this.layout.title.pad=Vi({},this.layout.title.pad),this.layout.title.pad.t=I.DEFAULT_TITLE_PADDING.t+i*I.SUBTITLE_LINE_HEIGHT*.5),this.fireLayoutUpdated({title:this.layout.title})}getPlotWidth(){var e,t,r,i;return!this.rect||!this.rect.width?0:Math.max(this.rect.width-((e=(t=this.layout.margin)===null||t===void 0?void 0:t.l)!==null&&e!==void 0?e:0)-((r=(i=this.layout.margin)===null||i===void 0?void 0:i.r)!==null&&r!==void 0?r:0),0)}getPlotHeight(){var e,t,r,i;return!this.rect||!this.rect.height?0:Math.max(this.rect.height-((e=(t=this.layout.margin)===null||t===void 0?void 0:t.t)!==null&&e!==void 0?e:0)-((r=(i=this.layout.margin)===null||i===void 0?void 0:i.b)!==null&&r!==void 0?r:0),0)}updateAxisPositions(){var e=this.getPlotWidth(),t=this.getPlotHeight();this.chartUtils.updateFigureAxes(this.layout,this.figure,r=>this.getAxisRangeParser(r,this.formatter),e,t)}updateLayoutFormats(){if(this.formatter){var e=this.chartUtils.getAxisFormats(this.figure,this.formatter);e.forEach((t,r)=>{Se.debug("Assigning ".concat(r),this.layout[r],t);var i=this.layout[r];i!=null?Object.assign(i,t):Se.debug("Ignoring null layout.".concat(r))})}}setDataArrayForSeries(e,t,r){var{name:i,plotStyle:a}=e,l=this.seriesDataMap.get(i),s=this.chartUtils.getPlotlyProperty(a,t);l&&En.set(l,s,r)}cleanSeries(e){var{dh:t}=this,{name:r,plotStyle:i}=e,a=this.seriesDataMap.get(r);if(a!=null){if(i===t.plot.SeriesPlotStyle.HISTOGRAM){var{xLow:l,xHigh:s}=a;if(l&&s&&l.length===s.length){for(var o=[],u=0;u<l.length;u+=1)o.push(s[u]-l[u]);a.width=o}}else if(i===t.plot.SeriesPlotStyle.LINE||i===t.plot.SeriesPlotStyle.ERROR_BAR||i===t.plot.SeriesPlotStyle.BAR){var{x:d,xLow:h,xHigh:c,y:v,yLow:g,yHigh:m}=a;h&&c&&h!==d&&(a.error_x=I.getPlotlyErrorBars(d,h,c)),g&&m&&g!==v&&(a.error_y=I.getPlotlyErrorBars(v,g,m))}else if(i===t.plot.SeriesPlotStyle.TREEMAP){var{ids:f,labels:b}=a;f!==void 0&&b===void 0&&(a.labels=f)}}}getData(){return this.data}getLayout(){return this.layout}getFilterColumnMap(){return new Map(this.filterColumnMap)}isFilterRequired(){return this.oneClicks.find(e=>e.requireAllFiltersToDisplay)!=null}setFilter(e){var t=this;if(this.oneClicks.length===0){Se.warn("Trying to set a filter, but no one click!");return}Se.debug("setFilter",e);for(var r=function(){var l=t.oneClicks[i],{columns:s}=l,o=new Set([...e.keys(),...t.lastFilter.keys()]);o.forEach(u=>{var d=e.get(u);t.lastFilter.get(u)!==d&&s.find(h=>h.name===u)!=null&&l.setValueForColumn(u,d)})},i=0;i<this.oneClicks.length;i+=1)r();this.lastFilter=new Map(e)}setFigure(e){this.close(),this.figure=e,this.setTitle(this.getDefaultTitle()),this.initAllSeries(),this.updateAxisPositions(),this.startListeningFigure(),this.listeners.length>0&&this.subscribeFigure()}updateSettings(e){this.settings=e}}pe(pr,"ADD_SERIES_DEBOUNCE",50);function $i(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function mn(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){$i(a,r,i,l,s,"next",o)}function s(o){$i(a,r,i,l,s,"throw",o)}l(void 0)})}}class Bt{static makeModelFromSettings(e,t,r){return mn(function*(){var i=yield Bt.makeFigureFromSettings(e,t,r);return new pr(e,i,t)})()}static makeFigureFromSettings(e,t,r){return mn(function*(){var i=yield r.copy();return i.applyCustomColumns(r.customColumns),i.applyFilter(r.filter),i.applySort(r.sort),e.plot.Figure.create(new I(e).makeFigureSettings(t,i))})()}static makeModel(e,t,r){return mn(function*(){return new pr(e,r,t)})()}}function Hi(n){return n.setFigure!==void 0}function Gi(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Rd(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Gi(Object(t),!0).forEach(function(r){Id(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Gi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Id(n,e,t){return(e=kd(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function kd(n){var e=Ld(n,"string");return typeof e=="symbol"?e:e+""}function Ld(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ad=E.lazy(()=>zr(()=>import("./IrisGrid-B4lUy4sd.js"),__vite__mapDeps([13,1,2,3,4,5,8,9,14,11,15,16,17]),import.meta.url)),Jr=E.forwardRef((n,e)=>p.jsx(E.Suspense,{fallback:p.jsx(vt,{"data-testid":"lazy-iris-grid-loading"}),children:p.jsx(Ad,Rd({ref:e},n))}));Jr.displayName="LazyIrisGrid";var Nn=function(n){return n.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS="filter-control-change-clears-all-filters",n.LINK_CHANGE_CLEARS_ALL_FILTERS="link-change-clears-all-filters",n}(Nn||{}),xd=Object.freeze([[Nn.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS,!1],[Nn.LINK_CHANGE_CLEARS_ALL_FILTERS,!1]]);const xl={DEFAULTS:xd};var K=function(n){return n.COUNT="Count",n.MIN="Min",n.MAX="Max",n.SUM="Sum",n.ABS_SUM="AbsSum",n.VAR="Var",n.AVG="Avg",n.MEDIAN="Median",n.STD="Std",n.FIRST="First",n.LAST="Last",n.SKIP="Skip",n.COUNT_DISTINCT="CountDistinct",n.DISTINCT="Distinct",n.UNIQUE="Unique",n}(K||{}),lm=[K.SUM,K.ABS_SUM,K.MIN,K.MAX,K.VAR,K.AVG,K.MEDIAN,K.STD,K.FIRST,K.LAST,K.COUNT_DISTINCT,K.DISTINCT,K.COUNT,K.UNIQUE],jd=n=>{switch(n){default:return!1}},_d=n=>{switch(n){case K.MEDIAN:return!0;default:return!1}},jl=(n,e)=>{switch(n){case K.COUNT:case K.FIRST:case K.LAST:case K.COUNT_DISTINCT:case K.DISTINCT:case K.UNIQUE:return!0;case K.MEDIAN:case K.MIN:case K.MAX:return S.isNumberType(e)||S.isDateType(e)||S.isTextType(e);case K.SUM:case K.ABS_SUM:case K.VAR:case K.AVG:case K.STD:return S.isNumberType(e);case K.SKIP:return!1}},_l=(n,e)=>n.filter(t=>t.isProxy!==!0&&jl(e,t.type)),Vd=(n,e,t,r)=>_l(n,e).map(i=>{var{name:a}=i;return a}).filter(i=>t.includes(i)?!r:r);const fn={isValidOperation:jl,isRollupOperation:jd,isRollupProhibited:_d,filterValidColumns:_l,getOperationColumnNames:Vd};function $d(n){return(n==null?void 0:n.hasExpandableRows)!==void 0}function lr(n,e,t){return(e=Hd(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Hd(n){var e=Gd(n,"string");return typeof e=="symbol"?e:e+""}function Gd(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Bd=function(n){return n.DOWN="DOWN",n.UP="UP",n.LEFT="LEFT",n.RIGHT="RIGHT",n}({});class j{static normalize(e,t,r,i){var a=e,l=t,s=r,o=i;return a!=null&&s!=null&&s<a&&(a=s,s=e),l!=null&&o!=null&&o<l&&(l=o,o=t),[a,l,s,o]}static makeNormalized(e,t,r,i){return new j(...j.normalize(e,t,r,i))}static makeCell(e,t){return new j(e,t,e,t)}static makeColumn(e){return new j(e,null,e,null)}static makeRow(e){return new j(null,e,null,e)}static minOrNull(e,t){return e==null||t==null?null:Math.min(e,t)}static maxOrNull(e,t){return e==null||t==null?null:Math.max(e,t)}static consolidate(e){for(var t=e.slice(),r=!0;r;){r=!1;for(var i=0;i<t.length&&!r;i+=1)for(var a=t[i],l=t.length-1;l>i;l-=1){var s=t[l];if(a.contains(s))t.splice(l,1);else if(s.contains(a)){r=!0,t[i]=s,t.splice(l,1);break}else if(a.startRow===s.startRow&&a.endRow===s.endRow){if(a.touches(s)){var{startRow:o,endRow:u}=a,d=j.minOrNull(a.startColumn,s.startColumn),h=j.maxOrNull(a.endColumn,s.endColumn);r=!0,t[i]=new j(d,o,h,u),t.splice(l,1);break}}else if(a.startColumn===s.startColumn&&a.endColumn===s.endColumn&&a.touches(s)){var{startColumn:c,endColumn:v}=a,g=j.minOrNull(a.startRow,s.startRow),m=j.maxOrNull(a.endRow,s.endRow);r=!0,t[i]=new j(c,g,v,m),t.splice(l,1);break}}}return t}static isAxisRangeTouching(e,t,r,i){return e==null?t==null||r==null?!0:r<=t+1:t==null?i==null?!0:i>=e-1:r==null?i==null?!0:e<=i+1:i==null?t>=r-1:r>=e-1?r<=t+1:i>=e-1}static rangeArraysEqual(e,t){if(e===t)return!0;if(e==null||t==null||e.length!==t.length)return!1;for(var r=0;r<e.length;r+=1)if(!e[r].equals(t[r]))return!1;return!0}static intersection(e,t){if(e.equals(t))return e;var{startColumn:r,startRow:i,endColumn:a,endRow:l}=e;return r=r!=null&&t.startColumn!=null?Math.max(r,t.startColumn):r??t.startColumn,a=a!=null&&t.endColumn!=null?Math.min(a,t.endColumn):a??t.endColumn,i=i!=null&&t.startRow!=null?Math.max(i,t.startRow):i??t.startRow,l=l!=null&&t.endRow!=null?Math.min(l,t.endRow):l??t.endRow,r!=null&&r>(a??-1)||i!=null&&i>(l??-1)?null:new j(r,i,a,l)}static subtractFromRange(e,t){var r=[],i=j.intersection(e,t);return i==null?[e]:(i.startRow!=null&&(e.startRow==null||e.startRow<i.startRow)&&r.push(new j(e.startColumn,e.startRow,e.endColumn,i.startRow-1)),i.startColumn!=null&&(e.startColumn==null||e.startColumn<i.startColumn)&&r.push(new j(e.startColumn,i.startRow,i.startColumn-1,i.endRow)),i.endColumn!=null&&(e.endColumn==null||e.endColumn>i.endColumn)&&r.push(new j(i.endColumn+1,i.startRow,e.endColumn,i.endRow)),i.endRow!=null&&(e.endRow==null||e.endRow>i.endRow)&&r.push(new j(e.startColumn,i.endRow+1,e.endColumn,e.endRow)),r)}static subtractFromRanges(e,t){for(var r=[],i=0;i<e.length;i+=1)r.push(...j.subtractFromRange(e[i],t));return r}static subtractRangesFromRanges(e,t){for(var r=[...e],i=0;i<t.length;i+=1)r=j.subtractFromRanges(r,t[i]);return r}static isBounded(e){return e.startRow!=null&&e.startColumn!=null&&e.endRow!=null&&e.endColumn!=null}static boundedRange(e,t,r){var i,a,l,s;return j.isBounded(e)?e:new j((i=e.startColumn)!==null&&i!==void 0?i:0,(a=e.startRow)!==null&&a!==void 0?a:0,(l=e.endColumn)!==null&&l!==void 0?l:t-1,(s=e.endRow)!==null&&s!==void 0?s:r-1)}static boundedRanges(e,t,r){return e.map(i=>j.boundedRange(i,t,r))}static offset(e,t,r){return new j(e.startColumn!=null?e.startColumn+t:null,e.startRow!=null?e.startRow+r:null,e.endColumn!=null?e.endColumn+t:null,e.endRow!=null?e.endRow+r:null)}static nextCell(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:j.SELECTION_DIRECTION.DOWN;if(e.length===0)return null;var a=-1;if(t!=null&&r!=null&&(a=e.findIndex(c=>c.containsCell(t,r)),a>=0)){var l=e[a],s=l.nextCell(t,r,i);if(s!=null)return s}switch(i){case j.SELECTION_DIRECTION.DOWN:case j.SELECTION_DIRECTION.RIGHT:{var o=a<e.length-1?a+1:0,u=e[o];return u.startCell(i)}case j.SELECTION_DIRECTION.LEFT:case j.SELECTION_DIRECTION.UP:{var d=a>0?a-1:e.length-1,h=e[d];return h.startCell(i)}default:throw new Error("Invalid direction: ".concat(i))}}static cellCount(e){return e.reduce((t,r)=>{var i,a,l,s;return t+(((i=r.endRow)!==null&&i!==void 0?i:NaN)-((a=r.startRow)!==null&&a!==void 0?a:NaN)+1)*(((l=r.endColumn)!==null&&l!==void 0?l:NaN)-((s=r.startColumn)!==null&&s!==void 0?s:NaN)+1)},0)}static rowCount(e){return e.reduce((t,r)=>{var i,a;return t+((i=r.endRow)!==null&&i!==void 0?i:NaN)-((a=r.startRow)!==null&&a!==void 0?a:NaN)+1},0)}static columnCount(e){return e.reduce((t,r)=>{var i,a;return t+((i=r.endColumn)!==null&&i!==void 0?i:NaN)-((a=r.startColumn)!==null&&a!==void 0?a:NaN)+1},0)}static containsCell(e,t,r){for(var i=0;i<e.length;i+=1){var a=e[i];if(a.containsCell(t,r))return!0}return!1}static forEachCell(e,t){for(var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:j.SELECTION_DIRECTION.RIGHT,i=0;i<e.length;i+=1)e[i].forEach(t,r)}constructor(e,t,r,i){lr(this,"startColumn",void 0),lr(this,"startRow",void 0),lr(this,"endColumn",void 0),lr(this,"endRow",void 0),this.startColumn=e,this.startRow=t,this.endColumn=r,this.endRow=i}equals(e){return this.startColumn===e.startColumn&&this.startRow===e.startRow&&this.endColumn===e.endColumn&&this.endRow===e.endRow}contains(e){return(this.startColumn==null||e.startColumn!=null&&this.startColumn<=e.startColumn)&&(this.startRow==null||e.startRow!=null&&this.startRow<=e.startRow)&&(this.endColumn==null||e.endColumn!=null&&this.endColumn>=e.endColumn)&&(this.endRow==null||e.endRow!=null&&this.endRow>=e.endRow)}containsCell(e,t){return e==null||t==null?!1:(this.startColumn==null||this.startColumn<=e)&&(this.endColumn==null||this.endColumn>=e)&&(this.startRow==null||this.startRow<=t)&&(this.endRow==null||this.endRow>=t)}touches(e){return j.isAxisRangeTouching(this.startRow,this.endRow,e.startRow,e.endRow)&&j.isAxisRangeTouching(this.startColumn,this.endColumn,e.startColumn,e.endColumn)}subtract(e){return j.subtractFromRange(this,e)}startCell(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:j.SELECTION_DIRECTION.DOWN;if(!j.isBounded(this))throw new Error("Cannot get the startCell of an unbounded range");switch(e){case j.SELECTION_DIRECTION.DOWN:case j.SELECTION_DIRECTION.RIGHT:return{column:this.startColumn,row:this.startRow};case j.SELECTION_DIRECTION.LEFT:case j.SELECTION_DIRECTION.UP:return{column:this.endColumn,row:this.endRow};default:throw new Error("Invalid direction: ".concat(e))}}nextCell(e,t,r){if(!j.isBounded(this))throw new Error("Bounded range required");if(e==null||t==null)throw new Error("Require a non-null cursor");var{startColumn:i,endColumn:a,startRow:l,endRow:s}=this;switch(r){case j.SELECTION_DIRECTION.DOWN:if(t<s)return{column:e,row:Math.max(t+1,l)};if(e<a)return{column:Math.max(e+1,i),row:l};break;case j.SELECTION_DIRECTION.UP:if(t>l)return{column:e,row:Math.min(t-1,s)};if(e>i)return{column:Math.min(e-1,a),row:s};break;case j.SELECTION_DIRECTION.RIGHT:if(e<a)return{column:Math.max(e+1,i),row:t};if(t<s)return{column:i,row:Math.max(t+1,l)};break;case j.SELECTION_DIRECTION.LEFT:if(e>i)return{column:Math.min(e-1,a),row:t};if(t>l)return{column:a,row:Math.min(t-1,s)};break;default:throw new Error("Invalid direction: ".concat(r))}return null}forEach(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:j.SELECTION_DIRECTION.RIGHT,r=0,{column:i,row:a}=this.startCell(t);i!=null&&a!=null;){var l;e(i,a,r),r+=1,{column:i,row:a}=(l=this.nextCell(i,a,t))!==null&&l!==void 0?l:{}}}}lr(j,"SELECTION_DIRECTION",Bd);function Ud(n){return Array.isArray(n)&&n.length===2&&(n[0]===null||typeof n[0]=="number")&&(n[1]===null||typeof n[1]=="number")}function wr(n){return Ud(n)&&n[0]!=null&&n[1]!=null}function Bi(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Tr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Bi(Object(t),!0).forEach(function(r){Vl(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Bi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Vl(n,e,t){return(e=Wd(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Wd(n){var e=zd(n,"string");return typeof e=="symbol"?e:e+""}function zd(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function sm(n){return(n==null?void 0:n.href)!==void 0}class G{static getGridPointFromXY(e,t,r){var i=G.getColumnAtX(e,r),a=G.getRowAtY(t,r),l=G.getColumnHeaderDepthAtY(t,r);return{x:e,y:t,row:a,column:i,columnHeaderDepth:l}}static getCellInfoFromXY(e,t,r){var{row:i,column:a}=G.getGridPointFromXY(e,t,r),{allColumnWidths:l,allRowHeights:s,allColumnXs:o,allRowYs:u,modelColumns:d,modelRows:h}=r,c=i!==null?h.get(i):null,v=a!==null?d.get(a):null,g=a!==null?o.get(a):null,m=i!==null?u.get(i):null,f=a!==null?l.get(a):null,b=i!==null?s.get(i):null;return{row:i,column:a,modelRow:c??null,modelColumn:v??null,left:g??null,top:m??null,columnWidth:f??null,rowHeight:b??null}}static getColumnHeaderDepthAtY(e,t){var r=G.getRowAtY(e,t),{columnHeaderHeight:i,columnHeaderMaxDepth:a}=t;if(r===null&&e<=i*a)return Ge(a-Math.ceil(e/i),0,a-1)}static iterateFloatingStart(e,t,r){for(var i=0;i<e&&i<t;i+=1){var a=r(i);if(a!==void 0)return a}}static iterateFloatingEnd(e,t,r){for(var i=0;i<e&&t-(e-i)>=0;i+=1){var a=r(t-(e-i));if(a!==void 0)return a}}static iterateFloating(e,t,r,i){var a=G.iterateFloatingStart(e,r,i);return a!==void 0?a:G.iterateFloatingEnd(t,r,i)}static iterateAllItems(e,t,r,i,a,l){var s=Math.max(e,r),o=Math.min(t,a-i-1),u=G.iterateFloating(r,i,a,l);if(u!==void 0)return u;for(var d=s;d<=o;d+=1)if(u=l(d),u!==void 0)return u}static isInItem(e,t,r,i){var a,l,s=(a=t.get(e))!==null&&a!==void 0?a:0,o=(l=r.get(e))!==null&&l!==void 0?l:0;return s<=i&&i<=s+o}static getItemAtOffset(e,t,r,i,a,l,s){var o=arguments.length>7&&arguments[7]!==void 0?arguments[7]:!1,u=o?void 0:G.iterateFloating(r,i,t,c=>{if(G.isInItem(c,l,s,e))return c});if(!o&&u!==void 0)return u;for(var d=0;d<a.length;d+=1){var h=a[d];if(G.isInItem(h,l,s,e))return h}return null}static getColumnAtX(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{columnCount:i,floatingLeftColumnCount:a,floatingRightColumnCount:l,visibleColumns:s,allColumnXs:o,allColumnWidths:u,gridX:d}=t;return e<d?null:this.getItemAtOffset(e-d,i,a,l,s,o,u,r)}static getRowAtY(e,t){var{floatingTopRowCount:r,floatingBottomRowCount:i,rowCount:a,visibleRows:l,allRowYs:s,allRowHeights:o,gridY:u}=t;return e<u?null:this.getItemAtOffset(e-u,a,r,i,l,s,o)}static getNextShownItem(e,t,r,i){var a=r.findIndex(o=>o===e)||0;for(a-=1;a!=null&&a>=0;){var l=r[a],s=t.get(l);if(s!=null&&i.get(s)!==0)return l;a-=1}return null}static getNextShownColumn(e,t){var{modelColumns:r,visibleColumns:i,userColumnWidths:a}=t;return G.getNextShownItem(e,r,i,a)}static getNextShownRow(e,t){var{modelRows:r,visibleRows:i,userRowHeights:a}=t;return G.getNextShownItem(e,r,i,a)}static hasColumnSeparatorAtDepth(e,t,r,i){return t==null||r==null?!1:i==null?!0:e.textForColumnHeader(r,t)!==e.textForColumnHeader(i,t)}static getColumnSeparatorIndex(e,t,r,i,a){var{rowHeaderWidth:l,columnHeaderHeight:s,floatingColumns:o,floatingLeftWidth:u,visibleColumns:d,allColumnXs:h,allColumnWidths:c,columnHeaderMaxDepth:v,modelColumns:g}=r,{allowColumnResize:m,headerSeparatorHandleSize:f}=i;if(v*s<t||!m||f<=0)return null;for(var b=e-l,y=f*.5,C=G.getColumnHeaderDepthAtY(t,r),T=!1,w=o.length-1;w>=0;w-=1){var O,D,N=o[w],M=(O=h.get(N))!==null&&O!==void 0?O:0,F=(D=c.get(N))!==null&&D!==void 0?D:0,k=F===0;if(!T||!k){var L=M+F;k?L+=y:T&&(L-=y);var V=L-y,X=L+y;if(V<=b&&b<=X&&G.hasColumnSeparatorAtDepth(a,C,g.get(N),g.get(N+1)))return N;T=k}}T=!1;for(var Y=d.length-1;Y>=0;Y-=1){var Z,se,re=d[Y],Ce=(Z=h.get(re))!==null&&Z!==void 0?Z:0,ge=(se=c.get(re))!==null&&se!==void 0?se:0,A=ge===0;if(Ce<u-ge)return null;if(!T||!A){var x=Ce+ge;A?x+=y:T&&(x-=y);var _=x-y,B=x+y;if(_<=b&&b<=B&&G.hasColumnSeparatorAtDepth(a,C,g.get(re),g.get(re+1)))return re;T=A}}return null}static isItemHidden(e,t){return t.get(e)===0}static isColumnHidden(e,t){var{allColumnWidths:r}=t;return G.isItemHidden(e,r)}static isFloatingRow(e,t){if(e==null)return!1;var{floatingTopRowCount:r,floatingBottomRowCount:i,rowCount:a}=t;return e<r||e>=a-i}static isFloatingColumn(e,t){if(e==null)return!1;var{floatingLeftColumnCount:r,floatingRightColumnCount:i,columnCount:a}=t;return e<r||e>=a-i}static getHiddenItems(e,t,r){if(!G.isItemHidden(e,t))return[];for(var i=[e],a=r.findIndex(o=>o===e),l=a-1;l>=0;l-=1){var s=r[l];if(!G.isItemHidden(s,t))break;i.push(s)}return i}static getHiddenColumns(e,t){var{visibleColumns:r,allColumnWidths:i}=t;return G.getHiddenItems(e,i,r)}static getRowSeparatorIndex(e,t,r,i){var{rowHeaderWidth:a,columnHeaderHeight:l,visibleRows:s,allRowYs:o,allRowHeights:u}=r,{allowRowResize:d,headerSeparatorHandleSize:h}=i;if(a<e||!d||h<=0)return null;for(var c=t-l,v=h*.5,g=!1,m=s.length-1;m>=0;m-=1){var f,b,y=s[m],C=(f=o.get(y))!==null&&f!==void 0?f:0,T=(b=u.get(y))!==null&&b!==void 0?b:0,w=T===0;if(!g||!w){var O=C+T;w?O+=v:g&&(O-=v);var D=O-v,N=O+v;if(D<=c&&c<=N)return y;g=w}}return null}static isRowHidden(e,t){var{allRowHeights:r}=t;return G.isItemHidden(e,r)}static getHiddenRows(e,t){var{visibleRows:r,allRowHeights:i}=t;return G.getHiddenItems(e,i,r)}static moveItem(e,t,r){if(e===t)return r;var i=[...r],a=i[i.length-1];return a!=null&&!wr(a.from)&&a.to===e?a.from===t?i.pop():i[i.length-1]=Tr(Tr({},a),{},{to:t}):i.push({from:e,to:t}),i}static moveRange(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(e[0]===e[1])return G.moveItem(e[0],t,r);var a=t;if(i&&e[0]<t&&(a-=e[1]-e[0]),e[0]===a)return r;var l=[...r],s=l[l.length-1];s!=null&&wr(s.from)&&s.from[1]-s.from[0]===e[1]-e[0]&&s.to===e[0]?l[l.length-1]=Tr(Tr({},s),{},{to:a}):l.push({from:e,to:a});var o=l[l.length-1];return wr(o.from)&&o.from[0]===o.to&&l.pop(),l}static moveItemOrRange(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;return Array.isArray(e)?G.moveRange(e,t,r,i):G.moveItem(e,t,r)}static applyItemMoves(e,t,r){for(var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,a=[[e,t]],l=function(){var{from:u,to:d}=r[s],h=1,c;wr(u)?(h=u[1]-u[0]+1,[c]=u):c=u;for(var v=i?d:c,g=v+h-1,m=i?c:d,f=m-v,b=[],y=function(){var w,O,D=(w=a[C][0])!==null&&w!==void 0?w:Number.NEGATIVE_INFINITY,N=(O=a[C][1])!==null&&O!==void 0?O:Number.POSITIVE_INFINITY,M,F=[[D,v-1],[v,g],[g+1,N]].map(k=>{var[L,V]=k;return[Math.max(L,D),Math.min(V,N)]}).filter(k=>{var[L,V]=k;return L<=V}).map(k=>{var[L,V]=k;return v<=L&&g>=V?(M=[L+f,V+f],M):g<L?[L-h,V-h]:k}).map(k=>{var[L,V]=k;return m>L&&m<=V?[[L,m-1],[m+h,V+h]]:k===M?[k]:m<=L?[[L+h,V+h]]:[k]}).flat();b.push(...F)},C=0;C<a.length;C+=1)y();a=b.map(T=>{var[w,O]=T;return[Number.isFinite(w)?w:null,Number.isFinite(O)?O:null]})},s=i?r.length-1:0;i?s>=0:s<r.length;i?s-=1:s+=1)l();return a}static translateRange(e,t,r,i){for(var a=G.applyItemMoves(e.startColumn,e.endColumn,t,i),l=G.applyItemMoves(e.startRow,e.endRow,r,i),s=[],o=0;o<a.length;o+=1)for(var u=a[o],d=0;d<l.length;d+=1){var h=l[d];s.push(new j(u[0],h[0],u[1],h[1]))}return s}static getModelIndex(e,t){var r=G.applyItemMoves(e,e,t,!0)[0][0];return r}static getModelIndexes(e,t){return e.map(r=>G.getModelIndex(r,t))}static getModelRangeIndexes(e,t,r){return G.applyItemMoves(e,t,r,!0)}static getModelRange(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Q,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Q;return G.translateRange(e,t,r,!0)}static getModelRanges(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Q,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Q,i=[],a=0;a<e.length;a+=1)i.push(...G.getModelRange(e[a],t,r));return i}static getVisibleRangeIndexes(e,t,r){return G.applyItemMoves(e,t,r,!1)}static getVisibleRange(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Q,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Q;return this.translateRange(e,t,r,!1)}static getVisibleRanges(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Q,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Q,i=[],a=0;a<e.length;a+=1)i.push(...G.getVisibleRange(e[a],t,r));return i}static getVisibleIndex(e,t){var r=G.applyItemMoves(e,e,t)[0][0];return r}static getVisibleIndexes(e,t){return e.map(r=>G.getVisibleIndex(r,t))}static isMacPlatform(){var{platform:e}=window.navigator;return e.startsWith("Mac")}static getModifierKey(){return G.isMacPlatform()?"metaKey":"ctrlKey"}static isModifierKeyDown(e){var t=G.getModifierKey();return e[t]}static checkColumnHidden(e,t){return t.get(e)===0}static checkAllColumnsHidden(e,t){return t.size===0?!1:e.every(r=>t.get(r)===0)}static getScrollDragBounds(e,t,r){var{gridX:i,gridY:a,width:l,height:s,floatingTopRowCount:o,floatingBottomRowCount:u,floatingLeftColumnCount:d,floatingRightColumnCount:h,floatingLeftWidth:c,floatingRightWidth:v,floatingTopHeight:g,floatingBottomHeight:m,columnCount:f,rowCount:b}=e,y=i,C=a,T=l,w=s;return r!=null&&(r>d&&(y+=c),r<f-h&&(T-=v)),t!=null&&(t>o&&(C+=g),t<b-u&&(w-=m)),{x1:y,y1:C,x2:T,y2:w}}static getScrollDelta(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1024,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:768,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:20,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:20,{deltaX:l,deltaY:s}=e;return!G.isMacPlatform()&&e.shiftKey&&e.deltaX===0&&e.deltaY!==0&&(l=e.deltaY,s=e.deltaX),(e==null?void 0:e.deltaMode)===WheelEvent.DOM_DELTA_PAGE?(l*=t,s*=r):(e==null?void 0:e.deltaMode)===WheelEvent.DOM_DELTA_LINE&&(G.isMacPlatform()?(l=Math.round(l*i),s=Math.round(s*a)):(l=Math.round(l*this.PIXELS_PER_LINE),s=Math.round(s*this.PIXELS_PER_LINE))),{deltaX:l,deltaY:s}}static compareRanges(e,t){return e[0]==null||e[1]==null||t[0]==null||t[1]==null?0:e[0]!==t[0]?e[0]-t[0]:e[1]-t[1]}static mergeSortedRanges(e){for(var t=[],r=0;r<e.length;r+=1){var i=e[r],a=i[0],l=i[1];r===0?t.push([a,l]):a-1<=t[t.length-1][1]?t[t.length-1][1]=Math.max(t[t.length-1][1],l):t.push([a,l])}return t}static translateTokenBox(e,t){var{x1:r,y1:i,x2:a,y2:l}=e,{gridX:s,gridY:o,width:u,height:d,verticalBarWidth:h,horizontalBarHeight:c}=t,v=Ge(s+r,s,u-h),g=Ge(s+a,s,u-h),m=Ge(o+i,o,d-c),f=Ge(o+l,o,d-c);return{x1:v,y1:m,x2:g,y2:f,token:e.token}}static getTextRenderMetrics(e,t,r){var{metrics:i,model:a,theme:l}=e,{firstColumn:s,allColumnXs:o,allColumnWidths:u,allRowYs:d,allRowHeights:h,modelRows:c,modelColumns:v}=i,{cellHorizontalPadding:g,treeDepthIndent:m,treeHorizontalPadding:f}=l,b=At(c,r),y=At(v,t),C=a.textAlignForCell(y,b),T=At(o,t),w=At(d,r),O=At(u,t),D=At(h,r),N=t===s,M=0;$d(a)&&a.hasExpandableRows&&N&&(M=m*(a.depthForRow(r)+1)+f);var F=O-M,k=T+g,L=w+D*.5;return C==="right"?k=T+F-g:C==="center"&&(k=T+F*.5),k+=M,{width:F-g*2,x:k,y:L}}static findTokensWithProtocolInText(e){var t=Ks(e);return t.filter(r=>r.type==="url"?/^https?:\/\//.test(r.value):!0)}}Vl(G,"PIXELS_PER_LINE",100/3);function Ui(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 Wi(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ui(Object(t),!0).forEach(function(r){qd(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ui(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function qd(n,e,t){return(e=Kd(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Kd(n){var e=Xd(n,"string");return typeof e=="symbol"?e:e+""}function Xd(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Mn(n,e){var t=!1,r=Be(n,Wi(Wi({},e),{},{dispose:()=>{t||(t=!0,r.clear(),t=!1)}}));return r}function Yd(n,e,t){return(e=Zd(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Zd(n){var e=Qd(n,"string");return typeof e=="symbol"?e:e+""}function Qd(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var gn=5e3;class Jd extends Xs{constructor(){super(...arguments),Yd(this,"getCachedTokensInText",Mn((e,t)=>{if(t>=e.length)return G.findTokensWithProtocolInText(e);var r=e.slice(t-1,gn).search(/\s/),i=t+r;r===-1&&(i=Math.min(gn,e.length));var a=e.substring(0,i);return G.findTokensWithProtocolInText(a)},{max:1e4}))}get floatingTopRowCount(){return 0}get floatingBottomRowCount(){return 0}get floatingLeftColumnCount(){return 0}get floatingRightColumnCount(){return 0}get columnHeaderMaxDepth(){return 1}truncationCharForCell(e,t){}textAlignForCell(e,t){return"left"}colorForCell(e,t,r){return r.textColor}backgroundColorForCell(e,t,r){return null}colorForColumnHeader(e){return null}textForRowHeader(e){return""}textForRowFooter(e){return""}isColumnMovable(e){return!0}isRowMovable(e){return!0}getColumnHeaderGroup(e,t){}getColumnHeaderParentGroup(e,t){}tokensForCell(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:gn,i=this.textForCell(e,t);return this.getCachedTokensInText(i,r)}renderTypeForCell(e,t){return"text"}}function Rn(n,e,t){return(e=eh(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function eh(n){var e=th(n,"string");return typeof e=="symbol"?e:e+""}function th(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var pt=[],zi=new Set;class W extends Jd{constructor(e){super(),Rn(this,"dh",void 0),Rn(this,"listenerCount",void 0),this.dh=e,this.listenerCount=0}addEventListener(e,t,r){super.addEventListener(e,t,r),this.listenerCount+=1,this.listenerCount===1&&this.startListening()}removeEventListener(e,t,r){super.removeEventListener(e,t,r),this.listenerCount-=1,this.listenerCount===0&&this.stopListening()}startListening(){}stopListening(){}get aggregatedColumns(){return pt}get groupedColumns(){return pt}get originalColumns(){return this.columns}sourceForCell(e,t){return{column:e,row:t}}getClearFilterRange(e){return this.isFilterable(e)?[e,e]:null}get initialMovedColumns(){return pt}get initialMovedRows(){return pt}get initialColumnHeaderGroups(){return pt}get layoutHints(){return null}get frontColumns(){return pt}get backColumns(){return pt}get keyColumnSet(){return zi}get valueColumnSet(){return zi}get frozenColumns(){return pt}isColumnFrozen(e){return!1}isColumnSortable(e){return!1}get isFilterRequired(){return!1}get isReversible(){return!0}get isColumnStatisticsAvailable(){return!1}get description(){return""}get isAggregatedColumnsAvailable(){return!1}get isCustomColumnsAvailable(){return!1}get isFormatColumnsAvailable(){return!1}get isExportAvailable(){return!1}get isValuesTableAvailable(){return!1}get isChartBuilderAvailable(){return!1}get isOrganizeColumnsAvailable(){return!1}get isRollupAvailable(){return!1}get isSelectDistinctAvailable(){return!1}get isTotalsAvailable(){return!1}get isViewportPending(){return!1}isFilterable(e){return!1}close(){}isRowMovable(){return!1}get isSeekRowAvailable(){return!1}dataBarOptionsForCell(e,t,r){throw new Error("Method not implemented.")}tooltipForCell(e,t){return null}}Rn(W,"EVENT",Object.freeze({UPDATED:"UPDATED",FORMATTER_UPDATED:"FORMATTER_UPDATED",REQUEST_FAILED:"REQUEST_FAILED",COLUMNS_CHANGED:"COLUMNS_CHANGED",TABLE_CHANGED:"TABLE_CHANGED",FILTERS_CHANGED:"FILTERS_CHANGED",SORTS_CHANGED:"SORTS_CHANGED",DISCONNECT:"DISCONNECT",RECONNECT:"RECONNECT",TOTALS_UPDATED:"TOTALS_UPDATED",PENDING_DATA_UPDATED:"PENDING_DATA_UPDATED",VIEWPORT_UPDATED:"VIEWPORT_UPDATED"}));function yt(n,e,t){return(e=rh(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function rh(n){var e=nh(n,"string");return typeof e=="symbol"?e:e+""}function nh(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ih=ee.module("ColumnHeaderGroup");function bn(n){return n instanceof Cr}class Cr{constructor(e){var{name:t,children:r,color:i,depth:a,childIndexes:l,parent:s}=e;yt(this,"name",void 0),yt(this,"children",void 0),yt(this,"depth",void 0),yt(this,"parent",void 0),yt(this,"color",void 0),yt(this,"childIndexes",void 0),yt(this,"getVisibleRange",U(o=>{var u=this.childIndexes.flat(),d=G.getVisibleIndexes(u,o),h=Math.min(...d),c=Math.max(...d);return c-h!==u.length-1&&ih.warn("Column header group ".concat(this.name," is not contiguous")),[h,c]})),this.name=t,this.children=r,this.color=i??void 0,this.depth=a,this.childIndexes=l,this.parent=s}setParent(e){this.parent=e}addChildren(e){var t=new Set(this.children.concat(e));this.children=[...t]}removeChildren(e){var t=new Set(this.children);e.forEach(r=>t.delete(r)),this.children=[...t]}get isNew(){return this.name.startsWith(Cr.NEW_GROUP_PREFIX)}isValid(){return this.children.length===this.childIndexes.length}}yt(Cr,"NEW_GROUP_PREFIX",":newGroup");function Qe(n){return(n==null?void 0:n.isPartitionRequired)!==void 0&&(n==null?void 0:n.partitionColumns)!==void 0&&(n==null?void 0:n.partitionKeysTable)!==void 0&&(n==null?void 0:n.partitionMergedTable)!==void 0&&(n==null?void 0:n.partitionTable)!==void 0}function ah(n){return Qe(n)&&n.partitionConfig!==void 0}var lh=["selectedValues"],sh=["selectedValues"];function qi(n,e){if(n==null)return{};var t,r,i=oh(n,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(n);for(r=0;r<a.length;r++)t=a[r],e.indexOf(t)===-1&&{}.propertyIsEnumerable.call(n,t)&&(i[t]=n[t])}return i}function oh(n,e){if(n==null)return{};var t={};for(var r in n)if({}.hasOwnProperty.call(n,r)){if(e.indexOf(r)!==-1)continue;t[r]=n[r]}return t}function Ki(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function $e(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ki(Object(t),!0).forEach(function(r){In(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ki(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function In(n,e,t){return(e=uh(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function uh(n){var e=dh(n,"string");return typeof e=="symbol"?e:e+""}function dh(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var rr=ee.module("IrisGridUtils");function om(n){return n.partition!==void 0}function Xi(n){return Array.isArray(n.partitions)}function mt(n,e){return n>=0&&n<e.length}function hh(n){return(n==null?void 0:n.asDate)!=null}class ${static dehydrateGridState(e,t){var{isStuckToBottom:r,isStuckToRight:i,movedColumns:a,movedRows:l}=t,{columns:s}=e;return{isStuckToBottom:r,isStuckToRight:i,movedColumns:[...a].filter(o=>{var{to:u,from:d}=o;return mt(u,s)&&(typeof d=="number"&&mt(d,s)||Array.isArray(d)&&mt(d[0],s)&&mt(d[1],s))}).map(o=>{var{to:u,from:d}=o;return{to:s[u].name,from:Array.isArray(d)?[s[d[0]].name,s[d[1]].name]:s[d].name}}),movedRows:[...l]}}static hydrateGridState(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[],{isStuckToBottom:i,isStuckToRight:a,movedColumns:l,movedRows:s}=t,{columns:o}=e,u=$.parseCustomColumnNames(r),d=o.map(h=>{var{name:c}=h;return c}).concat(u);return{isStuckToBottom:i,isStuckToRight:a,movedColumns:[...l].map(h=>{var{to:c,from:v}=h,g=m=>typeof m=="string"?d.findIndex(f=>f===m):m;return{to:g(c),from:Array.isArray(v)?[g(v[0]),g(v[1])]:g(v)}}).filter(h=>{var{to:c,from:v}=h;return mt(c,d)&&(typeof v=="number"&&mt(v,d)||Array.isArray(v)&&mt(v[0],d)&&mt(v[1],d))}),movedRows:[...s]}}static dehydrateIrisGridPanelState(e,t){var{isSelectingPartition:r,partitions:i,advancedSettings:a}=t;return{isSelectingPartition:r,partitions:i,advancedSettings:[...a]}}static hydrateIrisGridPanelState(e,t){var{isSelectingPartition:r,advancedSettings:i}=t,a=[];return Xi(t)?a=t.partitions:t.partition!=null&&(a=[t.partition]),{isSelectingPartition:r,partitions:a,advancedSettings:new Map([...xl.DEFAULTS,...i])}}static dehydrateQuickFilters(e){return[...e].map(t=>{var[r,i]=t,{text:a}=i;return[r,{text:a}]})}static dehydrateLong(e){return e!=null?"".concat(e):null}static dehydrateSort(e){return e.map(t=>{var{column:r,isAbs:i,direction:a}=t;return{column:r.name,isAbs:i,direction:a}})}static extractTableSettings(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],{irisGridPanelState:r,irisGridState:i}=e,a=Xi(r)?r.partitions:[r.partition],{advancedFilters:l,quickFilters:s,sorts:o}=i;return{advancedFilters:l,inputFilters:t,partitions:a,quickFilters:s,sorts:o}}static getInputFiltersForColumns(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];return t.filter(r=>{var{name:i,type:a}=r;return e.find(l=>{var{name:s,type:o}=l;return s===i&&o===a})})}static getFiltersFromFilterMap(e){for(var t=[],r=Array.from(e.keys()),i=0;i<r.length;i+=1){var a=r[i],l=e.get(a);(l==null?void 0:l.filter)!=null&&t.push(l.filter)}return t}static getHiddenColumns(e){return[...e.entries()].filter(t=>{var[,r]=t;return r===0}).map(t=>{var[r]=t;return r})}static parseCustomColumnNames(e){return e.map(t=>t.split("=")[0])}static getRemovedCustomColumnNames(e,t){var r=$.parseCustomColumnNames(e),i=$.parseCustomColumnNames(t);return r.filter(a=>!i.includes(a))}static removeSortsInColumns(e,t){return e.filter(r=>!t.includes(r.column.name))}static removeFiltersInColumns(e,t,r){var i=e.map(l=>{var{name:s}=l;return s}),a=new Map(t);return r.forEach(l=>a.delete(i.indexOf(l))),a}static removeColumnFromMovedColumns(e,t,r){for(var i=e.map(o=>{var{name:u}=o;return u}),a=[...t],l=function(){for(var u=r[s],d=i.findIndex(b=>b===u),h=[],c=0;c<a.length;c+=1){var v=a[c],g=$e({},v),[m,f]=Array.isArray(v.from)?v.from:[v.from,v.from];d<=v.to&&(g.to-=1),d<m&&(m-=1),d<=f&&(f-=1),m<=f&&m!==g.to&&(m===f?h.push($e($e({},g),{},{from:m})):h.push($e($e({},g),{},{from:[m,f]}))),d=G.applyItemMoves(d,d,[v])[0][0]}a=h,i.splice(i.findIndex(b=>b===u),1)},s=0;s<r.length;s+=1)l();return a}static removeColumnsFromSelectDistinctColumns(e,t){return e.filter(r=>!t.includes(r))}static getVisibleColumnsInRange(e,t,r,i,a){for(var l=[],s=t;s<=r;s+=1){var o=G.getModelIndex(s,i);o>=0&&o<e.length&&!a.includes(o)&&l.push(e[o])}return l}static getPrevVisibleColumns(e,t,r,i,a){for(var l=[],s=t;s>=0&&l.length<r;){var o=G.getModelIndex(s,i);o>=0&&o<e.length&&!a.includes(o)&&l.unshift(e[o]),s-=1}return l}static getNextVisibleColumns(e,t,r,i,a){for(var l=[],s=t;s<e.length&&l.length<r;){var o=G.getModelIndex(s,i);o>=0&&o<e.length&&!a.includes(o)&&l.push(e[o]),s+=1}return l}static getColumnsToFetch(e,t,r){var i=[...t];return r.forEach(a=>{var l=e.find(s=>{var{name:o}=s;return o===a});l!=null&&!t.includes(l)&&i.push(l)}),i}static getModelViewportColumns(e,t,r,i){var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:[],l=arguments.length>5&&arguments[5]!==void 0?arguments[5]:[],s=arguments.length>6&&arguments[6]!==void 0?arguments[6]:0;if(!(t==null||r==null)){var o=$.getVisibleColumnsInRange(e,t,r,i,a),u=o.length*s,d=$.getPrevVisibleColumns(e,t-1,u,i,a),h=$.getNextVisibleColumns(e,r+1,u,i,a),c=[...d,...o,...h];return $.getColumnsToFetch(e,c,l)}}static isValidSnapshotRanges(e){if(e==null||e.length===0)return!1;for(var t=new Map,r=0;r<e.length;r+=1){var i=e[r],a="".concat(i.startRow,":").concat(i.endRow),l="".concat(i.startColumn,":").concat(i.endColumn);t.has(a)||t.set(a,[]),t.get(a).push(l)}for(var s=[...t.keys()],o=t.get(s[0]).sort().join(","),u=1;u<s.length;u+=1)if(t.get(s[u]).sort().join(",")!==o)return!1;return!0}static isValidIndex(e){return!Number.isInteger(e)||typeof e!="number"?!1:e>=0}static columnsFromRanges(e,t){if(e==null||e.length===0)return[];if(e[0].startColumn===null&&e[0].endColumn===null)return[...t];for(var r=new Set,i=0;i<e.length;i+=1){var a=e[i];R(a.startColumn),R(a.endColumn);for(var l=(s=a.startColumn)!==null&&s!==void 0?s:0;l<=((o=a.endColumn)!==null&&o!==void 0?o:t.length-1);l+=1){var s,o;r.add(l)}}return[...r].map(u=>t[u])}static snapshotDataToMatrix(e){for(var{columns:t,rows:r}=e,i=[],a=0;a<r.length;a+=1){for(var l=r[a],s=[],o=0;o<t.length;o+=1){var u=t[o],d=l.get(u);s.push(d)}i.push(s)}return i}static getModelRollupConfig(e,t,r){var i,a;if(((i=t==null||(a=t.columns)===null||a===void 0?void 0:a.length)!==null&&i!==void 0?i:0)===0)return null;for(var{columns:l=[],showConstituents:s=!0,showNonAggregatedColumns:o=!0,includeDescriptions:u=!0}=t??{},{aggregations:d=[]}=r??{},h=d.filter(y=>{var{operation:C}=y;return!fn.isRollupProhibited(C)}),c=h.map(y=>{var{operation:C,selected:T,invert:w}=y;return fn.isRollupOperation(C)?[]:fn.getOperationColumnNames(e,C,T,w)}),v={},g=0;g<h.length;g+=1)v[h[g].operation]=c[g];if(o){var m=new Set(e.map(y=>y.name).filter(y=>!l.includes(y)));if(c.forEach(y=>{y.forEach(C=>m.delete(C))}),m.size>0){var f,b=(f=v[K.FIRST])!==null&&f!==void 0?f:[];v[K.FIRST]=[...b,...m]}}return{groupingColumns:l,includeConstituents:s,includeDescriptions:u,aggregations:v}}static getPendingErrors(e){e.forEach((t,r)=>{if(!$.isValidIndex(r))throw new Error("Invalid rowIndex ".concat(r));var{data:i}=t;i.forEach((a,l)=>{if(!$.isValidIndex(l))throw new Error("Invalid columnIndex ".concat(l))})})}static getColumn(e,t){return t<e.length?e[t]:(rr.error("Unable to retrieve column",t,">=",e.length),null)}static getColumnByName(e,t){var r=Object.values(e).find(i=>{var{name:a}=i;return a===t});return r==null&&rr.error("Unable to retrieve column by name",t,e.map(i=>{var{name:a}=i;return a})),r}static changeFilterColumnNamesToIndexes(e,t){return t.map(r=>{var{name:i,filter:a}=r,l=e.findIndex(s=>s.name===i);return l<0?null:[l,a]}).filter(r=>r!=null)}static combineFiltersFromList(e,t){t.sort((d,h)=>d.operator==="eq"&&h.operator!=="eq"?1:d.operator!=="eq"&&h.operator==="eq"?-1:d.startColumnIndex-h.startColumnIndex);for(var r="",i=0;i<t.length;i+=1){var{text:a,value:l,operator:s}=t[i];if(l!==void 0){var o="";s!==void 0&&(l==null&&s==="eq"?o="=":s!=="eq"&&(s==="startsWith"||s==="endsWith"?o="*":o=S.getFilterOperatorString(s)));var u="".concat(o).concat(a);s==="startsWith"&&(u="".concat(a).concat(o)),e!=null&&l!==null&&S.isCharType(e)&&(u="".concat(o).concat(String.fromCharCode(parseInt(a,10)))),i!==0&&(r+=s==="eq"?" || ":" && "),r+=u}}return r}static parseColumnHeaderGroups(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:c=>new Cr(c),i=1,a=new Map,l=new Map,s=t==null?void 0:t.filter(c=>{var{children:v}=c;return v!=null&&v.length>0});if(s.length===0)return{groups:[],maxDepth:i,parentMap:a,groupMap:l};var o=new Map(s.map(c=>[c.name,c])),u=new Set,d=c=>{var v,{name:g}=c;R(g,"Column header group has no name");var m=e.getColumnIndexByName(g);if(m!=null&&m>=0)throw new Error("Column header group has same name as column: ".concat(g));var f=l.get(g);if(f)return f;var b=[],y=1;if(c.children==null)throw new Error("Column header group ".concat(g," has no children"));c.children.forEach(w=>{if(u.has(w))throw new Error("Column group child ".concat(w," specified in multiple groups"));u.add(w);var O=o.get(w),D=e.getColumnIndexByName(w);if(O){var N=d(O);b.push(...N.childIndexes),y=Math.max(y,N.depth+1)}else if(D!=null)b.push(D),y=Math.max(y,1);else throw new Error("Unknown child ".concat(w," in group ").concat(g))});var C=$e($e({},c),{},{name:g,children:c.children,depth:y,childIndexes:b.flat()}),T=r(C);return l.set(g,T),(v=c.children)===null||v===void 0||v.forEach(w=>a.set(w,T)),i=Math.max(i,T.depth+1),T},h=new Set;return s.forEach(c=>{var{name:v}=c;if(h.has(v))throw new Error("Duplicate column group name: ".concat(v));h.add(v),d(c)}),l.forEach(c=>{var v;c.setParent((v=a.get(c.name))===null||v===void 0?void 0:v.name)}),{groups:[...l.values()],maxDepth:i,groupMap:l,parentMap:a}}static convertValueToText(e,t){if(t!=null&&S.isCharType(t)&&e!=null&&typeof e=="number")return String.fromCharCode(e);if(S.isDateType(t)&&hh(e)){var r=new Date(e.asDate()),i=r.getTimezoneOffset(),a=new Date(r.getTime()-i*60*1e3),l=a.toISOString(),s=l.replace("T"," ").substring(0,23);return s}return e==null?"":"".concat(e)}constructor(e){In(this,"dh",void 0),In(this,"tableUtils",void 0),this.dh=e,this.tableUtils=new S(e),Un(this)}dehydrateIrisGridState(e,t){var{aggregationSettings:r={aggregations:Q,showOnTop:!1},advancedFilters:i,customColumnFormatMap:a,columnAlignmentMap:l=It,isFilterBarShown:s,metrics:{userColumnWidths:o,userRowHeights:u}={userColumnWidths:It,userRowHeights:It},quickFilters:d,customColumns:h,conditionalFormats:c=Q,reverse:v,rollupConfig:g,showSearchBar:m,searchValue:f,selectDistinctColumns:b=Q,selectedSearchColumns:y,sorts:C,invertSearchColumns:T,pendingDataMap:w=It,frozenColumns:O,columnHeaderGroups:D,partitionConfig:N}=t,{columns:M}=e,F=Qe(e)?e.partitionColumns:[];return{advancedFilters:this.dehydrateAdvancedFilters(M,i),aggregationSettings:r,customColumnFormatMap:[...a],columnAlignmentMap:[...l],isFilterBarShown:s,quickFilters:$.dehydrateQuickFilters(d),sorts:$.dehydrateSort(C),userColumnWidths:[...o].filter(k=>{var[L]=k;return L!=null&&L>=0&&L<M.length}).map(k=>{var[L,V]=k;return[M[L].name,V]}),userRowHeights:[...u],customColumns:[...h],conditionalFormats:[...c],reverse:v,rollupConfig:g,showSearchBar:m,searchValue:f,selectDistinctColumns:[...b],selectedSearchColumns:y,invertSearchColumns:T,pendingDataMap:this.dehydratePendingDataMap(M,w),frozenColumns:O,columnHeaderGroups:D==null?void 0:D.map(k=>{var L;return{name:k.name,children:k.children,color:(L=k.color)!==null&&L!==void 0?L:null}}),partitionConfig:this.dehydratePartitionConfig(F,N)}}hydrateIrisGridState(e,t){var r,i,{advancedFilters:a,aggregationSettings:l={aggregations:[],showOnTop:!1},customColumnFormatMap:s,columnAlignmentMap:o=[],isFilterBarShown:u,quickFilters:d,sorts:h,customColumns:c,conditionalFormats:v,userColumnWidths:g,userRowHeights:m,reverseType:f,reverse:b,rollupConfig:y=void 0,showSearchBar:C,searchValue:T,selectDistinctColumns:w,selectedSearchColumns:O,invertSearchColumns:D=!0,pendingDataMap:N=[],frozenColumns:M,columnHeaderGroups:F,partitionConfig:k}=t,{columns:L,formatter:V}=e,X=Qe(e)?e.partitionColumns:[];return{advancedFilters:this.hydrateAdvancedFilters(L,a,V.timeZone),aggregationSettings:l,customColumnFormatMap:new Map(s),columnAlignmentMap:new Map(o),isFilterBarShown:u,quickFilters:this.hydrateQuickFilters(L,d,V.timeZone),sorts:this.hydrateSort(L,h,!0),userColumnWidths:new Map(g.map(Y=>{var[Z,se]=Y;return typeof Z=="string"||Z instanceof String?[L.findIndex(re=>{var{name:Ce}=re;return Ce===Z}),se]:[Z,se]}).filter(Y=>{var[Z]=Y;return Z!=null&&Z>=0&&Z<L.length})),customColumns:c,conditionalFormats:v,userRowHeights:new Map(m),reverse:f===S.REVERSE_TYPE.POST_SORT||b,rollupConfig:y,showSearchBar:C,searchValue:T,selectDistinctColumns:w,selectedSearchColumns:O,invertSearchColumns:D,pendingDataMap:this.hydratePendingDataMap(L,N),frozenColumns:M,columnHeaderGroups:$.parseColumnHeaderGroups(e,(r=F??((i=e.layoutHints)===null||i===void 0?void 0:i.columnGroups))!==null&&r!==void 0?r:[]).groups,partitionConfig:this.hydratePartitionConfig(X,k)}}hydrateQuickFilters(e,t,r){var i=t.map(a=>{var[l,s]=a,{text:o}=s,u=null;try{var d=$.getColumn(e,l);d!=null&&(u=this.tableUtils.makeQuickFilter(d,o,r))}catch(h){rr.error("hydrateQuickFilters error with",o,h)}return[l,{text:o,filter:u}]});return new Map(i)}dehydrateAdvancedFilters(e,t){return[...t].map(r=>{var[i,a]=r,l=$.getColumn(e,i);R(l);var s=this.dehydrateAdvancedFilterOptions(l,a.options);return[i,{options:s}]})}hydrateAdvancedFilters(e,t,r){var i=t.map(a=>{var[l,s]=a,o=$.getColumn(e,l);R(o);var u=this.hydrateAdvancedFilterOptions(o,s.options),d=null;try{var h=$.getColumn(e,l);h!=null&&(d=this.tableUtils.makeAdvancedFilter(o,u,r))}catch(c){rr.error("hydrateAdvancedFilters error with",u,c)}return[l,{options:u,filter:d}]});return new Map(i)}dehydrateAdvancedFilterOptions(e,t){var{selectedValues:r}=t,i=qi(t,lh);return $e({selectedValues:r==null?void 0:r.map(a=>this.dehydrateValue(a,e==null?void 0:e.type))},i)}hydrateAdvancedFilterOptions(e,t){var{selectedValues:r}=t,i=qi(t,sh);return $e({selectedValues:r==null?void 0:r.map(a=>this.hydrateValue(a,e==null?void 0:e.type))},i)}dehydratePendingDataMap(e,t){return[...t].map(r=>{var[i,{data:a}]=r;return[i,{data:[...a].filter(l=>{var[s]=l;return typeof s=="number"}).map(l=>{var[s,o]=l;return[e[s].name,this.dehydrateValue(o.value,e[s].type)]})}]})}hydratePendingDataMap(e,t){var r=new Map,i=a=>(r.has(a)||r.set(a,e.findIndex(l=>{var{name:s}=l;return s===a})),r.get(a));return new Map(t.map(a=>{var[l,{data:s}]=a;return[l,{data:new Map(s.map(o=>{var u,[d,h]=o,c=i(d);return R(c),[(u=i(d))!==null&&u!==void 0?u:null,{value:this.hydrateValue(h,e[c].type)}]}))}]}))}dehydratePartitionConfig(e,t){return t==null?t:$e($e({},t),{},{partitions:t.partitions.map((r,i)=>this.dehydrateValue(r,e[i].type))})}hydratePartitionConfig(e,t){return t==null?t:$e($e({},t),{},{partitions:t.partitions.map((r,i)=>this.hydrateValue(r,e[i].type))})}dehydrateValue(e,t){return S.isDateType(t)?this.dehydrateDateTime(e):S.isLongType(t)?$.dehydrateLong(e):e}hydrateValue(e,t){return S.isDateType(t)?this.hydrateDateTime(e):S.isLongType(t)?this.hydrateLong(e):e}dehydrateDateTime(e){return e!=null?this.dh.i18n.DateTimeFormat.format(le.FULL_DATE_FORMAT,e):null}hydrateDateTime(e){return e!=null?this.dh.i18n.DateTimeFormat.parse(le.FULL_DATE_FORMAT,e):null}hydrateLong(e){return e!=null?this.dh.LongWrapper.ofString(e):null}hydrateSort(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{dh:i}=this;return t.map(a=>{var{column:l,isAbs:s,direction:o}=a;if(o===S.sortDirection.reverse)return i.Table.reverse();var u=typeof l=="string"?$.getColumnByName(e,l):$.getColumn(e,l);return u!=null?{column:{name:u.name,type:u.type},isAbs:s,direction:o}:null}).filter(a=>a!=null&&(a.direction!==S.sortDirection.reverse||!r))}hydrateDhSort(e,t){var{dh:r}=this;return t.map(i=>{var{column:{name:a},isAbs:l,direction:s}=i;if(s===S.sortDirection.reverse)return r.Table.reverse();var o=$.getColumnByName(e,a);if(o!=null){var u=o.sort();return l&&(u=u.abs()),s===S.sortDirection.descending?u=u.desc():u=u.asc(),u}return null}).filter(hu)}applyTableSettings(e,t,r){var{columns:i}=e,a=[];t.quickFilters&&(a=$.getFiltersFromFilterMap(this.hydrateQuickFilters(i,t.quickFilters,r)));var l=[];t.advancedFilters&&(l=$.getFiltersFromFilterMap(this.hydrateAdvancedFilters(i,t.advancedFilters,r)));var s=this.getFiltersFromInputFilters(i,t.inputFilters,r),o=[];t.sorts&&(o=this.hydrateDhSort(i,this.hydrateSort(i,t.sorts)));var u=[...a,...l],{partitions:d,partitionColumns:h}=t;if(d&&d.length&&h&&h!==null&&h!==void 0&&h.length){for(var c=h.map(m=>$.getColumnByName(i,m)),v=0;v<c.length;v+=1)if(c[v]!==void 0&&d[v]!=null){var g=c[v].filter().eq(this.dh.FilterValue.ofString(d[v]));u=[g,...u]}}u=[...s,...u],e.applyFilter(u),e.applySort(o)}getFiltersFromInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],r=arguments.length>2?arguments[2]:void 0;return t.map(i=>{var{name:a,type:l,value:s}=i,o=e.find(u=>{var{name:d,type:h}=u;return d===a&&h===l});if(o)try{return this.tableUtils.makeQuickFilter(o,s,r)}catch(u){rr.debug("Unable to create input filter",u)}return null}).filter(i=>i!=null)}rangeSetFromRanges(e){var{dh:t}=this,r=e.slice().sort((i,a)=>(R(i.startRow),R(a.startRow),i.startRow-a.startRow)).map(i=>{var{startRow:a,endRow:l}=i;return R(a),R(l),t.RangeSet.ofRange(a,l)});return t.RangeSet.ofRanges(r)}static colorForValue(e,t,r,i){return S.isDateType(t)||r==="Date"?(R(e.dateColor),e.dateColor):S.isNumberType(t)?i>0?(R(e.positiveNumberColor),e.positiveNumberColor):i<0?(R(e.negativeNumberColor),e.negativeNumberColor):(R(e.zeroNumberColor),e.zeroNumberColor):e.textColor}static textAlignForValue(e,t){return S.isDateType(e)||t==="Date"?"center":S.isNumberType(e)?"right":"left"}}function Cn(n,e,t){return(e=ch(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ch(n){var e=vh(n,"string");return typeof e=="symbol"?e:e+""}function vh(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class ph extends Error{constructor(e,t){super("".concat(t," can't be empty (on pending row ").concat(e+1,")")),Cn(this,"isMissingKey",!0),Cn(this,"rowIndex",void 0),Cn(this,"columnName",void 0),this.rowIndex=e,this.columnName=t}}function Yi(n,e,t){return(e=mh(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function mh(n){var e=fh(n,"string");return typeof e=="symbol"?e:e+""}function fh(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class gh extends Error{constructor(e,t){super(e,t),Yi(this,"ranges",void 0),Yi(this,"text",void 0),this.ranges=t==null?void 0:t.ranges,this.text=t==null?void 0:t.text,this.name="GridCommitError",this.cause=t==null?void 0:t.cause}toString(){return"".concat(this.message).concat(this.cause!==void 0?": ".concat(this.cause):"")}}function Zi(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 Pr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Zi(Object(t),!0).forEach(function(r){q(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Zi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Qi(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function ft(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Qi(a,r,i,l,s,"next",o)}function s(o){Qi(a,r,i,l,s,"throw",o)}l(void 0)})}}function q(n,e,t){return(e=bh(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function bh(n){var e=Ch(n,"string");return typeof e=="symbol"?e:e+""}function Ch(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ue=ee.module("IrisGridTableModelTemplate"),yh=150,Sh=0;function ct(n){return n.table!==void 0}class Ut extends W{seekRow(e,t,r,i,a,l,s){throw new Error("Method not implemented.")}export(){throw new Error("Method not implemented.")}columnStatistics(e){throw new Error("Method not implemented.")}get customColumns(){return[]}set customColumns(e){throw new Error("Method not implemented.")}get formatColumns(){return[]}set formatColumns(e){throw new Error("Method not implemented.")}updateFrozenColumns(e){throw new Error("Method not implemented.")}get rollupConfig(){throw new Error("Method not implemented.")}set rollupConfig(e){throw new Error("Method not implemented.")}get selectDistinctColumns(){throw new Error("Method not implemented.")}set selectDistinctColumns(e){throw new Error("Method not implemented.")}get columns(){return this.table.columns}constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Ke(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:new Map;super(e),q(this,"dh",void 0),q(this,"irisGridUtils",void 0),q(this,"tableUtils",void 0),q(this,"irisFormatter",void 0),q(this,"irisColumnAlignmentMap",void 0),q(this,"inputTable",void 0),q(this,"subscription",void 0),q(this,"table",void 0),q(this,"viewport",void 0),q(this,"viewportData",void 0),q(this,"formattedStringData",void 0),q(this,"pendingStringData",void 0),q(this,"isSaveInProgress",void 0),q(this,"totalsTable",void 0),q(this,"totalsTablePromise",void 0),q(this,"totals",void 0),q(this,"totalsDataMap",void 0),q(this,"pendingNewDataMap",void 0),q(this,"pendingNewRowCount",0),q(this,"_columnHeaderGroupMap",new Map),q(this,"columnHeaderParentMap",new Map),q(this,"_columnHeaderMaxDepth",null),q(this,"_columnHeaderGroups",[]),q(this,"_isColumnHeaderGroupsInitialized",!1),q(this,"_movedColumns",null),q(this,"getMemoizedInitialMovedColumns",U(l=>{var s,o,u,d;if(!l)return[];var h=[],{groupMap:c}=$.parseColumnHeaderGroups(this,(s=l==null?void 0:l.columnGroups)!==null&&s!==void 0?s:[]),v=(D,N)=>{var M=this.getColumnIndexByName(D);if(M==null)throw new Error("Unknown layout hint column: ".concat(D));var F=G.getVisibleIndex(M,h);h=G.moveItem(F,N,h)},g=(D,N)=>{var M=c.get(D);if(M==null)throw new Error("Unknown layout hint group: ".concat(D));var F=M.getVisibleRange(h);h=G.moveRange(F,N,h)},m=(o=l.frontColumns)!==null&&o!==void 0?o:[],f=(u=l.backColumns)!==null&&u!==void 0?u:[],b=(d=l.frozenColumns)!==null&&d!==void 0?d:[];if(m.length>0||f.length>0||b.length>0){var y=new Set,C=0;b==null||b.forEach(D=>{if(y.has(D))throw new Error("Column specified in multiple layout hints: ".concat(D));v(D,C),C+=1}),m.forEach(D=>{if(y.has(D))throw new Error("Column specified in multiple layout hints: ".concat(D));v(D,C),C+=1});var T=this.columns.length-1;f==null||f.forEach(D=>{if(y.has(D))throw new Error("Column specified in multiple layout hints: ".concat(D));v(D,T),T-=1})}var w=l==null?void 0:l.columnGroups;if(w){var O=[...c.values()];O.sort((D,N)=>D.depth-N.depth),O.forEach(D=>{var N=D.children[0],M=this.getColumnIndexByName(N),F;if(M!=null)F=G.getVisibleIndex(M,h);else{var k=c.get(N);if(!k)throw new Error("Unknown column ".concat(N," in group ").concat(D.name));var L=k.getVisibleRange(h);[,F]=L}for(var V=1;V<D.children.length;V+=1){var X=D.children[V],Y=c.get(X),Z=this.getColumnIndexByName(X);if(Y){var se=Y.getVisibleRange(h)[0]<F,re=se?F-Y.childIndexes.length+1:F+1;g(X,re),F=re+Y.childIndexes.length-1}else if(Z!=null){var Ce=G.getVisibleIndex(Z,h)<F,ge=Ce?F:F+1;v(X,ge),F=ge}}})}return this._movedColumns=h,h})),q(this,"getMemoizedInitialColumnHeaderGroups",U(l=>{var s;return $.parseColumnHeaderGroups(this,(s=l==null?void 0:l.columnGroups)!==null&&s!==void 0?s:[]).groups})),q(this,"getColumnIndicesByNameMap",U(l=>{var s=new Map;return l.forEach((o,u)=>{var{name:d}=o;return s.set(d,u)}),s})),q(this,"setViewport",gi((l,s,o)=>{if(s<l){ue.error("Invalid viewport",l,s);return}var{viewport:u}=this;if(u!=null&&u.top===l&&u.bottom===s&&u.columns===o){ue.debug2("Ignoring duplicate viewport",u);return}this.viewport={top:l,bottom:s,columns:o},ue.debug2("setViewport",this.viewport),this.applyViewport()},yh)),q(this,"applyViewport",gi(()=>{if(this.viewport){ue.debug2("applyViewport",this.viewport);var{top:l,bottom:s,columns:o}=this.viewport,[u,d]=this.getCachedViewportRowRange(l,s);this.applyBufferedViewport(u,d,o)}},Sh,{leading:!1})),q(this,"getCachedFormattedString",Mn((l,s,o,u,d)=>l.getFormattedString(s,o,u,d),{max:1e4})),q(this,"getCachedCustomColumnFormatFlag",Mn(Fn.isCustomColumnFormatDefined,{max:1e4})),q(this,"getCachedViewportRowRange",U((l,s)=>{var o=s-l,u=Math.max(0,l-o*Ut.ROW_BUFFER_PAGES),d=s+o*Ut.ROW_BUFFER_PAGES;return[u,d]})),q(this,"getCachedPendingErrors",U((l,s,o)=>{var u=new Map;return l.forEach((d,h)=>{for(var{data:c}=d,v=0;v<o;v+=1)if(!c.has(v)){var g;u.has(h)||u.set(h,[]),(g=u.get(h))===null||g===void 0||g.push(new ph(h,s[v].name))}}),u})),this.handleTableDisconnect=this.handleTableDisconnect.bind(this),this.handleTableReconnect=this.handleTableReconnect.bind(this),this.handleTableUpdate=this.handleTableUpdate.bind(this),this.handleTotalsUpdate=this.handleTotalsUpdate.bind(this),this.handleRequestFailed=this.handleRequestFailed.bind(this),this.handleCustomColumnsChanged=this.handleCustomColumnsChanged.bind(this),this.dh=e,this.irisFormatter=r,this.irisColumnAlignmentMap=a,this.irisGridUtils=new $(e),this.inputTable=i,this.subscription=null,this.table=t,this.tableUtils=new S(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}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 ae(W.EVENT.DISCONNECT))}handleTableReconnect(){this.dispatchEvent(new ae(W.EVENT.RECONNECT))}handleTableUpdate(e){this.copyViewportData(e.detail),this.dispatchEvent(new ae(W.EVENT.UPDATED))}handleTotalsUpdate(e){this.copyTotalsData(e.detail),this.dispatchEvent(new ae(W.EVENT.UPDATED))}handleRequestFailed(e){this.dispatchEvent(new ae(W.EVENT.REQUEST_FAILED,e))}handleCustomColumnsChanged(){this.dispatchEvent(new ae(W.EVENT.COLUMNS_CHANGED,{detail:this.columns}))}get rowCount(){var e,t;return Math.max(this.table.size,0)+this.pendingNewRowCount+((e=(t=this.totals)===null||t===void 0||(t=t.operationOrder)===null||t===void 0?void 0:t.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(!$.isValidIndex(r))throw new Error("Invalid rowIndex ".concat(r));var{data:i}=t;i.forEach((a,l)=>{if(!$.isValidIndex(l))throw new Error("Invalid columnIndex ".concat(l))})}),this.pendingNewDataMap=e,this.pendingNewRowCount=Math.max(this.pendingNewRowCount,this.maxPendingDataRow),this.formattedStringData=[],this.dispatchEvent(new ae(W.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 ae(W.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;return this.totals!=null&&this.totals.showOnTop?0:(e=(t=this.totals)===null||t===void 0||(t=t.operationOrder)===null||t===void 0?void 0:t.length)!==null&&e!==void 0?e:0}get floatingTopRowCount(){var e,t;return this.totals!=null&&this.totals.showOnTop&&(e=(t=this.totals)===null||t===void 0||(t=t.operationOrder)===null||t===void 0?void 0:t.length)!==null&&e!==void 0?e:0}get isValuesTableAvailable(){return this.table.selectDistinct!=null&&this.table.copy!=null}get isChartBuilderAvailable(){return!0}get isOrganizeColumnsAvailable(){return!0}get isTotalsAvailable(){return this.table.getTotalsTable!=null}get isEditable(){return!this.isSaveInProgress&&this.inputTable!=null}get isDeletable(){return this.keyColumnSet.size>0}get isViewportPending(){if(this.viewport==null||this.viewport.columns===void 0||this.viewportData==null)return!0;if(this.viewport.columns.length===0||this.viewportData.rows.length===0)return!1;var e=this.viewport.top<this.viewportData.offset,t=this.viewportData.offset+this.viewportData.rows.length<this.viewport.bottom,r=this.viewportData.rows[0].data.get(this.viewport.columns[0].index)===void 0,i=this.viewportData.rows[0].data.get(this.viewport.columns[this.viewport.columns.length-1].index)===void 0;return e||t||r||i}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=this.valueForCell(e,t);if(a===null)return null;if(a===void 0)return;var l=this.sourceColumn(e,t),s=this.getCachedCustomColumnFormatFlag(this.formatter,l.name,l.type),o;if(!s){var u=this.formatForCell(e,t);(u==null?void 0:u.formatString)!=null&&(o=u)}var d=this.displayString(a,l.type,l.name,o);this.cacheFormattedValue(e,t,d)}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(S.isTextType((r=this.columns[e])===null||r===void 0?void 0:r.type)){if(i===null)return this.formatter.showNullStrings?"null":"";if(i==="")return this.formatter.showEmptyStrings?"empty":""}return i??""}truncationCharForCell(e){var t=this.columns[e],{type:r}=t;if(S.isNumberType(r)&&this.formatter.truncateNumbersWithPound)return"#"}colorForCell(e,t,r){var i=this.dataForCell(e,t);if(i){var{format:a,value:l}=i;if(l==null||l==="")return R(r.nullStringColor),r.nullStringColor;if((a==null?void 0:a.color)!=null&&a.color!=="")return a.color;if(this.isPendingRow(t))return R(r.pendingTextColor),r.pendingTextColor;if(l!=null){var s=this.sourceColumn(e,t);return $.colorForValue(r,s.type,s.name,l)}}else if(this.isPendingRow(t)&&this.isKeyColumn(e))return R(r.errorTextColor),r.errorTextColor;return r.textColor}backgroundColorForCell(e,t,r){var i,a;return(i=(a=this.formatForCell(e,t))===null||a===void 0?void 0:a.backgroundColor)!==null&&i!==void 0?i:null}textAlignForCell(e,t){var r=this.sourceColumn(e,t),i=this.columnAlignmentMap.get(r.name);return i??$.textAlignForValue(r.type,r.name)}textForColumnHeader(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,i=this.columnAtDepth(e,r);return bn(i)?i.isNew?"":i.name:(t=i==null?void 0:i.displayName)!==null&&t!==void 0?t:i==null?void 0:i.name}colorForColumnHeader(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=this.columnAtDepth(e,t);if(bn(r)){var i;return(i=r.color)!==null&&i!==void 0?i:null}return null}tooltipForCell(e,t){return S.isDateType(this.columns[e].type)?this.displayString(this.valueForCell(e,t),this.columns[e].type,this.columns[e].name,{formatString:le.FULL_DATE_FORMAT}):null}getColumnHeaderGroup(e,t){var r=this.columnAtDepth(e,t);if(bn(r))return r}getColumnHeaderParentGroup(e,t){var r,i;return this.columnHeaderParentMap.get((r=(i=this.columnAtDepth(e,t))===null||i===void 0?void 0:i.name)!==null&&r!==void 0?r:"")}columnAtDepth(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;if(r===0)return this.columns[e];var i=(t=this.columns[e])===null||t===void 0?void 0:t.name,a=this.columnHeaderParentMap.get(i);if(a){for(var l=a.depth;l<r;){if(a=this.columnHeaderParentMap.get(a.name),!a)return;l=a.depth}if(a.depth===r)return a}}textForRowFooter(e){var t=this.totalsRow(e);return t!=null&&this.totals?this.totals.operationOrder[t]:""}get initialMovedColumns(){var e;return this.getMemoizedInitialMovedColumns((e=this.layoutHints)!==null&&e!==void 0?e:void 0)}get initialColumnHeaderGroups(){var e;return this.getMemoizedInitialColumnHeaderGroups((e=this.layoutHints)!==null&&e!==void 0?e:void 0)}get columnHeaderMaxDepth(){var e;return(e=this._columnHeaderMaxDepth)!==null&&e!==void 0?e:1}set columnHeaderMaxDepth(e){this._columnHeaderMaxDepth=e}get columnHeaderGroupMap(){return this.initializeColumnHeaderGroups(),this._columnHeaderGroupMap}get columnHeaderGroups(){return this.initializeColumnHeaderGroups(),this._columnHeaderGroups}set columnHeaderGroups(e){if(e!==this._columnHeaderGroups){var{groups:t,maxDepth:r,parentMap:i,groupMap:a}=$.parseColumnHeaderGroups(this,e??this.initialColumnHeaderGroups);this._columnHeaderGroups=t,this.columnHeaderMaxDepth=r,this.columnHeaderParentMap=i,this._columnHeaderGroupMap=a,this._isColumnHeaderGroupsInitialized=!0}}initializeColumnHeaderGroups(){if(!this._isColumnHeaderGroupsInitialized){var e,t;this.columnHeaderGroups=$.parseColumnHeaderGroups(this,(e=(t=this.layoutHints)===null||t===void 0?void 0:t.columnGroups)!==null&&e!==void 0?e:[]).groups}}row(e){var t,r,i,a,l,s,o,u,d=(t=(r=this.totals)===null||r===void 0||(r=r.operationOrder)===null||r===void 0?void 0:r.length)!==null&&t!==void 0?t:0,h=(i=(a=this.totals)===null||a===void 0?void 0:a.showOnTop)!==null&&i!==void 0?i:!1,c=this.totalsRow(e);if(c!=null){var v,g,m,f=(v=this.totals)===null||v===void 0?void 0:v.operationOrder[c];return R(f),(g=(m=this.totalsDataMap)===null||m===void 0?void 0:m.get(f))!==null&&g!==void 0?g:null}var b=this.pendingRow(e);if(b!=null){var y;return(y=this.pendingNewDataMap.get(b))!==null&&y!==void 0?y:null}var C=(l=(s=this.viewportData)===null||s===void 0?void 0:s.offset)!==null&&l!==void 0?l:0,T=(h?e-d:e)-C;return(o=(u=this.viewportData)===null||u===void 0||(u=u.rows)===null||u===void 0?void 0:u[T])!==null&&o!==void 0?o:null}sourceColumn(e,t){var r=this.totalsRow(t);if(r!=null){var i,a,l,s,o=(i=this.totals)===null||i===void 0?void 0:i.operationOrder[r],u=(a=(l=this.totals)===null||l===void 0?void 0:l.defaultOperation)!==null&&a!==void 0?a:K.SUM,d=this.columns[e],h=(s=this.totalsTable)===null||s===void 0?void 0:s.columns.find(c=>{var v;return c.name==="".concat(d.name,"__").concat(o)||(o===u||((v=this.totals)===null||v===void 0||(v=v.operationMap[c.name])===null||v===void 0?void 0:v.length)===1)&&c.name===d.name});if(h!=null)return h}return this.columns[e]}totalsRow(e){var t,r,i,a,l=(t=(r=this.totals)===null||r===void 0||(r=r.operationOrder)===null||r===void 0?void 0:r.length)!==null&&t!==void 0?t:0,s=(i=(a=this.totals)===null||a===void 0?void 0:a.showOnTop)!==null&&i!==void 0?i:!1,o=s?e:e-this.table.size;return o>=0&&o<l?o:null}pendingRow(e){if(!this.isEditable)return null;var t=e-this.floatingTopRowCount-this.table.size;return t>=0?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){ue.warn("invalid data!");return}this.viewportData=this.extractViewportData(e),this.formattedStringData=[]}copyTotalsData(e){var t,r,i,a=this;if(e==null){ue.warn("invalid data!");return}var{columns:l,rows:s}=e;if(s.length!==1){ue.error("Unexpected number of rows received for totals table, ignoring update");return}for(var o=new Map,u=s[0],d=(t=(r=this.totals)===null||r===void 0?void 0:r.defaultOperation)!==null&&t!==void 0?t:K.SUM,h=(i=this.totals)===null||i===void 0?void 0:i.operationMap,c=function(){var m,f,b=l[v],[y,C=(m=h==null||(f=h[y])===null||f===void 0?void 0:f[0])!==null&&m!==void 0?m:d]=b.name.split("__");o.has(C)||o.set(C,{data:new Map});var{data:T}=o.get(C),w=a.columns.findIndex(O=>O.name===y);T.set(w,{value:u.get(b),format:u.getFormat(b)})},v=0;v<l.length;v+=1)c();ue.debug2("copyTotalsData",o),this.totalsDataMap=o,this.formattedStringData=[]}getColumnIndexByName(e){return this.getColumnIndicesByNameMap(this.columns).get(e)}extractViewportData(e){for(var t={offset:e.offset,rows:[]},{columns:r}=e,i=0;i<e.rows.length;i+=1){var a=e.rows[i],l=this.extractViewportRow(a,r);t.rows.push(l)}return t}extractViewportRow(e,t){for(var r=new Map,i=0;i<t.length;i+=1){var a=t[i],l=this.getColumnIndexByName(a.name);r.set(l??a.name,{value:e.get(a),format:e.getFormat(a)})}return{data:r}}closeSubscription(){ue.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 ae(W.EVENT.FORMATTER_UPDATED))}get columnAlignmentMap(){return this.irisColumnAlignmentMap}set columnAlignmentMap(e){this.irisColumnAlignmentMap=e}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(this.irisGridUtils.hydrateDhSort(this.columns,e)),this.applyViewport()}set totalsConfig(e){if(ue.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 ae(W.EVENT.UPDATED));return}this.totalsTablePromise=Le.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{Le.isCanceled(t)||(ue.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new ae(W.EVENT.REQUEST_FAILED,{detail:t})))})}}setTotalsTable(e){ue.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){if(this.dispatchEvent(new ae(W.EVENT.VIEWPORT_UPDATED)),ue.debug2("applyBufferedViewport",e,t,r),this.subscription==null){var i;ue.debug2("applyBufferedViewport creating new subscription"),this.subscription=(i=this.table.setViewport(e,t,r))!==null&&i!==void 0?i:null}else ue.debug2("applyBufferedViewport using existing subscription"),this.subscription.setViewport(e,t,r)}snapshot(e){var t=arguments,r=this;return ft(function*(){var i=t.length>1&&t[1]!==void 0?t[1]:!1,a=t.length>2&&t[2]!==void 0?t[2]:M=>M,l=t.length>3&&t[3]!==void 0?t[3]:!0;if(r.subscription==null)throw new Error("No subscription available");var s=l?j.consolidate(e):e;if(!$.isValidSnapshotRanges(s))throw new Error("Invalid snapshot ranges ".concat(e));for(var o=new Set,u=[],d=new Set,h=0;h<s.length;h+=1){var c=s[h];R(c.endRow),R(c.startRow);for(var v=c.startRow;v<=c.endRow&&v<r.floatingTopRowCount;v+=1)o.add(v);c.endRow>=r.floatingTopRowCount&&c.startRow<=r.floatingTopRowCount+r.table.size&&u.push(new j(c.startColumn,Math.min(Math.max(0,c.startRow-r.floatingTopRowCount)),c.endColumn,Math.min(Math.max(0,c.endRow-r.floatingTopRowCount),r.table.size-r.floatingTopRowCount)));for(var g=Math.max(c.startRow,r.floatingTopRowCount+r.table.size);g<=c.endRow&&g<r.floatingTopRowCount+r.table.size+r.floatingBottomRowCount;g+=1)d.add(g)}var m=$.columnsFromRanges(s,r.columns),f=[];i&&f.push(m.map(M=>M.name));for(var b=[...o].sort(),y=function*(){var F=b[C],k=m.map(L=>{var V=r.getColumnIndexByName(L.name);return R(V),a(r.valueForCell(V,F),L)});i&&k.push(r.textForRowFooter(F)),f.push(k)},C=0;C<b.length;C+=1)yield*y();if(u.length>0){var T=r.irisGridUtils.rangeSetFromRanges(u),w=yield r.subscription.snapshot(T,m);f.push(...w.rows.map(M=>m.map(F=>a(M.get(F),F))))}for(var O=[...d].sort(),D=function*(){var F=O[N],k=m.map(L=>{var V=r.getColumnIndexByName(L.name);return R(V),a(r.valueForCell(V,F),L)});i&&k.push(r.textForRowFooter(F)),f.push(k)},N=0;N<O.length;N+=1)yield*D();return f})()}textSnapshot(e){var t=arguments,r=this;return ft(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);ue.debug2("textSnapshot",e,i);var l=yield r.snapshot(e,i,a,!1);return l.map(s=>s.join(" ")).join(`
3
3
  `)})()}valuesTable(e){var t=this;return ft(function*(){var r=null;try{return r=yield t.table.copy(),r.applyFilter([]),r.applySort([]),yield r.selectDistinct(Array.isArray(e)?e:[e])}finally{r!=null&&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){return this.keyColumnSet.has(this.columns[e].name)}isValueColumn(e){return this.valueColumnSet.has(this.columns[e].name)}isRowMovable(){return!1}isEditableRange(e){var t;if(this.inputTable==null||e.startRow==null||e.endRow==null)return!1;var r=this.isPendingRow(e.startRow)&&this.isPendingRow(e.endRow),i=!1;R(e.startColumn);for(var a=(t=e.endColumn)!==null&&t!==void 0?t:this.table.size,l=e.startColumn;l<=a;l+=1){var s=this.isKeyColumn(l),o=this.isValueColumn(l);if(!s&&!o)return!1;if(s){i=!0;break}}return!!(r||this.keyColumnSet.size!==0&&!i)}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 j(null,this.floatingTopRowCount,null,this.floatingTopRowCount+this.table.size-1)}getPendingAreaRange(){return new j(null,this.floatingTopRowCount+this.table.size,null,this.floatingTopRowCount+this.table.size+this.pendingNewRowCount-1)}setValueForCell(e,t,r){var i=this;return ft(function*(){return i.setValueForRanges([new j(e,t,e,t)],r)})()}setValueForRanges(e,t){var r=this;return ft(function*(){if(!r.isEditableRanges(e))throw new Error("Edits contain uneditable ranges");try{var i=new Set,a=[];j.forEachCell(e,(m,f)=>{var b=r.columns[m];if(i.add(b),a[m]===void 0){var y=r.tableUtils.makeValue(b.type,t,r.formatter.timeZone);a[m]=y!=null?r.displayString(y,b.type,b.name):null}r.cachePendingValue(m,f,a[m])});var l=r.getPendingAreaRange(),s=e.map(m=>j.intersection(l,m)).filter(m=>m!=null).map(m=>(R(m),j.offset(m,0,-(r.floatingTopRowCount+r.table.size))));if(s.length>0){var o=new Map(r.pendingNewDataMap);j.forEachCell(s,(m,f)=>{o.has(f)||o.set(f,{data:new Map});var b=r.columns[m],y=o.get(f);R(y);var{data:C}=y,T=new Map(C),w=r.tableUtils.makeValue(b.type,t,r.formatter.timeZone);w!=null?T.set(m,{value:w}):T.delete(m),T.size>0?o.set(f,Pr(Pr({},y),{},{data:T})):o.delete(f)}),r.pendingDataMap=o}r.dispatchEvent(new ae(W.EVENT.UPDATED));var u=r.getTableAreaRange(),d=e.map(m=>j.intersection(u,m)).filter(m=>m!=null);if(d.length>0){var h,c=yield r.snapshot(d.map(m=>{var f,b;return new j(null,(f=m==null?void 0:m.startRow)!==null&&f!==void 0?f:null,null,(b=m==null?void 0:m.endRow)!==null&&b!==void 0?b:null)})),v=c.map(m=>{for(var f={},b=0;b<r.columns.length;b+=1)f[r.columns[b].name]=m[b];return i.forEach(y=>{f[y.name]=r.tableUtils.makeValue(y.type,t,r.formatter.timeZone)}),f}),g=yield(h=r.inputTable)===null||h===void 0?void 0:h.addRows(v);ue.debug("setValueForRanges(",e,",",t,") set tableRanges",d,"result",g)}j.forEachCell(e,(m,f)=>{var b=a[m];R(b),r.cacheFormattedValue(m,f,b)})}catch(m){throw ue.error("Unable to set ranges",e,t,m),new gh("Unable to set ranges",{ranges:e,text:t,cause:m})}finally{j.forEachCell(e,(m,f)=>{r.clearPendingValue(m,f)})}})()}setValues(){var e=arguments,t=this;return ft(function*(){var r=e.length>0&&e[0]!==void 0?e[0]:[];if(ue.debug("setValues(",r,")"),!r.every(v=>{var g,m;return t.isEditableRange(j.makeCell((g=v.column)!==null&&g!==void 0?g:v.x,(m=v.row)!==null&&m!==void 0?m:v.y))}))throw new Error("Edits contain uneditable ranges");try{var i=new Map(t.pendingNewDataMap);r.forEach(v=>{var g,m,{text:f}=v,b=(g=v.column)!==null&&g!==void 0?g:v.x,y=(m=v.row)!==null&&m!==void 0?m:v.y,C=t.columns[b],T=t.tableUtils.makeValue(C.type,f,t.formatter.timeZone),w=T!=null?t.displayString(T,C.type,C.name):null;t.cachePendingValue(b,y,w);var O=t.pendingRow(y);if(O!=null){i.has(O)||i.set(O,{data:new Map});var D=i.get(O);R(D);var{data:N}=D,M=new Map(N);T!=null?M.set(b,{value:T}):M.delete(b),M.size>0?i.set(O,Pr(Pr({},D),{},{data:M})):i.delete(O)}}),t.pendingDataMap=i,t.dispatchEvent(new ae(W.EVENT.UPDATED));var a=r.reduce((v,g)=>{var m,f,b=(m=g.row)!==null&&m!==void 0?m:g.y;return v.has(b)||v.set(b,[]),(f=v.get(b))===null||f===void 0||f.push(g),v},new Map),l=j.consolidate(r.map(v=>{var g,m;return j.makeCell((g=v.column)!==null&&g!==void 0?g:v.x,(m=v.row)!==null&&m!==void 0?m:v.y)})),s=t.getTableAreaRange(),o=l.map(v=>j.intersection(s,v)).filter(v=>v!=null);if(o.length>0){var u,d=yield t.snapshot(o.map(v=>(R(v),new j(null,v.startRow,null,v.endRow)))),h=d.map((v,g)=>{for(var m=null,f=g,b=0;b<o.length;b+=1){var y=o[b];R(y);var C=j.rowCount([y]);if(f<C){R(y.startRow),m=y.startRow+f;break}f-=C}for(var T={},w=0;w<t.columns.length;w+=1)T[t.columns[w].name]=v[w];R(m);var O=a.get(m);return O!=null&&O.forEach(D=>{var N,M=t.columns[(N=D.column)!==null&&N!==void 0?N:D.x];T[M.name]=t.tableUtils.makeValue(M.type,D.text,t.formatter.timeZone)}),T});ue.info("setValues setting tableRanges",o);var c=yield(u=t.inputTable)===null||u===void 0?void 0:u.addRows(h);ue.info("setValues set tableRanges",o,"SUCCESS",c)}r.forEach(v=>{var g,m,{text:f}=v,b=(g=v.column)!==null&&g!==void 0?g:v.x,y=(m=v.row)!==null&&m!==void 0?m:v.y,C=t.columns[b],T=t.tableUtils.makeValue(C.type,f,t.formatter.timeZone),w=T!=null?t.displayString(T,C.type,C.name):null;t.cacheFormattedValue(b,y,w)})}finally{r.forEach(v=>{t.clearPendingValue(v.column,v.row)})}})()}commitPending(){var e=this;return ft(function*(){if(e.pendingNewDataMap.size<=0)throw new Error("No pending changes to commit");try{var t,r,i;e.isSaveInProgress=!0;var a=[];e.pendingNewDataMap.forEach(s=>{var o={};s.data.forEach((u,d)=>{var{value:h}=u,c=typeof d=="string"?d:e.columns[d].name;o[c]=h}),a.push(o)});var l=yield(t=e.inputTable)===null||t===void 0?void 0:t.addRows(a);ue.debug("commitPending()",e.pendingNewDataMap,"result",l),e.pendingNewDataMap=new Map,e.pendingNewRowCount=Math.max(0,((r=(i=e.viewport)===null||i===void 0?void 0:i.bottom)!==null&&r!==void 0?r:0)-e.table.size),e.formattedStringData=[],e.dispatchEvent(new ae(W.EVENT.PENDING_DATA_UPDATED))}finally{e.isSaveInProgress=!1}})()}editValueForCell(e,t){var r;return(r=this.textValueForCell(e,t))!==null&&r!==void 0?r:""}delete(e){return ft(function*(){throw new Error("Delete not implemented")})()}isValidForCell(e,t,r){try{var i=this.columns[e];return this.tableUtils.makeValue(i.type,r,this.formatter.timeZone),!0}catch{return!1}}}q(Ut,"ROW_BUFFER_PAGES",1);function Ji(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function Eh(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Ji(a,r,i,l,s,"next",o)}function s(o){Ji(a,r,i,l,s,"throw",o)}l(void 0)})}}function ea(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function ta(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ea(Object(t),!0).forEach(function(r){Mt(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ea(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Mt(n,e,t){return(e=wh(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function wh(n){var e=Th(n,"string");return typeof e=="symbol"?e:e+""}function Th(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ph=ee.module("IrisGridTreeTableModel"),ra=Object.freeze({name:"__DH_UI_GROUP__",displayName:"Group",type:S.dataType.STRING,constituentType:S.dataType.STRING,isPartitionColumn:!1,isSortable:!1,isProxy:!0,description:"Key column",index:-1,filter:()=>{throw new Error("Filter not implemented for virtual column")},sort:()=>{throw new Error("Sort not implemented for virtual column")},formatColor:()=>{throw new Error("Color not implemented for virtual column")},get:()=>{throw new Error("get not implemented for virtual column")},getFormat:()=>{throw new Error("getFormat not implemented for virtual column")},formatNumber:()=>{throw new Error("formatNumber not implemented for virtual column")},formatDate:()=>{throw new Error("formatDate not implemented for virtual column")}});function na(n){return n!=null&&typeof n=="object"&&"hasChildren"in n&&"isExpanded"in n&&"depth"in n&&typeof n.hasChildren=="boolean"&&typeof n.isExpanded=="boolean"&&typeof n.depth=="number"}function Dh(n){return n.layoutHints!==void 0}function um(n){return n.showExtraGroupColumn!=null}class Oh extends Ut{constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Ke(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:new Map;super(e,t,r,i,a),Mt(this,"virtualColumns",void 0),Mt(this,"showExtraGroupCol",!0),Mt(this,"getCachedColumns",U((l,s)=>[...l,...s])),Mt(this,"getCachedGroupColumns",U((l,s)=>[...l,...s])),Mt(this,"getCachedFilterableColumnSet",U((l,s,o,u,d)=>s?new Set(l.filter(h=>!d.includes(h)&&!o.includes(h)).map(h=>l.findIndex(c=>h.name===c.name))):new Set(((u==null?void 0:u.length)>0?u:l).filter(h=>!d.includes(h)).map(h=>l.findIndex(c=>h.name===c.name))))),Mt(this,"getCachedGroupedColumnSet",U(l=>new Set(l.map(s=>this.columns.findIndex(o=>s.name===o.name))))),this.virtualColumns=this.showExtraGroupColumn&&t.groupedColumns.length>1?[ra]:[]}get showExtraGroupColumn(){return this.showExtraGroupCol}set showExtraGroupColumn(e){this.showExtraGroupCol!==e&&(this.showExtraGroupCol=e,this.updateVirtualColumns())}updateVirtualColumns(){this.virtualColumns=this.showExtraGroupColumn&&this.table.groupedColumns.length>1?[ra]:[],this.dispatchEvent(new ae(W.EVENT.COLUMNS_CHANGED,{detail:this.columns}))}applyBufferedViewport(e,t,r){var i=[...this.table.groupedColumns,...r.filter(a=>!this.virtualColumns.includes(a)&&!this.groupedColumns.includes(a))];this.table.setViewport(e,t,i)}textForCell(e,t){var r=this.sourceColumn(e,t),i=this.row(t);if(i!=null&&r!=null){if(!i.hasChildren&&r.constituentType!=null){var a,l=this.valueForCell(e,t),s=this.displayString(l,r.constituentType,r.name);if(S.isTextType((a=this.columns[e])===null||a===void 0?void 0:a.type)){if(l===null)return this.formatter.showNullStrings?"null":"";if(s==="")return this.formatter.showEmptyStrings?"empty":""}return s}if(i.hasChildren&&i.depth<=e+1&&this.valueForCell(e,t)===null&&this.getCachedGroupedColumnSet(this.groupedColumns).has(e))return""}return super.textForCell(e,t)}colorForCell(e,t,r){var i=this.dataForCell(e,t);if(i){var{format:a,value:l}=i;if(l==null||l==="")return R(r.nullStringColor),r.nullStringColor;if((a==null?void 0:a.color)!=null&&a.color!=="")return a.color;if(l!=null){var s=this.sourceColumn(e,t),o=this.row(t);R(o);var u=s.type;return na(o)&&o.hasChildren===!1&&s.constituentType!=null&&(u=s.constituentType),$.colorForValue(r,u,s.name,l)}}return r.textColor}textAlignForCell(e,t){var r,i=this.sourceColumn(e,t),a=(r=this.columnAlignmentMap)===null||r===void 0?void 0:r.get(i.name);if(a!=null)return a;var l=this.row(t),s=i.type;return na(l)&&l.hasChildren===!1&&i.constituentType!=null&&(s=i.constituentType),$.textAlignForValue(s,i.name)}extractViewportRow(e,t){var{isExpanded:r,hasChildren:i,depth:a}=e,l=super.extractViewportRow(e,t),s=new Map(l.data);if(i)for(var o=0;o<this.virtualColumns.length;o+=1){var u=o+(a-1)+(this.virtualColumns.length-1),d=s.get(u);d==null?Ph.warn("Missing key data for virtual column",o,a,u,e):s.set(o,d)}return ta(ta({},l),{},{data:s,isExpanded:r,hasChildren:i,depth:a})}snapshot(e,t){var r=arguments,i=this;return Eh(function*(){var a,l=r.length>2&&r[2]!==void 0?r[2]:b=>b;R(i.viewport),R(i.viewportData);var s=(a=i.viewport.columns)!==null&&a!==void 0?a:i.columns,o=[];t!=null&&t&&o.push(s.map(b=>b.name));for(var u=new j(0,i.viewportData.offset,s.length,i.viewportData.offset+i.viewportData.rows.length-1),d=0;d<e.length;d+=1){var h=j.intersection(u,e[d]);R(h),R(h.startRow),R(h.endRow);for(var c=h.startRow;c<=h.endRow;c+=1){var v=[],g=i.viewportData.rows[c-i.viewportData.offset];R(h.startColumn),R(h.endColumn);for(var m=h.startColumn;m<=h.endColumn;m+=1){var f;v.push(l((f=g.data.get(m))===null||f===void 0?void 0:f.value,i.columns[m]))}o.push(v)}}return o})()}get columns(){return this.getCachedColumns(this.virtualColumns,super.columns)}get aggregatedColumns(){return this.isAggregatedColumnsAvailable?this.table.aggregatedColumns:Q}get groupedColumns(){return this.getCachedGroupColumns(this.virtualColumns,this.table.groupedColumns)}sourceForCell(e,t){if(e>=this.virtualColumns.length)return{column:e,row:t};var r=this.depthForRow(t);return{column:e+r,row:t}}sourceColumn(e,t){if(e>=this.virtualColumns.length)return super.sourceColumn(e,t);var r=this.depthForRow(t);return this.columns[e+r]}getClearFilterRange(e){return e>=this.virtualColumns.length?super.getClearFilterRange(e):[this.virtualColumns.length,this.groupedColumns.length]}get layoutHints(){if(Dh(this.table))return this.table.layoutHints}get hasExpandableRows(){return!0}get isAggregatedColumnsAvailable(){return this.table.aggregatedColumns!==void 0}get isExpandAllAvailable(){return this.table.expandAll!==void 0}get isChartBuilderAvailable(){return!1}get isOrganizeColumnsAvailable(){return!0}get isSelectDistinctAvailable(){return!1}get isReversible(){return!1}isFilterable(e){return this.getCachedFilterableColumnSet(this.columns,this.isAggregatedColumnsAvailable,this.aggregatedColumns,this.groupedColumns,this.virtualColumns).has(e)}isColumnMovable(e){return e>=this.groupedColumns.length}isRowExpandable(e){var t,r=this.row(e);return(t=r==null?void 0:r.hasChildren)!==null&&t!==void 0?t:!1}isRowExpanded(e){var t,r=this.row(e);return(t=r==null?void 0: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!=null&&this.table.expandAll()}collapseAll(){this.table.collapseAll!=null&&this.table.collapseAll()}depthForRow(e){var t,r=this.row(e);return((t=r==null?void 0: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")}}function ia(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 Fh(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ia(Object(t),!0).forEach(function(r){Hr(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ia(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Hr(n,e,t){return(e=Nh(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Nh(n){var e=Mh(n,"string");return typeof e=="symbol"?e:e+""}function Mh(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class $l extends E.Component{constructor(e){super(e),Hr(this,"container",void 0),Hr(this,"editor",void 0),this.handleResize=this.handleResize.bind(this),this.container=null,this.state={}}componentDidMount(){this.initEditor(),window.addEventListener("resize",this.handleResize)}componentWillUnmount(){window.removeEventListener("resize",this.handleResize),this.destroyEditor()}setLanguage(e){if(this.editor){var t=this.editor.getModel();R(t),bi.setModelLanguage(t,e)}}handleResize(){this.updateDimensions()}toggleFind(){this.editor&&(this.editor.focus(),this.editor.trigger("toggleFind","actions.find",void 0))}updateDimensions(){var e;(e=this.editor)===null||e===void 0||e.layout()}initEditor(){var{onEditorInitialized:e}=this.props,{settings:t}=this.props;t=Fh({copyWithSyntaxHighlighting:!1,fixedOverflowWidgets:!0,folding:!1,fontFamily:"Fira Mono",glyphMargin:!1,language:"python",lineNumbersMinChars:3,minimap:{enabled:!1},scrollBeyondLastLine:!1,tabCompletion:"on",value:"",wordWrap:"off",links:!0,autoClosingBrackets:"beforeWhitespace"},t),R(this.container),this.editor=bi.create(this.container,t),this.editor.addAction({id:"find",label:"Find",keybindings:[Ys.CtrlCmd|Zs.KeyF],precondition:void 0,keybindingContext:void 0,contextMenuGroupId:"navigation",contextMenuOrder:1,run:()=>{this.toggleFind()}}),this.editor.layout(),Qs.registerLinkProvider("plaintext",{provideLinks:dt.provideLinks}),e(this.editor)}destroyEditor(){var{onEditorWillDestroy:e}=this.props;R(this.editor),e(this.editor),this.editor.dispose(),this.editor=void 0}render(){var{className:e}=this.props;return p.jsx("div",{className:Me("editor-container",e),ref:t=>{this.container=t}})}}Hr($l,"defaultProps",{className:"fill-parent-absolute",onEditorInitialized:()=>{},onEditorWillDestroy:()=>{},settings:{}});var Rh={groovy:"Groovy",python:"Python",scala:"Scala"};class kn{static normalizeScriptLanguage(e){return Rh[e]||null}static getDisabledRunTooltip(e,t,r,i){return e?t?null:"".concat(r," doesn't match the session language – ").concat(i," disabled"):"Console session not connected – ".concat(i," disabled")}static outdentCode(e){var t=e.split(`
4
4
  `),r=t.reduce((i,a)=>{var l=a.length-a.trimStart().length;return l===a.length?i:l<i?l:i},Number.MAX_SAFE_INTEGER);return t.map(i=>i.slice(r)).join(`
5
5
  `)}}function sr(n,e,t){return(e=Ih(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ih(n){var e=kh(n,"string");return typeof e=="symbol"?e:e+""}function kh(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var xe=ee.module("ScriptEditor");class Hl extends E.Component{constructor(e){super(e),sr(this,"contextActionCleanups",void 0),sr(this,"completionCleanup",void 0),sr(this,"editor",void 0),sr(this,"editorComponent",void 0),this.handleEditorInitialized=this.handleEditorInitialized.bind(this),this.handleEditorWillDestroy=this.handleEditorWillDestroy.bind(this),this.handleRun=this.handleRun.bind(this),this.handleRunSelected=this.handleRunSelected.bind(this),this.updateShortcuts=this.updateShortcuts.bind(this),this.contextActionCleanups=[],this.editorComponent=Re.createRef(),this.state={model:null}}componentDidMount(){yi.addEventListener("onUpdate",this.updateShortcuts)}componentDidUpdate(e){var t,r,{sessionLanguage:i,settings:a}=this.props,l=a==null?void 0:a.language,s=l!==((t=e.settings)===null||t===void 0?void 0:t.language);s&&(xe.debug("Set language",l),this.setLanguage(l));var o=i==null&&e.sessionLanguage!=null,u=l===i,d=((r=e.settings)===null||r===void 0?void 0:r.language)===e.sessionLanguage;(o||i!==void 0&&d&&!u)&&(xe.debug("De-init completion"),this.deInitCodeCompletion());var h=i!=null&&e.sessionLanguage==null;(h&&u||i!==void 0&&!d&&u)&&(xe.debug("Init completion"),this.initCodeCompletion())}componentWillUnmount(){yi.removeEventListener("onUpdate",this.updateShortcuts)}getValue(){return this.editor?this.editor.getValue():(xe.error("Editor not initialized"),null)}getSelectedCommand(){var e,t,r=(e=this.editor)===null||e===void 0?void 0:e.getSelection();R(r);var i=(t=this.editor)===null||t===void 0?void 0:t.getModel();R(i);var{startLineNumber:a,endColumn:l}=r,{endLineNumber:s}=r;l===1&&s>a&&(s-=1);var o=i.getLineMinColumn(a),u=i.getLineMaxColumn(s),d=r.setStartPosition(a,o).setEndPosition(s,u);return kn.outdentCode(i.getValueInRange(d))}handleEditorInitialized(e){var{focusOnMount:t,onChange:r,onEditorInitialized:i,settings:a,session:l,sessionLanguage:s}=this.props;xe.debug("handleEditorInitialized",s,l,a),this.editor=e,this.setState({model:this.editor.getModel()}),dt.setEOL(e),dt.registerPasteHandler(e),this.initContextActions(),l!=null&&a&&s===a.language&&this.initCodeCompletion(),e.onDidChangeModelContent(r),t!=null&&t&&e.focus(),i(this.editor)}handleEditorWillDestroy(e){xe.debug("handleEditorWillDestroy");var{onEditorWillDestroy:t}=this.props;t(e),this.deInitContextActions(),this.deInitCodeCompletion(),this.setState({model:null}),this.editor=void 0}handleRun(){var{onRunCommand:e,session:t,sessionLanguage:r,settings:i}=this.props,a=this.getValue(),l=i==null?void 0:i.language,s=l===r;if(t==null||!s){xe.info("Run disabled - ".concat(t==null?"session disconnected":"language mismatch"));return}a!=null&&e(a)}handleRunSelected(){var{onRunCommand:e,session:t,sessionLanguage:r,settings:i}=this.props,a=this.getSelectedCommand(),l=i==null?void 0:i.language,s=l===r;if(t==null||!s){xe.info("Run selected disabled - ".concat(t==null?"session disconnected":"language mismatch"));return}e(a)}initContextActions(){if(this.contextActionCleanups.length>0){xe.error("Context actions already initialized.");return}if(this.editor){var e=[];e.push(this.editor.addAction({id:"run-code",label:"Run",keybindings:[dt.getMonacoKeyCodeFromShortcut(ut.NOTEBOOK.RUN)],contextMenuGroupId:"navigation",contextMenuOrder:1.5,run:()=>{this.handleRun()}})),e.push(this.editor.addAction({id:"run-selected-code",label:"Run Selected",keybindings:[dt.getMonacoKeyCodeFromShortcut(ut.NOTEBOOK.RUN_SELECTED)],contextMenuGroupId:"navigation",contextMenuOrder:1.5,run:()=>{this.handleRunSelected()}})),this.contextActionCleanups=e}}deInitContextActions(){this.contextActionCleanups.length>0&&(this.contextActionCleanups.forEach(e=>e.dispose()),this.contextActionCleanups=[])}updateShortcuts(){this.deInitContextActions(),this.initContextActions()}initCodeCompletion(){if(this.completionCleanup!=null){xe.error("Code completion already initialized.");return}var{session:e}=this.props;xe.debug("initCodeCompletion",this.editor,e),this.editor&&e!=null&&(this.completionCleanup=dt.openDocument(this.editor,e))}deInitCodeCompletion(){var{session:e}=this.props;xe.debug("deInitCodeCompletion",this.editor,e),this.completionCleanup&&(this.completionCleanup.dispose(),this.completionCleanup=void 0,this.editor&&e!=null&&dt.closeDocument(this.editor,e))}append(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;R(this.editor);var r=this.editor.getModel();R(r);var i=r.getValue();i?r.setValue("".concat(i,`
@@ -7,7 +7,7 @@ import{r as E,D as p,G as Me,H as Gs,J as Re,bp as Bs,I as Ne,bq as jn,br as Us,
7
7
  Check your internet connection.`;if(r&&i)return"Disconnected from server.";if(i){var{name:s,type:o}=e;return'Variable "'.concat(s,`" not set.
8
8
  `).concat(o," does not exist yet.")}if(a)return"".concat(e.name," is unavailable.")}handleSessionClosed(e){var{onSessionClose:t}=this.props;this.setState({isPanelDisconnected:!0,isWaitingForReconnect:!1}),t==null||t(e)}render(){var{children:e,className:t,componentPanel:r,descriptor:i,isLoaded:a,isLoading:l,glContainer:s,glEventHub:o,isDisconnected:u,isClonable:d,isRenamable:h,showTabTooltip:c=!1,renderTabTooltip:v,onClearAllFilters:g,onHide:m,onFocus:f,onBlur:b,onResize:y,onSessionOpen:C,onShow:T,onTabBlur:w,onTabFocus:O,onTabClicked:D,additionalActions:N}=this.props,{isPanelDisconnected:M,isWidgetDisconnected:F,isPanelInactive:k}=this.state,L=this.getErrorMessage(),V=v??this.getCachedRenderTabTooltip(c,i),X=this.getCachedActions(i,N);return p.jsxs(kt,{className:Me(t,{disconnected:M||F||u,inactive:k}),componentPanel:r,glContainer:s,glEventHub:o,onClearAllFilters:g,onHide:m,onFocus:f,onBlur:b,onResize:y,onShow:T,onSessionClose:this.handleSessionClosed,onSessionOpen:C,onTabBlur:w,onTabFocus:O,onTabClicked:D,renderTabTooltip:V,errorMessage:L,isLoaded:a,isLoading:l,isClonable:d,isRenamable:h,additionalActions:X,children:[e,k&&p.jsx("div",{className:"fill-parent-absolute"})]})}}An(ql,"defaultProps",{className:"",isClonable:!0,isDisconnected:!1,isLoading:!1,isLoaded:!0,isRenamable:!0,showTabTooltip:!0});var yr=ol(ql);const et=Object.freeze({DEFAULT:"DEFAULT",LINKER:"LINKER"});var mc=(n,e)=>t=>t(Pt(n,{connection:e})),fc=(n,e)=>t=>t(Pt(n,{sessionWrapper:e})),en=(n,e)=>t=>t(Pt(n,{links:e})),Kl=(n,e)=>(t,r)=>{var i=Tt(r(),n),a=e.filter(l=>i.findIndex(s=>jr(s.start,l.start)&&jr(s.end,l.end))<0);return t(en(n,i.concat(a)))},Xl=(n,e)=>(t,r)=>{var i=Tt(r(),n),a=i.filter(l=>!e.includes(l.id));return t(en(n,a))},Qn=(n,e)=>t=>t(Pt(n,{isolatedLinkerPanelId:e})),Yl=(n,e)=>t=>t(Pt(n,{columnSelectionValidator:e})),Zl=(n,e)=>t=>t(Pt(n,{consoleSettings:e})),Ql=(n,e)=>t=>t(Pt(n,{filterSets:e}));function gc(n){var{columnMap:e,inputFilterMap:t,linkedColumnMap:r,onAdd:i,onOpenLinker:a,waitingFilterMap:l,waitingInputMap:s}=n,o=E.useMemo(()=>{var g=Array.from(s.keys()),m=g.find(y=>t.get(y)!=null),f=g.find(y=>r.get(y)!=null),b=Ze.join(g.map(y=>'"'.concat(y,'"')));return m!=null&&m&&f!=null&&f?"Use a filter control or linked table to set a value for ".concat(b):m!=null&&m?"Set a filter control value for ".concat(b):"Double click a row in a linked table to set a value for ".concat(b)},[t,r,s]),u=E.useMemo(()=>Array.from(e.values()),[e]),d=E.useCallback(g=>{g.stopPropagation(),g.preventDefault(),i(Array.from(l.values()))},[i,l]),h=E.useCallback(g=>{g.stopPropagation(),g.preventDefault(),a()},[a]),c=l.size>0,v=!c&&s.size>0;return p.jsx("div",{className:"chart-panel-overlay chart-filter-overlay",children:p.jsxs("div",{className:Me("chart-panel-overlay-content chart-filter-overlay-content",{"chart-filter-waiting-filter":c},{"chart-filter-waiting-input":v}),children:[c&&p.jsxs(p.Fragment,{children:[p.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:"}),p.jsx("div",{className:"waiting-filter-list",children:u.map(g=>{var m=l.has(g.name),f=m?Wo:zo;return p.jsxs("div",{className:Me("waiting-filter-item",{"is-invalid":m}),children:[p.jsx(Ne,{icon:f}),g.name]},g.name)})}),p.jsxs("div",{children:[p.jsx(J,{kind:"primary",onClick:d,children:"Add Input Filters"}),p.jsx(J,{kind:"primary",onClick:h,children:"Open Linker Tool"})]})]}),v&&p.jsxs(p.Fragment,{children:[p.jsx("div",{className:"info-message",children:"Waiting for User Input"}),p.jsx("div",{className:"",children:o})]})]})})}function Gr(n){var{columns:e,onColumnSelected:t,onMouseEnter:r,onMouseLeave:i}=n;return p.jsx("div",{className:"chart-panel-overlay chart-column-selector-overlay",children:p.jsxs("div",{className:Me("chart-panel-overlay-content"),children:[p.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:"}),p.jsx("div",{className:"waiting-column-select-list",children:e.map(a=>p.jsx(zn,{className:Me("btn-chart-column-selector",Gr.makeButtonClassName(a.name)),onClick:()=>t(a.name),onMouseEnter:()=>{r==null||r(a)},onMouseLeave:i,disabled:!a.isValid,isLinked:a.isActive,children:a.name},a.name))})]})})}Gr.makeButtonClassName=n=>"btn-chart-column-selector-".concat(n);function _t(n){return n.settings!==void 0}function Jl(n){return n.figure!==void 0}function es(n){if(n==null)return!1;var{settings:e,tableSettings:t}=n;return typeof e=="object"&&typeof t=="object"}function ts(n){return n!=null&&es(n.panelState)}var Jn=Xt(ht.COLUMNS_CHANGED),bc=Jn.listen,Br=Jn.emit,Cc=Jn.useListener,ei=Xt(ht.TABLE_CHANGED);ei.listen;var Ur=ei.emit,yc=ei.useListener,ti=Xt(ht.FILTERS_CHANGED);ti.listen;var rs=ti.emit,Sc=ti.useListener,ri=Object.freeze({LINK_POINT_SELECTED:"LinkerEvent.LINK_POINT_SELECTED",SOURCE_DATA_SELECTED:"LinkerEvent.SOURCE_DATA_SELECTED",REGISTER_TARGET:"LinkerEvent.REGISTER_TARGET"}),ni=Xt(ri.LINK_POINT_SELECTED),Ec=ni.listen,tn=ni.emit;ni.useListener;var ii=Xt(ri.SOURCE_DATA_SELECTED),wc=ii.listen,ns=ii.emit;ii.useListener;var ai=Xt(ri.REGISTER_TARGET),Tc=ai.listen,ca=ai.emit;ai.useListener;function va(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 Or(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?va(Object(t),!0).forEach(function(r){qe(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):va(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function qe(n,e,t){return(e=Pc(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Pc(n){var e=Dc(n,"string");return typeof e=="symbol"?e:e+""}function Dc(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var je=ee.module("ChartPanel"),Oc=150;function Fc(n){return n.inputFilters!=null}function Nc(n){return n.panelState!=null}class rn extends E.Component{constructor(e){super(e),qe(this,"panelContainer",void 0),qe(this,"pending",void 0),qe(this,"getWaitingInputMap",U((l,s,o)=>{if(!l)return new Map;var u=new Map(s);return o.forEach((d,h)=>{u.delete(h)}),u})),qe(this,"getWaitingFilterMap",U((l,s,o,u,d)=>{if(!l)return new Map;var h=new Map(s);return o.forEach((c,v)=>{h.delete(v)}),d.forEach((c,v)=>{h.delete(v)}),u.forEach((c,v)=>{h.delete(v)}),h})),qe(this,"getInputFilterColumnMap",U((l,s)=>{for(var o=new Map,u=0;u<s.length;u+=1){var d=s[u],{name:h,type:c}=d,v=l.get(h);v!=null&&v.type===c&&o.set(h,d)}return o})),qe(this,"getLinkedColumnMap",U((l,s)=>{for(var o=new Map,u=H.getIdFromPanel(this),d=0;d<s.length;d+=1){var h=s[d],c=null;if(h.start!=null&&h.start.panelId===u&&l.has(h.start.columnName)?c=h.start.columnName:h.end&&h.end.panelId===u&&l.has(h.end.columnName)&&(c=h.end.columnName),c!=null&&l.has(c)){var v=l.get(c);R(v),o.set(c,v)}}return o})),qe(this,"getSelectorColumns",U((l,s,o)=>Array.from(l.values()).map(u=>({name:u.name,type:u.type,isValid:o?o(this,u,{type:"chartLink"}):!1,isActive:s.has(u.name)})))),qe(this,"getWidgetPanelDescriptor",U(l=>{var s="Chart";if(_t(l))s=l.table;else if(Jl(l)){var o;s=(o=l.figure)!==null&&o!==void 0?o:s}else{var u;s=(u=l.name)!==null&&u!==void 0?u:s}return Or(Or({},l),{},{type:"Chart",name:s})})),this.handleColumnSelected=this.handleColumnSelected.bind(this),this.handleColumnMouseEnter=this.handleColumnMouseEnter.bind(this),this.handleColumnMouseLeave=this.handleColumnMouseLeave.bind(this),this.handleDisconnect=this.handleDisconnect.bind(this),this.handleReconnect=this.handleReconnect.bind(this),this.handleFilterAdd=this.handleFilterAdd.bind(this),this.handleHide=this.handleHide.bind(this),this.handleError=this.handleError.bind(this),this.handleLoadError=this.handleLoadError.bind(this),this.handleLoadSuccess=this.handleLoadSuccess.bind(this),this.handleSettingsChanged=this.handleSettingsChanged.bind(this),this.handleOpenLinker=this.handleOpenLinker.bind(this),this.handleShow=this.handleShow.bind(this),this.handleSourceColumnChange=this.handleSourceColumnChange.bind(this),this.handleSourceFilterChange=this.handleSourceFilterChange.bind(this),this.handleSourceSortChange=this.handleSourceSortChange.bind(this),this.handleTabBlur=this.handleTabBlur.bind(this),this.handleTabFocus=this.handleTabFocus.bind(this),this.handleUpdate=this.handleUpdate.bind(this),this.updateModelFromSource=Et(this.updateModelFromSource.bind(this),Oc),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.panelContainer=Re.createRef(),this.pending=new Hn;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&&_t(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,makeModel:a}=this.props,{columnMap:l,model:s,filterMap:o,filterValueMap:u,isLinked:d,settings:h}=this.state;a!==e.makeModel&&this.initModel(),s!=null&&(l!==t.columnMap&&this.pruneFilterMaps(),r!==e.inputFilters&&this.updateChangedInputFilters(r,e.inputFilters),o!==t.filterMap?this.updateFilters():u!==t.filterValueMap&&this.updatePanelState(),h!==t.settings&&Hi(s)&&(s.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,isDisconnected:!1});var{makeModel:e}=this.props;this.pending.cancel(),this.pending.add(e(),t=>{t.close()}).then(this.handleLoadSuccess,this.handleLoadError)}startListeningToSource(e){je.debug("startListeningToSource",e);var{model:t}=this.state;R(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){je.debug("stopListeningToSource",e);var{model:t}=this.state;R(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,i=H.getIdFromPanel(this);R(i);var a=r.get(e);a!=null&&tn(t,i,a,{type:"chartLink"})}handleColumnMouseEnter(e){var{type:t,name:r}=e,{columnSelectionValidator:i}=this.props;je.debug("handleColumnMouseEnter",i,t,r),i&&i(this,{type:t,name:r},{type:"chartLink"})}handleColumnMouseLeave(){var{columnSelectionValidator:e}=this.props;je.debug("handleColumnMouseLeave",e),e&&e(this,void 0,{type:"chartLink"})}handleDisconnect(){this.setState({error:new Error("Figure disconnected"),isDisconnected:!0})}handleFilterAdd(e){for(var t=0;t<e.length;t+=1)this.openInputFilter(e[t])}handleOpenLinker(){var{localDashboardId:e,setActiveTool:t,setDashboardIsolatedLinkerPanelId:r}=this.props;r(e,void 0),t(et.LINKER)}handleReconnect(){this.setState({isDisconnected:!1,error:void 0}),this.sendColumnChange(),this.updateColumnFilters()}handleLoadSuccess(e){je.debug("handleLoadSuccess");var{model:t}=this.state;this.setState({model:e,isLoaded:!0},()=>{var{inputFilters:r,source:i}=this.props,{filterMap:a,isLinked:l}=this.state;e!==t&&(this.sendColumnChange(),this.updateColumnFilters(),this.updateInputFilters(r,a.size>0||e.isFilterRequired()),i&&l&&(this.startListeningToSource(i),this.updateModelFromSource()))})}handleLoadError(e){Le.isCanceled(e)||(je.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){je.debug2("updateModelFromSource ignoring",r,i,t);return}var{dh:a}=i;if(this.pending.cancel(),_t(e)){var{settings:l}=e;this.pending.add(Bt.makeFigureFromSettings(a,l,t),s=>s.close()).then(s=>{Hi(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&&Fc(e.props)&&Nc(e.state)){var{inputFilters:l}=e.props,{panelState:s}=e.state;s!=null&&(a=$.extractTableSettings(s,l))}this.setState({panelState:{settings:i,tableSettings:a,filterValueMap:Array.from(r)}})}handleError(){this.setState({isLoading:!1})}handleSettingsChanged(e){this.setState(t=>{var{settings:r}=t,i=Or(Or({},r),e);return je.debug("Updated settings",i),{settings:i}})}handleHide(){this.setActive(!1)}handleShow(){this.setActive(!0)}handleTabBlur(){this.setActive(!1)}handleTabFocus(){var e=this.isHidden();this.setActive(!e)}handleUpdate(e){var{isLoading:t}=e;this.setState({isLoading:t})}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(ht.OPEN_INPUT,{title:"".concat(r," Filter"),panelState:{name:r,type:i,isValueShown:!0},createNewStack:!0,focusElement:"input"})}setActive(e){this.setState({isActive:e},()=>{e&&this.loadModelIfNecessary()})}sendColumnChange(){var{model:e}=this.state;if(e){var{glEventHub:t}=this.props,r=H.getIdFromPanel(this);R(r),Br(t,r,Array.from(e.getFilterColumnMap().values()))}}getCoordinateForColumn(e){var t,r=Gr.makeButtonClassName(e);if(!this.panelContainer.current)return null;var i=this.panelContainer.current.querySelector(".".concat(r)),a=(t=i==null?void 0:i.getBoundingClientRect())!==null&&t!==void 0?t:null;if(a==null||a.width<=0||a.height<=0)return null;var l=a.left+a.width/2,s=a.bottom;return[l,s]}setFilterMap(e){je.debug("setFilterMap",e),this.setState(t=>{var{columnMap:r,filterMap:i}=t,a=null,l=new Map(t.filterValueMap);return e.forEach((s,o)=>{var{columnType:u,filterList:d}=s,h=r.get(o);if(!(h==null||h.type!==u)){if(d.length===0){je.debug("Ignoring empty filterList for column",o);return}var{value:c}=d[0];l.set(o,c),i.get(o)!==c&&(a===null&&(a=new Map(i)),a.set(o,c))}}),{filterValueMap:l,filterMap:a??i}})}unsetFilterValue(e){this.setState(t=>{var{inputFilters:r}=this.props,{columnMap:i}=t,{filterMap:a,filterValueMap:l}=t;if(!l.has(e))return null;l=new Map(t.filterValueMap),l.delete(e);var s=this.getInputFilterColumnMap(i,r);if(s.has(e)){var o,u=a.get(e),d=(o=s.get(e))===null||o===void 0?void 0:o.value;d!=null&&u!==d&&(a=new Map(t.filterMap),d.length>0?a.set(e,d):a.delete(e))}else a=new Map(t.filterMap),a.delete(e);return{filterMap:a,filterValueMap:l}})}updateChangedInputFilters(e,t){var r=t.filter(a=>e.find(l=>l.name===a.name&&l.type===a.type)===void 0);r.length>0&&this.deleteInputFilters(r);var i=e.filter(a=>!t.includes(a));i.length>0&&this.updateInputFilters(i)}updateInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;this.setState(r=>{for(var{columnMap:i}=r,a=new Map(r.filterValueMap),l=new Map(r.filterMap),s=t?{filterMap:l,filterValueMap:a}:{},o=0;o<e.length;o+=1){var{name:u,type:d,value:h}=e[o],c=i.get(u);c!=null&&c.type===d&&(h!=null&&l.get(u)!==h&&(h===""?l.delete(u):l.set(u,h),s.filterMap=l),a.has(u)&&(a.delete(u),s.filterValueMap=a))}return je.debug("updateInputFilters",s),s})}deleteInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;this.setState(r=>{for(var{columnMap:i,filterValueMap:a}=r,l=new Map(r.filterMap),s=t,o=0;o<e.length;o+=1){var{name:u,type:d}=e[o],h=i.get(u);if(h!=null&&h.type===d&&l.has(u)){var c=l.get(u);if(a.has(u)){var v=a.get(u);v!==c&&v!=null&&(s=!0,l.set(u,v))}else s=!0,l.delete(u)}}return je.debug("deleteInputFilters",s),s?{filterMap:l}:null})}updateColumnFilters(){this.setState(e=>{var{model:t}=e;return t?{columnMap:t.getFilterColumnMap()}:null})}updateFilters(){var{columnMap:e,filterMap:t,model:r}=this.state;R(r);var i=this.getWaitingInputMap(r.isFilterRequired(),e,t);if(r.setFilter(t),t.size>0&&i.size===0){var a=r.getDefaultTitle(),l=Ze.join(Array.from(t.entries()).map(s=>{var[o,u]=s;return"".concat(o,": ").concat(u)}));a?r.setTitle("".concat(a,'<br><span style="font-size: smaller">').concat(l,"</span>")):r.setTitle(l),je.debug2("updateFilters filters set",t),this.setState({isLoading:!0})}else je.debug2("updateFilters waiting on inputs",i),r.setTitle(r.getDefaultTitle()),this.setState({isLoading:!1});this.updatePanelState()}pruneFilterMaps(){this.setState(e=>{var{columnMap:t}=e,r=new Map(e.filterMap),i=new Map(e.filterValueMap),a={};return e.filterValueMap.forEach((l,s)=>{t.has(s)||(i.delete(s),a.filterValueMap=i)}),e.filterMap.forEach((l,s)=>{t.has(s)||(r.delete(s),a.filterMap=r)}),a})}render(){var{columnSelectionValidator:e,glContainer:t,glEventHub:r,inputFilters:i,isLinkerActive:a,links:l,metadata:s,settings:o,Plotly:u,containerRef:d}=this.props,{columnMap:h,filterMap:c,error:v,model:g,isActive:m,isDisconnected:f,isLoaded:b,isLoading:y}=this.state,C=this.getInputFilterColumnMap(h,i),T=this.getLinkedColumnMap(h,l),w=g!=null?this.getWaitingInputMap(g.isFilterRequired(),h,c):new Map,O=g!=null?this.getWaitingFilterMap(g.isFilterRequired(),h,c,T,C):new Map,D=v!=null?"Unable to open chart. ".concat(v):void 0,N=w.size>0,M=h.size>0&&a,F=this.getWidgetPanelDescriptor(s);return p.jsx(yr,{className:Me("iris-chart-panel",{"input-required":N}),componentPanel:this,glContainer:t,glEventHub:r,onHide:this.handleHide,onClearAllFilters:this.handleClearAllFilters,onShow:this.handleShow,onTabBlur:this.handleTabBlur,onTabFocus:this.handleTabFocus,errorMessage:D,isDisconnected:f,isLoading:y,isLoaded:b,descriptor:F,children:p.jsxs("div",{ref:this.panelContainer,className:"chart-panel-container h-100 w-100",children:[p.jsx("div",{className:"chart-container h-100 w-100",children:b&&g&&p.jsx(Al,{isActive:m,model:g,settings:o,onDisconnect:this.handleDisconnect,onReconnect:this.handleReconnect,onUpdate:this.handleUpdate,onError:this.handleError,onSettingsChanged:this.handleSettingsChanged,Plotly:u,containerRef:d})}),p.jsx(Dn,{in:N&&!M&&!y,mountOnEnter:!0,unmountOnExit:!0,children:p.jsx(gc,{inputFilterMap:C,linkedColumnMap:T,onAdd:this.handleFilterAdd,onOpenLinker:this.handleOpenLinker,columnMap:h,waitingFilterMap:O,waitingInputMap:w})}),p.jsx(Dn,{in:M,mountOnEnter:!0,unmountOnExit:!0,children:p.jsx(Gr,{columns:this.getSelectorColumns(h,T,e),onColumnSelected:this.handleColumnSelected,onMouseEnter:this.handleColumnMouseEnter,onMouseLeave:this.handleColumnMouseLeave})})]})})}}qe(rn,"defaultProps",{columnSelectionValidator:null,isLinkerActive:!1,source:null,sourcePanel:null,panelState:null,settings:{},containerRef:null});qe(rn,"displayName","ChartPanel");qe(rn,"COMPONENT","ChartPanel");var Mc=(n,e)=>{var{localDashboardId:t,metadata:r}=e,i;r!=null&&_t(r)&&(i=r.sourcePanelId);var a=qr(n,t),l=dl(n,t),s=$n(n),o=Kr(n,t),u=s===et.LINKER&&o===void 0;return{columnSelectionValidator:br(n,t),isLinkerActive:u,inputFilters:gr(n,t),links:Tt(n,t),source:i!=null?a.get(i):void 0,sourcePanel:i!=null?l.get(i):void 0,settings:Xr(n)}},li=wt(Mc,{setActiveTool:ul,setDashboardIsolatedLinkerPanelId:Qn},null,{forwardRef:!0})(rn);function Je(n,e,t){return(e=Rc(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Rc(n){var e=Ic(n,"string");return typeof e=="symbol"?e:e+""}function Ic(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Fr=ee.module("DropdownFilter"),kc=150;class nt extends E.Component{constructor(e){super(e),Je(this,"dropdownRef",void 0),Je(this,"getCompatibleColumns",U((a,l)=>a!=null?l.filter(s=>{var{type:o}=s;return o!==void 0&&S.isCompatibleType(o,a.columnType)}):[])),Je(this,"getColumnOptions",U((a,l)=>{var s=-1,o=[];return o.push(p.jsx("option",{value:"-1",children:"Select a column"},"placeholder")),a.forEach((u,d)=>{o.push(p.jsx("option",{value:d,children:this.getItemLabel(a,d)},"".concat(u.name,"/").concat(u.type))),l!==null&&u.name===l.name&&u.type===l.type&&(s=d)}),[o,s]})),Je(this,"getSelectedOptionIndex",U((a,l)=>a.indexOf(l))),Je(this,"getValueOptions",U(a=>[p.jsx("option",{value:"-1",children:nt.PLACEHOLDER},"-1"),...a.map((l,s)=>p.jsx("option",{value:s,children:l??"(null)"},"".concat(s,"/").concat(l)))])),Je(this,"getItemLabel",Be((a,l)=>{var{name:s,type:o}=a[l];if(l>0&&a[l-1].name===s||l<a.length-1&&a[l+1].name===s){var u=o.substring(o.lastIndexOf(".")+1);return"".concat(s," (").concat(u,")")}return s},{max:1e3})),Je(this,"sendUpdate",Et(()=>{var{onChange:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a({column:l,isValueShown:o,value:s??void 0})},kc)),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=Re.createRef();var{column:t,isValueShown:r,value:i}=e;this.state={column:t,id:Ue(),selectedColumn:t,disableCancel:!r,isValueShown:r,value:i}}componentDidUpdate(e,t){var{source:r,values:i,isLoaded:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a&&(r!==e.source&&this.sourceUpdated(),i!==e.values&&s!==""&&!i.includes(s)&&this.resetValue(),o!==t.isValueShown&&o&&this.focusInput(),(l!==t.column||s!==t.value||o!==t.isValueShown)&&this.sendUpdate())}componentWillUnmount(){this.sendUpdate.flush()}handleColumnChange(e){var t=e;if(Fr.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(),Fr.debug2("handleDropdownKeyPress"),this.sendUpdate(),this.sendUpdate.flush())}handleValueChange(e){var t=e,r=parseInt(t,10),i="",{values:a}=this.props;r>=0&&r<a.length?i=a[r]:Fr.debug2("Selected default item"),Fr.debug2("handleValueChange",i),this.setState({value:i})}handleSettingsCancel(){this.setState(e=>{var{column:t}=e;return{selectedColumn:t,isValueShown:!0}})}handleSettingsSave(){this.setState(e=>{var{column:t,selectedColumn:r,value:i}=e;return{column:r,value:t===r?i:"",isValueShown:!0,disableCancel:!1}})}handleSettingsClick(e){e.stopPropagation(),this.showSettings()}handleBackgroundClick(e){e.target!==this.dropdownRef.current&&this.focusInput()}sourceUpdated(){this.setState({column:null,selectedColumn:null,isValueShown:!1,disableCancel:!0,value:""})}showSettings(){var{column:e}=this.state;this.setState({selectedColumn:e,isValueShown:!1})}focusInput(){var e;(e=this.dropdownRef.current)===null||e===void 0||e.focus()}resetValue(){this.setState({value:""})}clearFilter(){this.resetValue()}setFilterState(e){var{name:t,type:r,value:i,isValueShown:a}=e,l=t!=null&&r!=null?{name:t,type:r}:null;this.setState(s=>{var{value:o,isValueShown:u}=s;return{column:l,value:i??o,isValueShown:a??u}})}render(){var e,{columns:t,disableLinking:r,isLinkerActive:i,isLoaded:a,source:l,onColumnSelected:s,onSourceMouseEnter:o,onSourceMouseLeave:u,values:d,settingsError:h}=this.props,{column:c,disableCancel:v,id:g,isValueShown:m,selectedColumn:f,value:b}=this.state,y=l===null,C=this.getCompatibleColumns(l,t),T=l!=null,w=(e=l==null?void 0:l.columnName)!==null&&e!==void 0?e:nt.SOURCE_BUTTON_PLACEHOLDER,O=c!=null?"".concat(c.name," Filter"):null,[D,N]=this.getColumnOptions(C,f),M=this.getValueOptions(d),F=this.getSelectedOptionIndex(d,b),k=!T||f==null,L=m&&!i,V="source-column-btn-".concat(g),X="filter-column-select-".concat(g);return p.jsxs(Wn,{className:"dropdown-filter fill-parent-absolute",isFlipped:L,children:[p.jsx("div",{className:"dropdown-filter-settings-card",children:p.jsxs("div",{className:"dropdown-filter-card-content",children:[p.jsxs("div",{className:"dropdown-filter-settings-grid",children:[p.jsx("label",{htmlFor:V,children:"Source Column"}),p.jsx(zn,{id:V,isLinked:T,onClick:s,onMouseEnter:o,onMouseLeave:u,className:nt.SOURCE_BUTTON_CLASS_NAME,disabled:r,children:w}),p.jsx("div",{className:"text-muted small",children:"Select a source column for the list by linking to a table."}),p.jsx("label",{htmlFor:X,children:"Filter Column"}),p.jsx(cr,{id:X,value:String(N),className:"custom-select",onChange:this.handleColumnChange,disabled:y,children:D}),p.jsx("div",{className:"text-muted small",children:"Dropdown filter control will apply its filter to all columns matching this name in this dashboard."})]}),h&&p.jsx("div",{className:"error-message text-center",children:h}),T&&p.jsxs("div",{className:"dropdown-filter-settings-buttons",children:[p.jsx(J,{kind:"secondary",type:"button",onClick:this.handleSettingsCancel,disabled:v||m||i,tooltip:i?"Cancel disabled while linker open":void 0,children:"Cancel"}),p.jsx(J,{kind:"primary",type:"button",className:"ml-2",onClick:this.handleSettingsSave,disabled:k||m||i,tooltip:i?"Save disabled while linker open":void 0,children:"Save"})]})]})}),p.jsx("div",{className:"dropdown-filter-value-card",onClick:this.handleBackgroundClick,"data-testid":"dropdown-filter-value-background",children:a&&p.jsxs(p.Fragment,{children:[p.jsx("div",{className:"dropdown-filter-column",children:p.jsx("div",{className:"dropdown-filter-column-title",children:O})}),p.jsxs("div",{className:"dropdown-filter-card-content",children:[p.jsx("div",{className:"dropdown-filter-value-input d-flex flex-column justify-content-center",children:p.jsx(cr,{className:"custom-select",value:String(F),ref:this.dropdownRef,onChange:this.handleValueChange,onKeyDown:this.handleDropdownKeyPress,title:"Select Value",children:M})}),h&&p.jsx("div",{className:"error-message mt-3 text-center",children:h})]}),p.jsx("div",{className:"dropdown-filter-menu",children:p.jsx(J,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:p.jsx(Ne,{icon:Bn,transform:"grow-4"}),tooltip:"Dropdown Filter Settings"})})]})})]})}}Je(nt,"defaultProps",{column:null,disableLinking:!1,isLinkerActive:!1,isLoaded:!1,isValueShown:!1,settingsError:null,source:null,value:"",values:[],onColumnSelected:()=>{},onSourceMouseEnter:()=>{},onSourceMouseLeave:()=>{}});Je(nt,"PLACEHOLDER","Select a value...");Je(nt,"SOURCE_BUTTON_CLASS_NAME","btn-dropdown-filter-selector");Je(nt,"SOURCE_BUTTON_PLACEHOLDER","Select a column");function Ie(n,e,t){return(e=Lc(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Lc(n){var e=Ac(n,"string");return typeof e=="symbol"?e:e+""}function Ac(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var de=ee.module("DropdownFilterPanel"),xc=250,jc=Object.freeze({name:"Dropdown Filter",type:"DropdownFilter"}),_c=(n,e)=>{var{localDashboardId:t}=e,r=H.getIdFromPanel({props:e}),i=qr(n,t),a=Tt(n,t),l=$n(n),s=Kr(n,t),o=l===et.LINKER&&(s===void 0||s===r),u=l===et.LINKER&&s!==void 0&&s!==r;return{columns:Gn(n,t),columnSelectionValidator:br(n,t),dh:hl(n),isLinkerActive:o,disableLinking:u,settings:Xr(n),panelTableMap:i,dashboardLinks:a}},Vc=wt(_c,null,null,{forwardRef:!0});class tt extends E.Component{constructor(e){super(e),Ie(this,"dateTimeFormatter",void 0),Ie(this,"dropdownFilterRef",void 0),Ie(this,"panelContainer",void 0),Ie(this,"pending",void 0),Ie(this,"cleanup",void 0),Ie(this,"columnFormats",void 0),Ie(this,"getCachedValues",Be((h,c,v)=>{var{type:g,name:m}=c;return g!==void 0&&S.isDateType(g)?h.map(f=>this.dateTimeFormatter.format(f)):h.map(f=>f!=null&&g!=null?v.getFormattedString(f,g,m):null)},{max:1e3})),Ie(this,"getCachedPanelLinks",Be((h,c)=>{var v=H.getIdFromPanel(c);return de.debug("getCachedPanelLinks",h,v),h.filter(g=>{var m;return((m=g.end)===null||m===void 0?void 0:m.panelId)===v})},{max:1e3})),Ie(this,"getCachedSource",Be(h=>{de.debug("getCachedSource",h);var c;if(h.length>0){var[v]=h;c=v.start,h.length>1&&de.error("Filter has more that one link",h)}return c},{max:1e3})),Ie(this,"getCachedSourceTable",Be((h,c)=>{var v;if(de.debug("getCachedSourceTable",h,c),c==null)return null;var{panelId:g}=c;return(v=h.get(g))!==null&&v!==void 0?v:null},{max:1e3})),Ie(this,"getCachedSourceColumn",Be((h,c)=>{var v;return de.debug("getCachedSourceColumn",h,c),h==null||c==null?null:(v=h.columns.find(g=>{var{name:m,type:f}=g;return m===c.columnName&&f===c.columnType}))!==null&&v!==void 0?v:null},{max:1e3})),this.handleChange=Et(this.handleChange.bind(this),xc),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=Re.createRef(),this.panelContainer=Re.createRef(),this.pending=new Hn;var{dh:t,panelState:r,settings:i}=e;this.columnFormats=Fn.getColumnFormats(i),this.dateTimeFormatter=new _r(t,{showTimeZone:!1,showTSeparator:!0,defaultDateTimeFormatString:"yyyy-MM-dd HH:mm:ss.SSSSSSSSS"});var{value:a="",isValueShown:l=!1,name:s,type:o,timestamp:u}=r??{},d=s!=null&&o!=null?{name:s,type:o}:void 0;this.state={column:d,formatter:new Ke(t,this.columnFormats),valuesTable:void 0,valuesColumn:void 0,sourceSize:0,value:a,timestamp:u,values:[],isValueShown:l,wasFlipped:!1,skipUpdate:!1,panelState:r,isDisconnected:!1,isLoading:!1,isLoaded:!1,error:null}}componentDidMount(){this.updateValuesTable();var{dashboardLinks:e,panelTableMap:t}=this.props,{column:r,value:i,timestamp:a}=this.state,l=this.getSourceTable(t,e);if(l!==null&&this.startListeningToSource(l),r!=null){var{name:s,type:o}=r;this.sendUpdate(s,o,i,a)}}componentDidUpdate(e,t){var{dashboardLinks:r,panelTableMap:i,settings:a}=this.props,{valuesTable:l}=this.state,s=this.getSource(r),o=this.getSourceTable(i,r),u=this.getSource(e.dashboardLinks),d=this.getSourceTable(e.panelTableMap,e.dashboardLinks);a!==e.settings&&a!==void 0&&this.updateFormatterSettings(a),l!==t.valuesTable&&t.valuesTable!=null&&(de.debug("Table in state modified, closing the old table."),t.valuesTable.close()),(o!==d||s!==u)&&this.updateValuesTable(),o!==d&&(d!==null&&this.stopListeningToSource(d),o!==null&&this.startListeningToSource(o))}componentWillUnmount(){var{dashboardLinks:e,panelTableMap:t}=this.props,{valuesTable:r}=this.state,i=this.getSourceTable(t,e);this.pending.cancel(),i!==null&&this.stopListeningToSource(i),this.cleanup&&this.cleanup(),r!=null&&r.close()}getCoordinateForColumn(){var e;if(this.panelContainer.current==null)return null;var t=this.panelContainer.current.querySelector(".".concat(nt.SOURCE_BUTTON_CLASS_NAME)),r=(e=t==null?void 0:t.getBoundingClientRect())!==null&&e!==void 0?e:null;if(r==null||r.width<=0||r.height<=0)return null;var i=r.left+r.width/2,a=r.bottom;return[i,a]}getSettingsErrorMessage(){var{sourceSize:e}=this.state;if(e>tt.MAX_TABLE_SIZE)return"Table too large, must have fewer than ".concat(tt.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;de.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;de.debug("stopListeningToSource"),e.removeEventListener(t.Table.EVENT_FILTERCHANGED,this.handleSourceFilterChange),e.removeEventListener(t.Table.EVENT_SORTCHANGED,this.handleSourceSortChange),e.removeEventListener(t.Table.EVENT_SIZECHANGED,this.handleSourceSizeChange),e.removeEventListener(t.Table.EVENT_DISCONNECT,this.handleDisconnect),e.removeEventListener(t.Table.EVENT_RECONNECT,this.handleReconnect)}handleChange(e){var{column:t,isValueShown:r=!1,value:i}=e,{name:a=void 0,type:l=void 0}=t??{},s=!0,o=Date.now();this.setState(u=>{var d,{panelState:h,timestamp:c,wasFlipped:v,skipUpdate:g}=u,m=h!=null&&r!==h.isValueShown&&a===h.name&&l===h.type&&i===h.value;return s=(d=!g&&r&&(!m||!v))!==null&&d!==void 0?d:!1,s||(o=c),{panelState:{isValueShown:r,name:a,type:l,value:i,timestamp:o??void 0},timestamp:o,wasFlipped:m,skipUpdate:!1}},()=>{s&&this.sendUpdate(a??null,l,i,o)})}handleDisconnect(){this.setState({error:new Error("Table disconnected"),isDisconnected:!0,isLoading:!1})}handleReconnect(){this.setState({isDisconnected:!1,error:null})}handleSourceFilterChange(){this.applySourceFilters()}handleSourceSortChange(){this.applySourceSorts()}handleSourceSizeChange(e){var{detail:t}=e;this.setState({sourceSize:t})}handleColumnSelected(){de.debug("handleColumnSelected");var{glEventHub:e}=this.props,t=H.getIdFromPanel(this);R(t),tn(e,t,tt.SOURCE_COLUMN,{type:"filterSource"})}handleClearAllFilters(){var e;(e=this.dropdownFilterRef)===null||e===void 0||(e=e.current)===null||e===void 0||e.clearFilter()}setPanelState(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,{dashboardLinks:i}=this.props;if(this.getSource(i)==null){de.debug("Ignore state update for unlinked filter",e);return}this.setState({skipUpdate:!r}),(t=this.dropdownFilterRef)===null||t===void 0||(t=t.current)===null||t===void 0||t.setFilterState(e)}sendUpdate(e,t,r,i){var a,{dashboardLinks:l,glEventHub:s}=this.props,o=(a=this.getSource(l))===null||a===void 0?void 0:a.panelId,u=o==null?[]:[o];de.debug("sendUpdate",{name:e,type:t,value:r,timestamp:i,excludePanelIds:u});var d=H.getIdFromPanel(this);R(d),rs(s,d,e!=null&&t!=null&&i!=null?{name:e,type:t,value:r??"=null",timestamp:i,excludePanelIds:u}:null)}updateValuesTable(){var{dashboardLinks:e,panelTableMap:t}=this.props,r=this.getSource(e),i=this.getSourceTable(t,e);if(de.debug("updateValuesTable",r,i),this.setState({values:[],valuesTable:void 0,error:null}),r==null){de.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=>{Le.isCanceled(a)||(de.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(de.debug("applySourceSorts",i==null?void 0:i.sort),r==null||i==null){de.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(de.debug("applySourceFilters",i==null?void 0:i.filter),r==null||i==null){de.debug("Table not initialized");return}var a=[...i.filter];r.applyFilter(a),this.setViewport(r)}updateViewportListener(e){var{dh:t}=this.props;if(de.debug("updateViewportListener",e==null?void 0:e.size),this.cleanup&&this.cleanup(),e==null){this.cleanup=void 0;return}this.cleanup=e.addEventListener(t.Table.EVENT_UPDATED,this.handleValuesTableUpdate),this.setViewport(e)}setViewport(e){var{dashboardLinks:t}=this.props,r=this.getValuesColumn(e,t);if(!r){de.error("values column is null");return}e.setViewport(0,tt.MAX_TABLE_SIZE-1,[r])}updateFormatterSettings(e){var{dh:t}=this.props,r=Fn.getColumnFormats(e);jr(this.columnFormats,r)||(this.columnFormats=r,this.setState({formatter:new Ke(t,r)}))}handleValuesTableUpdate(e){var{detail:t}=e,{rows:r}=t,{dashboardLinks:i}=this.props,{valuesTable:a}=this.state;if(!a){de.error("valuesTable is null");return}var l=this.getValuesColumn(a,i);if(!l){de.error("Values column not found");return}var s=r.map(o=>o.get(l));this.setState({values:s,isLoading:!1,isLoaded:!0,valuesColumn:l})}handleSourceMouseEnter(){var{columnSelectionValidator:e}=this.props;e&&e(this,tt.SOURCE_COLUMN,{type:"filterSource"})}handleSourceMouseLeave(){var{columnSelectionValidator:e}=this.props;e&&e(this,void 0,{type:"filterSource"})}render(){var{columns:e,dashboardLinks:t,disableLinking:r,glContainer:i,glEventHub:a,isLinkerActive:l}=this.props,{column:s,formatter:o,isDisconnected:u,isValueShown:d,value:h,values:c,valuesColumn:v,isLoading:g,isLoaded:m}=this.state,f=this.getSource(t),b=this.getSettingsErrorMessage(),y=this.getPanelErrorMessage(),C=m&&v!=null?this.getCachedValues(c,v,o):Q;return p.jsx(yr,{errorMessage:y,isLoading:g,isLoaded:m,isDisconnected:u,className:"iris-dropdown-filter-panel",componentPanel:this,glContainer:i,glEventHub:a,onClearAllFilters:this.handleClearAllFilters,descriptor:jc,children:p.jsx("div",{ref:this.panelContainer,className:"dropdown-filter-container h-100 w-100 container",children:p.jsx(nt,{ref:this.dropdownFilterRef,column:s,columns:e,isValueShown:d,isLinkerActive:l,disableLinking:r,isLoaded:m,settingsError:b,source:f,value:h,values:C,onChange:this.handleChange,onColumnSelected:this.handleColumnSelected,onSourceMouseEnter:this.handleSourceMouseEnter,onSourceMouseLeave:this.handleSourceMouseLeave})})})}}Ie(tt,"displayName","DropdownFilterPanel");Ie(tt,"COMPONENT","DropdownFilterPanel");Ie(tt,"MAX_TABLE_SIZE",256);Ie(tt,"SOURCE_COLUMN",Object.freeze({name:"FilterSource",type:null}));var Vt=Vc(tt);function pa(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 Nr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?pa(Object(t),!0).forEach(function(r){or(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):pa(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function or(n,e,t){return(e=$c(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function $c(n){var e=Hc(n,"string");return typeof e=="symbol"?e:e+""}function Hc(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ve=ee.module("FilterSetManager"),Gc="Enter name...",ma="No Available Filter Sets";class mr extends E.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),or(this,"renameInputRef",Re.createRef()),or(this,"dropdownRef",Re.createRef()),or(this,"editDropdownRef",Re.createRef()),or(this,"isRenamingExistingSet",U((t,r)=>r!==void 0&&t.some(i=>{var{id:a}=i;return a===r.id}))),this.handleSettingsCancel=this.handleSettingsCancel.bind(this),this.handleSettingsClick=this.handleSettingsClick.bind(this),this.handleSettingsSave=this.handleSettingsSave.bind(this),this.handleBackgroundClick=this.handleBackgroundClick.bind(this),this.handleEditDropdownChange=this.handleEditDropdownChange.bind(this),this.handleFilterChange=this.handleFilterChange.bind(this),this.handleFilterApply=this.handleFilterApply.bind(this),this.handleCaptureNewSet=this.handleCaptureNewSet.bind(this),this.handleNameInputChange=this.handleNameInputChange.bind(this),this.handleNameInputKeyPress=this.handleNameInputKeyPress.bind(this),this.handleRenameConfirm=this.handleRenameConfirm.bind(this),this.handleRenameCancel=this.handleRenameCancel.bind(this),this.handleRestoreFullStateChange=this.handleRestoreFullStateChange.bind(this),this.handleSetDelete=this.handleSetDelete.bind(this),this.handleSetEdit=this.handleSetEdit.bind(this),this.handleSetUpdate=this.handleSetUpdate.bind(this),this.state={editId:void 0,renameSet:void 0,nameInputValue:"",nameInputError:void 0,modifiedFilterSets:[],restoreFullState:!1}}componentDidMount(){var{isValueShown:e}=this.props;e?this.updateSelectedId():this.initSettingsScreen()}componentDidUpdate(e,t){var{isValueShown:r,filterSets:i}=this.props,{modifiedFilterSets:a}=this.state;if(e.isValueShown&&!r&&this.initSettingsScreen(),this.isNameInputScreen()&&!this.isNameInputScreen(t)&&this.focusRenameInput(),i!==e.filterSets)if(!r&&i.length>0&&e.filterSets.length===0&&a.length===0){var{onChange:l}=this.props;l({isValueShown:!0,selectedId:i[0].id})}else this.updateSelectedId()}initSettingsScreen(){var{filterSets:e,selectedId:t}=this.props;ve.debug("initSettingsScreen",e,t),this.setState({modifiedFilterSets:[...e],editId:t})}updateSelectedId(){var{isValueShown:e,filterSets:t,selectedId:r,onChange:i}=this.props;if(ve.debug("updateSelectedId",t,r),!!e&&!t.some(l=>{var{id:s}=l;return s===r})){var a=t.length===0;i({isValueShown:!a,selectedId:a?void 0:t[0].id})}}handleEditDropdownChange(e){this.setState({editId:e})}handleFilterChange(e){var t=e,{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:[]}),ve.debug("Update sets",r,i),t(r),r.length>0&&e({isValueShown:!0,selectedId:i})}handleCaptureNewSet(){var{getFilterState:e}=this.props;mr.animateScreenFlash();var t=Ue(),r=e(),i={id:t,title:"",panels:r};ve.debug("handleSetCreate",i),this.setState({nameInputValue:"",nameInputError:void 0,renameSet:i})}handleRenameCancel(){this.setState({renameSet:void 0})}handleRestoreFullStateChange(e){this.setState({restoreFullState:e==="true"})}getNameError(e){var t,{renameSet:r,modifiedFilterSets:i}=this.state,a=(t=e==null?void 0:e.trim())!==null&&t!==void 0?t:"";if(a.length===0)return ve.debug("Name cannot be empty",a),"Name cannot be empty";if(r!==void 0&&i.some(l=>{var{title:s,id:o}=l;return s===a&&o!==r.id}))return ve.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){ve.error("Renamed set undefined.");return}var l=this.getNameError(t);if(ve.debug("handleRenameConfirm",t,l),l!==void 0){this.setState({nameInputError:l});return}var s=(e=t==null?void 0:t.trim())!==null&&e!==void 0?e:"",o=Nr(Nr({},r),{},{title:s,restoreFullState:a}),u=i.findIndex(h=>{var{id:c}=h;return c===r.id}),d=[...i];u>=0?(d[u]=o,ve.debug("Renamed existing set",d)):(d.push(o),ve.debug("Added new set to modified sets",d)),this.setState({editId:o.id,modifiedFilterSets:d,renameSet:void 0})}handleSetDelete(){this.setState(e=>{var{editId:t,modifiedFilterSets:r}=e,i=r.findIndex(o=>{var{id:u}=o;return u===t});if(i<0)return ve.error("Unable to find selected filterSet index",r,t),null;var a=r.filter(o=>{var{id:u}=o;return u!==t}),l=Math.max(0,Math.min(a.length-1,i-1)),s=a.length>0?a[l].id:void 0;return ve.debug("Deleted selected set",t,r,a),ve.debug("New selection",l,s),{modifiedFilterSets:a,editId:s}})}handleSetUpdate(){var{getFilterState:e}=this.props;mr.animateScreenFlash();var t=e();this.setState(r=>{var{modifiedFilterSets:i,editId:a}=r;if(a===void 0)return ve.error("Filter for update not selected."),null;var l=[...i],s=l.findIndex(o=>{var{id:u}=o;return u===a});return s<0?(ve.error("Selected set for update not found."),null):(l[s]=Nr(Nr({},l[s]),{},{panels:t}),ve.debug("Update set",l,t),{modifiedFilterSets:l})})}handleSetEdit(){this.setState(e=>{var{editId:t,modifiedFilterSets:r}=e,i=r.find(s=>{var{id:o}=s;return o===t});if(i===void 0)return ve.error("Could not find selected set",t,r),null;var{title:a,restoreFullState:l=!1}=i;return{nameInputValue:a,nameInputError:void 0,renameSet:i,restoreFullState:l}})}handleSettingsClick(e){e.stopPropagation();var{onChange:t,selectedId:r}=this.props;t({isValueShown:!1,selectedId:r})}handleBackgroundClick(e){ve.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){ve.debug("No filter selected");return}var i=r.find(a=>{var{id:l}=a;return l===e});if(i===void 0){ve.debug("Selected id not found in filterSets",e,r);return}ve.debug("Apply filterSet",i),t(i)}focusInput(){var e;(e=this.dropdownRef.current)===null||e===void 0||e.focus()}focusRenameInput(){var e;(e=this.renameInputRef.current)===null||e===void 0||e.focus()}render(){var{nameInputValue:e,nameInputError:t,editId:r,renameSet:i,modifiedFilterSets:a,restoreFullState:l}=this.state,{isValueShown:s,filterSets:o,selectedId:u}=this.props,d=this.isNameInputScreen(),h=this.isRenamingExistingSet(a,i),c=a.length===0,v=!d&&c&&o.length===0,g=!d&&!v,m=p.jsxs("div",{className:"fa-layers mr-3",children:[p.jsx(Ne,{icon:Ti,mask:wi,transform:"shrink-1 down-5 right-7"}),p.jsx(Ne,{icon:Ko,className:"text-primary",transform:"shrink-6 down-5 right-7"})]}),f=p.jsxs("div",{className:"fa-layers",children:[p.jsx(Ne,{icon:Ti,mask:wi,transform:"shrink-1 down-5 right-7"}),p.jsx(Ne,{icon:Xo,transform:"shrink-1 down-5 right-7"})]});return p.jsx("div",{className:"filter-set-manager fill-parent-absolute",children:p.jsxs(Wn,{className:"w-100 h-100",isFlipped:s,children:[p.jsx("div",{className:"filter-set-manager-settings-card fill-parent-absolute",children:p.jsxs("div",{className:"filter-set-manager-card-content",children:[v&&p.jsxs("div",{children:[p.jsx(J,{kind:"ghost",className:"btn btn-link no-underline",onClick:this.handleCaptureNewSet,icon:m,children:"Capture filter set"}),p.jsx("div",{className:"py-3 text-muted small",children:"Takes a snapshot of the currently applied filters on all panels, allowing you to restore saved filter sets later."})]}),d&&p.jsxs("div",{className:"d-flex flex-column justify-content-center","data-testid":"edit-filter-set-container",children:[p.jsxs("div",{className:"form-group",children:[p.jsx("label",{children:h?"Edit set":"Name captured set"}),p.jsxs("div",{className:"name-input-container",children:[p.jsx("input",{type:"text",className:"input-set-name form-control",placeholder:Gc,value:e,ref:this.renameInputRef,onChange:this.handleNameInputChange,onKeyPress:this.handleNameInputKeyPress,spellCheck:"false"}),p.jsx(J,{"data-testid":"rename-confirm-button",kind:"ghost",className:"btn btn-link no-underline pt-2 pb-2",onClick:this.handleRenameConfirm,tooltip:"Save","test-id":"button-save",icon:Tl}),p.jsx(J,{"data-testid":"rename-cancel-button",kind:"ghost",className:"btn btn-link no-underline pt-2 pb-2",onClick:this.handleRenameCancel,tooltip:"Cancel",icon:qo})]}),t!==void 0&&p.jsx("div",{className:"error-message",children:t})]}),p.jsx("div",{className:"form-group",children:p.jsxs(Js,{"aria-label":"Restoration options",onChange:this.handleRestoreFullStateChange,value:"".concat(l),children:[p.jsx(Ci,{value:"false",children:"Restore only filters"}),p.jsx(Ci,{value:"true",children:"Restore full table state"})]})})]}),g&&p.jsxs("div",{className:"filter-set-manager-settings-grid-1",children:[p.jsxs("div",{className:"form-group",children:[p.jsx("label",{children:"Edit filter sets"}),p.jsxs("div",{className:"filter-select-container",children:[p.jsxs(cr,{"data-testid":"settings-card-filter-select",ref:this.editDropdownRef,value:r??"-1",className:"custom-select filter-value-select",onChange:this.handleEditDropdownChange,disabled:c,children:[c&&p.jsx("option",{value:"-1",disabled:!0,children:ma}),a.map(b=>{var{id:y,title:C}=b;return p.jsx("option",{value:y,children:C},y)})]}),p.jsx(J,{kind:"ghost",onClick:this.handleSetUpdate,disabled:c,icon:f,tooltip:"Update"}),p.jsx(J,{kind:"ghost",onClick:this.handleSetEdit,disabled:c,icon:Pl,tooltip:"Edit"}),p.jsx(J,{kind:"ghost",onClick:this.handleSetDelete,disabled:c,icon:Zr,tooltip:"Delete"})]})]}),p.jsx("div",{children:p.jsx(J,{kind:"ghost",className:"btn btn-link no-underline",onClick:this.handleCaptureNewSet,icon:m,children:"Capture new filter set"})}),p.jsxs("div",{className:"py-3 text-right",children:[p.jsx(J,{kind:"secondary",onClick:this.handleSettingsCancel,children:"Cancel"})," ",p.jsx(J,{kind:"primary",onClick:this.handleSettingsSave,children:"Save"})]})]})]})},"front"),p.jsxs("div",{className:"filter-set-manager-value-card fill-parent-absolute",onClick:this.handleBackgroundClick,children:[p.jsx("div",{className:"filter-set-manager-column",children:p.jsx("div",{className:"filter-set-manager-column-title",children:"Filter sets"})}),p.jsx("div",{className:"filter-set-manager-card-content",children:p.jsx("div",{className:"filter-set-manager-value-input",children:p.jsxs("div",{className:"filter-select-container",children:[p.jsxs(cr,{"data-testid":"value-card-filter-select",ref:this.dropdownRef,value:u??"-1",className:"custom-select filter-value-select",onChange:this.handleFilterChange,children:[o.length===0&&p.jsx("option",{value:"-1",disabled:!0,children:ma}),o.map(b=>{var{id:y,title:C}=b;return p.jsx("option",{value:y,children:C},y)})]}),p.jsx(J,{"data-testid":"filter-apply-button",kind:"ghost",onClick:this.handleFilterApply,icon:Dl,tooltip:"Apply Filter Set"})]})})}),p.jsx("div",{className:"filter-set-manager-menu",children:p.jsx(J,{kind:"ghost",className:"btn btn-link btn-link-icon m-2 px-2",onClick:this.handleSettingsClick,tooltip:"Settings",icon:p.jsx(Ne,{icon:Bn,transform:"grow-4"})})})]},"back")]})})}}function fa(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 ga(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?fa(Object(t),!0).forEach(function(r){Bc(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):fa(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Bc(n,e,t){return(e=Uc(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Uc(n){var e=Wc(n,"string");return typeof e=="symbol"?e:e+""}function Wc(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function zc(n){var e,t,r,i,a,{model:l}=n,s=((e=l==null?void 0:l.rowCount)!==null&&e!==void 0?e:0)-((t=l==null?void 0:l.pendingRowCount)!==null&&t!==void 0?t:0)-((r=l==null?void 0:l.floatingBottomRowCount)!==null&&r!==void 0?r:0)-((i=l==null?void 0:l.floatingTopRowCount)!==null&&i!==void 0?i:0),o=l==null?void 0:l.displayString(s,"long"),u=(a=l==null?void 0:l.columnCount)!==null&&a!==void 0?a:0,d=l==null?void 0:l.displayString(u,"long");return p.jsxs(Zn,ga(ga({},n),{},{children:[p.jsx("hr",{className:"tab-tooltip-divider"}),p.jsx("span",{children:"Number of Columns"}),p.jsx("span",{className:"tab-tooltip-statistic-value",children:d}),p.jsx("span",{children:"Number of Rows"}),p.jsx("span",{className:"tab-tooltip-statistic-value",children:o})]}))}function is(n){if(n==null)return!1;var e=n;return typeof e.table=="string"}function as(n){if(n==null)return!1;var e=n;return typeof e.name=="string"}function ba(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function ze(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ba(Object(t),!0).forEach(function(r){me(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ba(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function me(n,e,t){return(e=qc(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function qc(n){var e=Kc(n,"string");return typeof e=="symbol"?e:e+""}function Kc(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var rt=ee.module("IrisGridPanel"),Xc=500;function Ca(n){if(n==null)throw new Error("No metadata provided");if(as(n))return n.name;if(is(n))return n.table;throw new Error("Unable to determine table name from metadata: ".concat(JSON.stringify(n)))}class zt extends E.PureComponent{constructor(e){super(e),me(this,"irisGrid",void 0),me(this,"pluginRef",void 0),me(this,"modelPromise",void 0),me(this,"irisGridState",void 0),me(this,"gridState",void 0),me(this,"pluginState",void 0),me(this,"irisGridUtils",void 0),me(this,"gridStateDehydrator",Ln.makeMemoizedGridStateDehydrator()),me(this,"irisGridStateDehydrator",Ln.makeMemoizedIrisGridStateDehydrator()),me(this,"getGridInputFilters",U((r,i)=>$.getInputFiltersForColumns(r,i.filter(a=>{var{value:l,excludePanelIds:s}=a,o=H.getIdFromPanel(this);return l!=null&&(s==null||o!=null&&!s.includes(o))})))),me(this,"getAlwaysFetchColumns",U((r,i)=>{for(var a=H.getIdFromPanel(this),l=new Set(i),s=0;s<r.length;s+=1){var{start:o}=r[s];o!=null&&o.panelId===a&&l.add(o.columnName)}return[...l]})),me(this,"getPluginContent",U((r,i,a)=>{var l;if(!i||!ct(i)||r==null||i.table==null)return null;var s={panel:this};return p.jsx("div",{className:"iris-grid-plugin",children:p.jsx(r,ze({ref:this.pluginRef,filter:this.handlePluginFilter,fetchColumns:this.handlePluginFetchColumns,model:i,table:i.table,tableName:this.getTableName(),selectedRanges:(l=this.irisGrid.current)===null||l===void 0?void 0:l.state.selectedRanges,onStateChange:this.handlePluginStateChange,pluginState:a},s))})})),me(this,"getDehydratedIrisGridPanelState",U((r,i,a,l)=>$.dehydrateIrisGridPanelState(r,{isSelectingPartition:i,partitions:a,advancedSettings:l}))),me(this,"getCachedPanelState",U((r,i,a,l)=>({irisGridPanelState:r,irisGridState:i,gridState:a,pluginState:l}))),me(this,"getWidgetPanelDescriptor",U((r,i)=>{var a=Ca(r);return ze(ze({type:"Table",displayType:"Table"},r),{},{name:a,description:i})})),me(this,"savePanelState",Et(()=>{var{irisGridState:r,gridState:i,pluginState:a}=this;R(r);var{onPanelStateUpdate:l}=this.props,{model:s,panelState:o,isSelectingPartition:u,partitions:d,advancedSettings:h}=this.state;R(this.irisGridUtils),R(s),R(i);var c=this.getCachedPanelState(this.getDehydratedIrisGridPanelState(s,u,d,h),this.irisGridStateDehydrator(s,r),this.gridStateDehydrator(s,i),a);c!==o&&(rt.debug("Saving panel state",this,c),this.setState({panelState:c}),l==null||l(c))},Xc)),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.handleCreateChart=this.handleCreateChart.bind(this),this.handleShow=this.handleShow.bind(this),this.handleTabClicked=this.handleTabClicked.bind(this),this.handleDisconnect=this.handleDisconnect.bind(this),this.handleReconnect=this.handleReconnect.bind(this),this.handleLoadSuccess=this.handleLoadSuccess.bind(this),this.handleLoadError=this.handleLoadError.bind(this),this.isColumnSelectionValid=this.isColumnSelectionValid.bind(this),this.handleContextMenu=this.handleContextMenu.bind(this),this.handlePluginFilter=this.handlePluginFilter.bind(this),this.handlePluginFetchColumns=this.handlePluginFetchColumns.bind(this),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.irisGrid=Re.createRef(),this.pluginRef=Re.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(xl.DEFAULTS),customColumns:[],customColumnFormatMap:new Map,columnAlignmentMap:new Map,isFilterBarShown:!1,quickFilters:new Map,sorts:[],userColumnWidths:new Map,userRowHeights:new Map,reverse:!1,movedColumns:[],movedRows:[],isSelectingPartition:!1,partitions:[],rollupConfig:void 0,showSearchBar:!1,searchValue:"",selectedSearchColumns:void 0,invertSearchColumns:!0,Plugin:void 0,pluginFilters:[],pluginFetchColumns:[],modelQueue:[],pendingDataMap:new Map,frozenColumns:void 0,panelState:t,irisGridStateOverrides:{},gridStateOverrides:{},isStuckToBottom:!1,isStuckToRight:!1,conditionalFormats:[],selectDistinctColumns:[]}}componentDidMount(){this.initModel()}componentDidUpdate(e,t){var{model:r}=this.state,{makeModel:i}=this.props;r!==t.model&&(t.model!=null&&(this.stopModelListening(t.model),t.model.close()),r!=null&&this.startModelListening(r)),i!==e.makeModel&&this.initModel()}componentWillUnmount(){this.savePanelState.cancel(),this.modelPromise!=null&&(this.modelPromise.cancel(),this.modelPromise=void 0);var{model:e}=this.state;e&&(this.stopModelListening(e),e.close())}getTableName(){var{metadata:e}=this.props;return Ca(e)}initModel(){this.setState({isModelReady:!1,isLoading:!0,error:null,isDisconnected:!1});var{makeModel:e}=this.props;this.modelPromise!=null&&this.modelPromise.cancel(),this.modelPromise=Le.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 $(t.dh),r!=null){var{irisGridState:l}=r,{aggregationSettings:s,customColumns:o,selectDistinctColumns:u=[],rollupConfig:d}=ze(ze({},l),i);o.length>0&&a.push(h=>{h.customColumns=o}),d!=null&&d.columns.length>0&&a.push(h=>{h.rollupConfig=$.getModelRollupConfig(h.originalColumns,d,s)}),u.length>0&&a.push(h=>{h.selectDistinctColumns=u})}this.setState({model:t,modelQueue:a}),this.initModelQueue(t,a)}initModelQueue(e,t){var r=e;if(t.length===0){this.modelInitialized(r);return}var i=t.shift();rt.debug("initModelQueue",i),i&&i(r),this.setState({modelQueue:t})}handleAdvancedSettingsChange(e,t){rt.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;R(i);var{columns:a,formatter:l}=i,s=(t=(r=this.irisGridUtils)===null||r===void 0?void 0:r.getFiltersFromInputFilters(a,e,l.timeZone))!==null&&t!==void 0?t:[];this.setState({pluginFilters:s})}handlePluginFetchColumns(e){this.setState({pluginFetchColumns:e})}handleContextMenu(e){var t,r,i;return(t=(r=this.pluginRef.current)===null||r===void 0||(i=r.getMenu)===null||i===void 0?void 0:i.call(r,e))!==null&&t!==void 0?t:[]}isColumnSelectionValid(e){var{columnSelectionValidator:t}=this.props;return t&&e?t(this,e,{type:"tableLink"}):!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(Fe.STATE_CHANGED,this),i==null||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):(R(r),this.initModelQueue(r,i))}handleTableChanged(e){rt.debug("handleTableChanged",e);var{glEventHub:t}=this.props,{detail:r}=e,i=H.getIdFromPanel(this);R(i),Ur(t,i,r)}handleCreateChart(e,t){this.savePanelState.flush(),this.setState(()=>null,()=>{var{glEventHub:r,inputFilters:i,metadata:a}=this.props,l=this.getTableName(),{panelState:s}=this.state,o=H.getIdFromPanel(this),u;s&&(u=$.extractTableSettings(s,i)),r.emit(Fe.CREATE_CHART,{metadata:ze(ze({},a),{},{settings:e,sourcePanelId:o,table:l,tableSettings:u}),table:ct(t)?t.table:void 0})})}handleColumnSelected(e){var{glEventHub:t}=this.props,r=H.getIdFromPanel(this);R(r),tn(t,r,e,{type:"tableLink"})}handleDataSelected(e,t){var{glEventHub:r}=this.props,i=H.getIdFromPanel(this);R(i),ns(r,i,t)}handleShow(){this.updateGrid()}handleTabClicked(){this.irisGrid.current&&this.irisGrid.current.focus()}handleError(e){rt.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){Le.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}),ct(e)){var{table:i}=e,{pluginName:a}=i;if(a!==""&&r!=null&&a!=null){var l=r(a);this.setState({Plugin:l})}var s=H.getIdFromPanel(this);R(s),Ur(t,s,i)}this.sendColumnsChange(e.columns)}handleClearAllFilters(){var e=this.irisGrid.current,{isDisconnected:t}=this.state;e!=null&&!t&&e.clearAllFilters()}sendColumnsChange(e){rt.debug2("sendColumnsChange",e);var{glEventHub:t}=this.props,r=H.getIdFromPanel(this);R(r),Br(t,r,e)}startModelListening(e){e.addEventListener(W.EVENT.DISCONNECT,this.handleDisconnect),e.addEventListener(W.EVENT.RECONNECT,this.handleReconnect),e.addEventListener(W.EVENT.COLUMNS_CHANGED,this.handleColumnsChanged),e.addEventListener(W.EVENT.TABLE_CHANGED,this.handleTableChanged)}stopModelListening(e){e.removeEventListener(W.EVENT.DISCONNECT,this.handleDisconnect),e.removeEventListener(W.EVENT.RECONNECT,this.handleReconnect),e.removeEventListener(W.EVENT.COLUMNS_CHANGED,this.handleColumnsChanged),e.removeEventListener(W.EVENT.TABLE_CHANGED,this.handleTableChanged)}getCoordinateForColumn(e){var t,r,i,{model:a}=this.state;if(!a)return null;var l=this.irisGrid.current,{gridWrapper:s}=l||{},o=(t=s==null?void 0:s.getBoundingClientRect())!==null&&t!==void 0?t:null;if(o==null||o.width<=0||o.height<=0)return null;R(l);var{metrics:u}=l.state;R(u);var{columnHeaderHeight:d,allColumnXs:h,allColumnWidths:c,right:v,columnHeaderMaxDepth:g}=u,m=a.getColumnIndexByName(e);R(m);var f=l.getVisibleColumn(m),b=(r=h.get(f))!==null&&r!==void 0?r:0,y=(i=c.get(f))!==null&&i!==void 0?i:0,C=Ge(f>v?o.right:o.left+b+y*.5,o.left,o.right),T=o.top+d*g;return[C,T]}setFilterMap(e){var t=this.irisGrid.current;t!=null&&t.setFilterMap(e)}setAdvancedFilterMap(e){var t=this.irisGrid.current;t!=null&&t.setAdvancedFilterMap(e)}setFilters(e){var{quickFilters:t,advancedFilters:r}=e;rt.debug("setFilters",t,r);var{model:i,isDisconnected:a}=this.state,l=this.irisGrid.current;if(l==null||a){rt.debug("Ignore setFilters, model disconnected");return}R(i);var{columns:s,formatter:o}=i,u=$.changeFilterColumnNamesToIndexes(i.columns,t).filter(h=>{var[c]=h;return i.isFilterable(c)}),d=$.changeFilterColumnNamesToIndexes(i.columns,r).filter(h=>{var[c]=h;return i.isFilterable(c)});R(this.irisGridUtils),l.clearAllFilters(),l.setFilters({quickFilters:this.irisGridUtils.hydrateQuickFilters(s,u,o.timeZone),advancedFilters:this.irisGridUtils.hydrateAdvancedFilters(s,d,o.timeZone)})}setStateOverrides(e){rt.debug("setStateOverrides",e);var{irisGridState:t,gridState:r}=e;this.setState({irisGridStateOverrides:t,gridStateOverrides:r},()=>{this.initModel()})}unsetFilterValue(){}loadPanelState(e){var{panelState:t,irisGridStateOverrides:r,gridStateOverrides:i}=this.state;if(t!=null)try{var{gridState:a,irisGridState:l,irisGridPanelState:s}=t,o=ze({},r),{quickFilters:u,advancedFilters:d}=o;u&&(o.quickFilters=$.changeFilterColumnNamesToIndexes(e.columns,u)),d&&(o.advancedFilters=$.changeFilterColumnNamesToIndexes(e.columns,d));var{isSelectingPartition:h,partitions:c,advancedSettings:v}=$.hydrateIrisGridPanelState(e,s);R(this.irisGridUtils);var{advancedFilters:g,customColumns:m,customColumnFormatMap:f,columnAlignmentMap:b,isFilterBarShown:y,quickFilters:C,reverse:T,rollupConfig:w,aggregationSettings:O,sorts:D,userColumnWidths:N,userRowHeights:M,showSearchBar:F,searchValue:k,selectDistinctColumns:L,selectedSearchColumns:V,invertSearchColumns:X,pendingDataMap:Y,frozenColumns:Z,conditionalFormats:se,columnHeaderGroups:re,partitionConfig:Ce}=this.irisGridUtils.hydrateIrisGridState(e,ze(ze({},l),o)),{isStuckToBottom:ge,isStuckToRight:A,movedColumns:x,movedRows:_}=$.hydrateGridState(e,ze(ze({},a),i),l.customColumns);this.setState({advancedFilters:g,advancedSettings:v,conditionalFormats:se,customColumns:m,customColumnFormatMap:f,columnAlignmentMap:b,isFilterBarShown:y,isSelectingPartition:h,movedColumns:x,movedRows:_,partitions:c,quickFilters:C,reverse:T,rollupConfig:w,aggregationSettings:O,sorts:D,userColumnWidths:N,userRowHeights:M,showSearchBar:F,searchValue:k,selectDistinctColumns:L,selectedSearchColumns:V,invertSearchColumns:X,pendingDataMap:Y,frozenColumns:Z,isStuckToBottom:ge,isStuckToRight:A,columnHeaderGroups:re,partitionConfig:Ce})}catch(B){rt.error("loadPanelState failed to load panelState",t,B)}}updateGrid(){var e,t,r=(e=(t=this.irisGrid.current)===null||t===void 0?void 0:t.grid)!==null&&e!==void 0?e:null;r&&r.handleResize()}render(){var e,t,{children:r,glContainer:i,glEventHub:a,columnSelectionValidator:l,getDownloadWorker:s,inputFilters:o,links:u,metadata:d,mouseHandlers:h,panelState:c,user:v,renderer:g,settings:m,getMetricCalculator:f,theme:b}=this.props,{advancedFilters:y,aggregationSettings:C,advancedSettings:T,conditionalFormats:w,customColumns:O,customColumnFormatMap:D,columnAlignmentMap:N,error:M,isDisconnected:F,isFilterBarShown:k,isSelectingPartition:L,isStuckToBottom:V,isStuckToRight:X,isLoaded:Y,isLoading:Z,isModelReady:se,model:re,movedColumns:Ce,movedRows:ge,partitions:A,partitionConfig:x,quickFilters:_,reverse:B,rollupConfig:z,sorts:be,userColumnWidths:ye,userRowHeights:Ae,showSearchBar:Xe,searchValue:Ye,selectDistinctColumns:on,selectedSearchColumns:un,invertSearchColumns:Qt,Plugin:dn,pluginFilters:Jt,pluginFetchColumns:Rs,pendingDataMap:Is,frozenColumns:ks,columnHeaderGroups:Ls}=this.state,As=M!=null?"Unable to open table. ".concat(M):void 0,xs=(e=re==null?void 0:re.description)!==null&&e!==void 0?e:void 0,js=(t=c==null?void 0:c.pluginState)!==null&&t!==void 0?t:null,_s=r??this.getPluginContent(dn,re,js),{permissions:Vs}=v,{canCopy:$s,canDownloadCsv:Hs}=Vs,fi=this.getWidgetPanelDescriptor(d,xs);return p.jsx(yr,{errorMessage:As,isDisconnected:F,isLoading:Z,isLoaded:Y,className:"iris-grid-panel",glContainer:i,glEventHub:a,onClearAllFilters:this.handleClearAllFilters,onShow:this.handleShow,onTabFocus:this.handleShow,onTabClicked:this.handleTabClicked,componentPanel:this,descriptor:fi,renderTabTooltip:()=>p.jsx(zc,{descriptor:fi,model:re}),children:se&&re&&p.jsx(Jr,{advancedFilters:y,aggregationSettings:C,advancedSettings:T,alwaysFetchColumns:this.getAlwaysFetchColumns(u,Rs),columnAllowedCursor:"linker",columnNotAllowedCursor:"linker-not-allowed",copyCursor:"copy",customColumns:O,customColumnFormatMap:D,columnAlignmentMap:N,columnSelectionValidator:this.isColumnSelectionValid,conditionalFormats:w,inputFilters:this.getGridInputFilters(re.columns,o),applyInputFiltersOnInit:c==null,isFilterBarShown:k,isSelectingColumn:l!=null,isSelectingPartition:L,isStuckToBottom:V,isStuckToRight:X,mouseHandlers:h,movedColumns:Ce,movedRows:ge,partitions:A,partitionConfig:x,quickFilters:_,renderer:g,reverse:B,rollupConfig:z,settings:m,sorts:be,userColumnWidths:ye,userRowHeights:Ae,model:re,showSearchBar:Xe,searchValue:Ye,selectedSearchColumns:un,selectDistinctColumns:on,invertSearchColumns:Qt,onColumnSelected:this.handleColumnSelected,onCreateChart:this.handleCreateChart,onDataSelected:this.handleDataSelected,onError:this.handleError,onStateChange:this.handleGridStateChange,onContextMenu:this.handleContextMenu,onAdvancedSettingsChange:this.handleAdvancedSettingsChange,customFilters:Jt,pendingDataMap:Is,canCopy:$s,canDownloadCsv:Hs,ref:this.irisGrid,getDownloadWorker:s,frozenColumns:ks,theme:b,columnHeaderGroups:Ls,getMetricCalculator:f,children:_s})})}}me(zt,"defaultProps",{onStateChange:()=>{},onPanelStateUpdate:()=>{}});me(zt,"displayName","IrisGridPanel");me(zt,"COMPONENT","IrisGridPanel");var Yc=(n,e)=>{var{localDashboardId:t=Eo,glContainer:r}=e;return{inputFilters:gr(n,t),links:Tt(n,t),columnSelectionValidator:br(n,t),user:wo(n),settings:Xr(n)}},si=wt(Yc,null,null,{forwardRef:!0})(zt);function dr(n,e,t){return(e=Zc(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Zc(n){var e=Qc(n,"string");return typeof e=="symbol"?e:e+""}function Qc(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ya=ee.module("InputFilter"),Jc=150;class qt extends E.Component{constructor(e){super(e),dr(this,"inputRef",void 0),dr(this,"getItemLabel",Be((a,l)=>{var{name:s,type:o}=a[l];if(l>0&&a[l-1].name===s||l<a.length-1&&a[l+1].name===s){var u=o.substring(o.lastIndexOf(".")+1);return"".concat(s," (").concat(u,")")}return s},{max:1e3})),dr(this,"sendUpdate",Et(()=>{var{onChange:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a({column:l,isValueShown:o,value:s})},Jc)),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=Re.createRef();var{column:t,isValueShown:r,value:i}=e;this.state={column:t,selectedColumn:t,value:i,isValueShown:r}}componentDidUpdate(e,t){var{column:r}=this.props,{column:i,value:a,isValueShown:l}=this.state;r!==e.column&&this.setState({column:r,selectedColumn:r}),l!==void 0&&l&&l!==t.isValueShown&&this.focusInput(),(i!==t.column||a!==t.value||l!==t.isValueShown)&&this.sendUpdate()}componentWillUnmount(){this.sendUpdate.flush()}handleColumnChange(e){var{columns:t}=this.props,r=t[parseInt(e,10)];ya.debug2("handleColumnChange",r),this.setState({selectedColumn:r,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;ya.debug2("handleValueChange",t),this.setState({value:t})}handleSettingsCancel(){var{column:e}=this.state;this.setState({selectedColumn:e,isValueShown:!0})}handleSettingsSave(){var{selectedColumn:e}=this.state;this.setState({column:e,isValueShown:!0})}handleSettingsClick(e){var{column:t}=this.state;this.setState({selectedColumn:t,isValueShown:!1}),e.stopPropagation()}handleBackgroundClick(e){e.target!==this.inputRef.current&&this.focusInput()}focusInput(){this.inputRef.current!==null&&(this.inputRef.current.select(),this.inputRef.current.focus())}clearFilter(){this.setState({value:""})}setFilterState(e){var{name:t,type:r,value:i,isValueShown:a}=e,l=t!=null&&r!=null?{name:t,type:r}:void 0,s=a===void 0?{column:l,value:i}:{column:l,value:i,isValueShown:a};this.setState(s)}render(){var{columns:e}=this.props,{column:t,isValueShown:r,selectedColumn:i,value:a}=this.state,l=a==null||a.length===0?qt.PLACEHOLDER.length:a.length,s=null;if(t!=null){var o=e.findIndex(u=>u.name===t.name&&u.type===t.type);s=o>=0?this.getItemLabel(e,o):t.name}return p.jsxs(Wn,{className:"input-filter fill-parent-absolute",isFlipped:r??!1,children:[p.jsx("div",{className:"input-filter-settings-card",children:p.jsxs("div",{className:"input-filter-settings-content",children:[p.jsxs("div",{className:"input-filter-settings-grid",children:[p.jsx("label",{children:"Filter Column"}),p.jsxs(cr,{value:String(e.findIndex(u=>u.name===(i==null?void 0:i.name)&&u.type===(i==null?void 0:i.type))),className:"custom-select",onChange:this.handleColumnChange,children:[e.map((u,d)=>p.jsx("option",{value:d,children:this.getItemLabel(e,d)},"".concat(u.name,"/").concat(u.type))),e.length===0&&p.jsx("option",{value:"-1",disabled:!0,children:"No Available Columns"})]}),p.jsx("div",{className:"text-muted small",children:"Input filter control will apply its filter to all columns matching this name in this dashboard."})]}),p.jsxs("div",{className:"input-filter-settings-buttons",children:[p.jsx(J,{kind:"secondary",onClick:this.handleSettingsCancel,disabled:t==null,children:"Cancel"}),p.jsx(J,{kind:"primary",className:"ml-2",onClick:this.handleSettingsSave,disabled:i==null,children:"Save"})]})]})}),p.jsxs("div",{className:"input-filter-value-card",onClick:this.handleBackgroundClick,children:[p.jsx("div",{className:"input-filter-column",children:p.jsxs("div",{className:"input-filter-column-title",children:[s," Filter"]})}),p.jsx("div",{className:"d-flex justify-content-center align-items-center h-100 w-100",children:p.jsx("div",{className:"input-filter-value-input d-flex flex-column justify-content-center",children:p.jsx("input",{type:"text",ref:this.inputRef,placeholder:qt.PLACEHOLDER,value:a??"",onChange:this.handleValueChange,onKeyPress:this.handleInputKeyPress,style:{width:"".concat(l+3,"ch")},spellCheck:"false"})})}),p.jsx("div",{className:"input-filter-menu",children:p.jsx(J,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:p.jsx(Ne,{icon:Bn,transform:"grow-4"}),tooltip:"Input Filter Settings"})})]})]})}}dr(qt,"PLACEHOLDER","Enter value...");dr(qt,"defaultProps",{column:null,isValueShown:!1,value:null});function nn(n,e,t){return(e=ev(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ev(n){var e=tv(n,"string");return typeof e=="symbol"?e:e+""}function tv(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var rv=250;class an extends E.Component{constructor(e){super(e),nn(this,"inputFilterRef",void 0),this.handleChange=Et(this.handleChange.bind(this),rv),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.inputFilterRef=Re.createRef();var{panelState:t}=e,{value:r,isValueShown:i=!1,name:a,type:l,timestamp:s=Date.now()}=t??{};this.state={columns:[],column:a!=null&&l!=null?{name:a,type:l}:void 0,value:r,timestamp:s,isValueShown:i,wasFlipped:!1,skipUpdate:!1,panelState:t}}componentDidMount(){this.updateColumns();var{column:e,value:t,timestamp:r}=this.state;if(e!=null){var{name:i,type:a}=e;this.sendUpdate(i,a,t,r)}}componentDidUpdate(e){var{columns:t}=this.props;t!==e.columns&&this.updateColumns()}handleChange(e){var{column:t,isValueShown:r=!1,value:i}=e,a,l;t!=null&&({name:a,type:l}=t);var s=!0,o=Date.now();this.setState(u=>{var d,{panelState:h,timestamp:c,wasFlipped:v,skipUpdate:g}=u,m=h!=null&&r!==h.isValueShown&&a===h.name&&l===h.type&&i===h.value;return s=(d=!g&&r&&(!m||!v))!==null&&d!==void 0?d:!1,s||(o=c),{panelState:{isValueShown:r,name:a,type:l,value:i,timestamp:o},timestamp:o,wasFlipped:m,skipUpdate:!1}},()=>{s&&this.sendUpdate(a,l,i,o)})}handleClearAllFilters(){var e;(e=this.inputFilterRef.current)===null||e===void 0||e.clearFilter()}sendUpdate(e,t,r,i){var{glEventHub:a}=this.props,l=H.getIdFromPanel(this);R(l),rs(a,l,e!=null&&t!=null&&r!=null&&i!=null?{name:e,type:t,value:r,timestamp:i}:null)}setPanelState(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;this.setState({skipUpdate:!r}),(t=this.inputFilterRef.current)===null||t===void 0||t.setFilterState(e)}updateColumns(){var{columns:e}=this.props;e!=null&&this.setState(t=>{var{column:r}=t;return r==null&&e.length>0?{columns:[...e],column:e[0]}:r!=null&&!e.find(i=>{var{name:a,type:l}=i;return r.name===a&&r.type===l})?{columns:[...e,r]}:{columns:[...e]}})}render(){var{glContainer:e,glEventHub:t}=this.props,{column:r,columns:i,isValueShown:a,value:l}=this.state;return p.jsx(kt,{className:"iris-input-filter-panel",componentPanel:this,glContainer:e,glEventHub:t,onClearAllFilters:this.handleClearAllFilters,isClonable:!0,isRenamable:!0,children:p.jsx(qt,{ref:this.inputFilterRef,column:r,columns:i,onChange:this.handleChange,isValueShown:a,value:l})})}}nn(an,"defaultProps",{panelState:null});nn(an,"COMPONENT","InputFilterPanel");nn(an,"displayName","InputFilterPanel");var nv=(n,e)=>{var{localDashboardId:t}=e;return{columns:Gn(n,t)}},$t=wt(nv,null,null,{forwardRef:!0})(an);function Sa(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 Mr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Sa(Object(t),!0).forEach(function(r){oi(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Sa(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function oi(n,e,t){return(e=iv(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function iv(n){var e=av(n,"string");return typeof e=="symbol"?e:e+""}function av(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var De=ee.module("FilterSetManagerPanel");function lv(n){return n.setPanelState!=null}class Kt extends E.Component{static changeFilterIndexesToColumnNames(e,t){return t.map(r=>{var[i,a]=r;if(i>=e.columns.length)return null;var{name:l}=e.columns[i];return{name:l,filter:a}}).filter(r=>r!=null)}constructor(e){super(e),this.handleChange=this.handleChange.bind(this),this.handleFilterApply=this.handleFilterApply.bind(this),this.handleSetsUpdate=this.handleSetsUpdate.bind(this),this.handleGetFilterState=this.handleGetFilterState.bind(this);var{panelState:t,filterSets:r}=e,{selectedId:i=r.length>0?r[0].id:void 0,isValueShown:a=!1}=t??{};this.state={selectedId:i,isValueShown:a,panelState:t}}getFilterState(){var{dashboardOpenedPanelMap:e}=this.props,t=[];return[...e.keys()].forEach(r=>{var i=e.get(r);if(i===void 0){De.error("Could not get panel",i);return}var a=H.getComponentNameFromPanel(i),l=H.getIdFromPanel(i);De.debug("Panel:",i,a);var{glContainer:s=null}=i.props;if(s==null){De.error("Could not get panel container",i);return}var o=H.getComponentConfigFromContainer(s);if(o==null){De.error("Could not get component config from container",s);return}var u=H.getPanelComponentState(o);if(u==null){De.debug("Panel state is null ".concat(l));return}switch(a){case H.getComponentName(zt):{var d;l!=null&&(d=this.getIrisGridPanelFilters(l,u)),d!=null&&t.push({panelId:l,type:a,state:d});break}case H.getComponentName($t):case H.getComponentName(Vt):{var{isValueShown:h,name:c,type:v,value:g}=u;t.push({panelId:l,type:a,state:{isValueShown:h,name:c,type:v,value:g}});break}}}),t}getIrisGridPanelFilters(e,t){var{panelTableMap:r}=this.props,i=r.get(e);if(i==null)return De.error("Unable to get table for panel ".concat(e,".")),null;var{irisGridState:a={advancedFilters:void 0,quickFilters:void 0},gridState:l={}}=t,{advancedFilters:s,quickFilters:o}=a,u;s&&(u=Kt.changeFilterIndexesToColumnNames(i,s));var d;return o&&(d=Kt.changeFilterIndexesToColumnNames(i,o)),{irisGridState:Mr(Mr({},a),{},{advancedFilters:u,quickFilters:d}),gridState:Mr({},l)}}handleGetFilterState(){return this.getFilterState()}handleChange(e){var{isValueShown:t,selectedId:r}=e;De.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;De.debug("Apply filters from filter set",e),r.forEach(a=>{var{panelId:l,type:s,state:o}=a;if(l==null){De.debug("panel is null",l);return}if(!t.has(l)){De.debug("Ignore closed panel",l);return}De.debug("Apply panel filters",l,s,o);var u=t.get(l);switch(s){case H.getComponentName(zt):this.restoreIrisGridFilters(u,o,i);break;case H.getComponentName($t):case H.getComponentName(Vt):this.restoreInputFilterState(u,o);break}})}handleSetsUpdate(e){var{setDashboardFilterSets:t,localDashboardId:r}=this.props;De.debug("Saving updated sets",e),t(r,[...e])}updatePanelState(){this.setState(e=>{var{selectedId:t,isValueShown:r}=e;return{panelState:{selectedId:t,isValueShown:r}}})}restoreIrisGridFilters(e,t,r){var{irisGridState:i={},advancedFilters:a=[],quickFilters:l=[]}=t,{advancedFilters:s=a,quickFilters:o=l}=i,{panelTableMap:u}=this.props,d=H.getIdFromPanel(e);if(d==null){De.error("Panel Id is null.");return}var h=u.get(d);if(h==null){De.error("Unable to get table for panel ".concat(d,"."));return}De.debug("restoreIrisGridFilters",d,t,r),r?e.setStateOverrides(t):e.setFilters({quickFilters:o,advancedFilters:s})}restoreInputFilterState(e,t){var r=Mr({},t);delete r.isValueShown,De.debug("restoreInputFilterState",e,r),e&&lv(e)&&e.setPanelState(r)}render(){var{glContainer:e,glEventHub:t,filterSets:r}=this.props,{isValueShown:i,selectedId:a}=this.state;return p.jsx(kt,{className:"filter-set-manager-panel",componentPanel:this,glContainer:e,glEventHub:t,isClonable:!0,isRenamable:!0,children:p.jsx("div",{className:"input-filter-container h-100 w-100 container",children:p.jsx(mr,{onChange:this.handleChange,onApply:this.handleFilterApply,onUpdateSets:this.handleSetsUpdate,isValueShown:i,filterSets:r,selectedId:a,getFilterState:this.handleGetFilterState})})})}}oi(Kt,"defaultProps",{panelState:null});oi(Kt,"COMPONENT","FilterSetManagerPanel");var sv=(n,e)=>{var{localDashboardId:t}=e;return{filterSets:cl(n,t),dashboardOpenedPanelMap:dl(n,t),dashboardInputFilters:gr(n,t),panelTableMap:qr(n,t)}},Ar=wt(sv,{setDashboardFilterSets:Ql},null,{forwardRef:!0})(Kt);function ov(n,e,t){return(e=uv(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function uv(n){var e=dv(n,"string");return typeof e=="symbol"?e:e+""}function dv(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class ls extends E.PureComponent{render(){var{isEditing:e,children:t,onDoubleClick:r}=this.props;return p.jsxs("div",{className:"markdown-editor-container h-100 w-100",onDoubleClick:r,children:[p.jsx("div",{className:Me("text-muted","edit-hint",{viewing:e===void 0||!e}),children:p.jsxs("span",{children:["double-click to edit ",p.jsx(Ne,{icon:Pl})]})}),t]})}}ov(ls,"defaultProps",{isEditing:!1});function hv(n,e,t){return(e=cv(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function cv(n){var e=vv(n,"string");return typeof e=="symbol"?e:e+""}function vv(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var pv=ee.module("MarkdownStartPage");class ss extends E.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(pv.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 p.jsx("div",{className:"markdown-panel-start-page h-100 w-100",children:p.jsxs("div",{className:"markdown-panel-start-page-container",children:[p.jsxs("div",{className:"markdown-panel-start-list",children:[p.jsx("h3",{className:"list-title",children:"Start"}),p.jsx("div",{className:"list-item",children:p.jsx(J,{kind:"ghost",className:"title",onClick:r,children:"New Markdown Note"})})]}),p.jsxs("div",{className:"markdown-panel-start-list",children:[p.jsx("h3",{className:"list-title",children:"Recently Closed from Dashboard"}),e.map(l=>p.jsxs("div",{className:"list-item",children:[p.jsx(J,{kind:"ghost",className:"title",onClick:()=>t(l),children:l.title}),p.jsx("button",{className:"btn-link icon",type:"button",onClick:()=>{this.handleDeleteButtonClick(l)},children:p.jsx(Ne,{icon:Zr})})]},l.id)),p.jsxs(Yo,{isOpen:i,toggle:this.handleDeleteModalClose,className:"modal-dialog-centered markdown-delete-modal",children:[p.jsx(Zo,{children:"Are you sure you want to permanently delete this note?"}),p.jsx(Qo,{children:"You can't undo this action."}),p.jsxs(To,{children:[p.jsx(J,{kind:"secondary",onClick:this.handleDeleteModalClose,children:"Cancel"}),p.jsx(J,{kind:"danger",onClick:()=>{this.handleDeleteMarkdown(a)},children:"Delete"})]})]})]})]})})}}hv(ss,"defaultProps",{closedMarkdowns:[],onOpen:()=>{},onCreate:()=>{},onDelete:()=>{}});function ui(n,e,t){return(e=mv(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function mv(n){var e=fv(n,"string");return typeof e=="symbol"?e:e+""}function fv(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class it{static getNewMarkdownTitle(e){for(var t="".concat(it.DEFAULT_TITLE),r=0;e.indexOf(t)>=0;)r+=1,t="".concat(it.DEFAULT_TITLE,"-").concat(r);return t}}ui(it,"DEFAULT_TITLE","Note");ui(it,"DEFAULT_CONTENT",`# Markdown Note
9
9
 
10
- This note can be edited using **markdown** for styling.`);ui(it,"getClosedMarkdowns",U(n=>n.filter(e=>e.component==="MarkdownPanel"&&e.props.panelState.content!==""&&e.props.panelState.content!==null).reverse()));function hr(n,e,t){return(e=gv(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function gv(n){var e=bv(n,"string");return typeof e=="symbol"?e:e+""}function bv(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Cv=E.lazy(()=>zr(()=>import("./MarkdownEditor-D53YrMF9.js"),__vite__mapDeps([18,1,2,3,8,4,5,9]),import.meta.url)),Rr=ee.module("MarkdownPanel");class di extends E.Component{constructor(e){super(e),hr(this,"markdownEditor",void 0),hr(this,"editor",void 0),hr(this,"getClosedMarkdowns",U(it.getClosedMarkdowns)),this.handleContainerDoubleClick=this.handleContainerDoubleClick.bind(this),this.handleCreateMarkdown=this.handleCreateMarkdown.bind(this),this.handleDeleteMarkdown=this.handleDeleteMarkdown.bind(this),this.handleOpenMarkdown=this.handleOpenMarkdown.bind(this),this.handleEditorInitialized=this.handleEditorInitialized.bind(this),this.handleEditorBlur=this.handleEditorBlur.bind(this),this.handleEditorResize=this.handleEditorResize.bind(this);var{panelState:t}=e,r=null;t!=null&&t.content!=null&&(t.content!==""?{content:r}=t:r=it.DEFAULT_CONTENT),this.state={isStartPageShown:r==null&&this.getClosedMarkdowns(e.closedPanels).length!==0,isEditing:!1,content:r,panelState:t},this.markdownEditor=null}setEditorPosition(e){R(this.markdownEditor);var{container:t}=this.markdownEditor;if(this.editor&&t!=null){var r,i,a=t.getBoundingClientRect().top,l=t.scrollTop,s=t.scrollHeight,o=(r=(i=this.editor.getModel())===null||i===void 0?void 0:i.getLineCount())!==null&&r!==void 0?r:0,u=Math.round((l+e-a)/s*o);u>o&&(u=o),this.editor.revealLine(u),this.editor.setPosition({lineNumber:u,column:1}),this.editor.focus()}}handleContainerDoubleClick(e){var{isEditing:t}=this.state,r=e.clientY;t||this.setState({isEditing:!0},()=>{this.setEditorPosition(r)})}handleEditorInitialized(e){Rr.debug("Markdown Editor Initialized..."),this.editor=e}handleCreateMarkdown(){Rr.debug("create markdown..."),this.setState({isStartPageShown:!1,content:"",isEditing:!0,panelState:{content:""}},()=>{this.editor!=null&&this.editor.focus!=null&&this.editor.focus()})}handleOpenMarkdown(e){Rr.debug("open markdown...",e);var{glContainer:t,glEventHub:r}=this.props,i=H.getComponentConfigFromContainer(t);r.emit(ke.REOPEN,e,i)}handleDeleteMarkdown(e){var{glEventHub:t}=this.props;t.emit(ke.DELETE,e)}handleEditorBlur(e){var t;Rr.debug("markdown content changed, saving...");var{isEditing:r}=this.state;if(!(!r||this.markdownEditor!=null&&this.markdownEditor.container!=null&&this.markdownEditor.container.contains(e.relatedTarget))){var i=(t=this.editor)===null||t===void 0?void 0:t.getValue();this.setState({content:i,isEditing:!1,panelState:{content:i}})}}handleEditorResize(){var{isEditing:e}=this.state;e&&this.editor&&this.editor.layout()}render(){var{glContainer:e,glEventHub:t,closedPanels:r}=this.props,{isEditing:i,isStartPageShown:a,content:l}=this.state,s=this.getClosedMarkdowns(r);return p.jsx(kt,{glContainer:e,glEventHub:t,className:"markdown-panel",componentPanel:this,onResize:this.handleEditorResize,onBlur:this.handleEditorBlur,isClonable:!0,isRenamable:!0,children:a?p.jsx(ss,{closedMarkdowns:s,onCreate:this.handleCreateMarkdown,onOpen:this.handleOpenMarkdown,onDelete:this.handleDeleteMarkdown}):p.jsx(ls,{isEditing:i,onDoubleClick:this.handleContainerDoubleClick,children:p.jsx(E.Suspense,{fallback:p.jsx(vt,{"data-testid":"markdown-panel-loading"}),children:p.jsx(Cv,{ref:o=>{this.markdownEditor=o},isEditing:i,content:l??it.DEFAULT_CONTENT,onEditorInitialized:this.handleEditorInitialized})})})})}}hr(di,"defaultProps",{panelState:null});hr(di,"COMPONENT","MarkdownPanel");var yv=(n,e)=>{var{localDashboardId:t}=e;return{closedPanels:Po(n,t)}},ur=wt(yv,null,null,{forwardRef:!0})(di);function Ea(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function Ir(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Ea(a,r,i,l,s,"next",o)}function s(o){Ea(a,r,i,l,s,"throw",o)}l(void 0)})}}function wa(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function _e(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?wa(Object(t),!0).forEach(function(r){Oe(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):wa(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Oe(n,e,t){return(e=Sv(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Sv(n){var e=Ev(n,"string");return typeof e=="symbol"?e:e+""}function Ev(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var wv=E.lazy(()=>zr(()=>import("./MarkdownNotebook-BkTy95vu.js"),__vite__mapDeps([19,1,2,3,4,5,8,9,20]),import.meta.url)),te=ee.module("NotebookPanel"),Ta=400;class Te extends E.Component{static handleError(e){Le.isCanceled(e)||te.error(e)}static unsavedNotebookCount(){return document.querySelectorAll(".".concat(Te.UNSAVED_INDICATOR_CLASS_NAME,".").concat(Te.UNSAVED_STATUS_CLASS_NAME)).length}static languageFromFileName(e){var t=Ve.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),Oe(this,"pending",void 0),Oe(this,"debouncedSavePanelState",void 0),Oe(this,"debouncedLoad",void 0),Oe(this,"notebook",void 0),Oe(this,"tabTitleElement",void 0),Oe(this,"tabInitOnce",void 0),Oe(this,"editor",void 0),Oe(this,"getSettings",U((c,v)=>_e(_e({},c),{},{minimap:{enabled:v}}))),Oe(this,"getOverflowActions",U((c,v,g)=>{var m=[{title:"Find",icon:ru,action:this.handleFind,group:He.groups.high,shortcut:ut.NOTEBOOK.FIND,order:10},{title:"Copy File",icon:nu,action:this.handleCopy,group:He.groups.medium,order:20},{title:"Rename File",icon:iu,action:this.handleShowRename,group:He.groups.medium,order:30},{title:"Delete File",icon:Zr,action:this.handleDelete,group:He.groups.medium,order:40},{title:"Show Minimap",icon:c?cn:void 0,action:this.handleMinimapChange,group:He.groups.low,shortcut:ut.NOTEBOOK.MINIMAP,order:20},{title:"Word Wrap",icon:v?cn:void 0,action:this.handleWordWrapChange,group:He.groups.low,shortcut:ut.NOTEBOOK.WORDWRAP,order:30}];return this.canFormat()&&(m.push({title:"Format Document",action:this.handleFormat,group:He.groups.low,order:10}),m.push({title:"Format on Save",icon:g?cn:void 0,action:this.handleFormatOnSaveChange,group:He.groups.low,order:15})),m})),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.handleDelete=this.handleDelete.bind(this),this.handleDeleteConfirm=this.handleDeleteConfirm.bind(this),this.handleDeleteCancel=this.handleDeleteCancel.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.handleFormatOnSaveChange=this.handleFormatOnSaveChange.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.handleFormat=this.handleFormat.bind(this),this.canFormat=this.canFormat.bind(this),this.getDropdownOverflowActions=this.getDropdownOverflowActions.bind(this),this.pending=new Hn,this.debouncedSavePanelState=Et(this.savePanelState.bind(this),Ta),this.debouncedLoad=Et(this.load.bind(this),Ta),this.notebook=null,this.tabTitleElement=null,this.tabInitOnce=!1;var{isDashboardActive:t,session:r,sessionLanguage:i,panelState:a}=e,l={value:"",language:"",wordWrap:"off"},s=null,{isPreview:o}=e;a!=null&&({fileMetadata:s=s,isPreview:o=o,settings:l=l}=a);var u=s!=null&&Ve.hasPath(s.itemName),d=u===!0&&l.value!=null||!u&&l.value!=null&&l.value.length>0,h=d?1:0;this.state={error:void 0,isDashboardActive:t,isLoading:!0,isLoaded:!1,isPreview:o,savedChangeCount:0,changeCount:h,fileMetadata:s,settings:l,session:r,sessionLanguage:i,panelState:{fileMetadata:s,settings:l},showCloseModal:!1,showDeleteModal:!1,showSaveAsModal:!1,scriptCode:"",formatOnSave:!1},te.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(oe.RENAME_FILE,this.handleRenameFile),t.on(ke.DROPPED,this.handlePanelDropped),e.on(oe.PROMOTE_FROM_PREVIEW,this.handlePreviewPromotion)}componentDidUpdate(e,t){var{isPreview:r,settings:i}=this.state,{wordWrap:a}=i,{notebookSettings:l}=this.props;r!==t.isPreview&&this.setPreviewStatus(),a!==t.settings.wordWrap&&(this.updateEditorWordWrap(),this.debouncedSavePanelState()),l.isMinimapEnabled!==e.notebookSettings.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(oe.RENAME_FILE,this.handleRenameFile),e.off(ke.DROPPED,this.handlePanelDropped),t.off(oe.PROMOTE_FROM_PREVIEW,this.handlePreviewPromotion),e.emit(oe.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==null?void 0: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);R(t);var r=t.querySelector(".lm_title");this.tabTitleElement=r,r==null||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){te.debug("Init content from file"),this.registerFileMetadata(e,r),this.load();return}if(t.value!=null){te.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(oe.CLOSE_FILE,{id:e})}registerFileMetadata(e,t){var{glEventHub:r,metadata:i}=this.props,{id:a}=i;r.emit(oe.REGISTER_FILE,a,e,t)}renameTab(e,t){var{glEventHub:r}=this.props;r.emit(oe.RENAME,e,t)}load(){var{fileMetadata:e,settings:t}=this.state;R(e);var{id:r}=e,{fileStorage:i}=this.props;this.pending.add(i.loadFile(r)).then(a=>{var l;te.debug("Loaded file",a);var{filename:s}=a,{itemName:o}=this.state;if(s!==o){var{metadata:u}=this.props,{id:d}=u;this.renameTab(d,Ve.getBaseName(s))}var h=_e(_e({},t),{},{language:(l=Te.languageFromFileName(s))!==null&&l!==void 0?l:""});t.value==null&&(h.value=a.content),t.wordWrap===void 0&&(t.wordWrap="off"),this.setState({fileMetadata:{id:s,itemName:s},settings:h}),this.debouncedSavePanelState()}).then(this.handleLoadSuccess).catch(this.handleLoadError)}save(){var{fileMetadata:e}=this.state;if(e&&Ve.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){te.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;te.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:l}=e,s=this.getNotebookValue(),o=t!==r?s:void 0,u=_e(_e({},l),{},{value:s}),d=_e(_e({},l),{},{value:o}),h={settings:d,fileMetadata:i,isPreview:a};return te.debug("Saving panel state",h),{settings:u,panelState:h}})}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(oe.CLOSE_FILE,{id:e,itemName:e},{force:!0}),this.focus()}handleCopy(){var e=this;return Ir(function*(){var{fileStorage:t,glEventHub:r,session:i}=e.props,{fileMetadata:a,settings:l}=e.state;R(a);var{language:s}=l,{itemName:o}=a,u=yield Ve.getUniqueCopyFileName(t,o);te.debug("handleCopy",a,o,u),yield t.copyFile(o,u);var d={id:u,itemName:u},h={value:null,language:s};r.emit(oe.SELECT_NOTEBOOK,i,s,h,d,!0)})()}handleDelete(){te.debug("handleDelete, pending confirmation"),this.setState({showDeleteModal:!0})}handleDeleteConfirm(){var e=this;return Ir(function*(){var{fileStorage:t,glContainer:r,glEventHub:i}=e.props,{fileMetadata:a}=e.state;te.debug("handleDeleteConfirm",a==null?void 0:a.itemName),e.setState({showDeleteModal:!1}),a&&(Ve.hasPath(a.itemName)&&(yield Ve.fileExists(t,a.itemName))?(i.emit(oe.CLOSE_FILE,a,{force:!0}),t.deleteFile(a.itemName)):r.close({force:!0}))})()}handleDeleteCancel(){this.setState({showDeleteModal:!1})}handleEditorInitialized(e){this.editor=e}handleEditorWillDestroy(){this.editor=void 0}handleEditorChange(e){te.debug2("handleEditorChanged",e),this.removePreviewStatus(),this.setState(t=>{var{changeCount:r,savedChangeCount:i}=t,{isUndoing:a,isRedoing:l}=e;return a?{changeCount:r-1,savedChangeCount:i}:!l&&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{notebookSettings:e}=this.props;this.editor.updateOptions({minimap:{enabled:e.isMinimapEnabled}})}}handleMinimapChange(){var e,{notebookSettings:t,updateNotebookSettings:r}=this.props,i={isMinimapEnabled:!((e=t.isMinimapEnabled)!==null&&e!==void 0&&e)};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:_e(_e({},t),{},{wordWrap:r})}})}handleFormatOnSaveChange(){var e,{notebookSettings:t,updateNotebookSettings:r}=this.props,i={formatOnSave:!((e=t.formatOnSave)!==null&&e!==void 0&&e)};r(i)}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 l="/".concat(a.substring(t.length)).replace(/%20/g," ");if(l==="/"){te.debug("Ignoring invalid notebook link",l);return}te.debug("Notebook link clicked, opening",l);var{glEventHub:s}=this.props,o={value:null,language:i},u={id:l,itemName:l};s.emit(oe.SELECT_NOTEBOOK,r,i,o,u)}}handleLoadSuccess(){this.setState({error:void 0,isLoaded:!0,isLoading:!1})}handleLoadError(e){var t=e;Le.isCanceled(t)||(Le.isTimedOut(t)&&(t=new Error("File not found.")),te.error(t),this.setState({error:t,isLoading:!1}))}handleSave(){var e=this;return Ir(function*(){te.debug("handleSave");var{notebookSettings:t}=e.props,{formatOnSave:r=!1}=t;r&&(yield e.handleFormat()),e.save()})()}handleSaveSuccess(e){var t,{fileStorage:r}=this.props,i={id:e.filename,itemName:e.filename},a=(t=Te.languageFromFileName(e.filename))!==null&&t!==void 0?t:"";this.setState(l=>{var{fileMetadata:s}=l,o=_e(_e({},l.settings),{},{language:a});return te.debug("handleSaveSuccess",i,s,o),s&&Ve.hasPath(s.itemName)&&s.itemName!==i.itemName&&(te.debug("handleSaveSuccess deleting old file",s.itemName),r.deleteFile(s.itemName).catch(Te.handleError)),{fileMetadata:i,settings:o,isPreview:!1}}),this.debouncedSavePanelState(),this.registerFileMetadata(i,!1)}handleSaveError(e){Le.isCanceled(e)||(this.setState({savedChangeCount:0}),te.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),te.debug("handleSaveAsSubmit",e);var{fileMetadata:i}=this.state;if(i){var{itemName:a}=i,l=(t=this.getNotebookValue())!==null&&t!==void 0?t:"";if(this.setState({showSaveAsModal:!1}),Ve.getBaseName(a)!==Ve.getBaseName(e)){var{metadata:s}=this.props,{id:o}=s;this.renameTab(o,Ve.getBaseName(e))}this.saveContent(e,l)}}canFormat(){var e;return((e=this.notebook)===null||e===void 0?void 0:e.editor)!=null?dt.canFormat(this.notebook.editor):!1}handleFormat(){var e=this;return Ir(function*(){var t;((t=e.notebook)===null||t===void 0?void 0:t.editor)!=null&&(yield dt.formatDocument(e.notebook.editor))})()}handleRenameFile(e,t,r){var{fileMetadata:i,panelState:a}=this.state,{glContainer:l}=this.props;if((i==null?void 0:i.itemName)==="/".concat(t)&&r&&JSON.stringify(a)!==JSON.stringify(r)){l.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){te.error("Editor is not initialized.");return}this.runCommand((e=this.notebook.getValue())!==null&&e!==void 0?e:void 0)}handleRunSelected(){if(!this.notebook){te.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;te.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){te.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];te.debug("handleTabFocus",...t);var{glContainer:i}=this.props;this.setState({isDashboardActive:!0}),this.notebook&&!i.isHidden&&this.notebook.updateDimensions()}handleTabBlur(){te.debug("handleTabBlur"),this.setState({isDashboardActive:!1})}handleTabClick(e){te.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==null?void 0: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:l,settings:s}=this.state,o=_e(_e({},s),{},{language:t,value:r}),u={id:null,itemName:e};te.debug("handleCreateNotebook",a,l,o,u),i.emit(oe.CREATE_NOTEBOOK,a,l,o,u)}runCommand(e){if(e===void 0||e===""){te.debug("Ignoring empty command.");return}this.removePreviewStatus();var{glEventHub:t}=this.props;t.emit(Vr.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{notebookSettings:e}=this.props,{isMinimapEnabled:t,formatOnSave:r}=e,{settings:i}=this.state;return this.getOverflowActions(t??!1,this.getSettings(i,t??!1).wordWrap==="on",r??!1)}render(){var e,t,r,{fileStorage:i,glContainer:a,glContainer:{tab:l},glEventHub:s,notebookSettings:o}=this.props,{changeCount:u,savedChangeCount:d,error:h,isDashboardActive:c,isLoaded:v,isLoading:g,isPreview:m,fileMetadata:f,session:b,sessionLanguage:y,settings:C,showCloseModal:T,showDeleteModal:w,showSaveAsModal:O}=this.state,D=c&&!a.isHidden&&!m,N=(e=f==null?void 0:f.itemName)!==null&&e!==void 0?e:Te.DEFAULT_NAME,M=N.endsWith(".md"),F=(f==null?void 0:f.id)!=null,k=this.getSettings(C,(t=o.isMinimapEnabled)!==null&&t!==void 0?t:!1),L=b!=null,V=y===k.language,X=!v||!L||!V,Y=!v,Z=[{action:this.handleSave,shortcut:Tn.SAVE},{action:this.handleMinimapChange,shortcut:ut.NOTEBOOK.MINIMAP},{action:this.handleWordWrapChange,shortcut:ut.NOTEBOOK.WORDWRAP}],se=kn.getDisabledRunTooltip(L,V,"Notebook extension","Run"),re=kn.getDisabledRunTooltip(L,V,"Notebook extension","Run Selected"),Ce=[{title:F?"Rename":"Save As…",order:10,group:He.groups.high,action:this.handleShowRename},{title:"Copy File",action:this.handleCopy,group:He.groups.high,order:20}],ge=l==null?void 0:l.element.find(".lm_title_before").get(0);return p.jsxs(p.Fragment,{children:[ge!=null&&eo.createPortal(p.jsx("span",{className:Me(Te.UNSAVED_INDICATOR_CLASS_NAME,{[Te.UNSAVED_STATUS_CLASS_NAME]:u!==d})}),ge),p.jsxs(kt,{className:"notebook-container",componentPanel:this,glContainer:a,glEventHub:s,onTab:this.handleTab,onResize:this.handleResize,onShow:this.handleShow,onTabClicked:this.handleTabClick,onTabFocus:this.handleTabFocus,onTabBlur:this.handleTabBlur,onSessionOpen:this.handleSessionOpened,onSessionClose:this.handleSessionClosed,additionalActions:Ce,renderTabTooltip:()=>N,children:[!M&&p.jsxs(p.Fragment,{children:[p.jsxs("div",{className:"notebook-toolbar",children:[p.jsxs("span",{children:[p.jsx(J,{kind:"ghost",className:"btn-play",onClick:this.handleRunAll,disabled:X,icon:p.jsx(Ne,{icon:Jo,transform:"grow-4"}),tooltip:"Run ".concat(ut.NOTEBOOK.RUN.getDisplayText()),"aria-label":"Run"}),se!=null&&p.jsx(Pn,{children:se})]}),p.jsxs("span",{children:[p.jsx(J,{kind:"ghost",className:"btn-play",onClick:this.handleRunSelected,disabled:X,icon:p.jsx(Ne,{icon:eu,transform:"grow-4"}),tooltip:"Run Selected ".concat(ut.NOTEBOOK.RUN_SELECTED.getDisplayText()),"aria-label":"Run Selected"}),re!=null&&p.jsx(Pn,{children:re})]}),p.jsx(J,{kind:"ghost",className:"mr-auto",disabled:Y,onClick:this.handleSave,icon:Tl,tooltip:"Save ".concat(Tn.SAVE.getDisplayText()),"aria-label":"Save"}),p.jsx(J,{kind:"ghost",className:"btn-overflow",disabled:Y,icon:tu,tooltip:"More Actions...",onClick:()=>{},children:p.jsx(ml,{actions:this.getDropdownOverflowActions,popperOptions:Te.POPPER_OPTIONS})})]}),p.jsx(Hl,{isLoaded:v,isLoading:g,error:h,onChange:this.handleEditorChange,onRunCommand:this.handleRunCommand,session:b,sessionLanguage:y,onEditorInitialized:this.handleEditorInitialized,onEditorWillDestroy:this.handleEditorWillDestroy,settings:k,focusOnMount:D,ref:A=>{this.notebook=A}})]}),M&&p.jsx(E.Suspense,{fallback:p.jsx(vt,{"data-testid":"notebook-panel-loading"}),children:p.jsx(wv,{content:(r=k.value)!==null&&r!==void 0?r:"",onLinkClick:this.handleLinkClick,onRunCode:this.handleRunCommand,transformImageUri:this.handleTransformLinkUri,transformLinkUri:this.handleTransformLinkUri})}),p.jsx(Fo,{isOpen:O,type:"file",defaultValue:N,title:F?"Rename":"Save file as",onSubmit:this.handleSaveAsSubmit,onCancel:this.handleSaveAsCancel,notifyOnExtensionChange:!0,storage:i}),p.jsx(Si,{isOpen:w,headerText:'Are you sure you want to delete "'.concat(N,'"?'),bodyText:"You cannot undo this action.",onCancel:this.handleDeleteCancel,onConfirm:this.handleDeleteConfirm,confirmButtonText:"Delete"}),p.jsx(Si,{isOpen:T,headerText:"Do you want to save the changes you made to ".concat(N,"?"),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"}),p.jsx(He,{actions:Z})]})]})}}Oe(Te,"COMPONENT","NotebookPanel");Oe(Te,"POPPER_OPTIONS",{placement:"bottom-end"});Oe(Te,"DEFAULT_NAME","Untitled");Oe(Te,"UNSAVED_INDICATOR_CLASS_NAME","editor-unsaved-indicator");Oe(Te,"UNSAVED_STATUS_CLASS_NAME","is-unsaved");Oe(Te,"defaultProps",{isDashboardActive:!0,isPreview:!1,session:null,sessionLanguage:null,notebookSettings:{isMinimapEnabled:!0}});var Tv=(n,e)=>{var t=Oo(n),r=vl(n),i=pl(n,e.localDashboardId),{session:a,config:l}=i??{},{type:s}=l??{};return{fileStorage:t,notebookSettings:r,session:a,sessionLanguage:s}},St=wt(Tv,{updateNotebookSettings:Do},null,{forwardRef:!0})(Te);function os(n){var{onClick:e}=n,t=E.useRef(null),r=E.useCallback(i=>{var a;(a=t.current)===null||a===void 0||a.blur(),e(i)},[e]);return p.jsxs(J,{ref:t,kind:"primary",className:"btn-pandas",onClick:r,tooltip:"Click to refresh pandas dataframe, updates do not occur automatically.",children:["pandas dataframe",p.jsxs("span",{children:[p.jsx(Ne,{icon:Dl,transform:"shrink-1",className:"mr-1"}),"Reload"]})]})}function Pa(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 Da(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Pa(Object(t),!0).forEach(function(r){fr(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Pa(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Oa(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function Pv(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Oa(a,r,i,l,s,"next",o)}function s(o){Oa(a,r,i,l,s,"throw",o)}l(void 0)})}}function fr(n,e,t){return(e=Dv(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Dv(n){var e=Ov(n,"string");return typeof e=="symbol"?e:e+""}function Ov(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class ln extends E.Component{constructor(e){super(e),fr(this,"irisGridRef",void 0),fr(this,"model",null),this.irisGridRef=Re.createRef(),this.handleDisconnect=this.handleDisconnect.bind(this),this.handleReload=this.handleReload.bind(this),this.handleGridStateChange=this.handleGridStateChange.bind(this),this.handlePanelStateUpdate=this.handlePanelStateUpdate.bind(this);var{panelState:t}=e;this.state={shouldFocusGrid:!1,panelState:t,makeModel:this.wrapMakeModel(e.makeModel)}}componentDidUpdate(e){var{makeModel:t}=e,{makeModel:r}=this.props;t!==r&&this.setState({makeModel:this.wrapMakeModel(r)})}componentWillUnmount(){this.model!=null&&this.stopListening(this.model)}wrapMakeModel(e){var t=this;return Pv(function*(){var r=yield e();return t.model!=null&&t.stopListening(t.model),t.model=r,t.startListening(r),r})}startListening(e){e.addEventListener(W.EVENT.DISCONNECT,this.handleDisconnect)}stopListening(e){e.removeEventListener(W.EVENT.DISCONNECT,this.handleDisconnect)}handleDisconnect(){var e;(e=this.irisGridRef.current)===null||e===void 0||e.setState({model:void 0})}handleReload(){var e;(e=this.irisGridRef.current)===null||e===void 0||e.initModel(),this.setState({shouldFocusGrid:!0})}handleGridStateChange(){var e,{shouldFocusGrid:t}=this.state;t&&(e=this.irisGridRef.current)!==null&&e!==void 0&&(e=e.irisGrid)!==null&&e!==void 0&&(e=e.current)!==null&&e!==void 0&&e.grid&&(this.irisGridRef.current.irisGrid.current.grid.focus(),this.setState({shouldFocusGrid:!1}))}handlePanelStateUpdate(e){this.setState({panelState:e})}render(){var{makeModel:e}=this.state;return p.jsx(si,Da(Da({ref:this.irisGridRef,onStateChange:this.handleGridStateChange,onPanelStateUpdate:this.handlePanelStateUpdate},this.props),{},{makeModel:e,children:p.jsx(os,{onClick:this.handleReload})}))}}fr(ln,"defaultProps",{panelState:null});fr(ln,"COMPONENT","PandasPanel");function Fa(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function Na(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Fa(a,r,i,l,s,"next",o)}function s(o){Fa(a,r,i,l,s,"throw",o)}l(void 0)})}}function Ma(n,e,t){return(e=Fv(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Fv(n){var e=Nv(n,"string");return typeof e=="symbol"?e:e+""}function Nv(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Mv{constructor(e){Ma(this,"items",void 0),Ma(this,"onUpdateCallback",void 0),this.items=e}setSearch(e){}setExpanded(e,t){if(e.charAt(e.length-1)==="/")for(var r=0;r<this.items.length;r+=1){var i=this.items[r];Ei(i)&&("".concat(i.filename,"/")===e||i.filename===e)&&(i.isExpanded=t)}return Promise.resolve()}collapseAll(){for(var e=0;e<this.items.length;e+=1){var t=this.items[e];Ei(t)&&(t.isExpanded=!1)}return Promise.resolve()}getViewportData(){return Promise.resolve({items:this.items,offset:0})}getSnapshot(e){return Na(function*(){throw new Error("Method not implemented.")})()}setViewport(e){var t=this;return Na(function*(){var r,i=yield t.getViewportData();(r=t.onUpdateCallback)===null||r===void 0||r.call(t,i)})()}setFilters(e){}setSorts(e){}setReversed(e){}close(){}onUpdate(e){return this.onUpdateCallback=e,jest.fn()}get size(){return this.items.length}}function Ra(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function nr(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Ra(a,r,i,l,s,"next",o)}function s(o){Ra(a,r,i,l,s,"throw",o)}l(void 0)})}}function Rv(n,e,t){return(e=Iv(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Iv(n){var e=kv(n,"string");return typeof e=="symbol"?e:e+""}function kv(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Lv{constructor(e){Rv(this,"items",void 0),this.items=e}getTable(){var e=this;return nr(function*(){return new Mv(e.items)})()}saveFile(e){throw new Error("Method not implemented.")}loadFile(e){throw new Error("Method not implemented.")}copyFile(e,t){return nr(function*(){throw new Error("Method not implemented.")})()}deleteFile(e){var t=this;return nr(function*(){t.items=t.items.filter(r=>r.filename!==e)})()}moveFile(e,t){var r=this;return nr(function*(){for(var i=0;i<r.items.length;i+=1)if(r.items[i].filename===e){r.items[i].filename=t,r.items[i].basename=Ve.getBaseName(t),r.items[i].id=t;break}})()}info(e){var t=this;return nr(function*(){var r=t.items.filter(a=>a.filename===e);if(r.length===0)throw new No;if(r.length>1)throw new Error("More than one matching file found");var i=r[0];return{filename:i.filename,basename:i.basename,id:i.filename,type:i.type}})()}createDirectory(e){throw new Error("Method not implemented.")}}var Av=kt,xv=kt;function Ia(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 Wr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ia(Object(t),!0).forEach(function(r){jv(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ia(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function jv(n,e,t){return(e=_v(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function _v(n){var e=Vv(n,"string");return typeof e=="symbol"?e:e+""}function Vv(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function ka(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function us(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){ka(a,r,i,l,s,"next",o)}function s(o){ka(a,r,i,l,s,"throw",o)}l(void 0)})}}function $v(n,e,t,r){return xn.apply(this,arguments)}function xn(){return xn=us(function*(n,e,t,r){var i={},a="",l={};if(_t(e)&&(i=e.settings,a=e.table,l=e.tableSettings),r!=null&&(r.tableSettings!=null&&(l=r.tableSettings),r.table!=null&&(a=r.table),r.settings!=null&&(i=Wr(Wr({},i),r.settings))),a!=null&&a!==""){var s=yield t();return new $(n).applyTableSettings(s,l,fl(Nl.getState())),Bt.makeModelFromSettings(n,i,s)}var o=yield t();return Bt.makeModel(n,i,o)}),xn.apply(this,arguments)}var hi=E.forwardRef((n,e)=>{var t=ts(n)?n.panelState:void 0,{fetch:r,metadata:i,localDashboardId:a}=n;R(i);var[l,s]=yu(i),o=E.useCallback(us(function*(){if(s!=null)throw s;return l==null?new Promise(()=>{}):$v(l,i,r,t)}),[l,s,i,r,t]);return p.jsx(li,Wr(Wr({ref:e},n),{},{metadata:i,localDashboardId:a,makeModel:o}))});hi.displayName="ChartPanelPlugin";function La(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function Hv(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){La(a,r,i,l,s,"next",o)}function s(o){La(a,r,i,l,s,"throw",o)}l(void 0)})}}function ds(n){var e=Yr(),[t,r]=E.useState(),{fetch:i}=n;return E.useEffect(()=>{var a=!1;function l(){return s.apply(this,arguments)}function s(){return s=Hv(function*(){var o=yield i(),u=yield Bt.makeModel(e,void 0,o);a||r(u)}),s.apply(this,arguments)}return l(),()=>{a=!0}},[e,i]),t?p.jsx(Al,{model:t}):null}var Gv={name:"ChartPanel",title:"Chart",type:Dt.WIDGET_PLUGIN,component:ds,panelComponent:hi,supportedTypes:"Figure",icon:au};function Aa(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function Bv(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Aa(a,r,i,l,s,"next",o)}function s(o){Aa(a,r,i,l,s,"throw",o)}l(void 0)})}}function hs(n){Yt(n);var{id:e,layout:t}=n,r=E.useCallback(i=>{var{metadata:a,panelId:l=Ue(),table:s}=i,{settings:o}=a,u=function(){var v=Bv(function*(){return s});return function(){return v.apply(this,arguments)}}(),d=I.titleFromSettings(o),h={type:"react-component",component:li.COMPONENT,props:{localDashboardId:e,id:l,metadata:a,fetch:u},title:d,id:l},{root:c}=t;H.openComponent({root:c,config:h})},[e,t]);return we(t.eventHub,Fe.CREATE_CHART,r),null}var Uv={name:"ChartBuilderPlugin",type:Dt.DASHBOARD_PLUGIN,component:hs};function cs(){var{python:{linter:n={}}={}}=$r(vl),{isEnabled:e=!1,config:t}=n;E.useEffect(function(){wn.isRuffEnabled=e,wn.setRuffSettings(t)},[e,t])}function xa(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 ja(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?xa(Object(t),!0).forEach(function(r){Wv(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):xa(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Wv(n,e,t){return(e=zv(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function zv(n){var e=qv(n,"string");return typeof e=="symbol"?e:e+""}function qv(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var he=ee.module("ConsolePlugin");function _a(n){return n.notebook!==void 0}function Kv(n){Yt(n)}function Xv(n){Kv(n);var{id:e,hydrateConsole:t,layout:r,panelManager:i,registerComponent:a,notebooksUrl:l}=n,s=E.useRef(0),[o,u]=E.useState(new Map),[d,h]=E.useState(new Map);cs();var c=sl(),v=E.useCallback(()=>i.getLastUsedPanelOfType(Lr),[i]),g=E.useCallback((A,x)=>{u(_=>new Map(_.set(A,x)))},[u]),m=E.useCallback(A=>{u(x=>(x.delete(A),new Map(x)))},[u]),f=E.useCallback((A,x)=>{h(_=>new Map(_.set(A,x)))},[h]),b=E.useCallback(A=>{h(x=>(x.delete(A),new Map(x)))},[h]),y=E.useCallback(function(A){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,_=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,B=A&&A.trim();if(!B)he.info("Ignoring empty code");else{var z=v();if(!z||!(z instanceof Lr.WrappedComponent)){he.error("Console panel not found");return}he.debug("Send command: ",A,x,_),z.addCommand(A,x,_)}},[v]),C=E.useCallback(A=>{c(Zl(e,A))},[c,e]),T=E.useCallback(A=>{var{language:x}=A,_=x==="python"?"py":x,B=null;return _==null?(he.debug("No extension for language",x),B="Untitled-".concat(s.current)):B="Untitled-".concat(s.current,".").concat(_),s.current+=1,B},[]),w=E.useCallback(function(A){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,{id:_}=A;if(_!=null&&o.has(_))return o.get(_);if(_!=null&&d.has(_))return d.get(_);if(x)return Ue()},[o,d]),O=E.useCallback((A,x)=>{H.renameComponent(r.root,{id:A},x)},[r.root]),D=E.useCallback((A,x)=>{he.debug("Rename file panel",A,x);var _;if(o.has(A)&&(_=o.get(A),m(A),_!=null&&g(x,_)),d.has(A)&&(_=d.get(A),b(A),_!=null&&f(x,_)),_===void 0){he.debug2("File ".concat(A," isn't open, no need to rename the tab"));return}O(_,Ve.getBaseName(x))},[o,d,O,g,f,m,b]),N=E.useCallback(A=>{var x=w(A,!1);if(x==null){he.error("Could not find panel id for file metadata",A);return}H.activateTab(r.root,{id:x})},[w,r.root]),M=E.useCallback((A,x,_)=>{if(he.debug("registerFilePanel",A,x,_),x==null||x.id==null){he.debug("Ignore empty file id",x);return}var{id:B}=x;if(_){f(B,A);return}if(o.has(B)){var z=o.get(B);if(A===z){he.debug("Update tab title for file ".concat(B));var{itemName:be}=x;D(B,be)}else he.error("File ".concat(B," already associated with a different tab ").concat(z));return}g(B,A),d.has(B)&&b(B)},[o,d,D,g,f,b]),F=E.useCallback((A,x)=>{if(he.debug("unregisterFileTab",A,x),A==null||A.id==null){he.debug("Ignore empty file id",A);return}var{id:_}=A;if(x){b(_);return}m(_)},[m,b]),k=E.useCallback((A,x)=>{he.debug("closeFilePanel",A);var{id:_}=A;if(_==null){he.warn("File ID is null, ignore close event");return}var B=null,z=!1;if(o.has(_))B=o.get(_);else if(d.has(_))B=d.get(_),z=!0;else{he.debug("File ".concat(_," isn't open, ignore close event"));return}F(A,z),H.closeComponent(r.root,{id:B},x)},[r.root,o,d,F]),L=E.useCallback(A=>{var{itemName:x}=A;return Ve.getBaseName(x)},[]),V=E.useCallback(A=>{var{id:x}=A;return he.debug("fileIsOpen",A,x,o),x!=null&&o.has(x)},[o]),X=E.useCallback(A=>{var{id:x}=A;return he.debug("fileIsOpenAsPreview",A,x,d),x!=null&&d.has(x)},[d]),Y=E.useCallback(A=>{if(A!=null){var x=i.getOpenedPanelById(A);x&&_a(x)&&x.focus()}},[i]),Z=E.useCallback(A=>{var{id:x,settings:_,fileMetadata:B,session:z,sessionLanguage:be,isPreview:ye=!1}=A,Ae={settings:_,fileMetadata:B},Xe=L(B);return{type:"react-component",component:St.COMPONENT,isFocusOnShow:!1,props:{localDashboardId:e,metadata:{id:x},session:z,sessionLanguage:be,panelState:Ae,isPreview:ye,notebooksUrl:l},title:Xe,id:x}},[L,e,l]),se=E.useCallback(function(A,x,_){var B=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{id:null,itemName:T(_)},z=w(B);if(V(B)&&z!=null){he.debug("File is already open, focus panel"),N(B),Y(z);return}if(z==null){he.error("Panel ID for file metadata is null");return}var be=H.getStackForComponentTypes(r.root,[St.COMPONENT]),ye=Z({id:z,settings:_,fileMetadata:B,session:A,sessionLanguage:x});he.debug("createNotebook",ye,o),H.openComponentInStack(be,ye)},[V,Y,T,w,r.root,Z,o,N]),re=E.useCallback(function(A,x,_,B){var z=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;he.debug("selectNotebook",B,z);var be=V(B),ye=X(B),[Ae]=[...d.values()],Xe=!z,Ye=Xe&&Ae?Ae:w(B);if(Ye==null||Ye==="")throw new Error("Unable to retrieve or create panelId for metadata: ".concat(JSON.stringify(B)));if(be||ye)N(B);else{var on=H.getStackForComponentTypes(r.root,[St.COMPONENT]),un=Z({id:Ye,settings:_,fileMetadata:B,session:A,sessionLanguage:x,isPreview:Xe});H.openComponentInStack(on,un)}if(ye&&z){var Qt=B.id,dn=H.getStackForConfig(r.root,{component:St.COMPONENT,id:Ye}),Jt=H.getContentItemInStack(dn,{component:St.COMPONENT,id:Ye});Qt!=null&&Jt&&Mo(Jt)&&(Jt.container.emit(oe.PROMOTE_FROM_PREVIEW),b(Qt),g(Qt,Ye))}z&&Y(Ye)},[N,V,X,Y,w,r.root,Z,d,b,g]),Ce=E.useCallback(function(A,x){var _=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},B=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,z=i.getLastUsedPanelOfType(St);z&&_a(z)?_!=null&&_.value!=null&&z.notebook!=null&&z.notebook.append(_.value):B&&se(A,x,_)},[se,i]),ge=E.useCallback((A,x)=>Ro.hydrate(ja(ja({},A),{},{notebooksUrl:l}),x),[l]);return er(a,Lr,t),er(a,gl),er(a,bl),er(a,Cl),er(a,St,ge),we(r.eventHub,Vr.SEND_COMMAND,y),we(r.eventHub,Vr.SETTINGS_CHANGED,C),we(r.eventHub,oe.CLOSE_FILE,k),we(r.eventHub,oe.CREATE_NOTEBOOK,se),we(r.eventHub,oe.SELECT_NOTEBOOK,re),we(r.eventHub,oe.RENAME,O),we(r.eventHub,oe.RENAME_FILE,D),we(r.eventHub,oe.SEND_TO_NOTEBOOK,Ce),we(r.eventHub,oe.REGISTER_FILE,M),we(r.eventHub,oe.UNREGISTER_FILE,F),null}var ir=ee.module("FilterPlugin");function vs(n){Yt(n);var{id:e,layout:t,registerComponent:r}=n,i=sl(),[a]=E.useState(()=>new Map),[l]=E.useState(()=>new Map),[s]=E.useState(()=>new Map),o=E.useCallback(()=>{var f=Array.from(a.values()).flat().sort((C,T)=>{var w=Ze.toLower(C.name),O=Ze.toLower(T.name);if(w!==O)return w>O?1:-1;var D=Ze.toLower(C.type),N=Ze.toLower(T.type);return D!==N?D>N?1:-1:0}).reduce((C,T)=>((C.length===0||Ze.toLower(C[C.length-1].name)!==Ze.toLower(T.name)||Ze.toLower(C[C.length-1].type)!==Ze.toLower(T.type))&&C.push(T),C),[]),b=Array.from(l.values()).flat().sort((C,T)=>C.timestamp-T.timestamp),y=new Map(s);ir.debug("sendUpdate",{columns:f,filters:b,tableMap:y}),i(Pt(e,{columns:f,filters:b,tableMap:y}))},[i,e,a,l,s]),u=E.useCallback((f,b)=>{ir.debug2("handleColumnsChanged",f,b),b==null?a.delete(f):a.set(f,[].concat(b)),o()},[a,o]),d=E.useCallback((f,b)=>{ir.debug2("handleFiltersChanged",f,b),b==null?l.delete(f):l.set(f,[].concat(b??[])),o()},[l,o]),h=E.useCallback((f,b)=>{ir.debug2("handleTableChanged",f,b),b==null?s.delete(f):s.set(f,b),o()},[s,o]),c=E.useCallback(f=>{ir.debug2("handlePanelUnmount",f);var b=H.getIdFromPanel(f);b!=null&&(a.delete(b),s.delete(b),l.delete(b)),o()},[a,l,s,o]),v=E.useCallback(f=>{var{title:b="DropdownFilter",metadata:y={},panelState:C=null,id:T=Ue(),focusElement:w=H.DEFAULT_FOCUS_SELECTOR,createNewStack:O=!1,dragEvent:D=void 0}=f,N={type:"react-component",component:Vt.COMPONENT,props:{id:T,metadata:y,panelState:C,localDashboardId:e},title:b,id:T},{root:M}=t;H.openComponent({root:M,config:N,focusElement:w,createNewStack:O,dragEvent:D})},[t,e]),g=E.useCallback(f=>{var{title:b="InputFilter",metadata:y={},panelState:C=null,id:T=Ue(),focusElement:w=H.DEFAULT_FOCUS_SELECTOR,createNewStack:O=!1,dragEvent:D=void 0}=f,N={type:"react-component",component:$t.COMPONENT,props:{id:T,metadata:y,panelState:C,localDashboardId:e},title:b,id:T},{root:M}=t;H.openComponent({root:M,config:N,focusElement:w,createNewStack:O,dragEvent:D})},[t,e]),m=E.useCallback(f=>{var{title:b="FilterSets",metadata:y={},panelState:C=null,id:T=Ue(),focusElement:w=H.DEFAULT_FOCUS_SELECTOR,createNewStack:O=!1,dragEvent:D=void 0}=f,N={type:"react-component",component:Ar.COMPONENT,props:{id:T,metadata:y,panelState:C,localDashboardId:e},title:b,id:T},{root:M}=t;H.openComponent({root:M,config:N,focusElement:w,createNewStack:O,dragEvent:D})},[t,e]);return E.useEffect(function(){var b=[r(Vt.COMPONENT,Vt),r($t.COMPONENT,$t),r(Ar.COMPONENT,Ar)];return()=>{b.forEach(y=>y())}},[r]),Cc(t.eventHub,u),Sc(t.eventHub,d),yc(t.eventHub,h),we(t.eventHub,ht.OPEN_DROPDOWN,v),we(t.eventHub,ht.OPEN_INPUT,g),we(t.eventHub,ht.OPEN_FILTER_SET_MANAGER,m),we(t.eventHub,ke.UNMOUNT,c),null}var Yv={name:"FilterPlugin",type:Dt.DASHBOARD_PLUGIN,component:vs},Zv=ee.module("@deephaven/app-utils/useTablePlugin");function ci(){var n=yl(),e=E.useCallback(t=>{var r=n.get(t);if(r!=null){if(Io(r))return r.component;if(ko(r))return r.TablePlugin}var i="Unable to find table plugin ".concat(t,".");throw Zv.error(i),new Error(i)},[n]);return e}function Va(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function Qv(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Va(a,r,i,l,s,"next",o)}function s(o){Va(a,r,i,l,s,"throw",o)}l(void 0)})}}function ps(n,e,t){var r=Yr(),i=ci(),a=E.useMemo(()=>({loadPlugin:i,localDashboardId:e,makeModel:function(){var l=Qv(function*(){var o=yield n();return Gl.makeModel(r,o)});function s(){return l.apply(this,arguments)}return s}(),metadata:t}),[r,n,e,i,t]);return a}function $a(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Ha(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?$a(Object(t),!0).forEach(function(r){Jv(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):$a(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Jv(n,e,t){return(e=ep(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ep(n){var e=tp(n,"string");return typeof e=="symbol"?e:e+""}function tp(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var vi=E.forwardRef((n,e)=>{var{localDashboardId:t,fetch:r,metadata:i}=n,a=ps(r,t,i);return p.jsx(si,Ha(Ha({ref:e},n),a))});vi.displayName="GridPanelPlugin";function Ga(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function yn(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Ga(a,r,i,l,s,"next",o)}function s(o){Ga(a,r,i,l,s,"throw",o)}l(void 0)})}}function ms(n){var e=Yr(),[t,r]=E.useState(),[i,a]=E.useState(),[l,s]=E.useState(!0),o=E.useCallback(yn(function*(){var h=yield n();return Gl.makeModel(e,h)}),[e,n]),u=E.useCallback(yn(function*(){s(!0),a(void 0);try{var h=yield o();r(h),s(!1)}catch(c){a(c),s(!1)}}),[o]);E.useEffect(()=>{var h=!1;function c(){return v.apply(this,arguments)}function v(){return v=yn(function*(){s(!0),a(void 0);try{var g=yield o();h||(r(g),s(!1))}catch(m){h||(a(m),s(!1))}}),v.apply(this,arguments)}return c(),()=>{h=!0}},[o]),E.useEffect(function(){if(!t)return;function c(){a(new Error("Table disconnected")),r(void 0),s(!1)}return t.addEventListener(W.EVENT.DISCONNECT,c),()=>{t.removeEventListener(W.EVENT.DISCONNECT,c)}},[t]);var d=E.useMemo(()=>{if(l)return{reload:u,status:"loading"};if(i!=null)return{error:i,reload:u,status:"error"};if(t!=null)return{model:t,reload:u,status:"success"};throw new Error("Invalid state")},[i,l,t,u]);return d}function fs(n,e){var{eventHub:t}=Qr(),r=Sl(),i=Vn();E.useEffect(function(){i==null||n==null||Br(t,i,n)},[t,i,n]),E.useEffect(function(){e==null||i==null||Ur(t,i,e)},[t,i,e]),E.useEffect(function(){if(i!=null)return()=>{Br(t,i,null),Ur(t,i,null)}},[t,i]);var a=E.useCallback(o=>gr(o,r),[r]),l=$r(a),s=E.useMemo(()=>$.getInputFiltersForColumns(n??[],l.filter(o=>{var{value:u,excludePanelIds:d}=o;return u!=null&&(d==null||i!=null&&!d.includes(i))})),[n,i,l]);return s}function gs(n,e){var{eventHub:t}=Qr(),r=Sl(),i=Vn(),a=El(),l=E.useCallback(f=>Tt(f,r),[r]),s=$r(l),o=E.useMemo(()=>{var f=new Set;return s.forEach(b=>{b.start.panelId===i&&f.add(b.start.columnName)}),[...f]},[s,i]),u=E.useCallback(f=>br(f,r),[r]),d=$r(u),h=E.useCallback(f=>d&&f&&i!=null?d(i,f,{type:"tableLink"}):!1,[d,i]),c=d!=null,v=E.useCallback((f,b)=>{i!=null&&ns(t,i,b)},[t,i]),g=E.useCallback(f=>{var b,y,C;if(!n||!e)return null;var{gridWrapper:T}=e,w=(b=T==null?void 0:T.getBoundingClientRect())!==null&&b!==void 0?b:null;if(w==null||w.width<=0||w.height<=0)return null;var{metrics:O}=e.state;R(O);var{columnHeaderHeight:D,allColumnXs:N,allColumnWidths:M,right:F,columnHeaderMaxDepth:k}=O,L=n.getColumnIndexByName(f);R(L);var V=e.getVisibleColumn(L),X=(y=N.get(V))!==null&&y!==void 0?y:0,Y=(C=M.get(V))!==null&&C!==void 0?C:0,Z=Ge(V>F?w.right:w.left+X+Y*.5,w.left,w.right),se=w.top+D*k;return[Z,se]},[n,e]),m=E.useCallback(f=>{i!=null&&tn(t,i,f,{type:"tableLink"})},[t,i]);return E.useEffect(function(){if(!(!e||a==null||i==null))return ca(t,i,{getCoordinates:g,setFilterValues:e.setFilterMap,unsetFilterValue:()=>{},panelId:a}),()=>{ca(t,i,null)}},[t,i,g,e,a]),{alwaysFetchColumns:o,columnSelectionValidator:h,isSelectingColumn:c,onColumnSelected:m,onDataSelected:v}}var bs=E.forwardRef((n,e)=>{var{name:t,model:r,filter:i,fetchColumns:a,selectedRanges:l,irisGridRef:s,pluginState:o,onStateChange:u}=n,d=ci(),h=E.useMemo(()=>d(t),[d,t]),c=Qr(),v=El(),g=E.useMemo(()=>{var f;if(v==null)return"unknown";var b=H.getContentItemById(c.root,v);return(f=b==null?void 0:b.config.title)!==null&&f!==void 0?f:"unknown"},[c.root,v]),m=E.useMemo(()=>({irisGrid:s,getTableName:()=>g}),[s,g]);return p.jsx("div",{className:"iris-grid-plugin",children:p.jsx(h,{ref:e,filter:i,fetchColumns:a,model:r,table:r.table,tableName:g,selectedRanges:l,onStateChange:u,pluginState:o,panel:m})})});bs.displayName="TablePluginWrapper";function Cs(n){var{model:e,irisGridRef:t,irisGridUtils:r,selectedRanges:i}=n,[a,l]=E.useState([]),s=E.useMemo(()=>e!=null&&r!=null&&ct(e)?r.getFiltersFromInputFilters(e.table.columns,a,e.formatter.timeZone):[],[e,r,a]),[o,u]=E.useState([]),d=E.useRef(null),[h,c]=Ll(void 0,{version:1,type:"GridWidgetTablePluginState"}),v=E.useMemo(()=>e!=null&&ct(e)&&e.table.pluginName!=null?p.jsx(bs,{ref:d,name:e.table.pluginName,model:e,filter:l,fetchColumns:u,selectedRanges:i,irisGridRef:t,pluginState:h,onStateChange:c}):null,[e,i,t,h,c]),g=E.useCallback(m=>{var f,b,y;return(f=(b=d.current)===null||b===void 0||(y=b.getMenu)===null||y===void 0?void 0:y.call(b,m))!==null&&f!==void 0?f:[]},[]);return{Plugin:v,customFilters:s,alwaysFetchColumns:o,onContextMenu:g}}var rp=["alwaysFetchColumns"];function np(n,e){if(n==null)return{};var t,r,i=ip(n,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(n);for(r=0;r<a.length;r++)t=a[r],e.indexOf(t)===-1&&{}.propertyIsEnumerable.call(n,t)&&(i[t]=n[t])}return i}function ip(n,e){if(n==null)return{};var t={};for(var r in n)if({}.hasOwnProperty.call(n,r)){if(e.indexOf(r)!==-1)continue;t[r]=n[r]}return t}function Ba(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function ar(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ba(Object(t),!0).forEach(function(r){ap(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ba(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function ap(n,e,t){return(e=lp(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function lp(n){var e=sp(n,"string");return typeof e=="symbol"?e:e+""}function sp(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function ys(n){var e,{fetch:t}=n,r=to(Xr),{eventHub:i}=Qr(),a=ms(t),l=a.status==="success"?a.model:void 0,s=Yr(),o=E.useMemo(()=>new $(s),[s]),[u,d]=Ll(void 0,{version:1,type:"GridWidgetPlugin"}),h=E.useRef(u),c=E.useMemo(()=>{if(!(a.status!=="success"||h.current===void 0))return ar(ar({},o.hydrateIrisGridState(a.model,h.current)),$.hydrateGridState(a.model,h.current))},[a,o]),v=E.useMemo(()=>Ln.makeMemoizedCombinedGridStateDehydrator(),[]),g=E.useCallback((L,V)=>{if(!(a.status!=="success"||L==null||V==null)){var X=v(a.model,L,V);d(X)}},[a,d,v]),m=fs((e=l==null?void 0:l.columns)!==null&&e!==void 0?e:null,l!=null&&ct(l)?l.table:void 0),f=E.useRef(null),b=gs(a.status==="success"?a.model:null,f.current),{alwaysFetchColumns:y}=b,C=np(b,rp),T=E.useCallback(()=>{f.current!=null&&f.current.clearAllFilters()},[]);we(i,ht.CLEAR_ALL_FILTERS,T);var[w,O]=E.useState([]),{Plugin:D,customFilters:N,alwaysFetchColumns:M,onContextMenu:F}=Cs({model:l,irisGridRef:f,irisGridUtils:o,selectedRanges:w}),k=E.useMemo(()=>{var L=new Set([...y,...M]);return[...L]},[y,M]);return a.status==="loading"?p.jsx(vt,{isLoading:!0,"data-testid":"grid-widget-plugin-loading"}):a.status==="error"?p.jsx(vt,{"data-testid":"grid-widget-plugin-loading-error",errorMessage:wl(a.error),isLoading:!1}):(R(l,"Model should be defined when fetch is successful"),p.jsx(Jr,ar(ar(ar({ref:f,model:l,settings:r,onStateChange:g,onSelectionChanged:O,onContextMenu:F,inputFilters:m,customFilters:N},C),{},{alwaysFetchColumns:k},c),{},{children:D})))}var op={name:"IrisGridPanel",title:"Table",type:Dt.WIDGET_PLUGIN,component:ys,panelComponent:vi,supportedTypes:["Table","TreeTable","HierarchicalTable","PartitionedTable"],icon:lu};function Ua(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 gt(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ua(Object(t),!0).forEach(function(r){up(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ua(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function up(n,e,t){return(e=dp(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function dp(n){var e=hp(n,"string");return typeof e=="symbol"?e:e+""}function hp(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Ss(n){var e=n;return typeof e.getCoordinateForColumn=="function"}function Wa(n){var e=n;return Ss(n)&&typeof e.setFilterMap=="function"&&typeof e.unsetFilterValue=="function"}function za(n){return n.description==null||!n.description.startsWith("Preview of type: ")}var qa=ee.module("LinkerUtils");class Rt{static isLinkValid(e,t,r){if(e.panelId==null||t.panelId==null||e.panelId===t.panelId||r!=null&&r!==e.panelId&&r!==t.panelId)return qa.debug2("Incompatible panel ids",e,t,r),!1;var{columnType:i}=e,{columnType:a}=t,l=a===null||S.isCompatibleType(i,a);return l?!0:(qa.debug2("Incompatible type",i,a),!1)}static findColumn(e,t){var{columnName:r,columnType:i}=t;return e.find(a=>{var{name:l,type:s}=a;return l===r&&s===i})}static cloneLinksForPanel(e,t,r){var i=[];return e.forEach(a=>{var l;a.start.panelId===t&&a.type!=="filterSource"?i.push(gt(gt({},a),{},{id:Ue(),start:gt(gt({},a.start),{},{panelId:r})})):((l=a.end)===null||l===void 0?void 0:l.panelId)===t&&i.push(gt(gt({},a),{},{id:Ue(),end:gt(gt({},a.end),{},{panelId:r})}))}),i}}function Es(n,e,t){return(e=cp(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function cp(n){var e=vp(n,"string");return typeof e=="symbol"?e:e+""}function vp(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var pp=ee.module("LinkerLink"),Ka=.015,Xa=1.5,ws=12,Ts=12,Ya=2,kr=Math.sqrt((Ts*.5)**2+ws**2),Za=Math.asin(Ts*.5/ws),Qa=15,bt=Math.PI*.5;class Ht extends E.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(S.isNumberType(e)||S.isCharType(e))return ed(t);if(S.isTextType(e))return Ju(t);if(S.isDateType(e))return td(t);if(S.isBooleanType(e)){if(t===P.eq)return"is equal to";if(t===P.notEq)return"is not equal to"}throw new Error("Unrecognized column type: ".concat(e))}catch(r){return pp.warn(r),""}}constructor(e){super(e),Es(this,"getOperators",U((t,r)=>{var{onOperatorChanged:i}=this.props,a=S.getFilterTypes(r);return S.isBooleanType(r)&&(a=[P.eq,P.notEq]),a.flatMap((l,s)=>{if(l==="eqIgnoreCase"||l==="notEqIgnoreCase")return[];var o="";return l==="startsWith"?o="a*":l==="endsWith"?o="*z":o=S.getFilterOperatorString(l),[{title:Ht.getLabelForLinkFilter(r,l),icon:p.jsx("b",{children:o}),action:()=>i(t,l),order:s}]})})),this.handleClick=this.handleClick.bind(this),this.handleMouseEnter=this.handleMouseEnter.bind(this),this.handleMouseLeave=this.handleMouseLeave.bind(this),this.handleDelete=this.handleDelete.bind(this),this.getDropdownActions=this.getDropdownActions.bind(this),this.state={isHovering:void 0}}handleClick(e){e.stopPropagation(),e.preventDefault();var{id:t,onClick:r,onDelete:i}=this.props;e.altKey?i(t):r(t)}handleMouseEnter(){this.setState({isHovering:!0})}handleMouseLeave(){this.setState({isHovering:!1})}handleDelete(){var{id:e,onDelete:t}=this.props;t(e)}getDropdownActions(){var{id:e,startColumnType:t}=this.props;return t!=null?this.getOperators(e,t):[]}render(){var{className:e,operator:t,isSelected:r,x1:i,y1:a,x2:l,y2:s,id:o,startColumnType:u,type:d}=this.props,{isHovering:h}=this.state,c=Math.sqrt((i-l)**2+(a-s)**2),v=Math.atan2(s-a,l-i),g=Math.sin(v),m=Math.cos(v)+2,f=window.innerWidth,b=window.innerHeight,y=0,C=0,T=Math.max(y,Math.min(i+(l-i)/2+g*(c*Ka)**Xa,f)),w=Math.max(C,Math.min(a+(s-a)/2+m*(c*Ka)**Xa,b)),O="M ".concat(i," ").concat(a," Q ").concat(T," ").concat(w," ").concat(l," ").concat(s),D="M ".concat(y," ").concat(C," L ").concat(y," ").concat(b," L ").concat(f," ").concat(b," L ").concat(f," ").concat(C,` z
10
+ This note can be edited using **markdown** for styling.`);ui(it,"getClosedMarkdowns",U(n=>n.filter(e=>e.component==="MarkdownPanel"&&e.props.panelState.content!==""&&e.props.panelState.content!==null).reverse()));function hr(n,e,t){return(e=gv(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function gv(n){var e=bv(n,"string");return typeof e=="symbol"?e:e+""}function bv(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Cv=E.lazy(()=>zr(()=>import("./MarkdownEditor-BOGDnkaM.js"),__vite__mapDeps([18,1,2,3,8,4,5,9]),import.meta.url)),Rr=ee.module("MarkdownPanel");class di extends E.Component{constructor(e){super(e),hr(this,"markdownEditor",void 0),hr(this,"editor",void 0),hr(this,"getClosedMarkdowns",U(it.getClosedMarkdowns)),this.handleContainerDoubleClick=this.handleContainerDoubleClick.bind(this),this.handleCreateMarkdown=this.handleCreateMarkdown.bind(this),this.handleDeleteMarkdown=this.handleDeleteMarkdown.bind(this),this.handleOpenMarkdown=this.handleOpenMarkdown.bind(this),this.handleEditorInitialized=this.handleEditorInitialized.bind(this),this.handleEditorBlur=this.handleEditorBlur.bind(this),this.handleEditorResize=this.handleEditorResize.bind(this);var{panelState:t}=e,r=null;t!=null&&t.content!=null&&(t.content!==""?{content:r}=t:r=it.DEFAULT_CONTENT),this.state={isStartPageShown:r==null&&this.getClosedMarkdowns(e.closedPanels).length!==0,isEditing:!1,content:r,panelState:t},this.markdownEditor=null}setEditorPosition(e){R(this.markdownEditor);var{container:t}=this.markdownEditor;if(this.editor&&t!=null){var r,i,a=t.getBoundingClientRect().top,l=t.scrollTop,s=t.scrollHeight,o=(r=(i=this.editor.getModel())===null||i===void 0?void 0:i.getLineCount())!==null&&r!==void 0?r:0,u=Math.round((l+e-a)/s*o);u>o&&(u=o),this.editor.revealLine(u),this.editor.setPosition({lineNumber:u,column:1}),this.editor.focus()}}handleContainerDoubleClick(e){var{isEditing:t}=this.state,r=e.clientY;t||this.setState({isEditing:!0},()=>{this.setEditorPosition(r)})}handleEditorInitialized(e){Rr.debug("Markdown Editor Initialized..."),this.editor=e}handleCreateMarkdown(){Rr.debug("create markdown..."),this.setState({isStartPageShown:!1,content:"",isEditing:!0,panelState:{content:""}},()=>{this.editor!=null&&this.editor.focus!=null&&this.editor.focus()})}handleOpenMarkdown(e){Rr.debug("open markdown...",e);var{glContainer:t,glEventHub:r}=this.props,i=H.getComponentConfigFromContainer(t);r.emit(ke.REOPEN,e,i)}handleDeleteMarkdown(e){var{glEventHub:t}=this.props;t.emit(ke.DELETE,e)}handleEditorBlur(e){var t;Rr.debug("markdown content changed, saving...");var{isEditing:r}=this.state;if(!(!r||this.markdownEditor!=null&&this.markdownEditor.container!=null&&this.markdownEditor.container.contains(e.relatedTarget))){var i=(t=this.editor)===null||t===void 0?void 0:t.getValue();this.setState({content:i,isEditing:!1,panelState:{content:i}})}}handleEditorResize(){var{isEditing:e}=this.state;e&&this.editor&&this.editor.layout()}render(){var{glContainer:e,glEventHub:t,closedPanels:r}=this.props,{isEditing:i,isStartPageShown:a,content:l}=this.state,s=this.getClosedMarkdowns(r);return p.jsx(kt,{glContainer:e,glEventHub:t,className:"markdown-panel",componentPanel:this,onResize:this.handleEditorResize,onBlur:this.handleEditorBlur,isClonable:!0,isRenamable:!0,children:a?p.jsx(ss,{closedMarkdowns:s,onCreate:this.handleCreateMarkdown,onOpen:this.handleOpenMarkdown,onDelete:this.handleDeleteMarkdown}):p.jsx(ls,{isEditing:i,onDoubleClick:this.handleContainerDoubleClick,children:p.jsx(E.Suspense,{fallback:p.jsx(vt,{"data-testid":"markdown-panel-loading"}),children:p.jsx(Cv,{ref:o=>{this.markdownEditor=o},isEditing:i,content:l??it.DEFAULT_CONTENT,onEditorInitialized:this.handleEditorInitialized})})})})}}hr(di,"defaultProps",{panelState:null});hr(di,"COMPONENT","MarkdownPanel");var yv=(n,e)=>{var{localDashboardId:t}=e;return{closedPanels:Po(n,t)}},ur=wt(yv,null,null,{forwardRef:!0})(di);function Ea(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function Ir(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Ea(a,r,i,l,s,"next",o)}function s(o){Ea(a,r,i,l,s,"throw",o)}l(void 0)})}}function wa(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function _e(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?wa(Object(t),!0).forEach(function(r){Oe(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):wa(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Oe(n,e,t){return(e=Sv(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Sv(n){var e=Ev(n,"string");return typeof e=="symbol"?e:e+""}function Ev(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var wv=E.lazy(()=>zr(()=>import("./MarkdownNotebook-Dsw8M9b9.js"),__vite__mapDeps([19,1,2,3,4,5,8,9,20]),import.meta.url)),te=ee.module("NotebookPanel"),Ta=400;class Te extends E.Component{static handleError(e){Le.isCanceled(e)||te.error(e)}static unsavedNotebookCount(){return document.querySelectorAll(".".concat(Te.UNSAVED_INDICATOR_CLASS_NAME,".").concat(Te.UNSAVED_STATUS_CLASS_NAME)).length}static languageFromFileName(e){var t=Ve.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),Oe(this,"pending",void 0),Oe(this,"debouncedSavePanelState",void 0),Oe(this,"debouncedLoad",void 0),Oe(this,"notebook",void 0),Oe(this,"tabTitleElement",void 0),Oe(this,"tabInitOnce",void 0),Oe(this,"editor",void 0),Oe(this,"getSettings",U((c,v)=>_e(_e({},c),{},{minimap:{enabled:v}}))),Oe(this,"getOverflowActions",U((c,v,g)=>{var m=[{title:"Find",icon:ru,action:this.handleFind,group:He.groups.high,shortcut:ut.NOTEBOOK.FIND,order:10},{title:"Copy File",icon:nu,action:this.handleCopy,group:He.groups.medium,order:20},{title:"Rename File",icon:iu,action:this.handleShowRename,group:He.groups.medium,order:30},{title:"Delete File",icon:Zr,action:this.handleDelete,group:He.groups.medium,order:40},{title:"Show Minimap",icon:c?cn:void 0,action:this.handleMinimapChange,group:He.groups.low,shortcut:ut.NOTEBOOK.MINIMAP,order:20},{title:"Word Wrap",icon:v?cn:void 0,action:this.handleWordWrapChange,group:He.groups.low,shortcut:ut.NOTEBOOK.WORDWRAP,order:30}];return this.canFormat()&&(m.push({title:"Format Document",action:this.handleFormat,group:He.groups.low,order:10}),m.push({title:"Format on Save",icon:g?cn:void 0,action:this.handleFormatOnSaveChange,group:He.groups.low,order:15})),m})),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.handleDelete=this.handleDelete.bind(this),this.handleDeleteConfirm=this.handleDeleteConfirm.bind(this),this.handleDeleteCancel=this.handleDeleteCancel.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.handleFormatOnSaveChange=this.handleFormatOnSaveChange.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.handleFormat=this.handleFormat.bind(this),this.canFormat=this.canFormat.bind(this),this.getDropdownOverflowActions=this.getDropdownOverflowActions.bind(this),this.pending=new Hn,this.debouncedSavePanelState=Et(this.savePanelState.bind(this),Ta),this.debouncedLoad=Et(this.load.bind(this),Ta),this.notebook=null,this.tabTitleElement=null,this.tabInitOnce=!1;var{isDashboardActive:t,session:r,sessionLanguage:i,panelState:a}=e,l={value:"",language:"",wordWrap:"off"},s=null,{isPreview:o}=e;a!=null&&({fileMetadata:s=s,isPreview:o=o,settings:l=l}=a);var u=s!=null&&Ve.hasPath(s.itemName),d=u===!0&&l.value!=null||!u&&l.value!=null&&l.value.length>0,h=d?1:0;this.state={error:void 0,isDashboardActive:t,isLoading:!0,isLoaded:!1,isPreview:o,savedChangeCount:0,changeCount:h,fileMetadata:s,settings:l,session:r,sessionLanguage:i,panelState:{fileMetadata:s,settings:l},showCloseModal:!1,showDeleteModal:!1,showSaveAsModal:!1,scriptCode:"",formatOnSave:!1},te.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(oe.RENAME_FILE,this.handleRenameFile),t.on(ke.DROPPED,this.handlePanelDropped),e.on(oe.PROMOTE_FROM_PREVIEW,this.handlePreviewPromotion)}componentDidUpdate(e,t){var{isPreview:r,settings:i}=this.state,{wordWrap:a}=i,{notebookSettings:l}=this.props;r!==t.isPreview&&this.setPreviewStatus(),a!==t.settings.wordWrap&&(this.updateEditorWordWrap(),this.debouncedSavePanelState()),l.isMinimapEnabled!==e.notebookSettings.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(oe.RENAME_FILE,this.handleRenameFile),e.off(ke.DROPPED,this.handlePanelDropped),t.off(oe.PROMOTE_FROM_PREVIEW,this.handlePreviewPromotion),e.emit(oe.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==null?void 0: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);R(t);var r=t.querySelector(".lm_title");this.tabTitleElement=r,r==null||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){te.debug("Init content from file"),this.registerFileMetadata(e,r),this.load();return}if(t.value!=null){te.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(oe.CLOSE_FILE,{id:e})}registerFileMetadata(e,t){var{glEventHub:r,metadata:i}=this.props,{id:a}=i;r.emit(oe.REGISTER_FILE,a,e,t)}renameTab(e,t){var{glEventHub:r}=this.props;r.emit(oe.RENAME,e,t)}load(){var{fileMetadata:e,settings:t}=this.state;R(e);var{id:r}=e,{fileStorage:i}=this.props;this.pending.add(i.loadFile(r)).then(a=>{var l;te.debug("Loaded file",a);var{filename:s}=a,{itemName:o}=this.state;if(s!==o){var{metadata:u}=this.props,{id:d}=u;this.renameTab(d,Ve.getBaseName(s))}var h=_e(_e({},t),{},{language:(l=Te.languageFromFileName(s))!==null&&l!==void 0?l:""});t.value==null&&(h.value=a.content),t.wordWrap===void 0&&(t.wordWrap="off"),this.setState({fileMetadata:{id:s,itemName:s},settings:h}),this.debouncedSavePanelState()}).then(this.handleLoadSuccess).catch(this.handleLoadError)}save(){var{fileMetadata:e}=this.state;if(e&&Ve.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){te.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;te.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:l}=e,s=this.getNotebookValue(),o=t!==r?s:void 0,u=_e(_e({},l),{},{value:s}),d=_e(_e({},l),{},{value:o}),h={settings:d,fileMetadata:i,isPreview:a};return te.debug("Saving panel state",h),{settings:u,panelState:h}})}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(oe.CLOSE_FILE,{id:e,itemName:e},{force:!0}),this.focus()}handleCopy(){var e=this;return Ir(function*(){var{fileStorage:t,glEventHub:r,session:i}=e.props,{fileMetadata:a,settings:l}=e.state;R(a);var{language:s}=l,{itemName:o}=a,u=yield Ve.getUniqueCopyFileName(t,o);te.debug("handleCopy",a,o,u),yield t.copyFile(o,u);var d={id:u,itemName:u},h={value:null,language:s};r.emit(oe.SELECT_NOTEBOOK,i,s,h,d,!0)})()}handleDelete(){te.debug("handleDelete, pending confirmation"),this.setState({showDeleteModal:!0})}handleDeleteConfirm(){var e=this;return Ir(function*(){var{fileStorage:t,glContainer:r,glEventHub:i}=e.props,{fileMetadata:a}=e.state;te.debug("handleDeleteConfirm",a==null?void 0:a.itemName),e.setState({showDeleteModal:!1}),a&&(Ve.hasPath(a.itemName)&&(yield Ve.fileExists(t,a.itemName))?(i.emit(oe.CLOSE_FILE,a,{force:!0}),t.deleteFile(a.itemName)):r.close({force:!0}))})()}handleDeleteCancel(){this.setState({showDeleteModal:!1})}handleEditorInitialized(e){this.editor=e}handleEditorWillDestroy(){this.editor=void 0}handleEditorChange(e){te.debug2("handleEditorChanged",e),this.removePreviewStatus(),this.setState(t=>{var{changeCount:r,savedChangeCount:i}=t,{isUndoing:a,isRedoing:l}=e;return a?{changeCount:r-1,savedChangeCount:i}:!l&&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{notebookSettings:e}=this.props;this.editor.updateOptions({minimap:{enabled:e.isMinimapEnabled}})}}handleMinimapChange(){var e,{notebookSettings:t,updateNotebookSettings:r}=this.props,i={isMinimapEnabled:!((e=t.isMinimapEnabled)!==null&&e!==void 0&&e)};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:_e(_e({},t),{},{wordWrap:r})}})}handleFormatOnSaveChange(){var e,{notebookSettings:t,updateNotebookSettings:r}=this.props,i={formatOnSave:!((e=t.formatOnSave)!==null&&e!==void 0&&e)};r(i)}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 l="/".concat(a.substring(t.length)).replace(/%20/g," ");if(l==="/"){te.debug("Ignoring invalid notebook link",l);return}te.debug("Notebook link clicked, opening",l);var{glEventHub:s}=this.props,o={value:null,language:i},u={id:l,itemName:l};s.emit(oe.SELECT_NOTEBOOK,r,i,o,u)}}handleLoadSuccess(){this.setState({error:void 0,isLoaded:!0,isLoading:!1})}handleLoadError(e){var t=e;Le.isCanceled(t)||(Le.isTimedOut(t)&&(t=new Error("File not found.")),te.error(t),this.setState({error:t,isLoading:!1}))}handleSave(){var e=this;return Ir(function*(){te.debug("handleSave");var{notebookSettings:t}=e.props,{formatOnSave:r=!1}=t;r&&(yield e.handleFormat()),e.save()})()}handleSaveSuccess(e){var t,{fileStorage:r}=this.props,i={id:e.filename,itemName:e.filename},a=(t=Te.languageFromFileName(e.filename))!==null&&t!==void 0?t:"";this.setState(l=>{var{fileMetadata:s}=l,o=_e(_e({},l.settings),{},{language:a});return te.debug("handleSaveSuccess",i,s,o),s&&Ve.hasPath(s.itemName)&&s.itemName!==i.itemName&&(te.debug("handleSaveSuccess deleting old file",s.itemName),r.deleteFile(s.itemName).catch(Te.handleError)),{fileMetadata:i,settings:o,isPreview:!1}}),this.debouncedSavePanelState(),this.registerFileMetadata(i,!1)}handleSaveError(e){Le.isCanceled(e)||(this.setState({savedChangeCount:0}),te.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),te.debug("handleSaveAsSubmit",e);var{fileMetadata:i}=this.state;if(i){var{itemName:a}=i,l=(t=this.getNotebookValue())!==null&&t!==void 0?t:"";if(this.setState({showSaveAsModal:!1}),Ve.getBaseName(a)!==Ve.getBaseName(e)){var{metadata:s}=this.props,{id:o}=s;this.renameTab(o,Ve.getBaseName(e))}this.saveContent(e,l)}}canFormat(){var e;return((e=this.notebook)===null||e===void 0?void 0:e.editor)!=null?dt.canFormat(this.notebook.editor):!1}handleFormat(){var e=this;return Ir(function*(){var t;((t=e.notebook)===null||t===void 0?void 0:t.editor)!=null&&(yield dt.formatDocument(e.notebook.editor))})()}handleRenameFile(e,t,r){var{fileMetadata:i,panelState:a}=this.state,{glContainer:l}=this.props;if((i==null?void 0:i.itemName)==="/".concat(t)&&r&&JSON.stringify(a)!==JSON.stringify(r)){l.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){te.error("Editor is not initialized.");return}this.runCommand((e=this.notebook.getValue())!==null&&e!==void 0?e:void 0)}handleRunSelected(){if(!this.notebook){te.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;te.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){te.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];te.debug("handleTabFocus",...t);var{glContainer:i}=this.props;this.setState({isDashboardActive:!0}),this.notebook&&!i.isHidden&&this.notebook.updateDimensions()}handleTabBlur(){te.debug("handleTabBlur"),this.setState({isDashboardActive:!1})}handleTabClick(e){te.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==null?void 0: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:l,settings:s}=this.state,o=_e(_e({},s),{},{language:t,value:r}),u={id:null,itemName:e};te.debug("handleCreateNotebook",a,l,o,u),i.emit(oe.CREATE_NOTEBOOK,a,l,o,u)}runCommand(e){if(e===void 0||e===""){te.debug("Ignoring empty command.");return}this.removePreviewStatus();var{glEventHub:t}=this.props;t.emit(Vr.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{notebookSettings:e}=this.props,{isMinimapEnabled:t,formatOnSave:r}=e,{settings:i}=this.state;return this.getOverflowActions(t??!1,this.getSettings(i,t??!1).wordWrap==="on",r??!1)}render(){var e,t,r,{fileStorage:i,glContainer:a,glContainer:{tab:l},glEventHub:s,notebookSettings:o}=this.props,{changeCount:u,savedChangeCount:d,error:h,isDashboardActive:c,isLoaded:v,isLoading:g,isPreview:m,fileMetadata:f,session:b,sessionLanguage:y,settings:C,showCloseModal:T,showDeleteModal:w,showSaveAsModal:O}=this.state,D=c&&!a.isHidden&&!m,N=(e=f==null?void 0:f.itemName)!==null&&e!==void 0?e:Te.DEFAULT_NAME,M=N.endsWith(".md"),F=(f==null?void 0:f.id)!=null,k=this.getSettings(C,(t=o.isMinimapEnabled)!==null&&t!==void 0?t:!1),L=b!=null,V=y===k.language,X=!v||!L||!V,Y=!v,Z=[{action:this.handleSave,shortcut:Tn.SAVE},{action:this.handleMinimapChange,shortcut:ut.NOTEBOOK.MINIMAP},{action:this.handleWordWrapChange,shortcut:ut.NOTEBOOK.WORDWRAP}],se=kn.getDisabledRunTooltip(L,V,"Notebook extension","Run"),re=kn.getDisabledRunTooltip(L,V,"Notebook extension","Run Selected"),Ce=[{title:F?"Rename":"Save As…",order:10,group:He.groups.high,action:this.handleShowRename},{title:"Copy File",action:this.handleCopy,group:He.groups.high,order:20}],ge=l==null?void 0:l.element.find(".lm_title_before").get(0);return p.jsxs(p.Fragment,{children:[ge!=null&&eo.createPortal(p.jsx("span",{className:Me(Te.UNSAVED_INDICATOR_CLASS_NAME,{[Te.UNSAVED_STATUS_CLASS_NAME]:u!==d})}),ge),p.jsxs(kt,{className:"notebook-container",componentPanel:this,glContainer:a,glEventHub:s,onTab:this.handleTab,onResize:this.handleResize,onShow:this.handleShow,onTabClicked:this.handleTabClick,onTabFocus:this.handleTabFocus,onTabBlur:this.handleTabBlur,onSessionOpen:this.handleSessionOpened,onSessionClose:this.handleSessionClosed,additionalActions:Ce,renderTabTooltip:()=>N,children:[!M&&p.jsxs(p.Fragment,{children:[p.jsxs("div",{className:"notebook-toolbar",children:[p.jsxs("span",{children:[p.jsx(J,{kind:"ghost",className:"btn-play",onClick:this.handleRunAll,disabled:X,icon:p.jsx(Ne,{icon:Jo,transform:"grow-4"}),tooltip:"Run ".concat(ut.NOTEBOOK.RUN.getDisplayText()),"aria-label":"Run"}),se!=null&&p.jsx(Pn,{children:se})]}),p.jsxs("span",{children:[p.jsx(J,{kind:"ghost",className:"btn-play",onClick:this.handleRunSelected,disabled:X,icon:p.jsx(Ne,{icon:eu,transform:"grow-4"}),tooltip:"Run Selected ".concat(ut.NOTEBOOK.RUN_SELECTED.getDisplayText()),"aria-label":"Run Selected"}),re!=null&&p.jsx(Pn,{children:re})]}),p.jsx(J,{kind:"ghost",className:"mr-auto",disabled:Y,onClick:this.handleSave,icon:Tl,tooltip:"Save ".concat(Tn.SAVE.getDisplayText()),"aria-label":"Save"}),p.jsx(J,{kind:"ghost",className:"btn-overflow",disabled:Y,icon:tu,tooltip:"More Actions...",onClick:()=>{},children:p.jsx(ml,{actions:this.getDropdownOverflowActions,popperOptions:Te.POPPER_OPTIONS})})]}),p.jsx(Hl,{isLoaded:v,isLoading:g,error:h,onChange:this.handleEditorChange,onRunCommand:this.handleRunCommand,session:b,sessionLanguage:y,onEditorInitialized:this.handleEditorInitialized,onEditorWillDestroy:this.handleEditorWillDestroy,settings:k,focusOnMount:D,ref:A=>{this.notebook=A}})]}),M&&p.jsx(E.Suspense,{fallback:p.jsx(vt,{"data-testid":"notebook-panel-loading"}),children:p.jsx(wv,{content:(r=k.value)!==null&&r!==void 0?r:"",onLinkClick:this.handleLinkClick,onRunCode:this.handleRunCommand,transformImageUri:this.handleTransformLinkUri,transformLinkUri:this.handleTransformLinkUri})}),p.jsx(Fo,{isOpen:O,type:"file",defaultValue:N,title:F?"Rename":"Save file as",onSubmit:this.handleSaveAsSubmit,onCancel:this.handleSaveAsCancel,notifyOnExtensionChange:!0,storage:i}),p.jsx(Si,{isOpen:w,headerText:'Are you sure you want to delete "'.concat(N,'"?'),bodyText:"You cannot undo this action.",onCancel:this.handleDeleteCancel,onConfirm:this.handleDeleteConfirm,confirmButtonText:"Delete"}),p.jsx(Si,{isOpen:T,headerText:"Do you want to save the changes you made to ".concat(N,"?"),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"}),p.jsx(He,{actions:Z})]})]})}}Oe(Te,"COMPONENT","NotebookPanel");Oe(Te,"POPPER_OPTIONS",{placement:"bottom-end"});Oe(Te,"DEFAULT_NAME","Untitled");Oe(Te,"UNSAVED_INDICATOR_CLASS_NAME","editor-unsaved-indicator");Oe(Te,"UNSAVED_STATUS_CLASS_NAME","is-unsaved");Oe(Te,"defaultProps",{isDashboardActive:!0,isPreview:!1,session:null,sessionLanguage:null,notebookSettings:{isMinimapEnabled:!0}});var Tv=(n,e)=>{var t=Oo(n),r=vl(n),i=pl(n,e.localDashboardId),{session:a,config:l}=i??{},{type:s}=l??{};return{fileStorage:t,notebookSettings:r,session:a,sessionLanguage:s}},St=wt(Tv,{updateNotebookSettings:Do},null,{forwardRef:!0})(Te);function os(n){var{onClick:e}=n,t=E.useRef(null),r=E.useCallback(i=>{var a;(a=t.current)===null||a===void 0||a.blur(),e(i)},[e]);return p.jsxs(J,{ref:t,kind:"primary",className:"btn-pandas",onClick:r,tooltip:"Click to refresh pandas dataframe, updates do not occur automatically.",children:["pandas dataframe",p.jsxs("span",{children:[p.jsx(Ne,{icon:Dl,transform:"shrink-1",className:"mr-1"}),"Reload"]})]})}function Pa(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 Da(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Pa(Object(t),!0).forEach(function(r){fr(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Pa(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Oa(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function Pv(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Oa(a,r,i,l,s,"next",o)}function s(o){Oa(a,r,i,l,s,"throw",o)}l(void 0)})}}function fr(n,e,t){return(e=Dv(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Dv(n){var e=Ov(n,"string");return typeof e=="symbol"?e:e+""}function Ov(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class ln extends E.Component{constructor(e){super(e),fr(this,"irisGridRef",void 0),fr(this,"model",null),this.irisGridRef=Re.createRef(),this.handleDisconnect=this.handleDisconnect.bind(this),this.handleReload=this.handleReload.bind(this),this.handleGridStateChange=this.handleGridStateChange.bind(this),this.handlePanelStateUpdate=this.handlePanelStateUpdate.bind(this);var{panelState:t}=e;this.state={shouldFocusGrid:!1,panelState:t,makeModel:this.wrapMakeModel(e.makeModel)}}componentDidUpdate(e){var{makeModel:t}=e,{makeModel:r}=this.props;t!==r&&this.setState({makeModel:this.wrapMakeModel(r)})}componentWillUnmount(){this.model!=null&&this.stopListening(this.model)}wrapMakeModel(e){var t=this;return Pv(function*(){var r=yield e();return t.model!=null&&t.stopListening(t.model),t.model=r,t.startListening(r),r})}startListening(e){e.addEventListener(W.EVENT.DISCONNECT,this.handleDisconnect)}stopListening(e){e.removeEventListener(W.EVENT.DISCONNECT,this.handleDisconnect)}handleDisconnect(){var e;(e=this.irisGridRef.current)===null||e===void 0||e.setState({model:void 0})}handleReload(){var e;(e=this.irisGridRef.current)===null||e===void 0||e.initModel(),this.setState({shouldFocusGrid:!0})}handleGridStateChange(){var e,{shouldFocusGrid:t}=this.state;t&&(e=this.irisGridRef.current)!==null&&e!==void 0&&(e=e.irisGrid)!==null&&e!==void 0&&(e=e.current)!==null&&e!==void 0&&e.grid&&(this.irisGridRef.current.irisGrid.current.grid.focus(),this.setState({shouldFocusGrid:!1}))}handlePanelStateUpdate(e){this.setState({panelState:e})}render(){var{makeModel:e}=this.state;return p.jsx(si,Da(Da({ref:this.irisGridRef,onStateChange:this.handleGridStateChange,onPanelStateUpdate:this.handlePanelStateUpdate},this.props),{},{makeModel:e,children:p.jsx(os,{onClick:this.handleReload})}))}}fr(ln,"defaultProps",{panelState:null});fr(ln,"COMPONENT","PandasPanel");function Fa(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function Na(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Fa(a,r,i,l,s,"next",o)}function s(o){Fa(a,r,i,l,s,"throw",o)}l(void 0)})}}function Ma(n,e,t){return(e=Fv(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Fv(n){var e=Nv(n,"string");return typeof e=="symbol"?e:e+""}function Nv(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Mv{constructor(e){Ma(this,"items",void 0),Ma(this,"onUpdateCallback",void 0),this.items=e}setSearch(e){}setExpanded(e,t){if(e.charAt(e.length-1)==="/")for(var r=0;r<this.items.length;r+=1){var i=this.items[r];Ei(i)&&("".concat(i.filename,"/")===e||i.filename===e)&&(i.isExpanded=t)}return Promise.resolve()}collapseAll(){for(var e=0;e<this.items.length;e+=1){var t=this.items[e];Ei(t)&&(t.isExpanded=!1)}return Promise.resolve()}getViewportData(){return Promise.resolve({items:this.items,offset:0})}getSnapshot(e){return Na(function*(){throw new Error("Method not implemented.")})()}setViewport(e){var t=this;return Na(function*(){var r,i=yield t.getViewportData();(r=t.onUpdateCallback)===null||r===void 0||r.call(t,i)})()}setFilters(e){}setSorts(e){}setReversed(e){}close(){}onUpdate(e){return this.onUpdateCallback=e,jest.fn()}get size(){return this.items.length}}function Ra(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function nr(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Ra(a,r,i,l,s,"next",o)}function s(o){Ra(a,r,i,l,s,"throw",o)}l(void 0)})}}function Rv(n,e,t){return(e=Iv(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Iv(n){var e=kv(n,"string");return typeof e=="symbol"?e:e+""}function kv(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Lv{constructor(e){Rv(this,"items",void 0),this.items=e}getTable(){var e=this;return nr(function*(){return new Mv(e.items)})()}saveFile(e){throw new Error("Method not implemented.")}loadFile(e){throw new Error("Method not implemented.")}copyFile(e,t){return nr(function*(){throw new Error("Method not implemented.")})()}deleteFile(e){var t=this;return nr(function*(){t.items=t.items.filter(r=>r.filename!==e)})()}moveFile(e,t){var r=this;return nr(function*(){for(var i=0;i<r.items.length;i+=1)if(r.items[i].filename===e){r.items[i].filename=t,r.items[i].basename=Ve.getBaseName(t),r.items[i].id=t;break}})()}info(e){var t=this;return nr(function*(){var r=t.items.filter(a=>a.filename===e);if(r.length===0)throw new No;if(r.length>1)throw new Error("More than one matching file found");var i=r[0];return{filename:i.filename,basename:i.basename,id:i.filename,type:i.type}})()}createDirectory(e){throw new Error("Method not implemented.")}}var Av=kt,xv=kt;function Ia(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 Wr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ia(Object(t),!0).forEach(function(r){jv(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ia(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function jv(n,e,t){return(e=_v(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function _v(n){var e=Vv(n,"string");return typeof e=="symbol"?e:e+""}function Vv(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function ka(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function us(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){ka(a,r,i,l,s,"next",o)}function s(o){ka(a,r,i,l,s,"throw",o)}l(void 0)})}}function $v(n,e,t,r){return xn.apply(this,arguments)}function xn(){return xn=us(function*(n,e,t,r){var i={},a="",l={};if(_t(e)&&(i=e.settings,a=e.table,l=e.tableSettings),r!=null&&(r.tableSettings!=null&&(l=r.tableSettings),r.table!=null&&(a=r.table),r.settings!=null&&(i=Wr(Wr({},i),r.settings))),a!=null&&a!==""){var s=yield t();return new $(n).applyTableSettings(s,l,fl(Nl.getState())),Bt.makeModelFromSettings(n,i,s)}var o=yield t();return Bt.makeModel(n,i,o)}),xn.apply(this,arguments)}var hi=E.forwardRef((n,e)=>{var t=ts(n)?n.panelState:void 0,{fetch:r,metadata:i,localDashboardId:a}=n;R(i);var[l,s]=yu(i),o=E.useCallback(us(function*(){if(s!=null)throw s;return l==null?new Promise(()=>{}):$v(l,i,r,t)}),[l,s,i,r,t]);return p.jsx(li,Wr(Wr({ref:e},n),{},{metadata:i,localDashboardId:a,makeModel:o}))});hi.displayName="ChartPanelPlugin";function La(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function Hv(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){La(a,r,i,l,s,"next",o)}function s(o){La(a,r,i,l,s,"throw",o)}l(void 0)})}}function ds(n){var e=Yr(),[t,r]=E.useState(),{fetch:i}=n;return E.useEffect(()=>{var a=!1;function l(){return s.apply(this,arguments)}function s(){return s=Hv(function*(){var o=yield i(),u=yield Bt.makeModel(e,void 0,o);a||r(u)}),s.apply(this,arguments)}return l(),()=>{a=!0}},[e,i]),t?p.jsx(Al,{model:t}):null}var Gv={name:"ChartPanel",title:"Chart",type:Dt.WIDGET_PLUGIN,component:ds,panelComponent:hi,supportedTypes:"Figure",icon:au};function Aa(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function Bv(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Aa(a,r,i,l,s,"next",o)}function s(o){Aa(a,r,i,l,s,"throw",o)}l(void 0)})}}function hs(n){Yt(n);var{id:e,layout:t}=n,r=E.useCallback(i=>{var{metadata:a,panelId:l=Ue(),table:s}=i,{settings:o}=a,u=function(){var v=Bv(function*(){return s});return function(){return v.apply(this,arguments)}}(),d=I.titleFromSettings(o),h={type:"react-component",component:li.COMPONENT,props:{localDashboardId:e,id:l,metadata:a,fetch:u},title:d,id:l},{root:c}=t;H.openComponent({root:c,config:h})},[e,t]);return we(t.eventHub,Fe.CREATE_CHART,r),null}var Uv={name:"ChartBuilderPlugin",type:Dt.DASHBOARD_PLUGIN,component:hs};function cs(){var{python:{linter:n={}}={}}=$r(vl),{isEnabled:e=!1,config:t}=n;E.useEffect(function(){wn.isRuffEnabled=e,wn.setRuffSettings(t)},[e,t])}function xa(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 ja(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?xa(Object(t),!0).forEach(function(r){Wv(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):xa(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Wv(n,e,t){return(e=zv(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function zv(n){var e=qv(n,"string");return typeof e=="symbol"?e:e+""}function qv(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var he=ee.module("ConsolePlugin");function _a(n){return n.notebook!==void 0}function Kv(n){Yt(n)}function Xv(n){Kv(n);var{id:e,hydrateConsole:t,layout:r,panelManager:i,registerComponent:a,notebooksUrl:l}=n,s=E.useRef(0),[o,u]=E.useState(new Map),[d,h]=E.useState(new Map);cs();var c=sl(),v=E.useCallback(()=>i.getLastUsedPanelOfType(Lr),[i]),g=E.useCallback((A,x)=>{u(_=>new Map(_.set(A,x)))},[u]),m=E.useCallback(A=>{u(x=>(x.delete(A),new Map(x)))},[u]),f=E.useCallback((A,x)=>{h(_=>new Map(_.set(A,x)))},[h]),b=E.useCallback(A=>{h(x=>(x.delete(A),new Map(x)))},[h]),y=E.useCallback(function(A){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,_=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,B=A&&A.trim();if(!B)he.info("Ignoring empty code");else{var z=v();if(!z||!(z instanceof Lr.WrappedComponent)){he.error("Console panel not found");return}he.debug("Send command: ",A,x,_),z.addCommand(A,x,_)}},[v]),C=E.useCallback(A=>{c(Zl(e,A))},[c,e]),T=E.useCallback(A=>{var{language:x}=A,_=x==="python"?"py":x,B=null;return _==null?(he.debug("No extension for language",x),B="Untitled-".concat(s.current)):B="Untitled-".concat(s.current,".").concat(_),s.current+=1,B},[]),w=E.useCallback(function(A){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,{id:_}=A;if(_!=null&&o.has(_))return o.get(_);if(_!=null&&d.has(_))return d.get(_);if(x)return Ue()},[o,d]),O=E.useCallback((A,x)=>{H.renameComponent(r.root,{id:A},x)},[r.root]),D=E.useCallback((A,x)=>{he.debug("Rename file panel",A,x);var _;if(o.has(A)&&(_=o.get(A),m(A),_!=null&&g(x,_)),d.has(A)&&(_=d.get(A),b(A),_!=null&&f(x,_)),_===void 0){he.debug2("File ".concat(A," isn't open, no need to rename the tab"));return}O(_,Ve.getBaseName(x))},[o,d,O,g,f,m,b]),N=E.useCallback(A=>{var x=w(A,!1);if(x==null){he.error("Could not find panel id for file metadata",A);return}H.activateTab(r.root,{id:x})},[w,r.root]),M=E.useCallback((A,x,_)=>{if(he.debug("registerFilePanel",A,x,_),x==null||x.id==null){he.debug("Ignore empty file id",x);return}var{id:B}=x;if(_){f(B,A);return}if(o.has(B)){var z=o.get(B);if(A===z){he.debug("Update tab title for file ".concat(B));var{itemName:be}=x;D(B,be)}else he.error("File ".concat(B," already associated with a different tab ").concat(z));return}g(B,A),d.has(B)&&b(B)},[o,d,D,g,f,b]),F=E.useCallback((A,x)=>{if(he.debug("unregisterFileTab",A,x),A==null||A.id==null){he.debug("Ignore empty file id",A);return}var{id:_}=A;if(x){b(_);return}m(_)},[m,b]),k=E.useCallback((A,x)=>{he.debug("closeFilePanel",A);var{id:_}=A;if(_==null){he.warn("File ID is null, ignore close event");return}var B=null,z=!1;if(o.has(_))B=o.get(_);else if(d.has(_))B=d.get(_),z=!0;else{he.debug("File ".concat(_," isn't open, ignore close event"));return}F(A,z),H.closeComponent(r.root,{id:B},x)},[r.root,o,d,F]),L=E.useCallback(A=>{var{itemName:x}=A;return Ve.getBaseName(x)},[]),V=E.useCallback(A=>{var{id:x}=A;return he.debug("fileIsOpen",A,x,o),x!=null&&o.has(x)},[o]),X=E.useCallback(A=>{var{id:x}=A;return he.debug("fileIsOpenAsPreview",A,x,d),x!=null&&d.has(x)},[d]),Y=E.useCallback(A=>{if(A!=null){var x=i.getOpenedPanelById(A);x&&_a(x)&&x.focus()}},[i]),Z=E.useCallback(A=>{var{id:x,settings:_,fileMetadata:B,session:z,sessionLanguage:be,isPreview:ye=!1}=A,Ae={settings:_,fileMetadata:B},Xe=L(B);return{type:"react-component",component:St.COMPONENT,isFocusOnShow:!1,props:{localDashboardId:e,metadata:{id:x},session:z,sessionLanguage:be,panelState:Ae,isPreview:ye,notebooksUrl:l},title:Xe,id:x}},[L,e,l]),se=E.useCallback(function(A,x,_){var B=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{id:null,itemName:T(_)},z=w(B);if(V(B)&&z!=null){he.debug("File is already open, focus panel"),N(B),Y(z);return}if(z==null){he.error("Panel ID for file metadata is null");return}var be=H.getStackForComponentTypes(r.root,[St.COMPONENT]),ye=Z({id:z,settings:_,fileMetadata:B,session:A,sessionLanguage:x});he.debug("createNotebook",ye,o),H.openComponentInStack(be,ye)},[V,Y,T,w,r.root,Z,o,N]),re=E.useCallback(function(A,x,_,B){var z=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;he.debug("selectNotebook",B,z);var be=V(B),ye=X(B),[Ae]=[...d.values()],Xe=!z,Ye=Xe&&Ae?Ae:w(B);if(Ye==null||Ye==="")throw new Error("Unable to retrieve or create panelId for metadata: ".concat(JSON.stringify(B)));if(be||ye)N(B);else{var on=H.getStackForComponentTypes(r.root,[St.COMPONENT]),un=Z({id:Ye,settings:_,fileMetadata:B,session:A,sessionLanguage:x,isPreview:Xe});H.openComponentInStack(on,un)}if(ye&&z){var Qt=B.id,dn=H.getStackForConfig(r.root,{component:St.COMPONENT,id:Ye}),Jt=H.getContentItemInStack(dn,{component:St.COMPONENT,id:Ye});Qt!=null&&Jt&&Mo(Jt)&&(Jt.container.emit(oe.PROMOTE_FROM_PREVIEW),b(Qt),g(Qt,Ye))}z&&Y(Ye)},[N,V,X,Y,w,r.root,Z,d,b,g]),Ce=E.useCallback(function(A,x){var _=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},B=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,z=i.getLastUsedPanelOfType(St);z&&_a(z)?_!=null&&_.value!=null&&z.notebook!=null&&z.notebook.append(_.value):B&&se(A,x,_)},[se,i]),ge=E.useCallback((A,x)=>Ro.hydrate(ja(ja({},A),{},{notebooksUrl:l}),x),[l]);return er(a,Lr,t),er(a,gl),er(a,bl),er(a,Cl),er(a,St,ge),we(r.eventHub,Vr.SEND_COMMAND,y),we(r.eventHub,Vr.SETTINGS_CHANGED,C),we(r.eventHub,oe.CLOSE_FILE,k),we(r.eventHub,oe.CREATE_NOTEBOOK,se),we(r.eventHub,oe.SELECT_NOTEBOOK,re),we(r.eventHub,oe.RENAME,O),we(r.eventHub,oe.RENAME_FILE,D),we(r.eventHub,oe.SEND_TO_NOTEBOOK,Ce),we(r.eventHub,oe.REGISTER_FILE,M),we(r.eventHub,oe.UNREGISTER_FILE,F),null}var ir=ee.module("FilterPlugin");function vs(n){Yt(n);var{id:e,layout:t,registerComponent:r}=n,i=sl(),[a]=E.useState(()=>new Map),[l]=E.useState(()=>new Map),[s]=E.useState(()=>new Map),o=E.useCallback(()=>{var f=Array.from(a.values()).flat().sort((C,T)=>{var w=Ze.toLower(C.name),O=Ze.toLower(T.name);if(w!==O)return w>O?1:-1;var D=Ze.toLower(C.type),N=Ze.toLower(T.type);return D!==N?D>N?1:-1:0}).reduce((C,T)=>((C.length===0||Ze.toLower(C[C.length-1].name)!==Ze.toLower(T.name)||Ze.toLower(C[C.length-1].type)!==Ze.toLower(T.type))&&C.push(T),C),[]),b=Array.from(l.values()).flat().sort((C,T)=>C.timestamp-T.timestamp),y=new Map(s);ir.debug("sendUpdate",{columns:f,filters:b,tableMap:y}),i(Pt(e,{columns:f,filters:b,tableMap:y}))},[i,e,a,l,s]),u=E.useCallback((f,b)=>{ir.debug2("handleColumnsChanged",f,b),b==null?a.delete(f):a.set(f,[].concat(b)),o()},[a,o]),d=E.useCallback((f,b)=>{ir.debug2("handleFiltersChanged",f,b),b==null?l.delete(f):l.set(f,[].concat(b??[])),o()},[l,o]),h=E.useCallback((f,b)=>{ir.debug2("handleTableChanged",f,b),b==null?s.delete(f):s.set(f,b),o()},[s,o]),c=E.useCallback(f=>{ir.debug2("handlePanelUnmount",f);var b=H.getIdFromPanel(f);b!=null&&(a.delete(b),s.delete(b),l.delete(b)),o()},[a,l,s,o]),v=E.useCallback(f=>{var{title:b="DropdownFilter",metadata:y={},panelState:C=null,id:T=Ue(),focusElement:w=H.DEFAULT_FOCUS_SELECTOR,createNewStack:O=!1,dragEvent:D=void 0}=f,N={type:"react-component",component:Vt.COMPONENT,props:{id:T,metadata:y,panelState:C,localDashboardId:e},title:b,id:T},{root:M}=t;H.openComponent({root:M,config:N,focusElement:w,createNewStack:O,dragEvent:D})},[t,e]),g=E.useCallback(f=>{var{title:b="InputFilter",metadata:y={},panelState:C=null,id:T=Ue(),focusElement:w=H.DEFAULT_FOCUS_SELECTOR,createNewStack:O=!1,dragEvent:D=void 0}=f,N={type:"react-component",component:$t.COMPONENT,props:{id:T,metadata:y,panelState:C,localDashboardId:e},title:b,id:T},{root:M}=t;H.openComponent({root:M,config:N,focusElement:w,createNewStack:O,dragEvent:D})},[t,e]),m=E.useCallback(f=>{var{title:b="FilterSets",metadata:y={},panelState:C=null,id:T=Ue(),focusElement:w=H.DEFAULT_FOCUS_SELECTOR,createNewStack:O=!1,dragEvent:D=void 0}=f,N={type:"react-component",component:Ar.COMPONENT,props:{id:T,metadata:y,panelState:C,localDashboardId:e},title:b,id:T},{root:M}=t;H.openComponent({root:M,config:N,focusElement:w,createNewStack:O,dragEvent:D})},[t,e]);return E.useEffect(function(){var b=[r(Vt.COMPONENT,Vt),r($t.COMPONENT,$t),r(Ar.COMPONENT,Ar)];return()=>{b.forEach(y=>y())}},[r]),Cc(t.eventHub,u),Sc(t.eventHub,d),yc(t.eventHub,h),we(t.eventHub,ht.OPEN_DROPDOWN,v),we(t.eventHub,ht.OPEN_INPUT,g),we(t.eventHub,ht.OPEN_FILTER_SET_MANAGER,m),we(t.eventHub,ke.UNMOUNT,c),null}var Yv={name:"FilterPlugin",type:Dt.DASHBOARD_PLUGIN,component:vs},Zv=ee.module("@deephaven/app-utils/useTablePlugin");function ci(){var n=yl(),e=E.useCallback(t=>{var r=n.get(t);if(r!=null){if(Io(r))return r.component;if(ko(r))return r.TablePlugin}var i="Unable to find table plugin ".concat(t,".");throw Zv.error(i),new Error(i)},[n]);return e}function Va(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function Qv(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Va(a,r,i,l,s,"next",o)}function s(o){Va(a,r,i,l,s,"throw",o)}l(void 0)})}}function ps(n,e,t){var r=Yr(),i=ci(),a=E.useMemo(()=>({loadPlugin:i,localDashboardId:e,makeModel:function(){var l=Qv(function*(){var o=yield n();return Gl.makeModel(r,o)});function s(){return l.apply(this,arguments)}return s}(),metadata:t}),[r,n,e,i,t]);return a}function $a(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Ha(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?$a(Object(t),!0).forEach(function(r){Jv(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):$a(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Jv(n,e,t){return(e=ep(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ep(n){var e=tp(n,"string");return typeof e=="symbol"?e:e+""}function tp(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var vi=E.forwardRef((n,e)=>{var{localDashboardId:t,fetch:r,metadata:i}=n,a=ps(r,t,i);return p.jsx(si,Ha(Ha({ref:e},n),a))});vi.displayName="GridPanelPlugin";function Ga(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(r,i)}function yn(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Ga(a,r,i,l,s,"next",o)}function s(o){Ga(a,r,i,l,s,"throw",o)}l(void 0)})}}function ms(n){var e=Yr(),[t,r]=E.useState(),[i,a]=E.useState(),[l,s]=E.useState(!0),o=E.useCallback(yn(function*(){var h=yield n();return Gl.makeModel(e,h)}),[e,n]),u=E.useCallback(yn(function*(){s(!0),a(void 0);try{var h=yield o();r(h),s(!1)}catch(c){a(c),s(!1)}}),[o]);E.useEffect(()=>{var h=!1;function c(){return v.apply(this,arguments)}function v(){return v=yn(function*(){s(!0),a(void 0);try{var g=yield o();h||(r(g),s(!1))}catch(m){h||(a(m),s(!1))}}),v.apply(this,arguments)}return c(),()=>{h=!0}},[o]),E.useEffect(function(){if(!t)return;function c(){a(new Error("Table disconnected")),r(void 0),s(!1)}return t.addEventListener(W.EVENT.DISCONNECT,c),()=>{t.removeEventListener(W.EVENT.DISCONNECT,c)}},[t]);var d=E.useMemo(()=>{if(l)return{reload:u,status:"loading"};if(i!=null)return{error:i,reload:u,status:"error"};if(t!=null)return{model:t,reload:u,status:"success"};throw new Error("Invalid state")},[i,l,t,u]);return d}function fs(n,e){var{eventHub:t}=Qr(),r=Sl(),i=Vn();E.useEffect(function(){i==null||n==null||Br(t,i,n)},[t,i,n]),E.useEffect(function(){e==null||i==null||Ur(t,i,e)},[t,i,e]),E.useEffect(function(){if(i!=null)return()=>{Br(t,i,null),Ur(t,i,null)}},[t,i]);var a=E.useCallback(o=>gr(o,r),[r]),l=$r(a),s=E.useMemo(()=>$.getInputFiltersForColumns(n??[],l.filter(o=>{var{value:u,excludePanelIds:d}=o;return u!=null&&(d==null||i!=null&&!d.includes(i))})),[n,i,l]);return s}function gs(n,e){var{eventHub:t}=Qr(),r=Sl(),i=Vn(),a=El(),l=E.useCallback(f=>Tt(f,r),[r]),s=$r(l),o=E.useMemo(()=>{var f=new Set;return s.forEach(b=>{b.start.panelId===i&&f.add(b.start.columnName)}),[...f]},[s,i]),u=E.useCallback(f=>br(f,r),[r]),d=$r(u),h=E.useCallback(f=>d&&f&&i!=null?d(i,f,{type:"tableLink"}):!1,[d,i]),c=d!=null,v=E.useCallback((f,b)=>{i!=null&&ns(t,i,b)},[t,i]),g=E.useCallback(f=>{var b,y,C;if(!n||!e)return null;var{gridWrapper:T}=e,w=(b=T==null?void 0:T.getBoundingClientRect())!==null&&b!==void 0?b:null;if(w==null||w.width<=0||w.height<=0)return null;var{metrics:O}=e.state;R(O);var{columnHeaderHeight:D,allColumnXs:N,allColumnWidths:M,right:F,columnHeaderMaxDepth:k}=O,L=n.getColumnIndexByName(f);R(L);var V=e.getVisibleColumn(L),X=(y=N.get(V))!==null&&y!==void 0?y:0,Y=(C=M.get(V))!==null&&C!==void 0?C:0,Z=Ge(V>F?w.right:w.left+X+Y*.5,w.left,w.right),se=w.top+D*k;return[Z,se]},[n,e]),m=E.useCallback(f=>{i!=null&&tn(t,i,f,{type:"tableLink"})},[t,i]);return E.useEffect(function(){if(!(!e||a==null||i==null))return ca(t,i,{getCoordinates:g,setFilterValues:e.setFilterMap,unsetFilterValue:()=>{},panelId:a}),()=>{ca(t,i,null)}},[t,i,g,e,a]),{alwaysFetchColumns:o,columnSelectionValidator:h,isSelectingColumn:c,onColumnSelected:m,onDataSelected:v}}var bs=E.forwardRef((n,e)=>{var{name:t,model:r,filter:i,fetchColumns:a,selectedRanges:l,irisGridRef:s,pluginState:o,onStateChange:u}=n,d=ci(),h=E.useMemo(()=>d(t),[d,t]),c=Qr(),v=El(),g=E.useMemo(()=>{var f;if(v==null)return"unknown";var b=H.getContentItemById(c.root,v);return(f=b==null?void 0:b.config.title)!==null&&f!==void 0?f:"unknown"},[c.root,v]),m=E.useMemo(()=>({irisGrid:s,getTableName:()=>g}),[s,g]);return p.jsx("div",{className:"iris-grid-plugin",children:p.jsx(h,{ref:e,filter:i,fetchColumns:a,model:r,table:r.table,tableName:g,selectedRanges:l,onStateChange:u,pluginState:o,panel:m})})});bs.displayName="TablePluginWrapper";function Cs(n){var{model:e,irisGridRef:t,irisGridUtils:r,selectedRanges:i}=n,[a,l]=E.useState([]),s=E.useMemo(()=>e!=null&&r!=null&&ct(e)?r.getFiltersFromInputFilters(e.table.columns,a,e.formatter.timeZone):[],[e,r,a]),[o,u]=E.useState([]),d=E.useRef(null),[h,c]=Ll(void 0,{version:1,type:"GridWidgetTablePluginState"}),v=E.useMemo(()=>e!=null&&ct(e)&&e.table.pluginName!=null?p.jsx(bs,{ref:d,name:e.table.pluginName,model:e,filter:l,fetchColumns:u,selectedRanges:i,irisGridRef:t,pluginState:h,onStateChange:c}):null,[e,i,t,h,c]),g=E.useCallback(m=>{var f,b,y;return(f=(b=d.current)===null||b===void 0||(y=b.getMenu)===null||y===void 0?void 0:y.call(b,m))!==null&&f!==void 0?f:[]},[]);return{Plugin:v,customFilters:s,alwaysFetchColumns:o,onContextMenu:g}}var rp=["alwaysFetchColumns"];function np(n,e){if(n==null)return{};var t,r,i=ip(n,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(n);for(r=0;r<a.length;r++)t=a[r],e.indexOf(t)===-1&&{}.propertyIsEnumerable.call(n,t)&&(i[t]=n[t])}return i}function ip(n,e){if(n==null)return{};var t={};for(var r in n)if({}.hasOwnProperty.call(n,r)){if(e.indexOf(r)!==-1)continue;t[r]=n[r]}return t}function Ba(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function ar(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ba(Object(t),!0).forEach(function(r){ap(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ba(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function ap(n,e,t){return(e=lp(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function lp(n){var e=sp(n,"string");return typeof e=="symbol"?e:e+""}function sp(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function ys(n){var e,{fetch:t}=n,r=to(Xr),{eventHub:i}=Qr(),a=ms(t),l=a.status==="success"?a.model:void 0,s=Yr(),o=E.useMemo(()=>new $(s),[s]),[u,d]=Ll(void 0,{version:1,type:"GridWidgetPlugin"}),h=E.useRef(u),c=E.useMemo(()=>{if(!(a.status!=="success"||h.current===void 0))return ar(ar({},o.hydrateIrisGridState(a.model,h.current)),$.hydrateGridState(a.model,h.current))},[a,o]),v=E.useMemo(()=>Ln.makeMemoizedCombinedGridStateDehydrator(),[]),g=E.useCallback((L,V)=>{if(!(a.status!=="success"||L==null||V==null)){var X=v(a.model,L,V);d(X)}},[a,d,v]),m=fs((e=l==null?void 0:l.columns)!==null&&e!==void 0?e:null,l!=null&&ct(l)?l.table:void 0),f=E.useRef(null),b=gs(a.status==="success"?a.model:null,f.current),{alwaysFetchColumns:y}=b,C=np(b,rp),T=E.useCallback(()=>{f.current!=null&&f.current.clearAllFilters()},[]);we(i,ht.CLEAR_ALL_FILTERS,T);var[w,O]=E.useState([]),{Plugin:D,customFilters:N,alwaysFetchColumns:M,onContextMenu:F}=Cs({model:l,irisGridRef:f,irisGridUtils:o,selectedRanges:w}),k=E.useMemo(()=>{var L=new Set([...y,...M]);return[...L]},[y,M]);return a.status==="loading"?p.jsx(vt,{isLoading:!0,"data-testid":"grid-widget-plugin-loading"}):a.status==="error"?p.jsx(vt,{"data-testid":"grid-widget-plugin-loading-error",errorMessage:wl(a.error),isLoading:!1}):(R(l,"Model should be defined when fetch is successful"),p.jsx(Jr,ar(ar(ar({ref:f,model:l,settings:r,onStateChange:g,onSelectionChanged:O,onContextMenu:F,inputFilters:m,customFilters:N},C),{},{alwaysFetchColumns:k},c),{},{children:D})))}var op={name:"IrisGridPanel",title:"Table",type:Dt.WIDGET_PLUGIN,component:ys,panelComponent:vi,supportedTypes:["Table","TreeTable","HierarchicalTable","PartitionedTable"],icon:lu};function Ua(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 gt(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ua(Object(t),!0).forEach(function(r){up(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ua(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function up(n,e,t){return(e=dp(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function dp(n){var e=hp(n,"string");return typeof e=="symbol"?e:e+""}function hp(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Ss(n){var e=n;return typeof e.getCoordinateForColumn=="function"}function Wa(n){var e=n;return Ss(n)&&typeof e.setFilterMap=="function"&&typeof e.unsetFilterValue=="function"}function za(n){return n.description==null||!n.description.startsWith("Preview of type: ")}var qa=ee.module("LinkerUtils");class Rt{static isLinkValid(e,t,r){if(e.panelId==null||t.panelId==null||e.panelId===t.panelId||r!=null&&r!==e.panelId&&r!==t.panelId)return qa.debug2("Incompatible panel ids",e,t,r),!1;var{columnType:i}=e,{columnType:a}=t,l=a===null||S.isCompatibleType(i,a);return l?!0:(qa.debug2("Incompatible type",i,a),!1)}static findColumn(e,t){var{columnName:r,columnType:i}=t;return e.find(a=>{var{name:l,type:s}=a;return l===r&&s===i})}static cloneLinksForPanel(e,t,r){var i=[];return e.forEach(a=>{var l;a.start.panelId===t&&a.type!=="filterSource"?i.push(gt(gt({},a),{},{id:Ue(),start:gt(gt({},a.start),{},{panelId:r})})):((l=a.end)===null||l===void 0?void 0:l.panelId)===t&&i.push(gt(gt({},a),{},{id:Ue(),end:gt(gt({},a.end),{},{panelId:r})}))}),i}}function Es(n,e,t){return(e=cp(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function cp(n){var e=vp(n,"string");return typeof e=="symbol"?e:e+""}function vp(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var pp=ee.module("LinkerLink"),Ka=.015,Xa=1.5,ws=12,Ts=12,Ya=2,kr=Math.sqrt((Ts*.5)**2+ws**2),Za=Math.asin(Ts*.5/ws),Qa=15,bt=Math.PI*.5;class Ht extends E.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(S.isNumberType(e)||S.isCharType(e))return ed(t);if(S.isTextType(e))return Ju(t);if(S.isDateType(e))return td(t);if(S.isBooleanType(e)){if(t===P.eq)return"is equal to";if(t===P.notEq)return"is not equal to"}throw new Error("Unrecognized column type: ".concat(e))}catch(r){return pp.warn(r),""}}constructor(e){super(e),Es(this,"getOperators",U((t,r)=>{var{onOperatorChanged:i}=this.props,a=S.getFilterTypes(r);return S.isBooleanType(r)&&(a=[P.eq,P.notEq]),a.flatMap((l,s)=>{if(l==="eqIgnoreCase"||l==="notEqIgnoreCase")return[];var o="";return l==="startsWith"?o="a*":l==="endsWith"?o="*z":o=S.getFilterOperatorString(l),[{title:Ht.getLabelForLinkFilter(r,l),icon:p.jsx("b",{children:o}),action:()=>i(t,l),order:s}]})})),this.handleClick=this.handleClick.bind(this),this.handleMouseEnter=this.handleMouseEnter.bind(this),this.handleMouseLeave=this.handleMouseLeave.bind(this),this.handleDelete=this.handleDelete.bind(this),this.getDropdownActions=this.getDropdownActions.bind(this),this.state={isHovering:void 0}}handleClick(e){e.stopPropagation(),e.preventDefault();var{id:t,onClick:r,onDelete:i}=this.props;e.altKey?i(t):r(t)}handleMouseEnter(){this.setState({isHovering:!0})}handleMouseLeave(){this.setState({isHovering:!1})}handleDelete(){var{id:e,onDelete:t}=this.props;t(e)}getDropdownActions(){var{id:e,startColumnType:t}=this.props;return t!=null?this.getOperators(e,t):[]}render(){var{className:e,operator:t,isSelected:r,x1:i,y1:a,x2:l,y2:s,id:o,startColumnType:u,type:d}=this.props,{isHovering:h}=this.state,c=Math.sqrt((i-l)**2+(a-s)**2),v=Math.atan2(s-a,l-i),g=Math.sin(v),m=Math.cos(v)+2,f=window.innerWidth,b=window.innerHeight,y=0,C=0,T=Math.max(y,Math.min(i+(l-i)/2+g*(c*Ka)**Xa,f)),w=Math.max(C,Math.min(a+(s-a)/2+m*(c*Ka)**Xa,b)),O="M ".concat(i," ").concat(a," Q ").concat(T," ").concat(w," ").concat(l," ").concat(s),D="M ".concat(y," ").concat(C," L ").concat(y," ").concat(b," L ").concat(f," ").concat(b," L ").concat(f," ").concat(C,` z
11
11
  `).concat(Ht.makeCirclePath(i,a,Qa),`
12
12
  `).concat(Ht.makeCirclePath(l,s,Qa)),N="link-select-clip-".concat(o),M=Math.atan2(s-w,l-T),F=M-Za+Math.PI,k=M+Za+Math.PI,L=l+Math.cos(M)*Ya,V=s+Math.sin(M)*Ya,X=L+Math.cos(F)*kr,Y=V+Math.sin(F)*kr,Z=L+Math.cos(k)*kr,se=V+Math.sin(k)*kr,re="".concat(L,",").concat(V," ").concat(X,",").concat(Y," ").concat(Z,",").concat(se),Ce=.25*i+.5*T+.25*l,ge=.25*a+.5*w+.25*s,A=T-i+(l-T),x=w-a+(s-w),_=x/A,B=20,z=B/Math.sqrt(1+_**2),be=z*_,ye=z*-1,Ae=be*-1;Number.isFinite(_)?_>0?(z*=-1,be*=-1,ye*=-1,Ae*=-1,ye-=50-10*(Math.abs(v)%bt),Ae+=10*(Math.abs(v)%bt),z-=50-10*(Math.abs(v)%bt),be+=10*(Math.abs(v)%bt)):_<0?(ye+=10*(Math.abs(v)%bt),Ae+=10*(Math.abs(v)%bt),z+=10*(Math.abs(v)%bt),be+=10*(Math.abs(v)%bt)):(ye=15,Ae=10,z=-25,be=10):(ye=10,Ae=5,z=10,be=-35);var Xe="";t!==void 0&&(t==="startsWith"?Xe="a*":t==="endsWith"?Xe="*z":Xe=S.getFilterOperatorString(t));var Ye=d!=="chartLink"&&d!=="filterSource";return p.jsxs(p.Fragment,{children:[p.jsxs("svg",{className:Me(e,{hovering:h}),children:[p.jsx("clipPath",{id:N,children:p.jsx("path",{d:D,clipRule:"evenodd"})}),p.jsx("path",{className:"link-select",d:O,onClick:this.handleClick,onMouseEnter:this.handleMouseEnter,onMouseLeave:this.handleMouseLeave,clipPath:"url(#".concat(N,")"),"data-testid":"link-select"}),p.jsx("path",{className:"link-background",d:O}),p.jsx("path",{className:"link-foreground",d:O}),p.jsx("circle",{className:"link-dot",cx:i,cy:a,r:"5"}),p.jsx("polygon",{className:"link-triangle",points:re})]}),u!=null&&r&&p.jsxs(p.Fragment,{children:[Ye&&p.jsx(J,{kind:"primary",className:"btn-fab btn-operator",style:{top:ge+(_>=0?be:Ae),left:Ce+(_>=0?z:ye)},onClick:()=>{},icon:p.jsxs("div",{className:"fa-md fa-layers",children:[p.jsx("b",{children:Xe}),p.jsx(Ne,{icon:su,transform:"right-8 down-9 shrink-5"})]}),tooltip:"Change comparison operator",children:p.jsx(ml,{actions:this.getDropdownActions,popperOptions:{placement:"bottom-start"}})}),p.jsx(J,{kind:"primary",className:"btn-fab btn-delete",style:{top:ge+(_<0?be:Ae),left:Ce+(_<0?z:ye)},onClick:this.handleDelete,icon:Zr,tooltip:"Delete"})]})]})}}Es(Ht,"defaultProps",{className:"",isSelected:!1,onClick(){},onDelete(){}});function Ja(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function el(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ja(Object(t),!0).forEach(function(r){pi(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ja(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function pi(n,e,t){return(e=mp(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function mp(n){var e=fp(n,"string");return typeof e=="symbol"?e:e+""}function fp(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Sn=ee.module("LinkerOverlayContent");class Ps extends E.Component{constructor(e){super(e),pi(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=Re.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){Sn.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,linkTargetPropMap:r}=this.props,{panelId:i,columnName:a}=e,l=i,s=r.get(i);if(s!=null){l=s.panelId;var o=s.getCoordinates(a);if(o!=null)return o}var u=t.getOpenedPanelById(l);if(s==null&&u!=null){if(!Ss(u))throw new Error("Panel does not have getCoordinateForColumn method: ".concat(l));try{var d=u.getCoordinateForColumn(a);if(d!=null)return d}catch{Sn.error("Could not get coordinate for column",a,u)}}var h=t.getContainerByPanelId(l);if(h==null)throw new Error("Unable to find panel container for id: ".concat(l));return H.getTabPoint(h)}handleOperatorChanged(e,t){var{links:r,onLinksUpdated:i}=this.props,a=r.map(l=>l.id===e?el(el({},l),{},{operator:t}):l);i(a)}handleBlur(){this.setState({mode:"select"})}handleResize(){var{dialog:e}=this.state;if(e&&this.dialogRef.current){var t=this.dialogRef.current.getBoundingClientRect(),r=Ge(e.x,0,window.innerWidth-t.width),i=Ge(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=Ge(window.innerWidth-(e.clientX+i.width+t.x),0,window.innerWidth-i.width),l=Ge(window.innerHeight-(e.clientY+i.height+t.y),0,window.innerHeight-i.height);this.setState({dialog:{x:a,y:l}})}}handleMouseDown(e){e.preventDefault();var t={x:0,y:0};if(this.dialogRef.current){var r=this.dialogRef.current.getBoundingClientRect();t.x=r.right-(r.width+e.clientX),t.y=r.bottom-(r.height+e.clientY)}this.setState({isDragging:!0,offset:t})}handleMouseUp(){this.setState({isDragging:!1})}handleKeyDown(e){if(e.key==="Alt")e.preventDefault(),this.setState({mode:"delete"});else if(e.key==="Delete"||e.key==="Backspace"){var{selectedIds:t,onLinkDeleted:r}=this.props;e.preventDefault(),t.forEach(i=>r(i))}}handleKeyUp(e){e.key==="Alt"&&(e.preventDefault(),this.setState({mode:"select"}))}handleEscapePressed(){var{onCancel:e}=this.props;e()}render(){var{disabled:e,links:t,selectedIds:r,messageText:i,onLinkSelected:a,onLinkDeleted:l,onAllLinksDeleted:s,onDone:o}=this.props,{mouse:u,dialog:d,isDragging:h,mode:c}=this.state,v=t.map(g=>{try{var m,f,{id:b,type:y,isReversed:C,start:T,end:w,operator:O}=g,D=T.columnType,[N,M]=this.getPointFromLinkPoint(T),F=(m=u==null?void 0:u.x)!==null&&m!==void 0?m:N,k=(f=u==null?void 0:u.y)!==null&&f!==void 0?f:M;if(w!=null&&([F,k]=this.getPointFromLinkPoint(w)),C!=null&&C){var[L,V]=[N,M];[N,M]=[F,k],[F,k]=[L,V]}var X=Me("linker-link",{disabled:e},{"link-filter-source":y==="filterSource"},{"link-invalid":y==="invalid"},{interactive:g.end==null},{"link-is-selected":r.has(b)},{"danger-delete":c==="delete"});return{x1:N,y1:M,x2:F,y2:k,id:b,className:X,operator:O,startColumnType:D,type:y}}catch(Y){return Sn.warn("Unable to get point for link",g,Y),null}}).filter(g=>g!=null);return p.jsxs("div",{className:Me("linker-overlay",{"danger-delete":c==="delete"}),children:[v.map(g=>{var{x1:m,y1:f,x2:b,y2:y,id:C,className:T,operator:w,startColumnType:O,type:D}=g;return p.jsx(Ht,{className:T,id:C,x1:m,y1:f,x2:b,y2:y,onClick:a,onDelete:l,isSelected:r.has(C),operator:w??P.eq,startColumnType:O,type:D,onOperatorChanged:this.handleOperatorChanged},C)}),p.jsxs("div",{className:Me("linker-toast-dialog",{dragging:h}),ref:this.dialogRef,style:{bottom:d==null?void 0:d.y,right:d==null?void 0:d.x},"data-testid":"linker-toast-dialog",children:[p.jsx(J,{draggable:!0,kind:"inline",className:"btn-drag-handle",icon:ou,onClick:()=>{},onMouseDown:this.handleMouseDown,children:!h&&p.jsx(Pn,{children:"Drag to reposition"})}),p.jsx("div",{className:"toast-body",children:i}),p.jsxs("div",{className:"toast-footer",children:[p.jsx(J,{kind:"secondary",onClick:s,children:"Clear All"}),p.jsx(J,{kind:"primary",onClick:o,children:"Done"})]})]}),p.jsx(He,{actions:[{action:this.handleEscapePressed,shortcut:Tn.LINKER_CLOSE,isGlobal:!0}]})]})}}pi(Ps,"defaultProps",{disabled:"false"});function tl(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function rl(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?tl(Object(t),!0).forEach(function(r){xr(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):tl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function xr(n,e,t){return(e=gp(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function gp(n){var e=bp(n,"string");return typeof e=="symbol"?e:e+""}function bp(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ee=ee.module("Linker"),Cp=(n,e)=>({activeTool:$n(n),dh:hl(n),isolatedLinkerPanelId:Kr(n,e.localDashboardId),links:Tt(n,e.localDashboardId),timeZone:fl(n)}),yp=wt(Cp,{setActiveTool:ul,setDashboardLinks:en,addDashboardLinks:Kl,deleteDashboardLinks:Xl,setDashboardIsolatedLinkerPanelId:Qn,setDashboardColumnSelectionValidator:Yl});class Sp extends E.Component{constructor(e){super(e),xr(this,"linkTargetPropMap",new Map),xr(this,"removerFns",[]),xr(this,"getCachedLinks",U((t,r,i)=>{var a=[...t];return r!=null&&r.start!=null&&a.push(r),i!==void 0?a.filter(l=>{var s,o;return(l==null||(s=l.start)===null||s===void 0?void 0:s.panelId)===i||(l==null||(o=l.end)===null||o===void 0?void 0:o.panelId)===i||(l==null?void 0:l.end)==null}):a})),this.handleCancel=this.handleCancel.bind(this),this.handleDone=this.handleDone.bind(this),this.handlePanelCloned=this.handlePanelCloned.bind(this),this.handleColumnsChanged=this.handleColumnsChanged.bind(this),this.handlePanelClosed=this.handlePanelClosed.bind(this),this.handleLayoutStateChanged=this.handleLayoutStateChanged.bind(this),this.handleAllLinksDeleted=this.handleAllLinksDeleted.bind(this),this.handleLinkDeleted=this.handleLinkDeleted.bind(this),this.handleLinksUpdated=this.handleLinksUpdated.bind(this),this.handleChartColumnSelect=this.handleChartColumnSelect.bind(this),this.handleGridColumnSelect=this.handleGridColumnSelect.bind(this),this.handleUpdateValues=this.handleUpdateValues.bind(this),this.handleStateChange=this.handleStateChange.bind(this),this.handleExited=this.handleExited.bind(this),this.handleLinkPointSelected=this.handleLinkPointSelected.bind(this),this.handleTargetRegistered=this.handleTargetRegistered.bind(this),this.handleLinkSelected=this.handleLinkSelected.bind(this),this.handlePanelDragging=this.handlePanelDragging.bind(this),this.handlePanelDropped=this.handlePanelDropped.bind(this),this.isColumnSelectionValid=this.isColumnSelectionValid.bind(this),this.state={linkInProgress:void 0,selectedIds:new Set,isDraggingPanel:!1}}componentDidMount(){var{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===et.DEFAULT&&this.reset())}componentDidCatch(e,t){Ee.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(Fe.COLUMN_SELECTED,this.handleGridColumnSelect),t.on(Fe.DATA_SELECTED,this.handleUpdateValues),t.on(Fe.STATE_CHANGED,this.handleStateChange),t.on(Wt.COLUMN_SELECTED,this.handleChartColumnSelect),t.on(ke.CLONED,this.handlePanelCloned),this.removerFns=[bc(t,this.handleColumnsChanged),Ec(t,this.handleLinkPointSelected),wc(t,this.handleUpdateValues),Tc(t,this.handleTargetRegistered)],t.on(ke.CLOSE,this.handlePanelClosed),t.on(ke.CLOSED,this.handlePanelClosed),t.on(ke.DRAGGING,this.handlePanelDragging),t.on(ke.DROPPED,this.handlePanelDropped)}stopListening(e){e.off("stateChanged",this.handleLayoutStateChanged);var{eventHub:t}=e;t.off(Fe.COLUMN_SELECTED,this.handleGridColumnSelect),t.off(Fe.DATA_SELECTED,this.handleUpdateValues),t.off(Fe.STATE_CHANGED,this.handleStateChange),t.off(Wt.COLUMN_SELECTED,this.handleChartColumnSelect),t.off(ke.CLONED,this.handlePanelCloned),t.off(ke.CLOSE,this.handlePanelClosed),t.off(ke.CLOSED,this.handlePanelClosed),t.off(ke.DRAGGING,this.handlePanelDragging),t.off(ke.DROPPED,this.handlePanelDropped),this.removerFns.forEach(r=>r()),this.removerFns=[]}reset(){this.setState({linkInProgress:void 0,selectedIds:new Set})}handleCancel(){var{linkInProgress:e}=this.state;if(e==null){var{setActiveTool:t}=this.props;t(et.DEFAULT)}this.setState({linkInProgress:void 0})}handleDone(){var{setActiveTool:e}=this.props;e(et.DEFAULT)}handleChartColumnSelect(e,t){var r=H.getIdFromPanel(e);R(r),this.columnSelected(r,t,"chartLink",!0)}handleColumnsChanged(e,t){Ee.debug("handleColumnsChanged",e,t);var{links:r}=this.props;if(e==null){Ee.error("Invalid filter columns source id",e);return}if(t==null){this.deleteLinksForPanelId(e);return}var i=r.filter(a=>{var{start:l,end:s}=a;return l.panelId===e&&Rt.findColumn(t,l)==null||s!=null&&s.panelId===e&&Rt.findColumn(t,s)==null});this.deleteLinks(i)}handleGridColumnSelect(e,t){if(!za(t)){Ee.debug2("Column is not filterable");return}var r=H.getIdFromPanel(e);R(r),this.columnSelected(r,t,"tableLink")}handleLinkPointSelected(e,t,r){var{type:i}=r,a=i==="filterSource",l=i==="chartLink"||i==="filterSource";if(!this.isOverlayShown()&&e!=null&&a){var{links:s,localDashboardId:o,setActiveTool:u,setDashboardIsolatedLinkerPanelId:d}=this.props,h=s.filter(c=>{var v,g;return((v=c.start)===null||v===void 0?void 0:v.panelId)===e||((g=c.end)===null||g===void 0?void 0:g.panelId)===e});u(et.LINKER),d(o,e),h.length===0&&this.columnSelected(e,t,i,l,e);return}this.columnSelected(e,t,i,l)}columnSelected(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,a=arguments.length>4?arguments[4]:void 0;if(!(a===void 0&&!this.isOverlayShown())){var{isolatedLinkerPanelId:l}=this.props,{linkInProgress:s}=this.state,{name:o,type:u}=t;if(s==null||s.start==null){var d={id:Ue(),start:{panelId:e,columnName:o,columnType:u},type:"invalid",isReversed:i};i&&(d.endType=r),Ee.debug("starting link",d),this.setState({linkInProgress:d})}else{var h,{links:c}=this.props,{start:v,id:g,isReversed:m=!1}=s,f={panelId:e,columnName:o,columnType:u},b=!(m&&i)&&Rt.isLinkValid(m?f:v,m?v:f,a??l);if(!b){Ee.debug("Ignore invalid link connection",s,f);return}var y=(h=s.endType)!==null&&h!==void 0?h:r;switch(y){case"invalid":Ee.debug("Ignore invalid link connection",s,f);return;case"filterSource":{var C=m!==void 0&&m?v.panelId:f.panelId,T=c.filter(M=>{var{end:F}=M;return(F==null?void 0:F.panelId)===C});this.deleteLinks(T);break}case"chartLink":{var w=m===!0?v:f,O=m===!0?f:v;Ee.debug("creating chartlink",{existingLinkEnd:w,start:v,end:f});var D=c.filter(M=>{var{end:F,start:k}=M;return(k==null?void 0:k.panelId)===O.panelId&&(F==null?void 0:F.panelId)===w.panelId&&(F==null?void 0:F.columnName)===w.columnName&&(F==null?void 0:F.columnType)===w.columnType});this.deleteLinks(D);break}}var N={start:m?f:v,end:m?v:f,id:g,type:y,operator:P.eq};Ee.info("creating link",N),this.setState({linkInProgress:void 0,selectedIds:new Set([g])},()=>{this.addLinks([N])})}}}unsetFilterValueForLink(e){var{panelManager:t}=this.props;if(e.end){var r,{end:i}=e,{panelId:a,columnName:l,columnType:s}=i,{linkTargetPropMap:o}=this,u=(r=o.get(a))===null||r===void 0?void 0:r.unsetFilterValue;if(u){u(l,s);return}var d=t.getOpenedPanelById(a);d?Wa(d)?d.unsetFilterValue(l,s):Ee.debug("endPanel.unsetFilterValue not implemented",d):Ee.debug("endPanel no longer exists or target is not a panel. Ignoring unsetFilterValue",a)}}setPanelFilterMap(e,t){var r;Ee.debug("Set filter data for panel:",e,t);var{panelManager:i}=this.props,{linkTargetPropMap:a}=this,l=(r=a.get(e))===null||r===void 0?void 0:r.setFilterValues;if(l){l(t);return}var s=i.getOpenedPanelById(e);s?Wa(s)?s.setFilterMap(t):Ee.debug("panel.setFilterMap not implemented",e,s):Ee.debug("panel no longer exists or target is not a panel. Ignoring setFilterMap",e)}addLinks(e){var{addDashboardLinks:t,localDashboardId:r}=this.props;t(r,e)}deleteLinks(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,{localDashboardId:r}=this.props;if(e.forEach(l=>this.unsetFilterValueForLink(l)),t){var{setDashboardLinks:i}=this.props;i(r,[])}else if(e.length>0){var{deleteDashboardLinks:a}=this.props;a(r,e.map(l=>{var{id:s}=l;return s}))}}handleAllLinksDeleted(){var{links:e,isolatedLinkerPanelId:t}=this.props;if(t===void 0)this.deleteLinks(e,!0);else{var r=e.filter(i=>{var a,l;return(i==null||(a=i.start)===null||a===void 0?void 0:a.panelId)===t||(i==null||(l=i.end)===null||l===void 0?void 0:l.panelId)===t});this.deleteLinks(r)}this.reset()}handleLinkDeleted(e){var{links:t}=this.props,r=t.find(i=>i.id===e);r?this.deleteLinks([r]):Ee.error("Unable to find link to delete",e)}handleTargetRegistered(e,t){var{linkTargetPropMap:r}=this;t==null?r.delete(e):r.set(e,t)}handleUpdateValues(e,t){for(var{dh:r,links:i,timeZone:a}=this.props,l=new Map,s=0;s<i.length;s+=1){var{start:o,end:u,operator:d}=i[s];if(o.panelId===e&&u!=null){var h,c,{panelId:v,columnName:g,columnType:m}=u,f=l.get(v),b=f??new Map,y=(h=(c=b.get(g))===null||c===void 0?void 0:c.filterList)!==null&&h!==void 0?h:[],{visibleIndex:C,isExpandable:T,isGrouped:w}=t[o.columnName],{value:O}=t[o.columnName],D="".concat(O);if(O===null&&T&&w&&(O=void 0),m!=null&&S.isDateType(m)){var N=new _r(r,{timeZone:a,showTimeZone:!1,showTSeparator:!0,defaultDateTimeFormatString:le.FULL_DATE_FORMAT});D=N.format(O)}y.push({operator:d,text:D,value:O,startColumnIndex:C}),b.set(g,{columnType:m,filterList:y}),l.set(v,b)}}l.forEach((M,F)=>{this.setPanelFilterMap(F,M)})}handlePanelCloned(e,t){var{links:r}=this.props,i=H.getIdFromPanel(e),a=t.id;if(i!=null){var l=Rt.cloneLinksForPanel(r,i,a);this.addLinks(l)}}handlePanelDragging(e){for(var{links:t}=this.props,r=0;r<t.length;r+=1){var i=t[r],{start:a,end:l}=i;if(a.panelId===e||(l==null?void 0:l.panelId)===e){this.setState({isDraggingPanel:!0});return}}}handlePanelDropped(){this.setState({isDraggingPanel:!1})}handlePanelClosed(e){Ee.debug("Panel ".concat(e," closed, deleting links.")),this.deleteLinksForPanelId(e)}handleLinkSelected(e){this.setState({selectedIds:new Set([e])})}handleLinksUpdated(e){var{localDashboardId:t,setDashboardLinks:r}=this.props;r(t,e)}handleLayoutStateChanged(){this.forceUpdate()}handleStateChange(){this.forceUpdate()}handleExited(){var{localDashboardId:e,setDashboardIsolatedLinkerPanelId:t}=this.props;t(e,void 0)}deleteLinksForPanelId(e){for(var{links:t}=this.props,r=0;r<t.length;r+=1){var i=t[r],{start:a,end:l,id:s}=i;(a.panelId===e||(l==null?void 0:l.panelId)===e)&&this.handleLinkDeleted(s)}}isOverlayShown(){var{activeTool:e}=this.props;return e===et.LINKER}updateSelectionValidators(){var{activeTool:e,setDashboardColumnSelectionValidator:t,localDashboardId:r}=this.props;switch(e){case et.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:rl(rl({},r),{},{type:e})}:null})}isColumnSelectionValid(e,t,r){var i,{linkInProgress:a}=this.state,{isolatedLinkerPanelId:l}=this.props,s=typeof e=="string"?r.type==="filterSource"||r.type==="chartLink":H.getComponentNameFromPanel(e)!=="IrisGridPanel";if(t==null)return(a==null?void 0:a.start)!=null&&this.updateLinkInProgressType("invalid"),!1;if(!za(t))return Ee.debug2("Column is not filterable",t.description),(a==null?void 0:a.start)!=null&&this.updateLinkInProgressType("invalid"),!1;if((a==null?void 0:a.start)==null)return!0;var{isReversed:o=!1,start:u}=a,d=typeof e=="string"?e:H.getIdFromPanel(e);if(d==null)return!1;if(o&&s)return this.updateLinkInProgressType("invalid"),!1;var h={panelId:d,columnName:t.name,columnType:t.type},c=o?Rt.isLinkValid(h,u,l):Rt.isLinkValid(u,h,l);return this.updateLinkInProgressType(c?(i=a.endType)!==null&&i!==void 0?i:r.type:"invalid"),c}render(){var{links:e,isolatedLinkerPanelId:t,panelManager:r}=this.props,{linkInProgress:i,selectedIds:a,isDraggingPanel:l}=this.state,s=this.isOverlayShown(),o=i!=null&&i.start!=null,u=t===void 0?"Click a column source, then click a column target to create a filter link. The filter comparison operator used by a selected link can be changed. Delete a filter link by clicking the delete button or with alt+click. Click done when finished.":"Create a link between the source column button and a table column by clicking on one, then the other. Delete a filter link by clicking the delete button or with alt+click. Click done when finished.";return l?null:p.jsx(Dn,{in:s,mountOnEnter:!0,unmountOnExit:!0,onExited:this.handleExited,children:p.jsx(Ps,{disabled:o,panelManager:r,links:this.getCachedLinks(e,i,t),selectedIds:a,messageText:u,onLinkSelected:this.handleLinkSelected,onLinkDeleted:this.handleLinkDeleted,onAllLinksDeleted:this.handleAllLinksDeleted,onLinksUpdated:this.handleLinksUpdated,onDone:this.handleDone,onCancel:this.handleCancel,linkTargetPropMap:this.linkTargetPropMap})})}}var Ep=yp(Sp);function Ds(n){Yt(n);var{id:e,layout:t,panelManager:r}=n;return p.jsx(Ep,{layout:t,localDashboardId:e,panelManager:r})}var wp={name:"LinkerPlugin",type:Dt.DASHBOARD_PLUGIN,component:Ds};function Os(n){Yt(n);var{id:e,layout:t,panelManager:r,registerComponent:i}=n,a=E.useCallback(function(){var{title:l="",metadata:s={},id:o=Ue(),focusElement:u=H.DEFAULT_FOCUS_SELECTOR,createNewStack:d=!1,dragEvent:h=void 0}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},c=r.getOpenedPanelConfigsOfType(ur.COMPONENT),v=c.map(y=>{var C;return(C=y.title)!==null&&C!==void 0?C:""}),g=l!=null&&l!==""?l:it.getNewMarkdownTitle(v),m=null,f={type:"react-component",component:ur.COMPONENT,props:{id:o,metadata:s,panelState:{content:m},localDashboardId:e},title:g,id:o},{root:b}=t;H.openComponent({root:b,config:f,focusElement:u,createNewStack:d,dragEvent:h})},[e,t,r]);return E.useEffect(function(){var s=[i(ur.COMPONENT,ur)];return()=>{s.forEach(o=>o())}},[i]),we(t.eventHub,Wl.OPEN,a),null}var Tp={name:"MarkdownPlugin",type:Dt.DASHBOARD_PLUGIN,component:Os};function nl(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function il(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?nl(Object(t),!0).forEach(function(r){Pp(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):nl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Pp(n,e,t){return(e=Dp(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Dp(n){var e=Op(n,"string");return typeof e=="symbol"?e:e+""}function Op(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var mi=E.forwardRef((n,e)=>{var{localDashboardId:t,fetch:r,metadata:i}=n,a=ps(r,t,i);return p.jsx(ln,il(il({ref:e},n),a))});mi.displayName="PandasPanelPlugin";function Fs(n){var{fetch:e}=n,t=ms(e);if(t.status==="loading")return p.jsx(vt,{isLoading:!0,"data-testid":"pandas-widget-plugin-loading"});if(t.status==="error")return p.jsx(vt,{errorMessage:wl(t.error),isLoading:!1,"data-testid":"pandas-widget-plugin-loading-error"});var{model:r,reload:i}=t;return p.jsx(Jr,{model:r,children:p.jsx(os,{onClick:i})})}var Fp={name:"PandasPanel",title:"Pandas",type:Dt.WIDGET_PLUGIN,component:Fs,panelComponent:mi,supportedTypes:"pandas.DataFrame",icon:uu};function al(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Nt(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?al(Object(t),!0).forEach(function(r){Np(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):al(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Np(n,e,t){return(e=Mp(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Mp(n){var e=Rp(n,"string");return typeof e=="symbol"?e:e+""}function Rp(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ip=ee.module("WidgetLoaderPlugin");function kp(n){var e;function t(r,i){var a,l,s=n.component,{metadata:o}=r,u=Nt(Nt({},o),{},{type:(a=o==null?void 0:o.type)!==null&&a!==void 0?a:n.type,name:(l=o==null?void 0:o.name)!==null&&l!==void 0?l:"Widget"}),d=xo(s);return p.jsx(yr,Nt(Nt({descriptor:u},r),{},{children:d?p.jsx(s,Nt(Nt({},r),{},{ref:i})):p.jsx(s,Nt({},r))}))}return t.displayName="WidgetLoaderPlugin(".concat((e=n.component.displayName)!==null&&e!==void 0?e:n.name,")"),E.forwardRef(t)}function Ns(n){var e=yl(),t=E.useMemo(()=>{var s=new Map;return e.forEach(o=>{Lo(o)&&[o.supportedTypes].flat().forEach(u=>{if(u!=null&&u!==""){if(s.has(u)){var d;Ip.warn("Multiple WidgetPlugins handling type ".concat(u,". Replacing ").concat((d=s.get(u))===null||d===void 0?void 0:d.name," with ").concat(o.name," to handle ").concat(u))}s.set(u,o)}})}),s},[e]);Yt(n);var{id:r,layout:i,registerComponent:a}=n,l=E.useCallback(s=>{var o,{dragEvent:u,panelId:d=Ue(),fetch:h,widget:c}=s,{type:v}=c,g=v!=null?t.get(v):null;if(g!=null){var m=(o=c.name)!==null&&o!==void 0?o:v,f={localDashboardId:r,metadata:c,fetch:h},b={type:"react-component",component:g.name,props:f,title:m,id:d},{root:y}=i;H.openComponent({root:y,config:b,dragEvent:u})}},[r,i,t]);return E.useEffect(()=>{var s=[...new Set(t.values())].map(o=>{var{panelComponent:u}=o;return u==null?a(o.name,kp(o)):a(o.name,u)});return()=>{s.forEach(o=>o())}},[a,t]),Ao(i.eventHub,l),null}var Lp={name:"WidgetLoaderPlugin",type:Dt.DASHBOARD_PLUGIN,component:Ns};function sn(n,e,t){return(e=Ap(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ap(n){var e=xp(n,"string");return typeof e=="symbol"?e:e+""}function xp(n,e){if(typeof n!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Sr{}sn(Sr,"DROPDOWN_FILTER","ControlType.DROPDOWN_FILTER");sn(Sr,"INPUT_FILTER","ControlType.INPUT_FILTER");sn(Sr,"MARKDOWN","ControlType.MARKDOWN");sn(Sr,"FILTER_SET_MANAGER","ControlType.FILTER_SET_MANAGER");var jp=ie.shape({state:ie.shape({panelState:ie.shape({})})}),_p=ie.shape({panelId:ie.string.isRequired,columnName:ie.string.isRequired,columnType:ie.string.isRequired}),ll=ie.shape({panelId:ie.string.isRequired,columnName:ie.string.isRequired}),Ms=ie.shape({start:ll,end:ll,id:ie.string,isReversed:ie.bool}),Vp=ie.arrayOf(Ms),$p=ie.shape({name:ie.string.isRequired,operateAs:ie.string.isRequired,groups:ie.arrayOf(ie.string).isRequired,permissions:ie.shape({canUsePanels:ie.bool.isRequired,canCopy:ie.bool.isRequired,canDownloadCsv:ie.bool.isRequired,canLogout:ie.bool.isRequired}).isRequired}),Hp=Object.freeze({LinkPoint:_p,Link:Ms,Links:Vp,Panel:jp,User:$p}),Gp=(n,e)=>n[e]===null?null:ie.bool,Bp=(n,e)=>n[e]===null?null:ie.string,Up=Object.freeze({nullableBoolean:Gp,nullableString:Bp});const dm=Object.freeze(Object.defineProperty({__proto__:null,ChartBuilderPlugin:hs,ChartBuilderPluginConfig:Uv,ChartEvent:Wt,ChartPanel:li,ChartPanelPlugin:hi,ChartPluginConfig:Gv,ChartWidgetPlugin:ds,CommandHistoryPanel:gl,CommonPropTypes:Up,ConsoleEvent:Vr,ConsolePanel:Lr,ConsolePlugin:Xv,ControlType:Sr,CorePanel:Av,DropdownFilterPanel:Vt,FileExplorerPanel:bl,FilterPlugin:vs,FilterPluginConfig:Yv,FilterSetManager:mr,FilterSetManagerPanel:Ar,GridPanelPlugin:vi,GridPluginConfig:op,GridWidgetPlugin:ys,InputFilterEvent:ht,InputFilterPanel:$t,IrisGridEvent:Fe,IrisGridPanel:si,LinkerPlugin:Ds,LinkerPluginConfig:wp,LinkerUtils:Rt,LogPanel:Cl,MarkdownEvent:Wl,MarkdownPanel:ur,MarkdownPlugin:Os,MarkdownPluginConfig:Tp,MockFileStorage:Lv,NotebookEvent:oe,NotebookPanel:St,PandasEvent:Yn,PandasPanel:ln,PandasPanelPlugin:mi,PandasPluginConfig:Fp,PandasWidgetPlugin:Fs,Panel:xv,TabEvent:hc,ToolType:et,UIPropTypes:Hp,WidgetLoaderPlugin:Ns,WidgetLoaderPluginConfig:Lp,WidgetPanel:yr,WidgetPanelTooltip:Zn,addDashboardLinks:Kl,deleteDashboardLinks:Xl,getColumnSelectionValidatorForDashboard:br,getColumnsForDashboard:Gn,getDashboardConnection:jo,getDashboardConsoleSettings:_o,getDashboardSessionWrapper:pl,getFilterSetsForDashboard:cl,getInputFiltersForDashboard:gr,getIsolatedLinkerPanelIdForDashboard:Kr,getLinksForDashboard:Tt,getTableMapForDashboard:qr,isChartPanelDehydratedProps:ts,isChartPanelFigureMetadata:Jl,isChartPanelTableMetadata:_t,isGLChartPanelState:es,isIrisGridPanelMetadata:as,isLegacyIrisGridPanelMetadata:is,setDashboardColumnSelectionValidator:Yl,setDashboardConnection:mc,setDashboardConsoleSettings:Zl,setDashboardFilterSets:Ql,setDashboardIsolatedLinkerPanelId:Qn,setDashboardLinks:en,setDashboardSessionWrapper:fc,useConfigureRuff:cs,useDashboardColumnFilters:fs,useGridLinker:gs,useLoadTablePlugin:ci,useTablePlugin:Cs},Symbol.toStringTag,{value:"Module"}));export{K as $,er as A,Hu as B,Wn as C,Ol as D,Yt as E,Dn as F,hd as G,Qr as H,rd as I,Ll as J,ne as K,I as L,Al as M,Bt as N,pr as O,Hi as P,Pd as Q,$l as R,zn as S,S as T,Hl as U,kn as V,$ as W,Zh as X,Jr as Y,xl as Z,Nn as _,Gu as a,fn as a0,Cr as a1,Ln as a2,W as a3,Gl as a4,Kh as a5,$h as a6,Ut as a7,Oh as a8,bn as a9,ct as aa,um as ab,om as ac,Xi as ad,ah as ae,Qe as af,na as ag,dm as ah,Nl as ai,Un as aj,lm as ak,_l as al,$d as am,G as an,Mn as ao,j as ap,sm as aq,Bd as ar,ed as as,Ju as at,td as au,em as av,vr as aw,Jp as ax,P as ay,jh as az,le as b,Bu as c,Ke as d,Fn as e,Uu as f,Kp as g,Ml as h,ud as i,Rl as j,Zp as k,tm as l,Xp as m,Yp as n,Qp as o,Ku as p,rm as q,nm as r,Il as s,kl as t,yu as u,nd as v,id as w,dd as x,am as y,im as z};
13
- //# sourceMappingURL=index-DsTg7BZt.js.map
13
+ //# sourceMappingURL=index-xys9qLny.js.map