@deephaven/embed-widget 1.19.1-console-types-fixes.0 → 1.20.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. package/build/assets/{App-DGG5i7aH.js → App-DB2ALvjW.js} +2 -2
  2. package/build/assets/{App-DGG5i7aH.js.map → App-DB2ALvjW.js.map} +1 -1
  3. package/build/assets/{Chart-DKHh5Uao.js → Chart-B3tA7j40.js} +2 -2
  4. package/build/assets/{Chart-DKHh5Uao.js.map → Chart-B3tA7j40.js.map} +1 -1
  5. package/build/assets/{IrisGrid-BPzHFgId.js → IrisGrid-D70Mca2_.js} +5 -5
  6. package/build/assets/IrisGrid-D70Mca2_.js.map +1 -0
  7. package/build/assets/{IrisGridThemeProvider-Cwryl7U7.js → IrisGridThemeProvider-BN7Uf3rs.js} +3 -3
  8. package/build/assets/{IrisGridThemeProvider-Cwryl7U7.js.map → IrisGridThemeProvider-BN7Uf3rs.js.map} +1 -1
  9. package/build/assets/{LocalWorkspaceStorage-D4ztC6j2.js → LocalWorkspaceStorage-CYV0tWOj.js} +2 -2
  10. package/build/assets/{LocalWorkspaceStorage-D4ztC6j2.js.map → LocalWorkspaceStorage-CYV0tWOj.js.map} +1 -1
  11. package/build/assets/LogPanel-DoNH0VZo.js +22 -0
  12. package/build/assets/LogPanel-DoNH0VZo.js.map +1 -0
  13. package/build/assets/{MarkdownEditor-QbBDn7vq.js → MarkdownEditor-6EfnAIfX.js} +2 -2
  14. package/build/assets/{MarkdownEditor-QbBDn7vq.js.map → MarkdownEditor-6EfnAIfX.js.map} +1 -1
  15. package/build/assets/{MarkdownNotebook-DYEUeoZY.js → MarkdownNotebook-DbLY2Ii4.js} +2 -2
  16. package/build/assets/{MarkdownNotebook-DYEUeoZY.js.map → MarkdownNotebook-DbLY2Ii4.js.map} +1 -1
  17. package/build/assets/{index-C6GbaYN7.js → index-D_Z2Er8S.js} +4 -4
  18. package/build/assets/{index-C6GbaYN7.js.map → index-D_Z2Er8S.js.map} +1 -1
  19. package/build/assets/{index-DeCsn-jO.js → index-Dms3SQTc.js} +3 -3
  20. package/build/assets/{index-DeCsn-jO.js.map → index-Dms3SQTc.js.map} +1 -1
  21. package/build/assets/index-fg-vlmrx.js +13 -0
  22. package/build/assets/index-fg-vlmrx.js.map +1 -0
  23. package/build/index.html +2 -2
  24. package/package.json +17 -17
  25. package/build/assets/IrisGrid-BPzHFgId.js.map +0 -1
  26. package/build/assets/LogPanel-BmImrjX0.js +0 -22
  27. package/build/assets/LogPanel-BmImrjX0.js.map +0 -1
  28. package/build/assets/index-DheYrF9m.js +0 -13
  29. package/build/assets/index-DheYrF9m.js.map +0 -1
@@ -0,0 +1,13 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./Chart-B3tA7j40.js","./vendor-B6iGzW5m.js","./helpers-BosuxZz1.js","./vendor-CdNlUFKS.css","./index-Dms3SQTc.js","./index-CSv_gtZy.css","./Plotly-DmMXXqmC.js","./plotly-Dgibcuuy.js","./LogPanel-DoNH0VZo.js","./LogPanel-1yyBsI72.css","./DownsamplingError--AAvWHv_.js","./useMergeRef-awpRvrm-.js","./Chart-CTDcF-lR.css","./IrisGrid-D70Mca2_.js","./IrisGridThemeProvider-BN7Uf3rs.js","./useResizeObserver-7SXjjVzg.js","./IrisGridThemeProvider-Dsd6y6kc.css","./IrisGrid-BIOgeeAe.css","./MarkdownEditor-6EfnAIfX.js","./MarkdownNotebook-DbLY2Ii4.js","./MarkdownNotebook-CmpkKxys.css"])))=>i.map(i=>d[i]);
2
+ import{r as E,D as p,G as Me,H as Us,J as Re,bp as Ws,I as Fe,bq as _n,br as zs,bs as qs,bt as Ks,bu as Xs,ah as Ge,C as Ue,_ as qr,bv as wn,ae as Be,bw as Ys,E as Zs,bx as U,bn as bi,bc as Ci,by as Qs,bz as Js,be as eo,bA as _r,bB as Pt,af as Tt,aS as to,aR as yi,R as ro,L as ol,N as no,bC as ae}from"./vendor-B6iGzW5m.js";import{cp as io,cq as ao,cr as lo,cs as so,ct as oo,cu as uo,cv as ho,cw as co,cx as vo,cy as po,cz as Vn,am as Gt,B as Le,cA as Ze,cB as cn,ai as Vr,aj as mo,ak as fo,E as Q,ci as go,aE as bo,aA as Co,be as $n,aF as yo,cC as dr,cD as le,bS as ht,r as Si,cc as ut,bU as Tn,aI as So,a6 as ul,L as Eo,O as He,cE as wo,cF as kt,cG as Dt,b4 as Ot,J,cH as Xt,cI as ct,cJ as dl,cK as Kr,aT as hl,cL as Hn,cM as Xr,cd as Yr,cN as br,cO as Cr,cP as Gn,ao as H,_ as vr,cQ as cl,cR as Bn,au as To,cS as Po,cT as vl,Z as Do,aR as Oo,aC as ke,cU as No,cV as Fo,cW as pl,cX as ml,ce as Ve,cY as oe,cZ as $r,U as Pn,A as Dn,G as fl,c_ as Mo,V as Ei,c$ as wi,cf as Ro,d0 as gl,u as Zr,bk as Nt,bf as we,b6 as Hr,cl as Ar,d1 as Io,ay as ko,cn as bl,co as Cl,cm as yl,bi as Sl,bB as Lo,by as Ao,bd as El,bh as wl,bL as Tl,bE as xo,bF as jo,bn as _o,bo as Vo,ap as $o,a5 as Ho,d2 as Go,d3 as Bo}from"./LogPanel-DoNH0VZo.js";import{T as Uo,ap as Wo,aq as zo,ac as qo,a as ee,ao as Ko,u as M,ar as Xo,L as pt,as as At,k as Yo,at as Zo,au as Un,av as Pl,aw as Qo,ax as Dl,v as Qr,ay as Ol,az as Ti,aA as Pi,aB as Jo,aC as eu,d as tu,G as ru,e as nu,aD as iu,aE as au,aF as lu,aG as su,aH as ou,aI as uu,h as vn,aJ as du,aK as hu,aL as cu,aM as vu,aN as pu}from"./index-Dms3SQTc.js";function Wn(n){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,t=mu(n,e);t.forEach(r=>{n[r]=n[r].bind(n)})}function mu(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 fu(n){return n!=null}function zn(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 gu=["classNames","timeout","children","onEnter"];function Di(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Oi(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Di(Object(t),!0).forEach(function(r){bu(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Di(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function bu(n,e,t){return(e=Cu(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Cu(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)}function Su(n,e){if(n==null)return{};var t,r,i=Eu(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 Eu(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 wu={display:"contents"};function On(n){var{classNames:e,timeout:t=Uo.transitionMs,children:r,onEnter:i}=n,a=Su(n,gu),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(Us,Oi(Oi({nodeRef:l,timeout:t,classNames:Me("fade",e),onEnter:s},a),{},{children:p.jsx("div",{ref:o,style:wu,children:r})}))}var qn=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}=Ws({},"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(Fe,{icon:Wo,className:"linked btn-socketed-icon",transform:"down-1"}),p.jsx(Fe,{icon:zo,className:"is-invalid btn-socketed-icon"})]})});qn.displayName="SocketedButton";function Ni(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 Tu(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Ni(a,r,i,l,s,"next",o)}function s(o){Ni(a,r,i,l,s,"throw",o)}l(void 0)})}}var Nl=E.createContext(null);Nl.displayName="DeferredApiContext";function Pu(n){var[e,t]=E.useState(null),[r,i]=E.useState(null),a=E.useContext(Nl),l=E.useContext(qo);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=Tu(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 pn(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){Du(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 Du(n,e,t){return(e=Ou(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ou(n){var e=Nu(n,"string");return typeof e=="symbol"?e:e+""}function Nu(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?pn(pn({},t),i):pn({},i)}default:return t}}}function Ft(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 Fu=Ft(io,null),Mu=Ft(ao,null),Ru=Ft(lo,null),Iu=Ft(so,null),ku=Ft(oo,null),Lu=Ft(uo,null),Au=_n({commandHistoryStorage:Iu,fileStorage:ku,workspaceStorage:Lu}),xu=Fl(ho,null),ju=Fl(co,null),_u=Ft(vo,null),Vu=Ft(po,null);var $u={activeTool:Mu,api:Fu,plugins:Ru,storage:Au,user:xu,workspace:ju,defaultWorkspaceSettings:_u,serverConfigValues:Vu},Mi=ee.module("redux-logger"),Hu=n=>e=>t=>{Mi.debug("dispatching",t);var r=e(t);return Mi.debug("next state",n.getState()),r},Gu=ee.module("redux-crashReporter"),Bu=n=>e=>t=>{try{return e(t)}catch(r){throw Gu.error("Error executing",t," with state ",n.getState(),":",r),r}};const Uu=[Hu,Bu,zs];var mn;Object.entries($u).map(n=>{var[e,t]=n;return Vn.register(e,t)});var Wu=(mn=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__)!==null&&mn!==void 0?mn:Xs,Ml=qs(_n(Vn.reducers),Wu(Ks(...Uu)));Vn.setListener(n=>{Ml.replaceReducer(_n(n))});class zu extends Gt{format(e){switch(e){case 1:case!0:return"true";case 0:case!1:return"false";default:return""}}}class qu extends Gt{format(e){return String.fromCharCode(e)}}class Ku extends Gt{format(e){return"".concat(e)}}class Xu extends Gt{format(e){return e}}function Ri(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Ii(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ri(Object(t),!0).forEach(function(r){Kn(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ri(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Kn(n,e,t){return(e=Yu(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Yu(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 se{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(se.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=se.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 se.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<se.months.length;i+=1)if(se.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?Ii(Ii({},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=se.makeDateWrapper(e,r,a.getFullYear(),a.getMonth(),a.getDate()),s=new Date(a.getFullYear(),a.getMonth(),a.getDate()+1),o=se.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=se.makeDateWrapper(e,r,d.getFullYear(),d.getMonth(),d.getDate()),c=se.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=se.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=se.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=se.makeDateWrapper(e,r,f.year,f.month,f.date,f.hours,f.minutes,f.seconds,f.nanos),y=se.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=""}=se.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)}}Kn(se,"FULL_DATE_FORMAT","yyyy-MM-dd HH:mm:ss.SSSSSSSSS");Kn(se,"months",["january","february","march","april","may","june","july","august","september","october","november","december"]);function Qp(n,e){return n===e?{operator:"notEq",value:""}:{operator:"eq",value:n}}function Jp(n,e,t,r){return function(a){var l=t.trim();if(l==="")return null;var s=Rl(e,o=>n.makeSearchTextFilter(o,l,r),"or");return s(a)}}function Rl(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 Ju(n,e,t,r){return Rl(e,i=>i.filter()[r](n.makeFilterValue(i.type,t)),"or")}function em(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 tm(n){return function(t){return t.filter().isNull().not().and(t.filter().notEq(n.makeFilterValue(t.type,"")))}}function rm(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 Xn(n,e,t){return(e=ed(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ed(n){var e=td(n,"string");return typeof e=="symbol"?e:e+""}function td(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 pr{}Xn(pr,"not","not");Xn(pr,"and","and");Xn(pr,"or","or");function nm(n){if(!(n==="not"||n==="and"||n==="or"))throw new Error("operator is not a valid FilterOperatorValue")}function ce(n,e,t){return(e=rd(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function rd(n){var e=nd(n,"string");return typeof e=="symbol"?e:e+""}function nd(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 id(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 ad(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 ld(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 im(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 sd="DH_ITEM_KEY",ki=ee.module("ViewportDataUtils");function Il(n){return"".concat(sd,"_").concat(n)}function am(n,e){var{bulkUpdate:t}=n;return function(i){var{columns:a,offset:l,rows:s}=i.detail;ki.debug("table updated",i.detail);var o=new Map;s.forEach((u,d)=>{var h=e(u,a),c=Il(l+d);o.set(c,{key:c,item:h})}),ki.debug("update keys",o),t(o)}}function lm(n,e){return e.reduce((t,r)=>(t[r.name]=n.get(r),t),{})}function*sm(n,e){for(var t=n;t<=e;++t)yield{key:Il(t)}}function od(n){return n==null||ud(n)?0:n.size}function ud(n){return n!=null&&typeof n=="object"&&"isClosed"in n&&typeof n.isClosed=="boolean"?n.isClosed:!1}function om(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 Nn;function Li(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 St(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Li(a,r,i,l,s,"next",o)}function s(o){Li(a,r,i,l,s,"throw",o)}l(void 0)})}}function Lt(n,e,t){return(e=dd(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function dd(n){var e=hd(n,"string");return typeof e=="symbol"?e:e+""}function hd(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 um(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 St(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(cn(...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 Ko('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,Wn(this)}createDistinctSortedColumnTable(e,t,r){var i=arguments,a=this;return St(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(cn(...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 St(function*(){if(e==null)return null;var l=Ju(a,t,r,i?"eq":"eqIgnoreCase"),s=yield e.copy();yield a.applyFilter(s,cn(l(s)));var o=od(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]=se.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===pr.and)o=o.and(v);else if(g===pr.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 M(a),a}if(i===this.dh.ValueType.DATETIME)return this.makeQuickDateFilterWithOperation(e,se.trimDateTimeStringTimeZone(t),"eq",r);if(i===this.dh.ValueType.NUMBER){var l=this.makeQuickNumberFilter(e,t);return M(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 St(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 St(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 St(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 St(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]=se.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)}}Nn=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=St(function*(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:Nn.APPLY_TABLE_CHANGE_TIMEOUT_MS;if(t==null)return null;var a=Nn.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=cd(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function cd(n){var e=vd(n,"string");return typeof e=="symbol"?e:e+""}function vd(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 Ku,this.typeFormatterMap=new Map([[S.dataType.BOOLEAN,new zu],[S.dataType.CHAR,new qu],[S.dataType.DATETIME,new Vr(e,r)],[S.dataType.DECIMAL,new mo(e,i)],[S.dataType.INT,new fo(e,a)],[S.dataType.STRING,new Xu]]),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 Xo(e,Vr),e.dhTimeZone.id}}function pd(n,e){var t=kl(e),r=Ll(e),{defaultDecimalFormatOptions:i,defaultIntegerFormatOptions:a,truncateNumbersWithPound:l,showEmptyStrings:s,showNullStrings:o}=e??{};return new Ke(n,t,r,i,a,l,s,o)}function kl(n){if(n&&n.formatter){var{formatter:e}=n;return e}}function Ll(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 md(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:pd,getColumnFormats:kl,getDateTimeFormatterOptions:Ll,isCustomColumnFormatDefined:md};function fd(n){return typeof n.id=="string"&&n.layout instanceof go&&n.panelManager instanceof bo&&typeof n.registerComponent=="function"}function Yt(n){if(!fd(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 Jr(){var n=E.useContext(Co);if(n==null)throw new Error("LayoutManager not available, did you add a LayoutManagerContext.Provider to the tree?");return n}function gd(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 Al(n,e){var t=$n(),r=E.useMemo(()=>Ue(),[]),i=E.useContext(yo),{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?gd(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 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 bd(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){Cd(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 Cd(n,e,t){return(e=yd(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function yd(n){var e=Sd(n,"string");return typeof e=="symbol"?e:e+""}function Sd(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 Ed=E.lazy(()=>qr(()=>import("./Chart-B3tA7j40.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12]),import.meta.url));function xl(n){return p.jsx(E.Suspense,{fallback:p.jsx(pt,{"data-testid":"lazy-chart-loading"}),children:p.jsx(Ed,bd({},n))})}function xi(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var 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?xi(Object(t),!0).forEach(function(r){Pe(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):xi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Pe(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=Td(n,"string");return typeof e=="symbol"?e:e+""}function Td(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"),ji="io.deephaven.time.DateTime",Pd=36e5,Dd=1e6;function Od(n){return n.asDate!==void 0}function Nd(n){return n.asNumber!==void 0}function _i(n){return n.dhTimeZone!==void 0}function Fd(n){return n!=null&&n.range!=null&&(n.autorange===!1||n.autorange===void 0)}function Md(){try{var n=document.createElement("canvas"),e=n.getContext("webgl")||n.getContext("experimental-webgl");return e!=null&&e instanceof WebGLRenderingContext}catch{return!1}}var Rd=Md();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*)(%?)(.*)/);M(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/Dd),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];Fd(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()),Wn(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(F=>F.axis),g=0;g<v.length;g+=1){var m=v[g],{axis:f}=m,{type:b}=f,y=l.get(b);M(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&&Rd&&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);wn.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&&_i(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;M(C),M(T);for(var D=0;D<C.length;D+=1){var F=C[D],R=T.indexOf(F),N=I.getAxisLayoutProperty(y,R);h[N]==null&&(h[N]={});var L=h[N];if(L!=null){this.updateLayoutAxis(L,F,D,c,u,d,l);var{range:x,autorange:_}=L;if(s!=null&&x!==void 0&&(_===void 0||_===!1)){var W=s(F),[X,te]=W(x);tr.debug("Setting downsample range",O,X,te),F.range(O,X,te)}else F.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);M(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)||[],F=Math.max(s.bottom,s.bottom+(O.length-1)*a),R=Math.min(s.top-(D.length-1)*a,s.top);c.domain=[F,R]}var{minRange:N,maxRange:L,log:x}=t;(!Number.isNaN(N)||!Number.isNaN(L))&&(c.autorangeoptions={},Number.isNaN(N)||(c.autorangeoptions.minallowed=x?Math.log10(N):N),Number.isNaN(L)||(c.autorangeoptions.maxallowed=x?Math.log10(L):L))}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(ji),u;_i(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=Pd*(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,ji,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(Od(e))return r.i18n.DateTimeFormat.format(I.DATE_FORMAT,e,t);if(Nd(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:wr({},I.DEFAULT_TITLE_PADDING),y:1},legend:{font:{color:a}},margin:wr({},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 wr(wr({},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 be(n,e,t){return(e=Id(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Id(n){var e=kd(n,"string");return typeof e=="symbol"?e:e+""}function kd(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 ie{constructor(e){be(this,"dh",void 0),be(this,"listeners",void 0),be(this,"formatter",void 0),be(this,"renderOptions",void 0),be(this,"rect",void 0),be(this,"isDownsamplingDisabled",void 0),be(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(ie.EVENT_UPDATED,{detail:e}))}fireDisconnect(){this.fireEvent(new CustomEvent(ie.EVENT_DISCONNECT))}fireReconnect(){this.fireEvent(new CustomEvent(ie.EVENT_RECONNECT))}fireDownsampleStart(e){this.fireEvent(new CustomEvent(ie.EVENT_DOWNSAMPLESTARTED,{detail:e}))}fireDownsampleFinish(e){this.fireEvent(new CustomEvent(ie.EVENT_DOWNSAMPLEFINISHED,{detail:e}))}fireDownsampleFail(e){this.fireEvent(new CustomEvent(ie.EVENT_DOWNSAMPLEFAILED,{detail:e}))}fireDownsampleNeeded(e){this.fireEvent(new CustomEvent(ie.EVENT_DOWNSAMPLENEEDED,{detail:e}))}fireLoadFinished(){this.fireEvent(new CustomEvent(ie.EVENT_LOADFINISHED))}fireError(e){this.fireEvent(new CustomEvent(ie.EVENT_ERROR,{detail:e}))}fireBlocker(e){this.fireEvent(new CustomEvent(ie.EVENT_BLOCKER,{detail:e}))}fireBlockerClear(){this.fireEvent(new CustomEvent(ie.EVENT_BLOCKER_CLEAR))}fireLayoutUpdated(e){this.fireEvent(new CustomEvent(ie.EVENT_LAYOUT_UPDATED,{detail:e}))}}be(ie,"EVENT_UPDATED","ChartModel.EVENT_UPDATED");be(ie,"EVENT_DISCONNECT","ChartModel.EVENT_DISCONNECT");be(ie,"EVENT_RECONNECT","ChartModel.EVENT_RECONNECT");be(ie,"EVENT_DOWNSAMPLESTARTED","ChartModel.EVENT_DOWNSAMPLESTARTED");be(ie,"EVENT_DOWNSAMPLEFINISHED","ChartModel.EVENT_DOWNSAMPLEFINISHED");be(ie,"EVENT_DOWNSAMPLEFAILED","ChartModel.EVENT_DOWNSAMPLEFAILED");be(ie,"EVENT_DOWNSAMPLENEEDED","ChartModel.EVENT_DOWNSAMPLENEEDED");be(ie,"EVENT_LOADFINISHED","ChartModel.EVENT_LOADFINISHED");be(ie,"EVENT_ERROR","ChartModel.EVENT_ERROR");be(ie,"EVENT_BLOCKER","ChartModel.EVENT_BLOCKER");be(ie,"EVENT_BLOCKER_CLEAR","ChartModel.EVENT_BLOCKER_CLEAR");be(ie,"EVENT_LAYOUT_UPDATED","ChartModel.EVENT_LAYOUT_UPDATED");function Vi(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function $i(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Vi(Object(t),!0).forEach(function(r){me(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Vi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function me(n,e,t){return(e=Ld(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ld(n){var e=Ad(n,"string");return typeof e=="symbol"?e:e+""}function Ad(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 mr extends ie{constructor(e,t){var r,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};super(e),r=this,me(this,"chartUtils",void 0),me(this,"dh",void 0),me(this,"figure",void 0),me(this,"settings",void 0),me(this,"data",void 0),me(this,"layout",void 0),me(this,"seriesDataMap",void 0),me(this,"pendingSeries",void 0),me(this,"oneClicks",void 0),me(this,"filterColumnMap",void 0),me(this,"lastFilter",void 0),me(this,"isConnected",void 0),me(this,"seriesToProcess",void 0),me(this,"addPendingSeries",wn.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=[]},mr.ADD_SERIES_DEBOUNCE)),me(this,"getTimeZone",Be((a,l)=>{if(l!=null){var s=l.getColumnTypeFormatter(a);if(s!=null)return s.dhTimeZone}},{max:100})),me(this,"getValueTranslator",Be((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.unwrapValue(o,s)},{max:100})),me(this,"getValueParser",Be((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.wrapValue(o,a,s)},{max:100})),me(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})),me(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(N=>N.type===e.dh.plot.AxisType.X),y=m.find(N=>N.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(N=>N===b))!==null&&C!==void 0?C:0)+1,F=((w=(O=r.get(y.type))===null||O===void 0?void 0:O.findIndex(N=>N===y))!==null&&w!==void 0?w:0)+1,R={align:"center",x:.5,y:1,yshift:17,text:f,showarrow:!1,xref:"x".concat(D," domain"),yref:"y".concat(F," domain")};e.layout.annotations==null?e.layout.annotations=[R]:e.layout.annotations.push(R)}}},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=$i({},this.layout.title),this.layout.title.text=e,this.layout.title.pad=$i({},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&&wn.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}}me(mr,"ADD_SERIES_DEBOUNCE",50);function Hi(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 fn(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Hi(a,r,i,l,s,"next",o)}function s(o){Hi(a,r,i,l,s,"throw",o)}l(void 0)})}}class Bt{static makeModelFromSettings(e,t,r){return fn(function*(){var i=yield Bt.makeFigureFromSettings(e,t,r);return new mr(e,i,t)})()}static makeFigureFromSettings(e,t,r){return fn(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 fn(function*(){return new mr(e,r,t)})()}}function Gi(n){return n.setFigure!==void 0}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 xd(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){jd(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 jd(n,e,t){return(e=_d(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function _d(n){var e=Vd(n,"string");return typeof e=="symbol"?e:e+""}function Vd(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 $d=E.lazy(()=>qr(()=>import("./IrisGrid-D70Mca2_.js"),__vite__mapDeps([13,1,2,3,4,5,8,9,14,11,15,16,17]),import.meta.url)),en=E.forwardRef((n,e)=>p.jsx(E.Suspense,{fallback:p.jsx(pt,{"data-testid":"lazy-iris-grid-loading"}),children:p.jsx($d,xd({ref:e},n))}));en.displayName="LazyIrisGrid";var Mn=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}(Mn||{}),Hd=Object.freeze([[Mn.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS,!1],[Mn.LINK_CHANGE_CLEARS_ALL_FILTERS,!1]]);const jl={DEFAULTS:Hd};var Y=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}(Y||{}),dm=[Y.SUM,Y.ABS_SUM,Y.MIN,Y.MAX,Y.VAR,Y.AVG,Y.MEDIAN,Y.STD,Y.FIRST,Y.LAST,Y.COUNT_DISTINCT,Y.DISTINCT,Y.COUNT,Y.UNIQUE],Gd=n=>{switch(n){default:return!1}},Bd=n=>{switch(n){case Y.MEDIAN:return!0;default:return!1}},_l=(n,e)=>{switch(n){case Y.COUNT:case Y.FIRST:case Y.LAST:case Y.COUNT_DISTINCT:case Y.DISTINCT:case Y.UNIQUE:return!0;case Y.MEDIAN:case Y.MIN:case Y.MAX:return S.isNumberType(e)||S.isDateType(e)||S.isTextType(e);case Y.SUM:case Y.ABS_SUM:case Y.VAR:case Y.AVG:case Y.STD:return S.isNumberType(e);case Y.SKIP:return!1}},Vl=(n,e)=>n.filter(t=>t.isProxy!==!0&&_l(e,t.type)),Ud=(n,e,t,r)=>Vl(n,e).map(i=>{var{name:a}=i;return a}).filter(i=>t.includes(i)?!r:r);const gn={isValidOperation:_l,isRollupOperation:Gd,isRollupProhibited:Bd,filterValidColumns:Vl,getOperationColumnNames:Ud};function Wd(n){return(n==null?void 0:n.hasExpandableRows)!==void 0}function lr(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 Kd=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",Kd);function Xd(n){return Array.isArray(n)&&n.length===2&&(n[0]===null||typeof n[0]=="number")&&(n[1]===null||typeof n[1]=="number")}function Tr(n){return Xd(n)&&n[0]!=null&&n[1]!=null}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 Pr(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){$l(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 $l(n,e,t){return(e=Yd(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Yd(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 hm(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,F=o[w],R=(O=h.get(F))!==null&&O!==void 0?O:0,N=(D=c.get(F))!==null&&D!==void 0?D:0,L=N===0;if(!T||!L){var x=R+N;L?x+=y:T&&(x-=y);var _=x-y,W=x+y;if(_<=b&&b<=W&&G.hasColumnSeparatorAtDepth(a,C,g.get(F),g.get(F+1)))return F;T=L}}T=!1;for(var X=d.length-1;X>=0;X-=1){var te,re,Z=d[X],ge=(te=h.get(Z))!==null&&te!==void 0?te:0,ve=(re=c.get(Z))!==null&&re!==void 0?re:0,k=ve===0;if(ge<u-ve)return null;if(!T||!k){var A=ge+ve;k?A+=y:T&&(A-=y);var V=A-y,B=A+y;if(V<=b&&b<=B&&G.hasColumnSeparatorAtDepth(a,C,g.get(Z),g.get(Z+1)))return Z;T=k}}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,F=O+v;if(D<=c&&c<=F)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&&!Tr(a.from)&&a.to===e?a.from===t?i.pop():i[i.length-1]=Pr(Pr({},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&&Tr(s.from)&&s.from[1]-s.from[0]===e[1]-e[0]&&s.to===e[0]?l[l.length-1]=Pr(Pr({},s),{},{to:a}):l.push({from:e,to:a});var o=l[l.length-1];return Tr(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;Tr(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,F=(O=a[C][1])!==null&&O!==void 0?O:Number.POSITIVE_INFINITY,R,N=[[D,v-1],[v,g],[g+1,F]].map(L=>{var[x,_]=L;return[Math.max(x,D),Math.min(_,F)]}).filter(L=>{var[x,_]=L;return x<=_}).map(L=>{var[x,_]=L;return v<=x&&g>=_?(R=[x+f,_+f],R):g<x?[x-h,_-h]:L}).map(L=>{var[x,_]=L;return m>x&&m<=_?[[x,m-1],[m+h,_+h]]:L===R?[L]:m<=x?[[x+h,_+h]]:[L]}).flat();b.push(...N)},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),F=t===s,R=0;Wd(a)&&a.hasExpandableRows&&F&&(R=m*(a.depthForRow(r)+1)+f);var N=O-R,L=T+g,x=w+D*.5;return C==="right"?L=T+N-g:C==="center"&&(L=T+N*.5),L+=R,{width:N-g*2,x:L,y:x}}static findTokensWithProtocolInText(e){var t=Ys(e);return t.filter(r=>r.type==="url"?/^https?:\/\//.test(r.value):!0)}}$l(G,"PIXELS_PER_LINE",100/3);function Wi(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function zi(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Wi(Object(t),!0).forEach(function(r){Qd(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Wi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Qd(n,e,t){return(e=Jd(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Jd(n){var e=eh(n,"string");return typeof e=="symbol"?e:e+""}function eh(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 Rn(n,e){var t=!1,r=Be(n,zi(zi({},e),{},{dispose:()=>{t||(t=!0,r.clear(),t=!1)}}));return r}function th(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 bn=5e3;class ih extends Zs{constructor(){super(...arguments),th(this,"getCachedTokensInText",Rn((e,t)=>{if(t>=e.length)return G.findTokensWithProtocolInText(e);var r=e.slice(t-1,bn).search(/\s/),i=t+r;r===-1&&(i=Math.min(bn,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]:bn,i=this.textForCell(e,t);return this.getCachedTokensInText(i,r)}renderTypeForCell(e,t){return"text"}}function In(n,e,t){return(e=ah(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ah(n){var e=lh(n,"string");return typeof e=="symbol"?e:e+""}function lh(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 mt=[],qi=new Set;class z extends ih{constructor(e){super(),In(this,"dh",void 0),In(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 mt}get groupedColumns(){return mt}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 mt}get initialMovedRows(){return mt}get initialColumnHeaderGroups(){return mt}get layoutHints(){return null}get frontColumns(){return mt}get backColumns(){return mt}get keyColumnSet(){return qi}get valueColumnSet(){return qi}get frozenColumns(){return mt}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}}In(z,"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 Et(n,e,t){return(e=sh(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function sh(n){var e=oh(n,"string");return typeof e=="symbol"?e:e+""}function oh(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 uh=ee.module("ColumnHeaderGroup");function Cn(n){return n instanceof yr}class yr{constructor(e){var{name:t,children:r,color:i,depth:a,childIndexes:l,parent:s}=e;Et(this,"name",void 0),Et(this,"children",void 0),Et(this,"depth",void 0),Et(this,"parent",void 0),Et(this,"color",void 0),Et(this,"childIndexes",void 0),Et(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&&uh.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(yr.NEW_GROUP_PREFIX)}isValid(){return this.children.length===this.childIndexes.length}}Et(yr,"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 dh(n){return Qe(n)&&n.partitionConfig!==void 0}var hh=["selectedValues"],ch=["selectedValues"];function Ki(n,e){if(n==null)return{};var t,r,i=vh(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 vh(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 Xi(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var 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?Xi(Object(t),!0).forEach(function(r){kn(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Xi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function kn(n,e,t){return(e=ph(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ph(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)}var rr=ee.module("IrisGridUtils");function cm(n){return n.partition!==void 0}function Yi(n){return Array.isArray(n.partitions)}function ft(n,e){return n>=0&&n<e.length}function fh(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 ft(u,s)&&(typeof d=="number"&&ft(d,s)||Array.isArray(d)&&ft(d[0],s)&&ft(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 ft(c,d)&&(typeof v=="number"&&ft(v,d)||Array.isArray(v)&&ft(v[0],d)&&ft(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 Yi(t)?a=t.partitions:t.partition!=null&&(a=[t.partition]),{isSelectingPartition:r,partitions:a,advancedSettings:new Map([...jl.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=Yi(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];M(a.startColumn),M(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!gn.isRollupProhibited(C)}),c=h.map(y=>{var{operation:C,selected:T,invert:w}=y;return gn.isRollupOperation(C)?[]:gn.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[Y.FIRST])!==null&&f!==void 0?f:[];v[Y.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 yr(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;M(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 F=d(O);b.push(...F.childIndexes),y=Math.max(y,F.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)&&fh(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){kn(this,"dh",void 0),kn(this,"tableUtils",void 0),this.dh=e,this.tableUtils=new S(e),Wn(this)}dehydrateIrisGridState(e,t){var{aggregationSettings:r={aggregations:Q,showOnTop:!1},advancedFilters:i,customColumnFormatMap:a,columnAlignmentMap:l=dr,isFilterBarShown:s,metricCalculator:o,metrics:{userColumnWidths:u=new Map,userRowHeights:d=new Map}={},quickFilters:h,customColumns:c,conditionalFormats:v=Q,reverse:g,rollupConfig:m,showSearchBar:f,searchValue:b,selectDistinctColumns:y=Q,selectedSearchColumns:C,sorts:T,invertSearchColumns:w,pendingDataMap:O=dr,frozenColumns:D,columnHeaderGroups:F,partitionConfig:R}=t,{columns:N}=e,L=Qe(e)?e.partitionColumns:[],x=o!=null?[...o.getUserColumnWidthsByName()]:[...u].filter(_=>{var[W]=_;return W!=null&&W>=0&&W<N.length}).map(_=>{var[W,X]=_;return[N[W].name,X]});return{advancedFilters:this.dehydrateAdvancedFilters(N,i),aggregationSettings:r,customColumnFormatMap:[...a],columnAlignmentMap:[...l],isFilterBarShown:s,quickFilters:$.dehydrateQuickFilters(h),sorts:$.dehydrateSort(T),userColumnWidths:x,userRowHeights:[...d],customColumns:[...c],conditionalFormats:[...v],reverse:g,rollupConfig:m,showSearchBar:f,searchValue:b,selectDistinctColumns:[...y],selectedSearchColumns:C,invertSearchColumns:w,pendingDataMap:this.dehydratePendingDataMap(N,O),frozenColumns:D,columnHeaderGroups:F==null?void 0:F.map(_=>{var W;return{name:_.name,children:_.children,color:(W=_.color)!==null&&W!==void 0?W:null}}),partitionConfig:this.dehydratePartitionConfig(L,R)}}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:F=[],frozenColumns:R,columnHeaderGroups:N,partitionConfig:L}=t,{columns:x,formatter:_}=e,W=Qe(e)?e.partitionColumns:[],X=new Map;return g.forEach(te=>{var re,[Z,ge]=te,ve=typeof Z=="string"||Z instanceof String?Z:(re=x[Z])===null||re===void 0?void 0:re.name;ve!=null&&X.set(ve,ge)}),{advancedFilters:this.hydrateAdvancedFilters(x,a,_.timeZone),aggregationSettings:l,customColumnFormatMap:new Map(s),columnAlignmentMap:new Map(o),isFilterBarShown:u,quickFilters:this.hydrateQuickFilters(x,d,_.timeZone),sorts:this.hydrateSort(x,h,!0),userColumnWidthsByName:X,userColumnWidths:new Map([...X].map(te=>{var[re,Z]=te;return[x.findIndex(ge=>ge.name===re),Z]}).filter(te=>{var[re]=te;return re!=null&&re>=0&&re<x.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(x,F),frozenColumns:R,columnHeaderGroups:$.parseColumnHeaderGroups(e,(r=N??((i=e.layoutHints)===null||i===void 0?void 0:i.columnGroups))!==null&&r!==void 0?r:[]).groups,partitionConfig:this.hydratePartitionConfig(W,L)}}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);M(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);M(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=Ki(t,hh);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=Ki(t,ch);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 M(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(se.FULL_DATE_FORMAT,e):null}hydrateDateTime(e){return e!=null?this.dh.i18n.DateTimeFormat.parse(se.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(fu)}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)=>(M(i.startRow),M(a.startRow),i.startRow-a.startRow)).map(i=>{var{startRow:a,endRow:l}=i;return M(a),M(l),t.RangeSet.ofRange(a,l)});return t.RangeSet.ofRanges(r)}static colorForValue(e,t,r,i){return S.isDateType(t)||r==="Date"?(M(e.dateColor),e.dateColor):S.isNumberType(t)?i>0?(M(e.positiveNumberColor),e.positiveNumberColor):i<0?(M(e.negativeNumberColor),e.negativeNumberColor):(M(e.zeroNumberColor),e.zeroNumberColor):e.textColor}static textAlignForValue(e,t){return S.isDateType(e)||t==="Date"?"center":S.isNumberType(e)?"right":"left"}}function yn(n,e,t){return(e=gh(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function gh(n){var e=bh(n,"string");return typeof e=="symbol"?e:e+""}function bh(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 Ch extends Error{constructor(e,t){super("".concat(t," can't be empty (on pending row ").concat(e+1,")")),yn(this,"isMissingKey",!0),yn(this,"rowIndex",void 0),yn(this,"columnName",void 0),this.rowIndex=e,this.columnName=t}}function Zi(n,e,t){return(e=yh(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function yh(n){var e=Sh(n,"string");return typeof e=="symbol"?e:e+""}function Sh(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 Eh extends Error{constructor(e,t){super(e,t),Zi(this,"ranges",void 0),Zi(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 Qi(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Dr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Qi(Object(t),!0).forEach(function(r){K(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Qi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}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 gt(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 K(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 ue=ee.module("IrisGridTableModelTemplate"),Ph=150,Dh=0;function vt(n){return n.table!==void 0}class Ut extends z{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),K(this,"dh",void 0),K(this,"irisGridUtils",void 0),K(this,"tableUtils",void 0),K(this,"irisFormatter",void 0),K(this,"irisColumnAlignmentMap",void 0),K(this,"inputTable",void 0),K(this,"subscription",void 0),K(this,"table",void 0),K(this,"viewport",void 0),K(this,"viewportData",void 0),K(this,"formattedStringData",void 0),K(this,"pendingStringData",void 0),K(this,"isSaveInProgress",void 0),K(this,"totalsTable",void 0),K(this,"totalsTablePromise",void 0),K(this,"totals",void 0),K(this,"totalsDataMap",void 0),K(this,"pendingNewDataMap",void 0),K(this,"pendingNewRowCount",0),K(this,"_columnHeaderGroupMap",new Map),K(this,"columnHeaderParentMap",new Map),K(this,"_columnHeaderMaxDepth",null),K(this,"_columnHeaderGroups",[]),K(this,"_isColumnHeaderGroupsInitialized",!1),K(this,"_movedColumns",null),K(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,F)=>{var R=this.getColumnIndexByName(D);if(R==null)throw new Error("Unknown layout hint column: ".concat(D));var N=G.getVisibleIndex(R,h);h=G.moveItem(N,F,h)},g=(D,F)=>{var R=c.get(D);if(R==null)throw new Error("Unknown layout hint group: ".concat(D));var N=R.getVisibleRange(h);h=G.moveRange(N,F,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,F)=>D.depth-F.depth),O.forEach(D=>{var F=D.children[0],R=this.getColumnIndexByName(F),N;if(R!=null)N=G.getVisibleIndex(R,h);else{var L=c.get(F);if(!L)throw new Error("Unknown column ".concat(F," in group ").concat(D.name));var x=L.getVisibleRange(h);[,N]=x}for(var _=1;_<D.children.length;_+=1){var W=D.children[_],X=c.get(W),te=this.getColumnIndexByName(W);if(X){var re=X.getVisibleRange(h)[0]<N,Z=re?N-X.childIndexes.length+1:N+1;g(W,Z),N=Z+X.childIndexes.length-1}else if(te!=null){var ge=G.getVisibleIndex(te,h)<N,ve=ge?N:N+1;v(W,ve),N=ve}}})}return this._movedColumns=h,h})),K(this,"getMemoizedInitialColumnHeaderGroups",U(l=>{var s;return $.parseColumnHeaderGroups(this,(s=l==null?void 0:l.columnGroups)!==null&&s!==void 0?s:[]).groups})),K(this,"getColumnIndicesByNameMap",U(l=>{var s=new Map;return l.forEach((o,u)=>{var{name:d}=o;return s.set(d,u)}),s})),K(this,"setViewport",bi((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()},Ph)),K(this,"applyViewport",bi(()=>{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)}},Dh,{leading:!1})),K(this,"getCachedFormattedString",Rn((l,s,o,u,d)=>l.getFormattedString(s,o,u,d),{max:1e4})),K(this,"getCachedCustomColumnFormatFlag",Rn(Fn.isCustomColumnFormatDefined,{max:1e4})),K(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]})),K(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 Ch(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 le(z.EVENT.DISCONNECT))}handleTableReconnect(){this.dispatchEvent(new le(z.EVENT.RECONNECT))}handleTableUpdate(e){this.copyViewportData(e.detail),this.dispatchEvent(new le(z.EVENT.UPDATED))}handleTotalsUpdate(e){this.copyTotalsData(e.detail),this.dispatchEvent(new le(z.EVENT.UPDATED))}handleRequestFailed(e){this.dispatchEvent(new le(z.EVENT.REQUEST_FAILED,e))}handleCustomColumnsChanged(){this.dispatchEvent(new le(z.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 le(z.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 le(z.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 M(r.nullStringColor),r.nullStringColor;if((a==null?void 0:a.color)!=null&&a.color!=="")return a.color;if(this.isPendingRow(t))return M(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 M(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 Cn(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(Cn(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:se.FULL_DATE_FORMAT}):null}getColumnHeaderGroup(e,t){var r=this.columnAtDepth(e,t);if(Cn(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 M(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:Y.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:Y.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 le(z.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 le(z.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 le(z.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 le(z.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 gt(function*(){var i=t.length>1&&t[1]!==void 0?t[1]:!1,a=t.length>2&&t[2]!==void 0?t[2]:R=>R,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];M(c.endRow),M(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(R=>R.name));for(var b=[...o].sort(),y=function*(){var N=b[C],L=m.map(x=>{var _=r.getColumnIndexByName(x.name);return M(_),a(r.valueForCell(_,N),x)});i&&L.push(r.textForRowFooter(N)),f.push(L)},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(R=>m.map(N=>a(R.get(N),N))))}for(var O=[...d].sort(),D=function*(){var N=O[F],L=m.map(x=>{var _=r.getColumnIndexByName(x.name);return M(_),a(r.valueForCell(_,N),x)});i&&L.push(r.textForRowFooter(N)),f.push(L)},F=0;F<O.length;F+=1)yield*D();return f})()}textSnapshot(e){var t=arguments,r=this;return gt(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
+ `)})()}valuesTable(e){var t=this;return gt(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;M(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 gt(function*(){return i.setValueForRanges([new j(e,t,e,t)],r)})()}setValueForRanges(e,t){var r=this;return gt(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=>(M(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);M(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,Dr(Dr({},y),{},{data:T})):o.delete(f)}),r.pendingDataMap=o}r.dispatchEvent(new le(z.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];M(b),r.cacheFormattedValue(m,f,b)})}catch(m){throw ue.error("Unable to set ranges",e,t,m),new Eh("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 gt(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);M(D);var{data:F}=D,R=new Map(F);T!=null?R.set(b,{value:T}):R.delete(b),R.size>0?i.set(O,Dr(Dr({},D),{},{data:R})):i.delete(O)}}),t.pendingDataMap=i,t.dispatchEvent(new le(z.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=>(M(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];M(y);var C=j.rowCount([y]);if(f<C){M(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];M(m);var O=a.get(m);return O!=null&&O.forEach(D=>{var F,R=t.columns[(F=D.column)!==null&&F!==void 0?F:D.x];T[R.name]=t.tableUtils.makeValue(R.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 gt(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 le(z.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 gt(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}}}K(Ut,"ROW_BUFFER_PAGES",1);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 Oh(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 ta(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function ra(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ta(Object(t),!0).forEach(function(r){Rt(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ta(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Rt(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=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)}var Mh=ee.module("IrisGridTreeTableModel"),na=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 ia(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 Rh(n){return n.layoutHints!==void 0}function vm(n){return n.showExtraGroupColumn!=null}class Ih 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),Rt(this,"virtualColumns",void 0),Rt(this,"showExtraGroupCol",!0),Rt(this,"getCachedColumns",U((l,s)=>[...l,...s])),Rt(this,"getCachedGroupColumns",U((l,s)=>[...l,...s])),Rt(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))))),Rt(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?[na]:[]}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?[na]:[],this.dispatchEvent(new le(z.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 M(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);M(o);var u=s.type;return ia(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 ia(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?Mh.warn("Missing key data for virtual column",o,a,u,e):s.set(o,d)}return ra(ra({},l),{},{data:s,isExpanded:r,hasChildren:i,depth:a})}snapshot(e,t){var r=arguments,i=this;return Oh(function*(){var a,l=r.length>2&&r[2]!==void 0?r[2]:b=>b;M(i.viewport),M(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]);M(h),M(h.startRow),M(h.endRow);for(var c=h.startRow;c<=h.endRow;c+=1){var v=[],g=i.viewportData.rows[c-i.viewportData.offset];M(h.startColumn),M(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(Rh(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 aa(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function kh(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?aa(Object(t),!0).forEach(function(r){Gr(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):aa(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Gr(n,e,t){return(e=Lh(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Lh(n){var e=Ah(n,"string");return typeof e=="symbol"?e:e+""}function Ah(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 Hl extends E.Component{constructor(e){super(e),Gr(this,"container",void 0),Gr(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();M(t),Ci.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=kh({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),M(this.container),this.editor=Ci.create(this.container,t),this.editor.addAction({id:"find",label:"Find",keybindings:[Qs.CtrlCmd|Js.KeyF],precondition:void 0,keybindingContext:void 0,contextMenuGroupId:"navigation",contextMenuOrder:1,run:()=>{this.toggleFind()}}),this.editor.layout(),eo.registerLinkProvider("plaintext",{provideLinks:ht.provideLinks}),e(this.editor)}destroyEditor(){var{onEditorWillDestroy:e}=this.props;M(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}})}}Gr(Hl,"defaultProps",{className:"fill-parent-absolute",onEditorInitialized:()=>{},onEditorWillDestroy:()=>{},settings:{}});var xh={groovy:"Groovy",python:"Python",scala:"Scala"};class Ln{static normalizeScriptLanguage(e){return xh[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
+ `),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
+ `)}}function sr(n,e,t){return(e=jh(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function jh(n){var e=_h(n,"string");return typeof e=="symbol"?e:e+""}function _h(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 Gl 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(){Si.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(){Si.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();M(r);var i=(t=this.editor)===null||t===void 0?void 0:t.getModel();M(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 Ln.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()}),ht.setEOL(e),ht.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:[ht.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:[ht.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=ht.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&&ht.closeDocument(this.editor,e))}append(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;M(this.editor);var r=this.editor.getModel();M(r);var i=r.getValue();i?r.setValue("".concat(i,`
6
+ `).concat(e)):r.setValue("".concat(e));var a=r.getLineCount(),l=r.getLineLength(a)+1;this.editor.setPosition({lineNumber:a,column:l}),t&&this.editor.focus()}updateDimensions(){xe.debug("updateDimensions"),this.editor&&this.editor.layout()}focus(){xe.debug("focus"),this.editor&&this.editor.focus()}toggleFind(){this.editorComponent.current&&this.editorComponent.current.toggleFind()}setLanguage(e){this.editorComponent.current&&e!==void 0&&this.editorComponent.current.setLanguage(e)}render(){var e,{error:t,isLoaded:r,isLoading:i,session:a,sessionLanguage:l,settings:s}=this.props,{model:o}=this.state,u=t?"Unable to open document. ".concat(t):null,d=s&&(e=s.language)!==null&&e!==void 0?e:null,h=o&&a&&d===l;return p.jsxs(p.Fragment,{children:[(t||i)&&p.jsx("div",{className:"h-100 w-100 position-relative",children:p.jsx(pt,{"data-testid":"script-editor-loading",errorMessage:u,isLoading:i,isLoaded:r})}),r&&p.jsx("div",{className:"h-100 w-100 script-editor",children:s&&p.jsxs(p.Fragment,{children:[p.jsx(Hl,{ref:this.editorComponent,settings:s,onEditorInitialized:this.handleEditorInitialized,onEditorWillDestroy:this.handleEditorWillDestroy}),h!=null&&h&&p.jsx(Tn,{model:o,language:d,session:a})]})})]})}}sr(Gl,"defaultProps",{error:null,isLoading:!1,isLoaded:!1,focusOnMount:!0,onChange:()=>{},onEditorInitialized:()=>{},onEditorWillDestroy:()=>{},session:null});function Vh(n,e,t){return(e=$h(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function $h(n){var e=Hh(n,"string");return typeof e=="symbol"?e:e+""}function Hh(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 la extends Error{constructor(){super(...arguments),Vh(this,"isMissingPartitionError",!0)}}function Gh(n){return(n==null?void 0:n.isMissingPartitionError)===!0}function sa(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 Mt(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){sa(a,r,i,l,s,"next",o)}function s(o){sa(a,r,i,l,s,"throw",o)}l(void 0)})}}function We(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=Uh(n,"string");return typeof e=="symbol"?e:e+""}function Uh(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 lt=ee.module("IrisGridTableModel");class Wh 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;super(e,t,r,i),We(this,"userFrozenColumns",void 0),We(this,"customColumnList",void 0),We(this,"formatColumnList",void 0),We(this,"initialFilters",[]),We(this,"wasUncoalesced",void 0),We(this,"getMemoizedKeyColumnSet",U(a=>new Set(a??Q))),We(this,"getMemoizedValueColumnSet",U(a=>new Set(a??Q))),We(this,"getMemoizedFrontColumns",U(a=>a??Q)),We(this,"getMemoizedBackColumns",U(a=>a??Q)),We(this,"getMemoizedFrozenColumns",U((a,l)=>{var s;return(s=l??a)!==null&&s!==void 0?s:Q})),We(this,"getCachedFilterableColumnSet",U(a=>new Set(a.map((l,s)=>s)))),We(this,"getCachedPartitionColumns",U(a=>a.filter(l=>l.isPartitionColumn))),this.customColumnList=[],this.formatColumnList=[],this.initialFilters=t.filter,this.wasUncoalesced=this.isPartitionRequired}get isExportAvailable(){return this.table.freeze!=null}get isColumnStatisticsAvailable(){return this.table.getColumnStatistics!=null}get isRollupAvailable(){return this.table.rollup!=null}get isSelectDistinctAvailable(){return this.table.selectDistinct!=null}get isOrganizeColumnsAvailable(){return!0}get isCustomColumnsAvailable(){return this.table.applyCustomColumns!=null}get isFormatColumnsAvailable(){return this.table.applyCustomColumns!=null}get keyColumnSet(){var e;return this.getMemoizedKeyColumnSet((e=this.inputTable)===null||e===void 0?void 0:e.keys)}get valueColumnSet(){var e;return this.getMemoizedValueColumnSet((e=this.inputTable)===null||e===void 0?void 0:e.values)}get frontColumns(){var e,t;return this.getMemoizedFrontColumns((e=(t=this.layoutHints)===null||t===void 0?void 0:t.frontColumns)!==null&&e!==void 0?e:void 0)}get backColumns(){var e,t;return this.getMemoizedBackColumns((e=(t=this.layoutHints)===null||t===void 0?void 0:t.backColumns)!==null&&e!==void 0?e:void 0)}get frozenColumns(){var e,t;return this.getMemoizedFrozenColumns((e=(t=this.layoutHints)===null||t===void 0?void 0:t.frozenColumns)!==null&&e!==void 0?e:void 0,this.userFrozenColumns)}get layoutHints(){return this.table.layoutHints}get floatingLeftColumnCount(){return this.frozenColumns.length}get description(){var e;return(e=this.table.description)!==null&&e!==void 0?e:""}get customColumns(){return this.customColumnList}set customColumns(e){if(lt.debug2("set customColumns",e,this.customColumnList,e===this.customColumnList),this.customColumnList.length===0&&e.length===0){lt.debug("Ignore empty initial customColumns"),this.customColumnList=e;return}if(this.customColumnList===e){lt.debug("Ignore same customColumns");return}this.closeSubscription(),this.customColumnList=e,this.table.applyCustomColumns([...e,...this.formatColumns]),this.applyViewport()}get formatColumns(){return this.formatColumnList}set formatColumns(e){if(lt.debug2("set formatColumns",e,this.formatColumnList,e===this.formatColumnList),this.formatColumnList.length===0&&e.length===0){lt.debug("Ignore empty initial formatColumns"),this.formatColumnList=e;return}if(this.formatColumnList===e){lt.debug("Ignore same formatColumns");return}this.closeSubscription(),this.formatColumnList=e,this.table.applyCustomColumns([...this.customColumns,...e]),this.applyViewport()}updateFrozenColumns(e){this.userFrozenColumns=e,this.dispatchEvent(new le(z.EVENT.COLUMNS_CHANGED,{detail:this.columns}))}get partitionColumns(){return this.getCachedPartitionColumns(this.columns)}partitionKeysTable(){var e=this;return Mt(function*(){return e.valuesTable(e.partitionColumns)})()}partitionMergedTable(){var e=this;return Mt(function*(){var t=yield e.table.copy();return t.applyFilter([]),t})()}partitionBaseTable(){var e=this;return Mt(function*(){return e.partitionKeysTable()})()}partitionTable(e){var t=this;return Mt(function*(){lt.debug("getting partition table for partitions",e);for(var r=[],i=0;i<t.partitionColumns.length;i+=1){var a=e[i],l=t.partitionColumns[i],s=t.tableUtils.makeNullableEqFilter(l,a);r.push(s)}var o=yield t.table.copy();return o.applyFilter([...t.initialFilters,...r]),o})()}set filter(e){this.closeSubscription(),this.table.applyFilter([...this.initialFilters,...e]),this.applyViewport()}set totalsConfig(e){if(lt.debug("set totalsConfig",e),e!==this.totals){if(this.totals=e,this.formattedStringData=[],this.totalsTablePromise!=null&&this.totalsTablePromise.cancel(),this.setTotalsTable(null),e==null){this.dispatchEvent(new le(z.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)||(lt.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new le(z.EVENT.REQUEST_FAILED,{detail:t})))})}}get isFilterRequired(){return this.table.isUncoalesced}get isPartitionRequired(){return this.table.isUncoalesced&&this.isValuesTableAvailable&&this.partitionColumns.length>0}get isPartitionAwareSourceTable(){return this.wasUncoalesced}isFilterable(e){return this.getCachedFilterableColumnSet(this.columns).has(e)}export(){var e=this;return Mt(function*(){return e.table.freeze()})()}columnStatistics(e){return this.table.getColumnStatistics(e)}isColumnMovable(e){var t=this.columns[e].name;return this.frontColumns.includes(t)||this.backColumns.includes(t)||this.frozenColumns.includes(t)?!1:!this.isKeyColumn(e)}isColumnFrozen(e){return this.frozenColumns.includes(this.columns[e].name)}delete(e){var t=()=>super.pendingDataMap,r=a=>super.pendingDataMap=a,i=this;return Mt(function*(){var a;if(!i.isDeletableRanges(e))throw new Error("Undeletable ranges ".concat(e));M(i.inputTable);var{keyColumns:l}=i.inputTable;if(i.keyColumnSet.size===0)throw new Error("No key columns to allow deletion");var s=i.getPendingAreaRange(),o=e.map(C=>j.intersection(s,C)).filter(C=>C!=null).map(C=>(M(C),j.offset(C,0,-(i.floatingTopRowCount+i.table.size))));if(o.length>0){for(var u=new Map(t()),d=0;d<o.length;d+=1){var h=o[d];M(h.startRow),M(h.endRow);for(var c=h.startRow;c<=h.endRow;c+=1)u.delete(c)}r(u),i.formattedStringData=[],i.dispatchEvent(new le(z.EVENT.PENDING_DATA_UPDATED)),i.dispatchEvent(new le(z.EVENT.UPDATED))}var v=i.getTableAreaRange(),g=e.map(C=>j.intersection(v,C)).filter(C=>C!=null);if(!(g.length<=0)){var[m,f]=yield Promise.all([i.snapshot(g.map(C=>(M(C),l.map(T=>{var w=i.getColumnIndexByName(T.name);if(w==null)throw new Error("Key column ".concat(T.name," not found"));return new j(w,C.startRow,w,C.endRow)}))).flat()),i.table.copy()]),b=m.map(C=>{for(var T=[],w=0;w<l.length;w+=1){var O=l[w],D=C[w],F=i.tableUtils.makeNullableEqFilter(O,D);T.push(F)}return T.reduce((R,N)=>{var L;return(L=R==null?void 0:R.and(N))!==null&&L!==void 0?L:N})}),y=b.reduce((C,T)=>{var w;return(w=C==null?void 0:C.or(T))!==null&&w!==void 0?w:T});f.applyFilter([y]),yield(a=i.inputTable)===null||a===void 0?void 0:a.deleteTable(f),f.close()}})()}seekRow(e,t,r,i,a,l,s){var o=this;return Mt(function*(){return o.table.seekRow(e,t,r,i,a,l,s)})()}get isSeekRowAvailable(){return this.table.seekRow!=null}}function oa(n,e,t){return(e=zh(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function zh(n){var e=qh(n,"string");return typeof e=="symbol"?e:e+""}function qh(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 Kh extends z{constructor(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:new Ke(e);super(e),oa(this,"modelFormatter",void 0),oa(this,"modelColumnAlignmentMap",void 0),this.modelFormatter=t,this.modelColumnAlignmentMap=new Map}get rowCount(){return 0}get columnCount(){return 0}textForCell(e,t){return""}textForColumnHeader(e,t){}get columns(){return Q}getColumnIndexByName(e){}get initialMovedColumns(){return Q}get initialMovedRows(){return Q}get initialColumnHeaderGroups(){return Q}get groupedColumns(){return Q}formatForCell(e,t){}valueForCell(e,t){}get filter(){return Q}set filter(e){}get partition(){return Q}set partition(e){}get partitionColumns(){return Q}get formatter(){return this.modelFormatter}set formatter(e){this.modelFormatter=e}get columnAlignmentMap(){return this.modelColumnAlignmentMap}set columnAlignmentMap(e){this.modelColumnAlignmentMap=e}displayString(e,t,r){return""}get sort(){return Q}set sort(e){}get customColumns(){return Q}set customColumns(e){}get formatColumns(){return Q}updateFrozenColumns(e){}get rollupConfig(){return null}set rollupConfig(e){}get totalsConfig(){return null}set totalsConfig(e){}export(){throw new Error("Method not implemented.")}columnStatistics(e){throw new Error("Method not implemented.")}get selectDistinctColumns(){return Q}set selectDistinctColumns(e){}get pendingDataMap(){return dr}set pendingDataMap(e){}get pendingRowCount(){return 0}set pendingRowCount(e){}get pendingDataErrors(){return dr}commitPending(){return Promise.resolve()}setViewport(e,t,r){}snapshot(e){return Promise.resolve([])}textSnapshot(e,t,r){return Promise.resolve("")}valuesTable(e){throw new Error("Method not implemented.")}delete(e){return Promise.resolve()}seekRow(e,t,r,i,a,l,s){return Promise.resolve(0)}get columnHeaderGroups(){return Q}set columnHeaderGroups(e){}get columnHeaderGroupMap(){return dr}getColumnHeaderParentGroup(e,t){}}function ua(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 Or(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){ua(a,r,i,l,s,"next",o)}function s(o){ua(a,r,i,l,s,"throw",o)}l(void 0)})}}function Xh(n,e,t){return(e=Yh(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Yh(n){var e=Zh(n,"string");return typeof e=="symbol"?e:e+""}function Zh(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 Qh(n){return"getBaseTable"in n&&typeof n.getBaseTable=="function"}class Jh extends Kh{constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Ke(e);super(e,r),Xh(this,"partitionedTable",void 0),this.partitionedTable=t}get isPartitionRequired(){return!0}get isPartitionAwareSourceTable(){return!1}get isReversible(){return!1}displayString(e,t,r){return""}close(){this.partitionedTable.close()}get columns(){return this.partitionedTable.columns}get partitionColumns(){return this.partitionedTable.keyColumns}get columnCount(){return this.columns.length}getColumnIndexByName(e){return this.columns.findIndex(t=>t.name===e)}textForColumnHeader(e,t){var r;return(r=this.columns[e].name)!==null&&r!==void 0?r:""}partitionKeysTable(){var e=this;return Or(function*(){return e.partitionedTable.getKeyTable()})()}partitionBaseTable(){var e=this;return Or(function*(){return Qh(e.partitionedTable)?e.partitionedTable.getBaseTable():e.partitionedTable.getKeyTable()})()}partitionMergedTable(){var e=this;return Or(function*(){return e.partitionedTable.getMergedTable()})()}partitionTable(e){var t=this;return Or(function*(){try{var r=yield t.partitionedTable.getTable(e);if(r==null)throw new la("Partition not found");return r}catch(i){throw Gh(i)?i:new la("Unable to retrieve partition")}})()}}function st(n,e,t){return(e=ec(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ec(n){var e=tc(n,"string");return typeof e=="symbol"?e:e+""}function tc(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 ot=ee.module("IrisGridProxyModel");function jt(n,e,t,r){return S.isTreeTable(e)?new Ih(n,e,t):S.isPartitionedTable(e)?new Jh(n,e,t):new Wh(n,e,t,r)}class rc extends z{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;super(e),st(this,"model",void 0),st(this,"dh",void 0),st(this,"originalModel",void 0),st(this,"modelPromise",void 0),st(this,"rollup",void 0),st(this,"partition",void 0),st(this,"selectDistinct",void 0),st(this,"currentViewport",void 0),st(this,"setViewport",(l,s,o)=>{this.currentViewport={top:l,bottom:s,columns:o},this.model.setViewport(l,s,o)}),this.addEventListener=this.addEventListener.bind(this),this.removeEventListener=this.removeEventListener.bind(this),this.dispatchEvent=this.dispatchEvent.bind(this),this.handleModelEvent=this.handleModelEvent.bind(this);var a=jt(e,t,r,i);return this.dh=e,this.originalModel=a,this.model=a,this.modelPromise=null,this.rollup=null,this.partition=null,this.selectDistinct=[],new Proxy(this,{get(l,s,o){var u,d=((u=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(l),s))===null||u===void 0?void 0:u.get)!=null;if(d)return Reflect.get(l,s,o);var h=Object.prototype.hasOwnProperty.call(l,s),c=Object.prototype.hasOwnProperty.call(Object.getPrototypeOf(l),s),v=h||c?l:l.model;return Reflect.get(v,s)},set(l,s,o){var u,d=((u=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(l),s))===null||u===void 0?void 0:u.set)!=null,h=Object.prototype.hasOwnProperty.call(l,s);return d||h?Reflect.set(l,s,o,l):Reflect.set(l.model,s,o,l.model)}})}close(){this.originalModel.close(),this.model!==this.originalModel&&this.model.close(),this.modelPromise!=null&&this.modelPromise.cancel()}handleModelEvent(e){ot.debug2("handleModelEvent",e);var{detail:t,type:r}=e;this.dispatchEvent(new le(r,{detail:t}))}setModel(e){ot.debug("setModel",e);var t=this.model,{columns:r}=t;if(t!==this.originalModel&&t.close(),this.model=e,this.listenerCount>0&&this.addListeners(e),r!==e.columns)this.dispatchEvent(new le(z.EVENT.COLUMNS_CHANGED,{detail:e.columns}));else if(this.currentViewport!=null){var{top:i,bottom:a,columns:l}=this.currentViewport;e.setViewport(i,a,l)}vt(e)&&this.dispatchEvent(new le(z.EVENT.TABLE_CHANGED,{detail:e.table}))}setNextModel(e){ot.debug2("setNextModel"),this.modelPromise&&this.modelPromise.cancel(),this.listenerCount>0&&this.removeListeners(this.model),this.modelPromise=Le.makeCancelable(e,t=>t.close()),this.modelPromise.then(t=>{this.modelPromise=null,this.setModel(t)}).catch(t=>{if(Le.isCanceled(t)){ot.debug2("setNextModel cancelled");return}ot.error("Unable to set next model",t),this.modelPromise=null,this.dispatchEvent(new le(z.EVENT.REQUEST_FAILED,{detail:t}))})}startListening(){super.startListening(),this.addListeners(this.model)}stopListening(){super.stopListening(),this.removeListeners(this.model)}addListeners(e){for(var t=Object.keys(z.EVENT),r=0;r<t.length;r+=1)e.addEventListener(t[r],this.handleModelEvent)}removeListeners(e){for(var t=Object.keys(z.EVENT),r=0;r<t.length;r+=1)e.removeEventListener(t[r],this.handleModelEvent)}get isCustomColumnsAvailable(){return this.model.isCustomColumnsAvailable&&!(this.isSelectDistinctAvailable&&this.selectDistinctColumns.length>0)}get isRollupAvailable(){return(this.originalModel.isRollupAvailable||this.rollup!=null)&&this.selectDistinct.length===0}get isSelectDistinctAvailable(){return(this.originalModel.isSelectDistinctAvailable||this.selectDistinct.length>0)&&this.rollup==null}get originalColumns(){return this.originalModel.columns}get partitionColumns(){return Qe(this.originalModel)?this.originalModel.partitionColumns:[]}get partitionConfig(){return!Qe(this.originalModel)||!this.originalModel.isPartitionRequired?dh(this.originalModel)?null:void 0:this.partition}set partitionConfig(e){if(!this.isPartitionRequired)throw new Error("Partitions are not available");if(!(this.partition===e||this.partition!=null&&e!=null&&this.partition.mode===e.mode&&this.partition.partitions.length===e.partitions.length&&this.partition.partitions.every((r,i)=>r===e.partitions[i]))){ot.debug("set partitionConfig",e),this.partition=e;var t=Promise.resolve(this.originalModel);e!=null&&Qe(this.originalModel)&&(e.mode==="keys"?t=this.originalModel.partitionBaseTable().then(r=>jt(this.dh,r,this.formatter)):e.mode==="merged"?t=this.originalModel.partitionMergedTable().then(r=>jt(this.dh,r,this.formatter)):t=this.originalModel.partitionTable(e.partitions).then(r=>jt(this.dh,r,this.formatter))),this.setNextModel(t)}}partitionKeysTable(){if(!Qe(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionKeysTable()}partitionMergedTable(){if(!Qe(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionMergedTable()}partitionTable(e){if(!Qe(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionTable(e)}get rollupConfig(){return this.rollup}set rollupConfig(e){if(ot.debug("set rollupConfig",e),!this.isRollupAvailable)throw new Error("Rollup Rows are not available");if(!_r(e,this.rollup)){this.rollup=e;var t=Promise.resolve(this.originalModel);vt(this.originalModel)&&e!=null&&(t=this.originalModel.table.rollup(e).then(r=>jt(this.dh,r,this.formatter))),this.setNextModel(t)}}get selectDistinctColumns(){return this.selectDistinct}set selectDistinctColumns(e){if(ot.debug("set selectDistinctColumns",e),!this.isSelectDistinctAvailable)throw new Error("Select distinct is not available");if(e===this.selectDistinctColumns||e.length===0&&this.selectDistinctColumns.length===0){ot.debug("Ignore same selectDistinctColumns",e);return}this.selectDistinct=e;var t=e.map(i=>this.originalColumns.find(a=>a.name===i)).filter(i=>i!=null),r=Promise.resolve(this.originalModel);vt(this.originalModel)&&t.length>0&&(r=this.originalModel.table.selectDistinct(t).then(i=>jt(this.dh,i,this.formatter))),this.setNextModel(r)}set totalsConfig(e){this.modelPromise==null&&(this.model.totalsConfig=e)}get isFilterRequired(){return this.originalModel.isFilterRequired}get isPartitionRequired(){return Qe(this.originalModel)?this.originalModel.isPartitionRequired:void 0}get isPartitionAwareSourceTable(){return Qe(this.originalModel)&&this.originalModel.isPartitionAwareSourceTable}get formatter(){return this.originalModel.formatter}set formatter(e){this.originalModel.formatter=e}get columnAlignmentMap(){return this.originalModel.columnAlignmentMap}set columnAlignmentMap(e){this.originalModel.columnAlignmentMap=e}}function da(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 nc(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){da(a,r,i,l,s,"next",o)}function s(o){da(a,r,i,l,s,"throw",o)}l(void 0)})}}class Bl{static makeModel(e,t){var r=arguments;return nc(function*(){var i=r.length>2&&r[2]!==void 0?r[2]:new Ke(e),a=null;return!S.isTreeTable(t)&&!S.isPartitionedTable(t)&&t.hasInputTable&&(a=yield t.inputTable()),new rc(e,t,i,a)})()}}function ha(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function ca(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ha(Object(t),!0).forEach(function(r){ic(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ha(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function ic(n,e,t){return(e=ac(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ac(n){var e=lc(n,"string");return typeof e=="symbol"?e:e+""}function lc(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 Ul(n,e){var t=["isStuckToBottom","isStuckToRight","movedColumns","movedRows"];return n===e||t.every(r=>n[r]===e[r])}function Wl(n,e){var t=["advancedFilters","aggregationSettings","customColumnFormatMap","columnAlignmentMap","isFilterBarShown","quickFilters","customColumns","reverse","rollupConfig","showSearchBar","searchValue","selectDistinctColumns","selectedSearchColumns","sorts","invertSearchColumns","pendingDataMap","frozenColumns","conditionalFormats","columnHeaderGroups","partitionConfig"];return n===e||n.metrics!=null&&e.metrics!=null&&n.metricCalculator===e.metricCalculator&&n.metrics.userColumnWidths===e.metrics.userColumnWidths&&n.metrics.userRowHeights===e.metrics.userRowHeights&&t.every(r=>n[r]===e[r])}function sc(){return U((n,e)=>$.dehydrateGridState(n,e),(n,e)=>{var[t,r]=n,[i,a]=e;return t===i&&Ul(r,a)})}function oc(){return U((n,e)=>{var t=new $(n.dh);return t.dehydrateIrisGridState(n,e)},(n,e)=>{var[t,r]=n,[i,a]=e;return t===i&&Wl(r,a)})}function uc(){return U((n,e,t)=>{var r=new $(n.dh);return ca(ca({},r.dehydrateIrisGridState(n,e)),$.dehydrateGridState(n,t))},(n,e)=>{var[t,r,i]=n,[a,l,s]=e;return t===a&&Wl(r,l)&&Ul(i,s)})}var An={makeMemoizedGridStateDehydrator:sc,makeMemoizedIrisGridStateDehydrator:oc,makeMemoizedCombinedGridStateDehydrator:uc};function Yn(n,e,t){return(e=dc(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function dc(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)}class Wt{}Yn(Wt,"OPEN","ChartEvent.OPEN");Yn(Wt,"CLOSE","ChartEvent.CLOSE");Yn(Wt,"COLUMN_SELECTED","ChartEvent.COLUMN_SELECTED");function Zt(n,e,t){return(e=cc(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function cc(n){var e=vc(n,"string");return typeof e=="symbol"?e:e+""}function vc(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{}Zt(Ne,"OPEN_GRID","IrisGridEvent.OPEN_GRID");Zt(Ne,"CLOSE_GRID","IrisGridEvent.CLOSE_GRID");Zt(Ne,"DATA_SELECTED","IrisGridEvent.DATA_SELECTED");Zt(Ne,"COLUMN_SELECTED","IrisGridEvent.COLUMN_SELECTED");Zt(Ne,"STATE_CHANGED","IrisGridEvent.STATE_CHANGED");Zt(Ne,"CREATE_CHART","IrisGridevent.CREATE_CHART");const zl=Object.freeze({OPEN:"MarkdownEvent.OPEN"});function ql(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=mc(n,"string");return typeof e=="symbol"?e:e+""}function mc(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 Zn{}ql(Zn,"OPEN","PandasEvent.OPEN");ql(Zn,"CLOSE","PandasEvent.CLOSE");var fc=So;function gc(n){var{children:e,descriptor:t}=n,{name:r,type:i,description:a,displayName:l}=t,s=i.replace(/([a-z])([A-Z])/g,"$1 $2");return p.jsxs("div",{className:"tab-tooltip-grid-container",children:[p.jsxs("span",{className:"tab-tooltip-title",children:[s," Name"]}),p.jsxs("div",{className:"tab-tooltip-name-wrapper",children:[p.jsx("span",{className:"tab-tooltip-name",children:r}),p.jsx(Eo,{UNSAFE_className:"tab-tooltip-copy",tooltip:"Copy name",copy:r,isQuiet:!0})]}),r!==l&&!!l&&p.jsxs(p.Fragment,{children:[p.jsx("span",{className:"tab-tooltip-title",children:"Display Name"}),p.jsx("span",{className:"tab-tooltip-name",children:l})]}),!!a&&p.jsx("div",{className:"tab-tooltip-description",children:a}),e]})}var Qn=ul(gc);function xn(n,e,t){return(e=bc(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function bc(n){var e=Cc(n,"string");return typeof e=="symbol"?e:e+""}function Cc(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 Kl extends E.PureComponent{constructor(e){var t;super(e),t=this,xn(this,"getCachedRenderTabTooltip",U((r,i)=>r?()=>p.jsx(Qn,{descriptor:i}):void 0)),xn(this,"getCachedActions",U(function(r){var i,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Q;return[...a,{title:"Copy ".concat((i=r.displayType)!==null&&i!==void 0?i:r.type," Name"),group:He.groups.medium,order:20,action:t.handleCopyName}]})),this.handleSessionClosed=this.handleSessionClosed.bind(this),this.handleCopyName=this.handleCopyName.bind(this),this.state={isClientDisconnected:!1,isPanelDisconnected:!1,isWidgetDisconnected:!1,isWaitingForReconnect:!1,isPanelInactive:!1}}handleCopyName(){var{descriptor:e}=this.props;wo(e.name)}getErrorMessage(){var{descriptor:e,errorMessage:t}=this.props,{isClientDisconnected:r,isPanelDisconnected:i,isWidgetDisconnected:a,isWaitingForReconnect:l}=this.state;if(t!=null&&t!=="")return"".concat(t);if(r&&i&&l)return`Disconnected from server.
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
+ `).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:F}=this.props,{isPanelDisconnected:R,isWidgetDisconnected:N,isPanelInactive:L}=this.state,x=this.getErrorMessage(),_=v??this.getCachedRenderTabTooltip(c,i),W=this.getCachedActions(i,F);return p.jsxs(kt,{className:Me(t,{disconnected:R||N||u,inactive:L}),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:_,errorMessage:x,isLoaded:a,isLoading:l,isClonable:d,isRenamable:h,additionalActions:W,children:[e,L&&p.jsx("div",{className:"fill-parent-absolute"})]})}}xn(Kl,"defaultProps",{className:"",isClonable:!0,isDisconnected:!1,isLoading:!1,isLoaded:!0,isRenamable:!0,showTabTooltip:!0});var Sr=ul(Kl);const et=Object.freeze({DEFAULT:"DEFAULT",LINKER:"LINKER"});var yc=(n,e)=>t=>t(Ot(n,{connection:e})),Sc=(n,e)=>t=>t(Ot(n,{sessionWrapper:e})),tn=(n,e)=>t=>t(Ot(n,{links:e})),Xl=(n,e)=>(t,r)=>{var i=Dt(r(),n),a=e.filter(l=>i.findIndex(s=>_r(s.start,l.start)&&_r(s.end,l.end))<0);return t(tn(n,i.concat(a)))},Yl=(n,e)=>(t,r)=>{var i=Dt(r(),n),a=i.filter(l=>!e.includes(l.id));return t(tn(n,a))},Jn=(n,e)=>t=>t(Ot(n,{isolatedLinkerPanelId:e})),Zl=(n,e)=>t=>t(Ot(n,{columnSelectionValidator:e})),Ql=(n,e)=>t=>t(Ot(n,{consoleSettings:e})),Jl=(n,e)=>t=>t(Ot(n,{filterSets:e}));function Ec(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?Yo:Zo;return p.jsxs("div",{className:Me("waiting-filter-item",{"is-invalid":m}),children:[p.jsx(Fe,{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 Br(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(qn,{className:Me("btn-chart-column-selector",Br.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))})]})})}Br.makeButtonClassName=n=>"btn-chart-column-selector-".concat(n);function _t(n){return n.settings!==void 0}function es(n){return n.figure!==void 0}function ts(n){if(n==null)return!1;var{settings:e,tableSettings:t}=n;return typeof e=="object"&&typeof t=="object"}function rs(n){return n!=null&&ts(n.panelState)}var ei=Xt(ct.COLUMNS_CHANGED),wc=ei.listen,Ur=ei.emit,Tc=ei.useListener,ti=Xt(ct.TABLE_CHANGED);ti.listen;var Wr=ti.emit,Pc=ti.useListener,ri=Xt(ct.FILTERS_CHANGED);ri.listen;var ns=ri.emit,Dc=ri.useListener,ni=Object.freeze({LINK_POINT_SELECTED:"LinkerEvent.LINK_POINT_SELECTED",SOURCE_DATA_SELECTED:"LinkerEvent.SOURCE_DATA_SELECTED",REGISTER_TARGET:"LinkerEvent.REGISTER_TARGET"}),ii=Xt(ni.LINK_POINT_SELECTED),Oc=ii.listen,rn=ii.emit;ii.useListener;var ai=Xt(ni.SOURCE_DATA_SELECTED),Nc=ai.listen,is=ai.emit;ai.useListener;var li=Xt(ni.REGISTER_TARGET),Fc=li.listen,va=li.emit;li.useListener;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){qe(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 qe(n,e,t){return(e=Mc(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Mc(n){var e=Rc(n,"string");return typeof e=="symbol"?e:e+""}function Rc(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"),Ic=150;function kc(n){return n.inputFilters!=null}function Lc(n){return n.panelState!=null}class nn 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);M(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(es(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 Nr(Nr({},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=Tt(this.updateModelFromSource.bind(this),Ic),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.panelContainer=Re.createRef(),this.pending=new Gn;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&&Gi(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;M(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;M(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);M(i);var a=r.get(e);a!=null&&rn(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=>{Gi(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&&kc(e.props)&&Lc(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=Nr(Nr({},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(ct.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);M(r),Ur(t,r,Array.from(e.getFilterColumnMap().values()))}}getCoordinateForColumn(e){var t,r=Br.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;M(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,F=w.size>0,R=h.size>0&&a,N=this.getWidgetPanelDescriptor(s);return p.jsx(Sr,{className:Me("iris-chart-panel",{"input-required":F}),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:N,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(xl,{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(On,{in:F&&!R&&!y,mountOnEnter:!0,unmountOnExit:!0,children:p.jsx(Ec,{inputFilterMap:C,linkedColumnMap:T,onAdd:this.handleFilterAdd,onOpenLinker:this.handleOpenLinker,columnMap:h,waitingFilterMap:O,waitingInputMap:w})}),p.jsx(On,{in:R,mountOnEnter:!0,unmountOnExit:!0,children:p.jsx(Br,{columns:this.getSelectorColumns(h,T,e),onColumnSelected:this.handleColumnSelected,onMouseEnter:this.handleColumnMouseEnter,onMouseLeave:this.handleColumnMouseLeave})})]})})}}qe(nn,"defaultProps",{columnSelectionValidator:null,isLinkerActive:!1,source:null,sourcePanel:null,panelState:null,settings:{},containerRef:null});qe(nn,"displayName","ChartPanel");qe(nn,"COMPONENT","ChartPanel");var Ac=(n,e)=>{var{localDashboardId:t,metadata:r}=e,i;r!=null&&_t(r)&&(i=r.sourcePanelId);var a=Kr(n,t),l=hl(n,t),s=Hn(n),o=Xr(n,t),u=s===et.LINKER&&o===void 0;return{columnSelectionValidator:Cr(n,t),isLinkerActive:u,inputFilters:br(n,t),links:Dt(n,t),source:i!=null?a.get(i):void 0,sourcePanel:i!=null?l.get(i):void 0,settings:Yr(n)}},si=Pt(Ac,{setActiveTool:dl,setDashboardIsolatedLinkerPanelId:Jn},null,{forwardRef:!0})(nn);function Je(n,e,t){return(e=xc(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function xc(n){var e=jc(n,"string");return typeof e=="symbol"?e:e+""}function jc(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"),_c=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",Tt(()=>{var{onChange:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a({column:l,isValueShown:o,value:s??void 0})},_c)),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,F]=this.getColumnOptions(C,f),R=this.getValueOptions(d),N=this.getSelectedOptionIndex(d,b),L=!T||f==null,x=m&&!i,_="source-column-btn-".concat(g),W="filter-column-select-".concat(g);return p.jsxs(zn,{className:"dropdown-filter fill-parent-absolute",isFlipped:x,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:_,children:"Source Column"}),p.jsx(qn,{id:_,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:W,children:"Filter Column"}),p.jsx(vr,{id:W,value:String(F),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:L||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(vr,{className:"custom-select",value:String(N),ref:this.dropdownRef,onChange:this.handleValueChange,onKeyDown:this.handleDropdownKeyPress,title:"Select Value",children:R})}),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(Fe,{icon:Un,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=Vc(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Vc(n){var e=$c(n,"string");return typeof e=="symbol"?e:e+""}function $c(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"),Hc=250,Gc=Object.freeze({name:"Dropdown Filter",type:"DropdownFilter"}),Bc=(n,e)=>{var{localDashboardId:t}=e,r=H.getIdFromPanel({props:e}),i=Kr(n,t),a=Dt(n,t),l=Hn(n),s=Xr(n,t),o=l===et.LINKER&&(s===void 0||s===r),u=l===et.LINKER&&s!==void 0&&s!==r;return{columns:Bn(n,t),columnSelectionValidator:Cr(n,t),dh:cl(n),isLinkerActive:o,disableLinking:u,settings:Yr(n),panelTableMap:i,dashboardLinks:a}},Uc=Pt(Bc,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=Tt(this.handleChange.bind(this),Hc),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 Gn;var{dh:t,panelState:r,settings:i}=e;this.columnFormats=Fn.getColumnFormats(i),this.dateTimeFormatter=new Vr(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);M(t),rn(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);M(d),ns(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);_r(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(Sr,{errorMessage:y,isLoading:g,isLoaded:m,isDisconnected:u,className:"iris-dropdown-filter-panel",componentPanel:this,glContainer:i,glEventHub:a,onClearAllFilters:this.handleClearAllFilters,descriptor:Gc,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=Uc(tt);function ma(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var 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?ma(Object(t),!0).forEach(function(r){or(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ma(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function or(n,e,t){return(e=Wc(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Wc(n){var e=zc(n,"string");return typeof e=="symbol"?e:e+""}function zc(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 pe=ee.module("FilterSetManager"),qc="Enter name...",fa="No Available Filter Sets";class fr 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;pe.debug("initSettingsScreen",e,t),this.setState({modifiedFilterSets:[...e],editId:t})}updateSelectedId(){var{isValueShown:e,filterSets:t,selectedId:r,onChange:i}=this.props;if(pe.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:[]}),pe.debug("Update sets",r,i),t(r),r.length>0&&e({isValueShown:!0,selectedId:i})}handleCaptureNewSet(){var{getFilterState:e}=this.props;fr.animateScreenFlash();var t=Ue(),r=e(),i={id:t,title:"",panels:r};pe.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 pe.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 pe.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){pe.error("Renamed set undefined.");return}var l=this.getNameError(t);if(pe.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=Mr(Mr({},r),{},{title:s,restoreFullState:a}),u=i.findIndex(h=>{var{id:c}=h;return c===r.id}),d=[...i];u>=0?(d[u]=o,pe.debug("Renamed existing set",d)):(d.push(o),pe.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 pe.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 pe.debug("Deleted selected set",t,r,a),pe.debug("New selection",l,s),{modifiedFilterSets:a,editId:s}})}handleSetUpdate(){var{getFilterState:e}=this.props;fr.animateScreenFlash();var t=e();this.setState(r=>{var{modifiedFilterSets:i,editId:a}=r;if(a===void 0)return pe.error("Filter for update not selected."),null;var l=[...i],s=l.findIndex(o=>{var{id:u}=o;return u===a});return s<0?(pe.error("Selected set for update not found."),null):(l[s]=Mr(Mr({},l[s]),{},{panels:t}),pe.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 pe.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){pe.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){pe.debug("No filter selected");return}var i=r.find(a=>{var{id:l}=a;return l===e});if(i===void 0){pe.debug("Selected id not found in filterSets",e,r);return}pe.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(Fe,{icon:Pi,mask:Ti,transform:"shrink-1 down-5 right-7"}),p.jsx(Fe,{icon:Jo,className:"text-primary",transform:"shrink-6 down-5 right-7"})]}),f=p.jsxs("div",{className:"fa-layers",children:[p.jsx(Fe,{icon:Pi,mask:Ti,transform:"shrink-1 down-5 right-7"}),p.jsx(Fe,{icon:eu,transform:"shrink-1 down-5 right-7"})]});return p.jsx("div",{className:"filter-set-manager fill-parent-absolute",children:p.jsxs(zn,{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:qc,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:Pl}),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(to,{"aria-label":"Restoration options",onChange:this.handleRestoreFullStateChange,value:"".concat(l),children:[p.jsx(yi,{value:"false",children:"Restore only filters"}),p.jsx(yi,{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(vr,{"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:fa}),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:Dl,tooltip:"Edit"}),p.jsx(J,{kind:"ghost",onClick:this.handleSetDelete,disabled:c,icon:Qr,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(vr,{"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:fa}),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:Ol,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(Fe,{icon:Un,transform:"grow-4"})})})]},"back")]})})}}function ga(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function ba(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ga(Object(t),!0).forEach(function(r){Kc(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ga(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Kc(n,e,t){return(e=Xc(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Xc(n){var e=Yc(n,"string");return typeof e=="symbol"?e:e+""}function Yc(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(Qn,ba(ba({},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 as(n){if(n==null)return!1;var e=n;return typeof e.table=="string"}function ls(n){if(n==null)return!1;var e=n;return typeof e.name=="string"}function Ca(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var 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?Ca(Object(t),!0).forEach(function(r){fe(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ca(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function fe(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=Jc(n,"string");return typeof e=="symbol"?e:e+""}function Jc(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"),ev=500;function ya(n){if(n==null)throw new Error("No metadata provided");if(ls(n))return n.name;if(as(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),fe(this,"irisGrid",void 0),fe(this,"pluginRef",void 0),fe(this,"modelPromise",void 0),fe(this,"irisGridState",void 0),fe(this,"gridState",void 0),fe(this,"pluginState",void 0),fe(this,"irisGridUtils",void 0),fe(this,"gridStateDehydrator",An.makeMemoizedGridStateDehydrator()),fe(this,"irisGridStateDehydrator",An.makeMemoizedIrisGridStateDehydrator()),fe(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))})))),fe(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]})),fe(this,"getPluginContent",U((r,i,a)=>{var l;if(!i||!vt(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))})})),fe(this,"getDehydratedIrisGridPanelState",U((r,i,a,l)=>$.dehydrateIrisGridPanelState(r,{isSelectingPartition:i,partitions:a,advancedSettings:l}))),fe(this,"getCachedPanelState",U((r,i,a,l)=>({irisGridPanelState:r,irisGridState:i,gridState:a,pluginState:l}))),fe(this,"getWidgetPanelDescriptor",U((r,i)=>{var a=ya(r);return ze(ze({type:"Table",displayType:"Table"},r),{},{name:a,description:i})})),fe(this,"savePanelState",Tt(()=>{var{irisGridState:r,gridState:i,pluginState:a}=this;M(r);var{onPanelStateUpdate:l}=this.props,{model:s,panelState:o,isSelectingPartition:u,partitions:d,advancedSettings:h}=this.state;M(this.irisGridUtils),M(s),M(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))},ev)),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(jl.DEFAULTS),customColumns:[],customColumnFormatMap:new Map,columnAlignmentMap:new Map,isFilterBarShown:!1,quickFilters:new Map,sorts:[],userColumnWidths:new Map,userColumnWidthsByName: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 ya(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;M(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(Ne.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):(M(r),this.initModelQueue(r,i))}handleTableChanged(e){rt.debug("handleTableChanged",e);var{glEventHub:t}=this.props,{detail:r}=e,i=H.getIdFromPanel(this);M(i),Wr(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(Ne.CREATE_CHART,{metadata:ze(ze({},a),{},{settings:e,sourcePanelId:o,table:l,tableSettings:u}),table:vt(t)?t.table:void 0})})}handleColumnSelected(e){var{glEventHub:t}=this.props,r=H.getIdFromPanel(this);M(r),rn(t,r,e,{type:"tableLink"})}handleDataSelected(e,t){var{glEventHub:r}=this.props,i=H.getIdFromPanel(this);M(i),is(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}),vt(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);M(s),Wr(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);M(r),Ur(t,r,e)}startModelListening(e){e.addEventListener(z.EVENT.DISCONNECT,this.handleDisconnect),e.addEventListener(z.EVENT.RECONNECT,this.handleReconnect),e.addEventListener(z.EVENT.COLUMNS_CHANGED,this.handleColumnsChanged),e.addEventListener(z.EVENT.TABLE_CHANGED,this.handleTableChanged)}stopModelListening(e){e.removeEventListener(z.EVENT.DISCONNECT,this.handleDisconnect),e.removeEventListener(z.EVENT.RECONNECT,this.handleReconnect),e.removeEventListener(z.EVENT.COLUMNS_CHANGED,this.handleColumnsChanged),e.removeEventListener(z.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;M(l);var{metrics:u}=l.state;M(u);var{columnHeaderHeight:d,allColumnXs:h,allColumnWidths:c,right:v,columnHeaderMaxDepth:g}=u,m=a.getColumnIndexByName(e);M(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}M(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)});M(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);M(this.irisGridUtils);var{advancedFilters:g,customColumns:m,customColumnFormatMap:f,columnAlignmentMap:b,isFilterBarShown:y,quickFilters:C,reverse:T,rollupConfig:w,aggregationSettings:O,sorts:D,userColumnWidths:F,userColumnWidthsByName:R,userRowHeights:N,showSearchBar:L,searchValue:x,selectDistinctColumns:_,selectedSearchColumns:W,invertSearchColumns:X,pendingDataMap:te,frozenColumns:re,conditionalFormats:Z,columnHeaderGroups:ge,partitionConfig:ve}=this.irisGridUtils.hydrateIrisGridState(e,ze(ze({},l),o)),{isStuckToBottom:k,isStuckToRight:A,movedColumns:V,movedRows:B}=$.hydrateGridState(e,ze(ze({},a),i),l.customColumns);this.setState({advancedFilters:g,advancedSettings:v,conditionalFormats:Z,customColumns:m,customColumnFormatMap:f,columnAlignmentMap:b,isFilterBarShown:y,isSelectingPartition:h,movedColumns:V,movedRows:B,partitions:c,quickFilters:C,reverse:T,rollupConfig:w,aggregationSettings:O,sorts:D,userColumnWidths:F,userColumnWidthsByName:R,userRowHeights:N,showSearchBar:L,searchValue:x,selectDistinctColumns:_,selectedSearchColumns:W,invertSearchColumns:X,pendingDataMap:te,frozenColumns:re,isStuckToBottom:k,isStuckToRight:A,columnHeaderGroups:ge,partitionConfig:ve})}catch(q){rt.error("loadPanelState failed to load panelState",t,q)}}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:F,error:R,isDisconnected:N,isFilterBarShown:L,isSelectingPartition:x,isStuckToBottom:_,isStuckToRight:W,isLoaded:X,isLoading:te,isModelReady:re,model:Z,movedColumns:ge,movedRows:ve,partitions:k,partitionConfig:A,quickFilters:V,reverse:B,rollupConfig:q,sorts:Ce,userColumnWidths:ye,userColumnWidthsByName:Ae,userRowHeights:Xe,showSearchBar:Ye,searchValue:un,selectDistinctColumns:dn,selectedSearchColumns:Qt,invertSearchColumns:hn,Plugin:Jt,pluginFilters:Is,pluginFetchColumns:ks,pendingDataMap:Ls,frozenColumns:As,columnHeaderGroups:xs}=this.state,js=R!=null?"Unable to open table. ".concat(R):void 0,_s=(e=Z==null?void 0:Z.description)!==null&&e!==void 0?e:void 0,Vs=(t=c==null?void 0:c.pluginState)!==null&&t!==void 0?t:null,$s=r??this.getPluginContent(Jt,Z,Vs),{permissions:Hs}=v,{canCopy:Gs,canDownloadCsv:Bs}=Hs,gi=this.getWidgetPanelDescriptor(d,_s);return p.jsx(Sr,{errorMessage:js,isDisconnected:N,isLoading:te,isLoaded:X,className:"iris-grid-panel",glContainer:i,glEventHub:a,onClearAllFilters:this.handleClearAllFilters,onShow:this.handleShow,onTabFocus:this.handleShow,onTabClicked:this.handleTabClicked,componentPanel:this,descriptor:gi,renderTabTooltip:()=>p.jsx(Zc,{descriptor:gi,model:Z}),children:re&&Z&&p.jsx(en,{advancedFilters:y,aggregationSettings:C,advancedSettings:T,alwaysFetchColumns:this.getAlwaysFetchColumns(u,ks),columnAllowedCursor:"linker",columnNotAllowedCursor:"linker-not-allowed",copyCursor:"copy",customColumns:O,customColumnFormatMap:D,columnAlignmentMap:F,columnSelectionValidator:this.isColumnSelectionValid,conditionalFormats:w,inputFilters:this.getGridInputFilters(Z.columns,o),applyInputFiltersOnInit:c==null,isFilterBarShown:L,isSelectingColumn:l!=null,isSelectingPartition:x,isStuckToBottom:_,isStuckToRight:W,mouseHandlers:h,movedColumns:ge,movedRows:ve,partitions:k,partitionConfig:A,quickFilters:V,renderer:g,reverse:B,rollupConfig:q,settings:m,sorts:Ce,userColumnWidths:ye,userColumnWidthsByName:Ae,userRowHeights:Xe,model:Z,showSearchBar:Ye,searchValue:un,selectedSearchColumns:Qt,selectDistinctColumns:dn,invertSearchColumns:hn,onColumnSelected:this.handleColumnSelected,onCreateChart:this.handleCreateChart,onDataSelected:this.handleDataSelected,onError:this.handleError,onStateChange:this.handleGridStateChange,onContextMenu:this.handleContextMenu,onAdvancedSettingsChange:this.handleAdvancedSettingsChange,customFilters:Is,pendingDataMap:Ls,canCopy:Gs,canDownloadCsv:Bs,ref:this.irisGrid,getDownloadWorker:s,frozenColumns:As,theme:b,columnHeaderGroups:xs,getMetricCalculator:f,children:$s})})}}fe(zt,"defaultProps",{onStateChange:()=>{},onPanelStateUpdate:()=>{}});fe(zt,"displayName","IrisGridPanel");fe(zt,"COMPONENT","IrisGridPanel");var tv=(n,e)=>{var{localDashboardId:t=To,glContainer:r}=e;return{inputFilters:br(n,t),links:Dt(n,t),columnSelectionValidator:Cr(n,t),user:Po(n),settings:Yr(n)}},oi=Pt(tv,null,null,{forwardRef:!0})(zt);function hr(n,e,t){return(e=rv(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function rv(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)}var Sa=ee.module("InputFilter"),iv=150;class qt extends E.Component{constructor(e){super(e),hr(this,"inputRef",void 0),hr(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})),hr(this,"sendUpdate",Tt(()=>{var{onChange:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a({column:l,isValueShown:o,value:s})},iv)),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)];Sa.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;Sa.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(zn,{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(vr,{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(Fe,{icon:Un,transform:"grow-4"}),tooltip:"Input Filter Settings"})})]})]})}}hr(qt,"PLACEHOLDER","Enter value...");hr(qt,"defaultProps",{column:null,isValueShown:!1,value:null});function an(n,e,t){return(e=av(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function av(n){var e=lv(n,"string");return typeof e=="symbol"?e:e+""}function lv(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 sv=250;class ln extends E.Component{constructor(e){super(e),an(this,"inputFilterRef",void 0),this.handleChange=Tt(this.handleChange.bind(this),sv),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);M(l),ns(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})})}}an(ln,"defaultProps",{panelState:null});an(ln,"COMPONENT","InputFilterPanel");an(ln,"displayName","InputFilterPanel");var ov=(n,e)=>{var{localDashboardId:t}=e;return{columns:Bn(n,t)}},$t=Pt(ov,null,null,{forwardRef:!0})(ln);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 Rr(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){ui(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 ui(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)}var De=ee.module("FilterSetManagerPanel");function hv(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:Rr(Rr({},a),{},{advancedFilters:u,quickFilters:d}),gridState:Rr({},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=Rr({},t);delete r.isValueShown,De.debug("restoreInputFilterState",e,r),e&&hv(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(fr,{onChange:this.handleChange,onApply:this.handleFilterApply,onUpdateSets:this.handleSetsUpdate,isValueShown:i,filterSets:r,selectedId:a,getFilterState:this.handleGetFilterState})})})}}ui(Kt,"defaultProps",{panelState:null});ui(Kt,"COMPONENT","FilterSetManagerPanel");var cv=(n,e)=>{var{localDashboardId:t}=e;return{filterSets:vl(n,t),dashboardOpenedPanelMap:hl(n,t),dashboardInputFilters:br(n,t),panelTableMap:Kr(n,t)}},xr=Pt(cv,{setDashboardFilterSets:Jl},null,{forwardRef:!0})(Kt);function vv(n,e,t){return(e=pv(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function pv(n){var e=mv(n,"string");return typeof e=="symbol"?e:e+""}function mv(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 ss 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(Fe,{icon:Dl})]})}),t]})}}vv(ss,"defaultProps",{isEditing:!1});function fv(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=ee.module("MarkdownStartPage");class os 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(Cv.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(Fe,{icon:Qr})})]},l.id)),p.jsxs(tu,{isOpen:i,toggle:this.handleDeleteModalClose,className:"modal-dialog-centered markdown-delete-modal",children:[p.jsx(ru,{children:"Are you sure you want to permanently delete this note?"}),p.jsx(nu,{children:"You can't undo this action."}),p.jsxs(Do,{children:[p.jsx(J,{kind:"secondary",onClick:this.handleDeleteModalClose,children:"Cancel"}),p.jsx(J,{kind:"danger",onClick:()=>{this.handleDeleteMarkdown(a)},children:"Delete"})]})]})]})]})})}}fv(os,"defaultProps",{closedMarkdowns:[],onOpen:()=>{},onCreate:()=>{},onDelete:()=>{}});function di(n,e,t){return(e=yv(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function yv(n){var e=Sv(n,"string");return typeof e=="symbol"?e:e+""}function Sv(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}}di(it,"DEFAULT_TITLE","Note");di(it,"DEFAULT_CONTENT",`# Markdown Note
9
+
10
+ This note can be edited using **markdown** for styling.`);di(it,"getClosedMarkdowns",U(n=>n.filter(e=>e.component==="MarkdownPanel"&&e.props.panelState.content!==""&&e.props.panelState.content!==null).reverse()));function cr(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=wv(n,"string");return typeof e=="symbol"?e:e+""}function wv(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 Tv=E.lazy(()=>qr(()=>import("./MarkdownEditor-6EfnAIfX.js"),__vite__mapDeps([18,1,2,3,8,4,5,9]),import.meta.url)),Ir=ee.module("MarkdownPanel");class hi extends E.Component{constructor(e){super(e),cr(this,"markdownEditor",void 0),cr(this,"editor",void 0),cr(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){M(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){Ir.debug("Markdown Editor Initialized..."),this.editor=e}handleCreateMarkdown(){Ir.debug("create markdown..."),this.setState({isStartPageShown:!1,content:"",isEditing:!0,panelState:{content:""}},()=>{this.editor!=null&&this.editor.focus!=null&&this.editor.focus()})}handleOpenMarkdown(e){Ir.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;Ir.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(os,{closedMarkdowns:s,onCreate:this.handleCreateMarkdown,onOpen:this.handleOpenMarkdown,onDelete:this.handleDeleteMarkdown}):p.jsx(ss,{isEditing:i,onDoubleClick:this.handleContainerDoubleClick,children:p.jsx(E.Suspense,{fallback:p.jsx(pt,{"data-testid":"markdown-panel-loading"}),children:p.jsx(Tv,{ref:o=>{this.markdownEditor=o},isEditing:i,content:l??it.DEFAULT_CONTENT,onEditorInitialized:this.handleEditorInitialized})})})})}}cr(hi,"defaultProps",{panelState:null});cr(hi,"COMPONENT","MarkdownPanel");var Pv=(n,e)=>{var{localDashboardId:t}=e;return{closedPanels:Oo(n,t)}},ur=Pt(Pv,null,null,{forwardRef:!0})(hi);function wa(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 kr(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){wa(a,r,i,l,s,"next",o)}function s(o){wa(a,r,i,l,s,"throw",o)}l(void 0)})}}function Ta(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var 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?Ta(Object(t),!0).forEach(function(r){Oe(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ta(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Oe(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)}var Nv=E.lazy(()=>qr(()=>import("./MarkdownNotebook-DbLY2Ii4.js"),__vite__mapDeps([19,1,2,3,4,5,8,9,20]),import.meta.url)),ne=ee.module("NotebookPanel"),Pa=400;class Te extends E.Component{static handleError(e){Le.isCanceled(e)||ne.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:su,action:this.handleFind,group:He.groups.high,shortcut:ut.NOTEBOOK.FIND,order:10},{title:"Copy File",icon:ou,action:this.handleCopy,group:He.groups.medium,order:20},{title:"Rename File",icon:uu,action:this.handleShowRename,group:He.groups.medium,order:30},{title:"Delete File",icon:Qr,action:this.handleDelete,group:He.groups.medium,order:40},{title:"Show Minimap",icon:c?vn:void 0,action:this.handleMinimapChange,group:He.groups.low,shortcut:ut.NOTEBOOK.MINIMAP,order:20},{title:"Word Wrap",icon:v?vn: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?vn: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 Gn,this.debouncedSavePanelState=Tt(this.savePanelState.bind(this),Pa),this.debouncedLoad=Tt(this.load.bind(this),Pa),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},ne.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);M(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){ne.debug("Init content from file"),this.registerFileMetadata(e,r),this.load();return}if(t.value!=null){ne.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;M(e);var{id:r}=e,{fileStorage:i}=this.props;this.pending.add(i.loadFile(r)).then(a=>{var l;ne.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){ne.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;ne.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 ne.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 kr(function*(){var{fileStorage:t,glEventHub:r,session:i}=e.props,{fileMetadata:a,settings:l}=e.state;M(a);var{language:s}=l,{itemName:o}=a,u=yield Ve.getUniqueCopyFileName(t,o);ne.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(){ne.debug("handleDelete, pending confirmation"),this.setState({showDeleteModal:!0})}handleDeleteConfirm(){var e=this;return kr(function*(){var{fileStorage:t,glContainer:r,glEventHub:i}=e.props,{fileMetadata:a}=e.state;ne.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){ne.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==="/"){ne.debug("Ignoring invalid notebook link",l);return}ne.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.")),ne.error(t),this.setState({error:t,isLoading:!1}))}handleSave(){var e=this;return kr(function*(){ne.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 ne.debug("handleSaveSuccess",i,s,o),s&&Ve.hasPath(s.itemName)&&s.itemName!==i.itemName&&(ne.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}),ne.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),ne.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?ht.canFormat(this.notebook.editor):!1}handleFormat(){var e=this;return kr(function*(){var t;((t=e.notebook)===null||t===void 0?void 0:t.editor)!=null&&(yield ht.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){ne.error("Editor is not initialized.");return}this.runCommand((e=this.notebook.getValue())!==null&&e!==void 0?e:void 0)}handleRunSelected(){if(!this.notebook){ne.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;ne.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){ne.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];ne.debug("handleTabFocus",...t);var{glContainer:i}=this.props;this.setState({isDashboardActive:!0}),this.notebook&&!i.isHidden&&this.notebook.updateDimensions()}handleTabBlur(){ne.debug("handleTabBlur"),this.setState({isDashboardActive:!1})}handleTabClick(e){ne.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};ne.debug("handleCreateNotebook",a,l,o,u),i.emit(oe.CREATE_NOTEBOOK,a,l,o,u)}runCommand(e){if(e===void 0||e===""){ne.debug("Ignoring empty command.");return}this.removePreviewStatus();var{glEventHub:t}=this.props;t.emit($r.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,F=(e=f==null?void 0:f.itemName)!==null&&e!==void 0?e:Te.DEFAULT_NAME,R=F.endsWith(".md"),N=(f==null?void 0:f.id)!=null,L=this.getSettings(C,(t=o.isMinimapEnabled)!==null&&t!==void 0?t:!1),x=b!=null,_=y===L.language,W=!v||!x||!_,X=!v,te=[{action:this.handleSave,shortcut:Pn.SAVE},{action:this.handleMinimapChange,shortcut:ut.NOTEBOOK.MINIMAP},{action:this.handleWordWrapChange,shortcut:ut.NOTEBOOK.WORDWRAP}],re=Ln.getDisabledRunTooltip(x,_,"Notebook extension","Run"),Z=Ln.getDisabledRunTooltip(x,_,"Notebook extension","Run Selected"),ge=[{title:N?"Rename":"Save As…",order:10,group:He.groups.high,action:this.handleShowRename},{title:"Copy File",action:this.handleCopy,group:He.groups.high,order:20}],ve=l==null?void 0:l.element.find(".lm_title_before").get(0);return p.jsxs(p.Fragment,{children:[ve!=null&&ro.createPortal(p.jsx("span",{className:Me(Te.UNSAVED_INDICATOR_CLASS_NAME,{[Te.UNSAVED_STATUS_CLASS_NAME]:u!==d})}),ve),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:ge,renderTabTooltip:()=>F,children:[!R&&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:W,icon:p.jsx(Fe,{icon:iu,transform:"grow-4"}),tooltip:"Run ".concat(ut.NOTEBOOK.RUN.getDisplayText()),"aria-label":"Run"}),re!=null&&p.jsx(Dn,{children:re})]}),p.jsxs("span",{children:[p.jsx(J,{kind:"ghost",className:"btn-play",onClick:this.handleRunSelected,disabled:W,icon:p.jsx(Fe,{icon:au,transform:"grow-4"}),tooltip:"Run Selected ".concat(ut.NOTEBOOK.RUN_SELECTED.getDisplayText()),"aria-label":"Run Selected"}),Z!=null&&p.jsx(Dn,{children:Z})]}),p.jsx(J,{kind:"ghost",className:"mr-auto",disabled:X,onClick:this.handleSave,icon:Pl,tooltip:"Save ".concat(Pn.SAVE.getDisplayText()),"aria-label":"Save"}),p.jsx(J,{kind:"ghost",className:"btn-overflow",disabled:X,icon:lu,tooltip:"More Actions...",onClick:()=>{},children:p.jsx(fl,{actions:this.getDropdownOverflowActions,popperOptions:Te.POPPER_OPTIONS})})]}),p.jsx(Gl,{isLoaded:v,isLoading:g,error:h,onChange:this.handleEditorChange,onRunCommand:this.handleRunCommand,session:b,sessionLanguage:y,onEditorInitialized:this.handleEditorInitialized,onEditorWillDestroy:this.handleEditorWillDestroy,settings:L,focusOnMount:D,ref:k=>{this.notebook=k}})]}),R&&p.jsx(E.Suspense,{fallback:p.jsx(pt,{"data-testid":"notebook-panel-loading"}),children:p.jsx(Nv,{content:(r=L.value)!==null&&r!==void 0?r:"",onLinkClick:this.handleLinkClick,onRunCode:this.handleRunCommand,transformImageUri:this.handleTransformLinkUri,transformLinkUri:this.handleTransformLinkUri})}),p.jsx(Mo,{isOpen:O,type:"file",defaultValue:F,title:N?"Rename":"Save file as",onSubmit:this.handleSaveAsSubmit,onCancel:this.handleSaveAsCancel,notifyOnExtensionChange:!0,storage:i}),p.jsx(Ei,{isOpen:w,headerText:'Are you sure you want to delete "'.concat(F,'"?'),bodyText:"You cannot undo this action.",onCancel:this.handleDeleteCancel,onConfirm:this.handleDeleteConfirm,confirmButtonText:"Delete"}),p.jsx(Ei,{isOpen:T,headerText:"Do you want to save the changes you made to ".concat(F,"?"),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:te})]})]})}}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 Fv=(n,e)=>{var t=Fo(n),r=pl(n),i=ml(n,e.localDashboardId),{session:a,config:l}=i??{},{type:s}=l??{};return{fileStorage:t,notebookSettings:r,session:a,sessionLanguage:s}},wt=Pt(Fv,{updateNotebookSettings:No},null,{forwardRef:!0})(Te);function us(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(Fe,{icon:Ol,transform:"shrink-1",className:"mr-1"}),"Reload"]})]})}function Da(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Oa(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Da(Object(t),!0).forEach(function(r){gr(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Da(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Na(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 Mv(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Na(a,r,i,l,s,"next",o)}function s(o){Na(a,r,i,l,s,"throw",o)}l(void 0)})}}function gr(n,e,t){return(e=Rv(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Rv(n){var e=Iv(n,"string");return typeof e=="symbol"?e:e+""}function Iv(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 sn extends E.Component{constructor(e){super(e),gr(this,"irisGridRef",void 0),gr(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 Mv(function*(){var r=yield e();return t.model!=null&&t.stopListening(t.model),t.model=r,t.startListening(r),r})}startListening(e){e.addEventListener(z.EVENT.DISCONNECT,this.handleDisconnect)}stopListening(e){e.removeEventListener(z.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(oi,Oa(Oa({ref:this.irisGridRef,onStateChange:this.handleGridStateChange,onPanelStateUpdate:this.handlePanelStateUpdate},this.props),{},{makeModel:e,children:p.jsx(us,{onClick:this.handleReload})}))}}gr(sn,"defaultProps",{panelState:null});gr(sn,"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 Ma(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 Ra(n,e,t){return(e=kv(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function kv(n){var e=Lv(n,"string");return typeof e=="symbol"?e:e+""}function Lv(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 Av{constructor(e){Ra(this,"items",void 0),Ra(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];wi(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];wi(t)&&(t.isExpanded=!1)}return Promise.resolve()}getViewportData(){return Promise.resolve({items:this.items,offset:0})}getSnapshot(e){return Ma(function*(){throw new Error("Method not implemented.")})()}setViewport(e){var t=this;return Ma(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 Ia(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){Ia(a,r,i,l,s,"next",o)}function s(o){Ia(a,r,i,l,s,"throw",o)}l(void 0)})}}function xv(n,e,t){return(e=jv(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function jv(n){var e=_v(n,"string");return typeof e=="symbol"?e:e+""}function _v(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 Vv{constructor(e){xv(this,"items",void 0),this.items=e}getTable(){var e=this;return nr(function*(){return new Av(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 Ro;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 $v=kt,Hv=kt;function ka(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function zr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ka(Object(t),!0).forEach(function(r){Gv(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ka(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Gv(n,e,t){return(e=Bv(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Bv(n){var e=Uv(n,"string");return typeof e=="symbol"?e:e+""}function Uv(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 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 ds(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 Wv(n,e,t,r){return jn.apply(this,arguments)}function jn(){return jn=ds(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=zr(zr({},i),r.settings))),a!=null&&a!==""){var s=yield t();return new $(n).applyTableSettings(s,l,gl(Ml.getState())),Bt.makeModelFromSettings(n,i,s)}var o=yield t();return Bt.makeModel(n,i,o)}),jn.apply(this,arguments)}var ci=E.forwardRef((n,e)=>{var t=rs(n)?n.panelState:void 0,{fetch:r,metadata:i,localDashboardId:a}=n;M(i);var[l,s]=Pu(i),o=E.useCallback(ds(function*(){if(s!=null)throw s;return l==null?new Promise(()=>{}):Wv(l,i,r,t)}),[l,s,i,r,t]);return p.jsx(si,zr(zr({ref:e},n),{},{metadata:i,localDashboardId:a,makeModel:o}))});ci.displayName="ChartPanelPlugin";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 zv(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){var e=Zr(),[t,r]=E.useState(),{fetch:i}=n;return E.useEffect(()=>{var a=!1;function l(){return s.apply(this,arguments)}function s(){return s=zv(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(xl,{model:t}):null}var qv={name:"ChartPanel",title:"Chart",type:Nt.WIDGET_PLUGIN,component:hs,panelComponent:ci,supportedTypes:"Figure",icon:du};function xa(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 Kv(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){xa(a,r,i,l,s,"next",o)}function s(o){xa(a,r,i,l,s,"throw",o)}l(void 0)})}}function cs(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=Kv(function*(){return s});return function(){return v.apply(this,arguments)}}(),d=I.titleFromSettings(o),h={type:"react-component",component:si.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,Ne.CREATE_CHART,r),null}var Xv={name:"ChartBuilderPlugin",type:Nt.DASHBOARD_PLUGIN,component:cs};function vs(){var{python:{linter:n={}}={}}=Hr(pl),{isEnabled:e=!1,config:t}=n;E.useEffect(function(){Tn.isRuffEnabled=e,Tn.setRuffSettings(t)},[e,t])}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 _a(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){Yv(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 Yv(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 Va(n){return n.notebook!==void 0}function Jv(n){Yt(n)}function ep(n){Jv(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);vs();var c=ol(),v=E.useCallback(()=>i.getLastUsedPanelOfType(Ar),[i]),g=E.useCallback((k,A)=>{u(V=>new Map(V.set(k,A)))},[u]),m=E.useCallback(k=>{u(A=>(A.delete(k),new Map(A)))},[u]),f=E.useCallback((k,A)=>{h(V=>new Map(V.set(k,A)))},[h]),b=E.useCallback(k=>{h(A=>(A.delete(k),new Map(A)))},[h]),y=E.useCallback(function(k){var A=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,V=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,B=k&&k.trim();if(!B)he.info("Ignoring empty code");else{var q=v();if(!q||!(q instanceof Ar.WrappedComponent)){he.error("Console panel not found");return}he.debug("Send command: ",k,A,V),q.addCommand(k,A,V)}},[v]),C=E.useCallback(k=>{c(Ql(e,k))},[c,e]),T=E.useCallback(k=>{var{language:A}=k,V=A==="python"?"py":A,B=null;return V==null?(he.debug("No extension for language",A),B="Untitled-".concat(s.current)):B="Untitled-".concat(s.current,".").concat(V),s.current+=1,B},[]),w=E.useCallback(function(k){var A=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,{id:V}=k;if(V!=null&&o.has(V))return o.get(V);if(V!=null&&d.has(V))return d.get(V);if(A)return Ue()},[o,d]),O=E.useCallback((k,A)=>{H.renameComponent(r.root,{id:k},A)},[r.root]),D=E.useCallback((k,A)=>{he.debug("Rename file panel",k,A);var V;if(o.has(k)&&(V=o.get(k),m(k),V!=null&&g(A,V)),d.has(k)&&(V=d.get(k),b(k),V!=null&&f(A,V)),V===void 0){he.debug2("File ".concat(k," isn't open, no need to rename the tab"));return}O(V,Ve.getBaseName(A))},[o,d,O,g,f,m,b]),F=E.useCallback(k=>{var A=w(k,!1);if(A==null){he.error("Could not find panel id for file metadata",k);return}H.activateTab(r.root,{id:A})},[w,r.root]),R=E.useCallback((k,A,V)=>{if(he.debug("registerFilePanel",k,A,V),A==null||A.id==null){he.debug("Ignore empty file id",A);return}var{id:B}=A;if(V){f(B,k);return}if(o.has(B)){var q=o.get(B);if(k===q){he.debug("Update tab title for file ".concat(B));var{itemName:Ce}=A;D(B,Ce)}else he.error("File ".concat(B," already associated with a different tab ").concat(q));return}g(B,k),d.has(B)&&b(B)},[o,d,D,g,f,b]),N=E.useCallback((k,A)=>{if(he.debug("unregisterFileTab",k,A),k==null||k.id==null){he.debug("Ignore empty file id",k);return}var{id:V}=k;if(A){b(V);return}m(V)},[m,b]),L=E.useCallback((k,A)=>{he.debug("closeFilePanel",k);var{id:V}=k;if(V==null){he.warn("File ID is null, ignore close event");return}var B=null,q=!1;if(o.has(V))B=o.get(V);else if(d.has(V))B=d.get(V),q=!0;else{he.debug("File ".concat(V," isn't open, ignore close event"));return}N(k,q),H.closeComponent(r.root,{id:B},A)},[r.root,o,d,N]),x=E.useCallback(k=>{var{itemName:A}=k;return Ve.getBaseName(A)},[]),_=E.useCallback(k=>{var{id:A}=k;return he.debug("fileIsOpen",k,A,o),A!=null&&o.has(A)},[o]),W=E.useCallback(k=>{var{id:A}=k;return he.debug("fileIsOpenAsPreview",k,A,d),A!=null&&d.has(A)},[d]),X=E.useCallback(k=>{if(k!=null){var A=i.getOpenedPanelById(k);A&&Va(A)&&A.focus()}},[i]),te=E.useCallback(k=>{var{id:A,settings:V,fileMetadata:B,session:q,sessionLanguage:Ce,isPreview:ye=!1}=k,Ae={settings:V,fileMetadata:B},Xe=x(B);return{type:"react-component",component:wt.COMPONENT,isFocusOnShow:!1,props:{localDashboardId:e,metadata:{id:A},session:q,sessionLanguage:Ce,panelState:Ae,isPreview:ye,notebooksUrl:l},title:Xe,id:A}},[x,e,l]),re=E.useCallback(function(k,A,V){var B=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{id:null,itemName:T(V)},q=w(B);if(_(B)&&q!=null){he.debug("File is already open, focus panel"),F(B),X(q);return}if(q==null){he.error("Panel ID for file metadata is null");return}var Ce=H.getStackForComponentTypes(r.root,[wt.COMPONENT]),ye=te({id:q,settings:V,fileMetadata:B,session:k,sessionLanguage:A});he.debug("createNotebook",ye,o),H.openComponentInStack(Ce,ye)},[_,X,T,w,r.root,te,o,F]),Z=E.useCallback(function(k,A,V,B){var q=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;he.debug("selectNotebook",B,q);var Ce=_(B),ye=W(B),[Ae]=[...d.values()],Xe=!q,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(Ce||ye)F(B);else{var un=H.getStackForComponentTypes(r.root,[wt.COMPONENT]),dn=te({id:Ye,settings:V,fileMetadata:B,session:k,sessionLanguage:A,isPreview:Xe});H.openComponentInStack(un,dn)}if(ye&&q){var Qt=B.id,hn=H.getStackForConfig(r.root,{component:wt.COMPONENT,id:Ye}),Jt=H.getContentItemInStack(hn,{component:wt.COMPONENT,id:Ye});Qt!=null&&Jt&&Io(Jt)&&(Jt.container.emit(oe.PROMOTE_FROM_PREVIEW),b(Qt),g(Qt,Ye))}q&&X(Ye)},[F,_,W,X,w,r.root,te,d,b,g]),ge=E.useCallback(function(k,A){var V=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},B=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,q=i.getLastUsedPanelOfType(wt);q&&Va(q)?V!=null&&V.value!=null&&q.notebook!=null&&q.notebook.append(V.value):B&&re(k,A,V)},[re,i]),ve=E.useCallback((k,A)=>ko.hydrate(_a(_a({},k),{},{notebooksUrl:l}),A),[l]);return er(a,Ar,t),er(a,bl),er(a,Cl),er(a,yl),er(a,wt,ve),we(r.eventHub,$r.SEND_COMMAND,y),we(r.eventHub,$r.SETTINGS_CHANGED,C),we(r.eventHub,oe.CLOSE_FILE,L),we(r.eventHub,oe.CREATE_NOTEBOOK,re),we(r.eventHub,oe.SELECT_NOTEBOOK,Z),we(r.eventHub,oe.RENAME,O),we(r.eventHub,oe.RENAME_FILE,D),we(r.eventHub,oe.SEND_TO_NOTEBOOK,ge),we(r.eventHub,oe.REGISTER_FILE,R),we(r.eventHub,oe.UNREGISTER_FILE,N),null}var ir=ee.module("FilterPlugin");function ps(n){Yt(n);var{id:e,layout:t,registerComponent:r}=n,i=ol(),[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),F=Ze.toLower(T.type);return D!==F?D>F?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(Ot(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,F={type:"react-component",component:Vt.COMPONENT,props:{id:T,metadata:y,panelState:C,localDashboardId:e},title:b,id:T},{root:R}=t;H.openComponent({root:R,config:F,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,F={type:"react-component",component:$t.COMPONENT,props:{id:T,metadata:y,panelState:C,localDashboardId:e},title:b,id:T},{root:R}=t;H.openComponent({root:R,config:F,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,F={type:"react-component",component:xr.COMPONENT,props:{id:T,metadata:y,panelState:C,localDashboardId:e},title:b,id:T},{root:R}=t;H.openComponent({root:R,config:F,focusElement:w,createNewStack:O,dragEvent:D})},[t,e]);return E.useEffect(function(){var b=[r(Vt.COMPONENT,Vt),r($t.COMPONENT,$t),r(xr.COMPONENT,xr)];return()=>{b.forEach(y=>y())}},[r]),Tc(t.eventHub,u),Dc(t.eventHub,d),Pc(t.eventHub,h),we(t.eventHub,ct.OPEN_DROPDOWN,v),we(t.eventHub,ct.OPEN_INPUT,g),we(t.eventHub,ct.OPEN_FILTER_SET_MANAGER,m),we(t.eventHub,ke.UNMOUNT,c),null}var tp={name:"FilterPlugin",type:Nt.DASHBOARD_PLUGIN,component:ps},rp=ee.module("@deephaven/app-utils/useTablePlugin");function vi(){var n=Sl(),e=E.useCallback(t=>{var r=n.get(t);if(r!=null){if(Lo(r))return r.component;if(Ao(r))return r.TablePlugin}var i="Unable to find table plugin ".concat(t,".");throw rp.error(i),new Error(i)},[n]);return e}function $a(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 np(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){$a(a,r,i,l,s,"next",o)}function s(o){$a(a,r,i,l,s,"throw",o)}l(void 0)})}}function ms(n,e,t){var r=Zr(),i=vi(),a=E.useMemo(()=>({loadPlugin:i,localDashboardId:e,makeModel:function(){var l=np(function*(){var o=yield n();return Bl.makeModel(r,o)});function s(){return l.apply(this,arguments)}return s}(),metadata:t}),[r,n,e,i,t]);return a}function Ha(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var 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?Ha(Object(t),!0).forEach(function(r){ip(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ha(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function ip(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=lp(n,"string");return typeof e=="symbol"?e:e+""}function lp(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 pi=E.forwardRef((n,e)=>{var{localDashboardId:t,fetch:r,metadata:i}=n,a=ms(r,t,i);return p.jsx(oi,Ga(Ga({ref:e},n),a))});pi.displayName="GridPanelPlugin";function Ba(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 Sn(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Ba(a,r,i,l,s,"next",o)}function s(o){Ba(a,r,i,l,s,"throw",o)}l(void 0)})}}function fs(n){var e=Zr(),[t,r]=E.useState(),[i,a]=E.useState(),[l,s]=E.useState(!0),o=E.useCallback(Sn(function*(){var h=yield n();return Bl.makeModel(e,h)}),[e,n]),u=E.useCallback(Sn(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=Sn(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(z.EVENT.DISCONNECT,c),()=>{t.removeEventListener(z.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 gs(n,e){var{eventHub:t}=Jr(),r=El(),i=$n();E.useEffect(function(){i==null||n==null||Ur(t,i,n)},[t,i,n]),E.useEffect(function(){e==null||i==null||Wr(t,i,e)},[t,i,e]),E.useEffect(function(){if(i!=null)return()=>{Ur(t,i,null),Wr(t,i,null)}},[t,i]);var a=E.useCallback(o=>br(o,r),[r]),l=Hr(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 bs(n,e){var{eventHub:t}=Jr(),r=El(),i=$n(),a=wl(),l=E.useCallback(f=>Dt(f,r),[r]),s=Hr(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=>Cr(f,r),[r]),d=Hr(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&&is(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;M(O);var{columnHeaderHeight:D,allColumnXs:F,allColumnWidths:R,right:N,columnHeaderMaxDepth:L}=O,x=n.getColumnIndexByName(f);M(x);var _=e.getVisibleColumn(x),W=(y=F.get(_))!==null&&y!==void 0?y:0,X=(C=R.get(_))!==null&&C!==void 0?C:0,te=Ge(_>N?w.right:w.left+W+X*.5,w.left,w.right),re=w.top+D*L;return[te,re]},[n,e]),m=E.useCallback(f=>{i!=null&&rn(t,i,f,{type:"tableLink"})},[t,i]);return E.useEffect(function(){if(!(!e||a==null||i==null))return va(t,i,{getCoordinates:g,setFilterValues:e.setFilterMap,unsetFilterValue:()=>{},panelId:a}),()=>{va(t,i,null)}},[t,i,g,e,a]),{alwaysFetchColumns:o,columnSelectionValidator:h,isSelectingColumn:c,onColumnSelected:m,onDataSelected:v}}var Cs=E.forwardRef((n,e)=>{var{name:t,model:r,filter:i,fetchColumns:a,selectedRanges:l,irisGridRef:s,pluginState:o,onStateChange:u}=n,d=vi(),h=E.useMemo(()=>d(t),[d,t]),c=Jr(),v=wl(),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})})});Cs.displayName="TablePluginWrapper";function ys(n){var{model:e,irisGridRef:t,irisGridUtils:r,selectedRanges:i}=n,[a,l]=E.useState([]),s=E.useMemo(()=>e!=null&&r!=null&&vt(e)?r.getFiltersFromInputFilters(e.table.columns,a,e.formatter.timeZone):[],[e,r,a]),[o,u]=E.useState([]),d=E.useRef(null),[h,c]=Al(void 0,{version:1,type:"GridWidgetTablePluginState"}),v=E.useMemo(()=>e!=null&&vt(e)&&e.table.pluginName!=null?p.jsx(Cs,{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 sp=["alwaysFetchColumns"];function op(n,e){if(n==null)return{};var t,r,i=up(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 up(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 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 ar(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){dp(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 dp(n,e,t){return(e=hp(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function hp(n){var e=cp(n,"string");return typeof e=="symbol"?e:e+""}function cp(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,{fetch:t}=n,r=no(Yr),{eventHub:i}=Jr(),a=fs(t),l=a.status==="success"?a.model:void 0,s=Zr(),o=E.useMemo(()=>new $(s),[s]),[u,d]=Al(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(()=>An.makeMemoizedCombinedGridStateDehydrator(),[]),g=E.useCallback((x,_)=>{if(!(a.status!=="success"||x==null||_==null)){var W=v(a.model,x,_);d(W)}},[a,d,v]),m=gs((e=l==null?void 0:l.columns)!==null&&e!==void 0?e:null,l!=null&&vt(l)?l.table:void 0),f=E.useRef(null),b=bs(a.status==="success"?a.model:null,f.current),{alwaysFetchColumns:y}=b,C=op(b,sp),T=E.useCallback(()=>{f.current!=null&&f.current.clearAllFilters()},[]);we(i,ct.CLEAR_ALL_FILTERS,T);var[w,O]=E.useState([]),{Plugin:D,customFilters:F,alwaysFetchColumns:R,onContextMenu:N}=ys({model:l,irisGridRef:f,irisGridUtils:o,selectedRanges:w}),L=E.useMemo(()=>{var x=new Set([...y,...R]);return[...x]},[y,R]);return a.status==="loading"?p.jsx(pt,{isLoading:!0,"data-testid":"grid-widget-plugin-loading"}):a.status==="error"?p.jsx(pt,{"data-testid":"grid-widget-plugin-loading-error",errorMessage:Tl(a.error),isLoading:!1}):(M(l,"Model should be defined when fetch is successful"),p.jsx(en,ar(ar(ar({ref:f,model:l,settings:r,onStateChange:g,onSelectionChanged:O,onContextMenu:N,inputFilters:m,customFilters:F},C),{},{alwaysFetchColumns:L},c),{},{children:D})))}var vp={name:"IrisGridPanel",title:"Table",type:Nt.WIDGET_PLUGIN,component:Ss,panelComponent:pi,supportedTypes:["Table","TreeTable","HierarchicalTable","PartitionedTable"],icon:hu};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 bt(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){pp(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 pp(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)}function Es(n){var e=n;return typeof e.getCoordinateForColumn=="function"}function za(n){var e=n;return Es(n)&&typeof e.setFilterMap=="function"&&typeof e.unsetFilterValue=="function"}function qa(n){return n.description==null||!n.description.startsWith("Preview of type: ")}var Ka=ee.module("LinkerUtils");class It{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 Ka.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:(Ka.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(bt(bt({},a),{},{id:Ue(),start:bt(bt({},a.start),{},{panelId:r})})):((l=a.end)===null||l===void 0?void 0:l.panelId)===t&&i.push(bt(bt({},a),{},{id:Ue(),end:bt(bt({},a.end),{},{panelId:r})}))}),i}}function ws(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 Cp=ee.module("LinkerLink"),Xa=.015,Ya=1.5,Ts=12,Ps=12,Za=2,Lr=Math.sqrt((Ps*.5)**2+Ts**2),Qa=Math.asin(Ps*.5/Ts),Ja=15,Ct=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 ad(t);if(S.isTextType(e))return id(t);if(S.isDateType(e))return ld(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 Cp.warn(r),""}}constructor(e){super(e),ws(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*Xa)**Ya,f)),w=Math.max(C,Math.min(a+(s-a)/2+m*(c*Xa)**Ya,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
+ `).concat(Ht.makeCirclePath(i,a,Ja),`
12
+ `).concat(Ht.makeCirclePath(l,s,Ja)),F="link-select-clip-".concat(o),R=Math.atan2(s-w,l-T),N=R-Qa+Math.PI,L=R+Qa+Math.PI,x=l+Math.cos(R)*Za,_=s+Math.sin(R)*Za,W=x+Math.cos(N)*Lr,X=_+Math.sin(N)*Lr,te=x+Math.cos(L)*Lr,re=_+Math.sin(L)*Lr,Z="".concat(x,",").concat(_," ").concat(W,",").concat(X," ").concat(te,",").concat(re),ge=.25*i+.5*T+.25*l,ve=.25*a+.5*w+.25*s,k=T-i+(l-T),A=w-a+(s-w),V=A/k,B=20,q=B/Math.sqrt(1+V**2),Ce=q*V,ye=q*-1,Ae=Ce*-1;Number.isFinite(V)?V>0?(q*=-1,Ce*=-1,ye*=-1,Ae*=-1,ye-=50-10*(Math.abs(v)%Ct),Ae+=10*(Math.abs(v)%Ct),q-=50-10*(Math.abs(v)%Ct),Ce+=10*(Math.abs(v)%Ct)):V<0?(ye+=10*(Math.abs(v)%Ct),Ae+=10*(Math.abs(v)%Ct),q+=10*(Math.abs(v)%Ct),Ce+=10*(Math.abs(v)%Ct)):(ye=15,Ae=10,q=-25,Ce=10):(ye=10,Ae=5,q=10,Ce=-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:F,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(F,")"),"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:Z})]}),u!=null&&r&&p.jsxs(p.Fragment,{children:[Ye&&p.jsx(J,{kind:"primary",className:"btn-fab btn-operator",style:{top:ve+(V>=0?Ce:Ae),left:ge+(V>=0?q:ye)},onClick:()=>{},icon:p.jsxs("div",{className:"fa-md fa-layers",children:[p.jsx("b",{children:Xe}),p.jsx(Fe,{icon:cu,transform:"right-8 down-9 shrink-5"})]}),tooltip:"Change comparison operator",children:p.jsx(fl,{actions:this.getDropdownActions,popperOptions:{placement:"bottom-start"}})}),p.jsx(J,{kind:"primary",className:"btn-fab btn-delete",style:{top:ve+(V<0?Ce:Ae),left:ge+(V<0?q:ye)},onClick:this.handleDelete,icon:Qr,tooltip:"Delete"})]})]})}}ws(Ht,"defaultProps",{className:"",isSelected:!1,onClick(){},onDelete(){}});function el(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function tl(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?el(Object(t),!0).forEach(function(r){mi(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):el(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function mi(n,e,t){return(e=yp(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function yp(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)}var En=ee.module("LinkerOverlayContent");class Ds extends E.Component{constructor(e){super(e),mi(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){En.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(!Es(u))throw new Error("Panel does not have getCoordinateForColumn method: ".concat(l));try{var d=u.getCoordinateForColumn(a);if(d!=null)return d}catch{En.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?tl(tl({},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,[F,R]=this.getPointFromLinkPoint(T),N=(m=u==null?void 0:u.x)!==null&&m!==void 0?m:F,L=(f=u==null?void 0:u.y)!==null&&f!==void 0?f:R;if(w!=null&&([N,L]=this.getPointFromLinkPoint(w)),C!=null&&C){var[x,_]=[F,R];[F,R]=[N,L],[N,L]=[x,_]}var W=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:F,y1:R,x2:N,y2:L,id:b,className:W,operator:O,startColumnType:D,type:y}}catch(X){return En.warn("Unable to get point for link",g,X),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:vu,onClick:()=>{},onMouseDown:this.handleMouseDown,children:!h&&p.jsx(Dn,{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:Pn.LINKER_CLOSE,isGlobal:!0}]})]})}}mi(Ds,"defaultProps",{disabled:"false"});function rl(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function nl(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?rl(Object(t),!0).forEach(function(r){jr(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):rl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function jr(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=wp(n,"string");return typeof e=="symbol"?e:e+""}function wp(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"),Tp=(n,e)=>({activeTool:Hn(n),dh:cl(n),isolatedLinkerPanelId:Xr(n,e.localDashboardId),links:Dt(n,e.localDashboardId),timeZone:gl(n)}),Pp=Pt(Tp,{setActiveTool:dl,setDashboardLinks:tn,addDashboardLinks:Xl,deleteDashboardLinks:Yl,setDashboardIsolatedLinkerPanelId:Jn,setDashboardColumnSelectionValidator:Zl});class Dp extends E.Component{constructor(e){super(e),jr(this,"linkTargetPropMap",new Map),jr(this,"removerFns",[]),jr(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(Ne.COLUMN_SELECTED,this.handleGridColumnSelect),t.on(Ne.DATA_SELECTED,this.handleUpdateValues),t.on(Ne.STATE_CHANGED,this.handleStateChange),t.on(Wt.COLUMN_SELECTED,this.handleChartColumnSelect),t.on(ke.CLONED,this.handlePanelCloned),this.removerFns=[wc(t,this.handleColumnsChanged),Oc(t,this.handleLinkPointSelected),Nc(t,this.handleUpdateValues),Fc(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(Ne.COLUMN_SELECTED,this.handleGridColumnSelect),t.off(Ne.DATA_SELECTED,this.handleUpdateValues),t.off(Ne.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);M(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&&It.findColumn(t,l)==null||s!=null&&s.panelId===e&&It.findColumn(t,s)==null});this.deleteLinks(i)}handleGridColumnSelect(e,t){if(!qa(t)){Ee.debug2("Column is not filterable");return}var r=H.getIdFromPanel(e);M(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)&&It.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(R=>{var{end:N}=R;return(N==null?void 0:N.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(R=>{var{end:N,start:L}=R;return(L==null?void 0:L.panelId)===O.panelId&&(N==null?void 0:N.panelId)===w.panelId&&(N==null?void 0:N.columnName)===w.columnName&&(N==null?void 0:N.columnType)===w.columnType});this.deleteLinks(D);break}}var F={start:m?f:v,end:m?v:f,id:g,type:y,operator:P.eq};Ee.info("creating link",F),this.setState({linkInProgress:void 0,selectedIds:new Set([g])},()=>{this.addLinks([F])})}}}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?za(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?za(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 F=new Vr(r,{timeZone:a,showTimeZone:!1,showTSeparator:!0,defaultDateTimeFormatString:se.FULL_DATE_FORMAT});D=F.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((R,N)=>{this.setPanelFilterMap(N,R)})}handlePanelCloned(e,t){var{links:r}=this.props,i=H.getIdFromPanel(e),a=t.id;if(i!=null){var l=It.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:nl(nl({},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(!qa(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?It.isLinkValid(h,u,l):It.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(On,{in:s,mountOnEnter:!0,unmountOnExit:!0,onExited:this.handleExited,children:p.jsx(Ds,{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 Op=Pp(Dp);function Os(n){Yt(n);var{id:e,layout:t,panelManager:r}=n;return p.jsx(Op,{layout:t,localDashboardId:e,panelManager:r})}var Np={name:"LinkerPlugin",type:Nt.DASHBOARD_PLUGIN,component:Os};function Ns(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,zl.OPEN,a),null}var Fp={name:"MarkdownPlugin",type:Nt.DASHBOARD_PLUGIN,component:Ns};function il(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function al(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?il(Object(t),!0).forEach(function(r){Mp(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):il(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Mp(n,e,t){return(e=Rp(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Rp(n){var e=Ip(n,"string");return typeof e=="symbol"?e:e+""}function Ip(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 fi=E.forwardRef((n,e)=>{var{localDashboardId:t,fetch:r,metadata:i}=n,a=ms(r,t,i);return p.jsx(sn,al(al({ref:e},n),a))});fi.displayName="PandasPanelPlugin";function Fs(n){var{fetch:e}=n,t=fs(e);if(t.status==="loading")return p.jsx(pt,{isLoading:!0,"data-testid":"pandas-widget-plugin-loading"});if(t.status==="error")return p.jsx(pt,{errorMessage:Tl(t.error),isLoading:!1,"data-testid":"pandas-widget-plugin-loading-error"});var{model:r,reload:i}=t;return p.jsx(en,{model:r,children:p.jsx(us,{onClick:i})})}var kp={name:"PandasPanel",title:"Pandas",type:Nt.WIDGET_PLUGIN,component:Fs,panelComponent:fi,supportedTypes:"pandas.DataFrame",icon:pu};function ll(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function dt(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ll(Object(t),!0).forEach(function(r){Lp(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ll(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Lp(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)}var yt=ee.module("WidgetLoaderPlugin");function jp(n){var e;function t(r,i){var a,l,s=n.component,{metadata:o}=r,u=dt(dt({},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=Ho(s),h="widget-loader-".concat(u.type);return p.jsx(Sr,dt(dt({descriptor:u,className:h},r),{},{children:d?p.jsx(s,dt(dt({},r),{},{ref:i})):p.jsx(s,dt({},r))}))}return t.displayName="WidgetLoaderPlugin(".concat((e=n.component.displayName)!==null&&e!==void 0?e:n.name,")"),E.forwardRef(t)}function Ms(n){var e=Sl(),t=E.useMemo(()=>{var s=new Map;e.forEach(u=>{var d=xo(u);!jo(u)&&!d||[u.supportedTypes].flat().forEach(h=>{if(!(h==null||h==="")){var c=s.get(h);d?c!=null?(c.middleware.push(u),yt.debug("Adding middleware ".concat(u.name," to chain for type ").concat(h))):(s.set(h,{basePlugin:null,middleware:[u]}),yt.debug("Creating pending middleware chain for type ".concat(h," with ").concat(u.name))):(c!=null?(c.basePlugin!=null&&yt.warn("Multiple WidgetPlugins handling type ".concat(h,". ")+"Replacing ".concat(c.basePlugin.name," with ").concat(u.name," as base plugin")),c.basePlugin=u):s.set(h,{basePlugin:u,middleware:[]}),yt.debug("Set base plugin ".concat(u.name," for type ").concat(h)))}})});var o=new Map;return s.forEach((u,d)=>{u.basePlugin!=null?o.set(d,u):yt.warn("No base plugin found for type ".concat(d,", middleware will not be applied"))}),o},[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.basePlugin.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 Map;t.forEach((u,d)=>{if(!s.has(u.basePlugin.name))s.set(u.basePlugin.name,{basePlugin:u.basePlugin,middleware:[...u.middleware]});else{var h=s.get(u.basePlugin.name);h!=null&&u.middleware.forEach(c=>{h.middleware.includes(c)||h.middleware.push(c)})}}),yt.debug("Registering widget components",[...s.entries()].map(u=>{var[d,h]=u;return{plugin:d,middleware:h.middleware.map(c=>c.name),hasPanel:h.basePlugin.panelComponent!=null}}));var o=[...s.values()].map(u=>{var{basePlugin:d,middleware:h}=u,{panelComponent:c}=d;if(c==null){yt.debug("Chaining widget components for ".concat(d.name," (no panel component, using default wrapper)"));var v=_o(d.component,h),g=dt(dt({},d),{},{component:v});return a(d.name,jp(g))}yt.debug("Chaining panel components for ".concat(d.name," (has custom panel component)"));var m=Vo(c,h);return a(d.name,m)});return()=>{o.forEach(u=>u())}},[a,t]),$o(i.eventHub,l),null}var _p={name:"WidgetLoaderPlugin",type:Nt.DASHBOARD_PLUGIN,component:Ms};function on(n,e,t){return(e=Vp(e))in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Vp(n){var e=$p(n,"string");return typeof e=="symbol"?e:e+""}function $p(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 Er{}on(Er,"DROPDOWN_FILTER","ControlType.DROPDOWN_FILTER");on(Er,"INPUT_FILTER","ControlType.INPUT_FILTER");on(Er,"MARKDOWN","ControlType.MARKDOWN");on(Er,"FILTER_SET_MANAGER","ControlType.FILTER_SET_MANAGER");var Hp=ae.shape({state:ae.shape({panelState:ae.shape({})})}),Gp=ae.shape({panelId:ae.string.isRequired,columnName:ae.string.isRequired,columnType:ae.string.isRequired}),sl=ae.shape({panelId:ae.string.isRequired,columnName:ae.string.isRequired}),Rs=ae.shape({start:sl,end:sl,id:ae.string,isReversed:ae.bool}),Bp=ae.arrayOf(Rs),Up=ae.shape({name:ae.string.isRequired,operateAs:ae.string.isRequired,groups:ae.arrayOf(ae.string).isRequired,permissions:ae.shape({canUsePanels:ae.bool.isRequired,canCopy:ae.bool.isRequired,canDownloadCsv:ae.bool.isRequired,canLogout:ae.bool.isRequired}).isRequired}),Wp=Object.freeze({LinkPoint:Gp,Link:Rs,Links:Bp,Panel:Hp,User:Up}),zp=(n,e)=>n[e]===null?null:ae.bool,qp=(n,e)=>n[e]===null?null:ae.string,Kp=Object.freeze({nullableBoolean:zp,nullableString:qp});const pm=Object.freeze(Object.defineProperty({__proto__:null,ChartBuilderPlugin:cs,ChartBuilderPluginConfig:Xv,ChartEvent:Wt,ChartPanel:si,ChartPanelPlugin:ci,ChartPluginConfig:qv,ChartWidgetPlugin:hs,CommandHistoryPanel:bl,CommonPropTypes:Kp,ConsoleEvent:$r,ConsolePanel:Ar,ConsolePlugin:ep,ControlType:Er,CorePanel:$v,DropdownFilterPanel:Vt,FileExplorerPanel:Cl,FilterPlugin:ps,FilterPluginConfig:tp,FilterSetManager:fr,FilterSetManagerPanel:xr,GridPanelPlugin:pi,GridPluginConfig:vp,GridWidgetPlugin:Ss,InputFilterEvent:ct,InputFilterPanel:$t,IrisGridEvent:Ne,IrisGridPanel:oi,LinkerPlugin:Os,LinkerPluginConfig:Np,LinkerUtils:It,LogPanel:yl,MarkdownEvent:zl,MarkdownPanel:ur,MarkdownPlugin:Ns,MarkdownPluginConfig:Fp,MockFileStorage:Vv,NotebookEvent:oe,NotebookPanel:wt,PandasEvent:Zn,PandasPanel:sn,PandasPanelPlugin:fi,PandasPluginConfig:kp,PandasWidgetPlugin:Fs,Panel:Hv,TabEvent:fc,ToolType:et,UIPropTypes:Wp,WidgetLoaderPlugin:Ms,WidgetLoaderPluginConfig:_p,WidgetPanel:Sr,WidgetPanelTooltip:Qn,addDashboardLinks:Xl,deleteDashboardLinks:Yl,getColumnSelectionValidatorForDashboard:Cr,getColumnsForDashboard:Bn,getDashboardConnection:Go,getDashboardConsoleSettings:Bo,getDashboardSessionWrapper:ml,getFilterSetsForDashboard:vl,getInputFiltersForDashboard:br,getIsolatedLinkerPanelIdForDashboard:Xr,getLinksForDashboard:Dt,getTableMapForDashboard:Kr,isChartPanelDehydratedProps:rs,isChartPanelFigureMetadata:es,isChartPanelTableMetadata:_t,isGLChartPanelState:ts,isIrisGridPanelMetadata:ls,isLegacyIrisGridPanelMetadata:as,setDashboardColumnSelectionValidator:Zl,setDashboardConnection:yc,setDashboardConsoleSettings:Ql,setDashboardFilterSets:Jl,setDashboardIsolatedLinkerPanelId:Jn,setDashboardLinks:tn,setDashboardSessionWrapper:Sc,useConfigureRuff:vs,useDashboardColumnFilters:gs,useGridLinker:bs,useLoadTablePlugin:vi,useTablePlugin:ys},Symbol.toStringTag,{value:"Module"}));export{Y as $,er as A,zu as B,zn as C,Nl as D,Yt as E,On as F,fd as G,Jr as H,sd as I,Al as J,ie as K,I as L,xl as M,Bt as N,mr as O,Gi as P,Md as Q,Hl as R,qn as S,S as T,Gl as U,Ln as V,$ as W,rc as X,en as Y,jl as Z,Mn as _,qu as a,gn as a0,yr as a1,An as a2,z as a3,Bl as a4,Jh as a5,Wh as a6,Ut as a7,Ih as a8,Cn as a9,vt as aa,vm as ab,cm as ac,Yi as ad,dh as ae,Qe as af,ia as ag,pm as ah,Ml as ai,Wn as aj,dm as ak,Vl as al,Wd as am,G as an,Rn as ao,j as ap,hm as aq,Kd as ar,ad as as,id as at,ld as au,im as av,pr as aw,nm as ax,P as ay,Gh as az,se as b,Ku as c,Ke as d,Fn as e,Xu as f,Qp as g,Rl as h,pd as i,Il as j,tm as k,am as l,Jp as m,em as n,rm as o,Ju as p,lm as q,sm as r,kl as s,Ll as t,Pu as u,od as v,ud as w,md as x,um as y,om as z};
13
+ //# sourceMappingURL=index-fg-vlmrx.js.map