@deephaven/embed-widget 0.85.37 → 0.85.39

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 (27) hide show
  1. package/build/assets/{App-5fc6d1cb.js → App-e641d858.js} +2 -2
  2. package/build/assets/{App-5fc6d1cb.js.map → App-e641d858.js.map} +1 -1
  3. package/build/assets/{Chart-1af17346.js → Chart-c2a7e030.js} +2 -2
  4. package/build/assets/{Chart-1af17346.js.map → Chart-c2a7e030.js.map} +1 -1
  5. package/build/assets/IrisGrid-3d21ad1b.js +5 -0
  6. package/build/assets/IrisGrid-3d21ad1b.js.map +1 -0
  7. package/build/assets/{IrisGridThemeProvider-6ebfacf0.js → IrisGridThemeProvider-173abd35.js} +2 -2
  8. package/build/assets/{IrisGridThemeProvider-6ebfacf0.js.map → IrisGridThemeProvider-173abd35.js.map} +1 -1
  9. package/build/assets/{LocalWorkspaceStorage-c5814f56.js → LocalWorkspaceStorage-61d6cd18.js} +2 -2
  10. package/build/assets/{LocalWorkspaceStorage-c5814f56.js.map → LocalWorkspaceStorage-61d6cd18.js.map} +1 -1
  11. package/build/assets/{LogPanel-ea0c64de.js → LogPanel-5b98b8a3.js} +2 -2
  12. package/build/assets/{LogPanel-ea0c64de.js.map → LogPanel-5b98b8a3.js.map} +1 -1
  13. package/build/assets/{MarkdownEditor-d4fa93a1.js → MarkdownEditor-9055fe02.js} +2 -2
  14. package/build/assets/{MarkdownEditor-d4fa93a1.js.map → MarkdownEditor-9055fe02.js.map} +1 -1
  15. package/build/assets/{MarkdownNotebook-1fa4a282.js → MarkdownNotebook-5776a1bd.js} +2 -2
  16. package/build/assets/{MarkdownNotebook-1fa4a282.js.map → MarkdownNotebook-5776a1bd.js.map} +1 -1
  17. package/build/assets/{index-a8c7882b.js → index-1e555ef0.js} +2 -2
  18. package/build/assets/{index-a8c7882b.js.map → index-1e555ef0.js.map} +1 -1
  19. package/build/assets/{index-18459fbf.js → index-31be78ab.js} +3 -3
  20. package/build/assets/{index-18459fbf.js.map → index-31be78ab.js.map} +1 -1
  21. package/build/assets/{index-8c1f783f.js → index-5b5c6beb.js} +9 -9
  22. package/build/assets/index-5b5c6beb.js.map +1 -0
  23. package/build/index.html +2 -2
  24. package/package.json +9 -9
  25. package/build/assets/IrisGrid-09ef392e.js +0 -5
  26. package/build/assets/IrisGrid-09ef392e.js.map +0 -1
  27. package/build/assets/index-8c1f783f.js.map +0 -1
@@ -1,13 +1,13 @@
1
- import{r as T,E as f,H as Ie,G as Bs,J as Pe,bh as Ws,I as Me,bi as kn,bj as zs,bk as qs,bl as Ks,bm as Xs,af as Ge,D as Be,_ as zr,bn as ll,ac as ht,ab as Ue,bo as Ci,bp as Ys,bq as Zs,br as Qs,bs as Js,bt as eo,bu as U,bg as Si,bv as jr,ad as B,bw as Et,aP as to,aO as yi,R as ro,K as sl,L as no}from"./vendor-9e6eb436.js";import{bx as ol,B as io,by as ao,bz as lo,bA as so,bB as oo,bC as uo,bD as ho,bE as co,bF as vo,bG as fo,bH as po,bI as xn,a5 as Ut,a6 as Ae,a1 as mo,bJ as Xe,bK as dn,a2 as Vr,a3 as go,a4 as bo,au as Ft,c as Ei,aP as ot,bL as Co,aZ as So,E as re,bM as jt,bN as le,aQ as $,aY as ul,x as Ke,bO as qt,be as wt,bP as Tt,z as Z,bQ as Kt,bR as ut,bS as dl,bT as _n,bU as qr,b7 as hl,bV as jn,bW as Kr,bX as mr,bY as gr,bl as Xr,O as cr,bZ as Vn,b_ as cl,b$ as yo,aT as Eo,c0 as vl,L as wo,P as Fe,b5 as To,c1 as Po,bm as Ve,c2 as oe,c3 as $r,H as Sn,T as yn,D as fl,c4 as Oo,y as wi,c5 as Do,c6 as Fo,c7 as pl,c8 as Ti,bn as No,u as Xt,a0 as Mo,c9 as ml,a9 as Pt,b2 as Yt,aR as Se,bt as Ar,ca as Io,aX as Ro,bv as gl,bw as bl,bu as Cl,a7 as Sl,ak as Lo,ai as Ao,bi as yl,bj as El,bg as En,bk as ko,an as wl,a8 as xo,b3 as _o,cb as jo,cc as Vo,cd as $o}from"./LogPanel-ea0c64de.js";import{L as J,Z as Ho,_ as Tl,T as Go,$ as Uo,a0 as Bo,l as N,a1 as Wo,a as ct,a2 as At,e as zo,a3 as qo,a4 as $n,a5 as Pl,a6 as Ko,a7 as Ol,v as Yr,a8 as Dl,a9 as Pi,aa as Oi,ab as Xo,ac as Yo,M as Zo,s as Qo,b as Jo,ad as eu,ae as tu,af as ru,ag as nu,ah as iu,c as Di,ai as au,aj as lu,ak as su,al as ou,am as uu}from"./index-a8c7882b.js";function Hn(n){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,t=du(n,e);t.forEach(r=>{n[r]=n[r].bind(n)})}function du(n,e){for(var t=new Set,r=n,i=0;r!=null&&r!==Object.prototype&&(i<=1||e);){for(var a of Object.getOwnPropertyNames(r)){var l;a!=="constructor"&&typeof((l=Object.getOwnPropertyDescriptor(r,a))===null||l===void 0?void 0:l.value)=="function"&&t.add(a)}r=Object.getPrototypeOf(r),i+=1}return[...t.keys()]}var hu=3500,cu=J.module("useCopyToClipboard");function vu(){var[n,e]=T.useState(!1),t=T.useRef(null),r=T.useCallback(i=>{ol(i).then(()=>{e(!0)}).catch(a=>cu.error("Unable to copy ".concat(i),`
2
- `,a))},[]);return T.useEffect(()=>(t.current&&clearTimeout(t.current),n&&(t.current=setTimeout(()=>{e(!1)},hu)),()=>{t.current&&clearTimeout(t.current)}),[n]),[n,r]}function Gn(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=T.useRef(null),s=T.useCallback(u=>{u.target===u.currentTarget&&document.body.classList.add("card-flip--is-flipping")},[]),o=T.useCallback(u=>{u.target===u.currentTarget&&document.body.classList.remove("card-flip--is-flipping")},[]);return T.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]),f.jsxs("div",{className:Ie(e,{"card-flip--show-front":t,"card-flip--show-back":!t}),"data-testid":i,children:[f.jsx("div",{className:"card-flip--back",children:a(0)}),f.jsx("div",{ref:l,className:"card-flip--front",onTransitionEnd:o,children:a(1)})]})}function fu(n){var{copy:e,kind:t="ghost",tooltip:r="Copy",className:i,style:a,"data-testid":l,children:s}=n,[o,u]=vu();return f.jsx(io,{kind:t,className:i,style:a,"data-testid":l,icon:o?Ho:Tl,tooltip:o?"Copied":r,onClick:()=>{u(typeof e=="function"?e():e)},children:s})}var pu=["className","timeout"];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 mu(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){gu(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 gu(n,e,t){return e=bu(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function bu(n){var e=Cu(n,"string");return typeof e=="symbol"?e:String(e)}function Cu(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Su(n,e){if(n==null)return{};var t=yu(n,e),r,i;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(n);for(i=0;i<a.length;i++)r=a[i],!(e.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(n,r)&&(t[r]=n[r])}return t}function yu(n,e){if(n==null)return{};var t={},r=Object.keys(n),i,a;for(a=0;a<r.length;a++)i=r[a],!(e.indexOf(i)>=0)&&(t[i]=n[i]);return t}function wn(n){var{className:e,timeout:t=Go.transitionMs}=n,r=Su(n,pu);return f.jsx(Bs,mu({timeout:t,classNames:Ie("fade",e)},r))}var Un=Pe.forwardRef((n,e)=>{var{children:t,className:r,disabled:i,id:a,isLinked:l,isLinkedSource:s,isInvalid:o,onClick:u,onMouseEnter:d,onMouseLeave:h,style:c,"data-testid":v}=n,{UNSAFE_className:g}=Ws({},"button");return f.jsxs("button",{ref:e,type:"button",className:Ie("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,f.jsx(Me,{icon:Uo,className:"linked btn-socketed-icon",transform:"down-1"}),f.jsx(Me,{icon:Bo,className:"is-invalid btn-socketed-icon"})]})});Un.displayName="SocketedButton";Un.defaultProps={children:void 0,className:"",disabled:!1,id:void 0,isLinked:!1,isLinkedSource:!1,isInvalid:!1,onClick:void 0,onMouseEnter:void 0,onMouseLeave:void 0,style:void 0,"data-testid":void 0};const Fl=Un;function Ni(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 hn(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ni(Object(t),!0).forEach(function(r){Eu(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ni(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Eu(n,e,t){return e=wu(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function wu(n){var e=Tu(n,"string");return typeof e=="symbol"?e:String(e)}function Tu(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Nl(n,e){return function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:e,r=arguments.length>1?arguments[1]:void 0;switch(r.type){case n:{var i=r.payload;return i==null?null:t!=null?hn(hn({},t),i):hn({},i)}default:return t}}}function Ot(n,e){return function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:e,r=arguments.length>1?arguments[1]:void 0;switch(r.type){case n:return r.payload;default:return t}}}const Pu=Ot(ao,null),Ou=Ot(lo,null),Du=Ot(so,null),Fu=Ot(oo,null),Nu=Ot(uo,null),Mu=Ot(ho,null),Iu=kn({commandHistoryStorage:Fu,fileStorage:Nu,workspaceStorage:Mu}),Ru=Nl(co,null),Lu=Nl(vo,null),Au=Ot(fo,null),ku=Ot(po,null);var xu={activeTool:Ou,api:Pu,plugins:Du,storage:Iu,user:Ru,workspace:Lu,defaultWorkspaceSettings:Au,serverConfigValues:ku};const _u=xu;var Mi=J.module("redux-logger"),ju=n=>e=>t=>{Mi.debug("dispatching",t);var r=e(t);return Mi.debug("next state",n.getState()),r};const Vu=ju;var $u=J.module("redux-crashReporter"),Hu=n=>e=>t=>{try{return e(t)}catch(r){throw $u.error("Error executing",t," with state ",n.getState(),":",r),r}};const Gu=Hu,Uu=[Vu,Gu,zs];var cn;Object.entries(_u).map(n=>{var[e,t]=n;return xn.register(e,t)});var Bu=(cn=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__)!==null&&cn!==void 0?cn:Xs,Ml=qs(kn(xn.reducers),Bu(Ks(...Uu)));xn.setListener(n=>{Ml.replaceReducer(kn(n))});const Wu=Ml;class zu extends Ut{format(e){switch(e){case 1:case!0:return"true";case 0:case!1:return"false";default:return""}}}const qu=zu;class Ku extends Ut{format(e){return String.fromCharCode(e)}}const Xu=Ku;class Yu extends Ut{format(e){return"".concat(e)}}const Zu=Yu;class Qu extends Ut{format(e){return e}}function Ii(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Ri(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ii(Object(t),!0).forEach(function(r){Bn(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ii(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Bn(n,e,t){return e=Ju(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ju(n){var e=ed(n,"string");return typeof e=="symbol"?e:String(e)}function ed(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var td=/\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"),p="".concat(o).padStart(2,"0"),m="".concat(u).padStart(9,"0"),b="".concat(d,"-").concat(h,"-").concat(c," ").concat(v,":").concat(g,":").concat(p,".").concat(m);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=td.exec(e);if(r==null)throw new Error("Unexpected date string: ".concat(e));var[,i,,a,,l,,s,,o,,u,,d,h]=r;if(!t&&h!=null&&h.length>0)throw new Error("Unexpected characters after date string '".concat(e,"': ").concat(h));var c={year:i,month:a,date:l,hours:s,minutes:o,seconds:u,nanos:d};return t?Ri(Ri({},c),{},{overflow:h}):c}static parseDateRange(e,t,r){var i=t.trim().toLowerCase();if(i.length===0)throw new Error("Cannot parse date range from empty string");if(i==="null")return[null,null];if(i==="today"){var a=new Date(Date.now()),l=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 p=se.parseDateTimeString(i);if(p.year==null&&p.month==null&&p.date==null)throw new Error("Unable to extract year, month, or day ".concat(i));var m=se.parseDateValues(p.year,p.month,p.date,p.hours,p.minutes,p.seconds,p.nanos);if(m==null)throw new Error("Unable to extract date values from ".concat(p));var b=se.makeDateWrapper(e,r,m.year,m.month,m.date,m.hours,m.minutes,m.seconds,m.nanos),y=se.getNextDate(e,p,m,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)}}Bn(se,"FULL_DATE_FORMAT","yyyy-MM-dd HH:mm:ss.SSSSSSSSS");Bn(se,"months",["january","february","march","april","may","june","july","august","september","october","november","december"]);function Np(n,e){return n===e?{operator:"notEq",value:""}:{operator:"eq",value:n}}function Mp(n,e,t,r){return function(a){var l=t.trim();if(l==="")return null;var s=Il(e,o=>n.makeSearchTextFilter(o,l,r),"or");return s(a)}}function Il(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 rd(n,e,t,r){return Il(e,i=>i.filter()[r](n.makeFilterValue(i.type,t)),"or")}function Ip(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 Rp(n){return function(t){return t.filter().isNull().not().and(t.filter().notEq(n.makeFilterValue(t.type,"")))}}function Lp(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 Wn(n,e,t){return e=nd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function nd(n){var e=id(n,"string");return typeof e=="symbol"?e:String(e)}function id(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class vr{}Wn(vr,"not","not");Wn(vr,"and","and");Wn(vr,"or","or");function Ap(n){if(!(n==="not"||n==="and"||n==="or"))throw new Error("operator is not a valid FilterOperatorValue")}function he(n,e,t){return e=ad(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ad(n){var e=ld(n,"string");return typeof e=="symbol"?e:String(e)}function ld(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class O{}he(O,"eq","eq");he(O,"eqIgnoreCase","eqIgnoreCase");he(O,"notEq","notEq");he(O,"notEqIgnoreCase","notEqIgnoreCase");he(O,"greaterThan","greaterThan");he(O,"greaterThanOrEqualTo","greaterThanOrEqualTo");he(O,"lessThan","lessThan");he(O,"lessThanOrEqualTo","lessThanOrEqualTo");he(O,"in","in");he(O,"inIgnoreCase","inIgnoreCase");he(O,"notIn","notIn");he(O,"notInIgnoreCase","notInIgnoreCase");he(O,"isTrue","isTrue");he(O,"isFalse","isFalse");he(O,"isNull","isNull");he(O,"invoke","invoke");he(O,"contains","contains");he(O,"notContains","notContains");he(O,"containsIgnoreCase","containsIgnoreCase");he(O,"startsWith","startsWith");he(O,"endsWith","endsWith");he(O,"containsAny","containsAny");function sd(n){switch(n){case O.eq:return"is exactly";case O.eqIgnoreCase:return"is exactly (ignore case)";case O.notEq:return"is not exactly";case O.notEqIgnoreCase:return"is not exactly (ignore case)";case O.contains:return"contains";case O.notContains:return"does not contain";case O.startsWith:return"starts with";case O.endsWith:return"ends with";default:throw new Error("Unrecognized text filter type ".concat(n))}}function od(n){switch(n){case O.eq:return"is equal to";case O.notEq:return"is not equal to";case O.greaterThan:return"greater than";case O.greaterThanOrEqualTo:return"greater than or equal to";case O.lessThan:return"less than";case O.lessThanOrEqualTo:return"less than or equal to";default:throw new Error("Unrecognized number filter type ".concat(n))}}function ud(n){switch(n){case O.eq:return"date is";case O.notEq:return"date is not";case O.notEqIgnoreCase:case O.greaterThan:return"date is after";case O.greaterThanOrEqualTo:return"date is after or equal";case O.lessThan:return"date is before";case O.lessThanOrEqualTo:return"date is before or equal";default:throw new Error("Unrecognized date filter type ".concat(n))}}function kp(n){switch(n){case O.isTrue:return"Is True";case O.isFalse:return"Is False";case O.isNull:return"Is Null";default:throw new Error("Unrecognized boolean filter type ".concat(n))}}var dd="DH_ITEM_KEY",Li=J.module("ViewportDataUtils");function Rl(n){return"".concat(dd,"_").concat(n)}function xp(n,e){var{bulkUpdate:t}=n;return function(i){var{columns:a,offset:l,rows:s}=i.detail;Li.debug("table updated",i.detail);var o=new Map;s.forEach((u,d)=>{var h=e(u,a),c=Rl(l+d);o.set(c,{key:c,item:h})}),Li.debug("update keys",o),t(o)}}function _p(n,e){return e.reduce((t,r)=>(t[r.name]=n.get(r),t),{})}function*jp(n,e){for(var t=n;t<=e;++t)yield{key:Rl(t)}}function hd(n){return n==null||cd(n)?0:n.size}function cd(n){return"isClosed"in n?n.isClosed:!1}function Vp(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]}function Ai(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function Ct(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Ai(a,r,i,l,s,"next",o)}function s(o){Ai(a,r,i,l,s,"throw",o)}l(void 0)})}}function Rt(n,e,t){return e=vd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function vd(n){var e=fd(n,"string");return typeof e=="symbol"?e:String(e)}function fd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var it=J.module("TableUtils");function $p(n){return n===S.sortDirection.ascending||n===S.sortDirection.descending||n===S.sortDirection.reverse||n===S.sortDirection.none}class S{static copyTableAndApplyFilters(e){var t=arguments;return Ct(function*(){if(e==null)return null;for(var r=yield e.copy(),i=t.length,a=new Array(i>1?i-1:0),l=1;l<i;l++)a[l-1]=t[l];return r.applyFilter(dn(...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)?[O.isTrue,O.isFalse,O.isNull]:S.isCharType(e)||S.isNumberType(e)||S.isDateType(e)?[O.eq,O.notEq,O.greaterThan,O.greaterThanOrEqualTo,O.lessThan,O.lessThanOrEqualTo]:S.isTextType(e)?[O.eq,O.eqIgnoreCase,O.notEq,O.notEqIgnoreCase,O.contains,O.notContains,O.startsWith,O.endsWith]:[]}static getNextSort(e,t,r){if(r<0||r>=e.length)return null;var i=S.getSortForColumn(t,e[r].name);return i===null?e[r].sort().asc():i.direction===S.sortDirection.ascending?i.desc():null}static makeColumnSort(e,t,r,i){if(t<0||t>=e.length||r===S.sortDirection.none)return null;var a=e[t].sort();switch(r){case S.sortDirection.ascending:a=a.asc();break;case S.sortDirection.descending:a=a.desc();break}return i&&(a=a.abs()),a}static toggleSortForColumn(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(r<0||r>=t.length)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 Ae.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,a,l,s=!0,o=new Promise((u,d)=>{l=setTimeout(()=>{a(),s=!1,d(new mo('Event "'.concat(t,'" timed out.')))},r),a=e.addEventListener(t,h=>{if(i!=null&&!i(h)){it.debug2("Event triggered, but matcher returned false.");return}it.debug2("Event triggered, resolving."),a(),clearTimeout(l),s=!1,u(h)})});return o.cancel=()=>{if(s){it.debug2("Pending promise cleanup."),a(),clearTimeout(l),s=!1;return}it.debug2("Ignoring non-pending promise cancel.")},o}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 O.eq:return"=";case O.notEq:return"!=";case O.greaterThan:return">";case O.greaterThanOrEqualTo:return">=";case O.lessThan:return"<";case O.lessThanOrEqualTo:return"<=";case O.contains:return"~";case O.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 Xe.sort(a,l,t)})}constructor(e){Rt(this,"dh",void 0),this.dh=e,Hn(this)}createDistinctSortedColumnTable(e,t,r){var i=arguments,a=this;return Ct(function*(){if(e==null)return null;for(var l=e,s=i.length,o=new Array(s>3?s-3:0),u=3;u<s;u++)o[u-3]=i[u];o.length>0&&(l=yield e.copy(),yield l.applyFilter(dn(...o.map(v=>v(l)))));var d=l.findColumn(t),h=yield l.selectDistinct([d]);l!==e&&l.close();var c=h.findColumn(t).sort()[r]();return a.applySort(h,[c])})()}doesColumnValueExist(e,t,r,i){var a=this;return Ct(function*(){if(e==null)return null;var l=rd(a,t,r,i?"eq":"eqIgnoreCase"),s=yield e.copy();yield a.applyFilter(s,dn(l(s)));var o=hd(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 it.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){var t,r;if(e==null)return null;var i=/^(!~|!=|~|=|!)?(.*)/,a=/^\\*null$/,l=i.exec(e),s=null,o=null;if(l!==null&&l.length>2&&([,s,o]=l),s!=null){var u;return"\\".concat(s).concat((u=o)!==null&&u!==void 0?u:"")}return o!=null&&a.test(o.toLowerCase())||o!=null&&o.startsWith("*")?"\\".concat(o):o!=null&&o.endsWith("*")&&!o.endsWith("\\*")?(o=o.substring(0,o.length-1),"".concat(o,"\\*")):"".concat((t=s)!==null&&t!==void 0?t:"").concat((r=o)!==null&&r!==void 0?r:"")}static unescapeQuickTextFilter(e){var t,r,i=/^(\\!~|\\!=|\\~|\\=|\\!)?(.*)/,a=/^\\*null$/,l=i.exec(e),s=null,o=null;return l!==null&&l.length>2&&([,s,o]=l),s!=null&&(s=s.replace("\\","")),o!=null&&a.test(o.toLowerCase())&&(o=o.replace("\\","")),s==null&&o!=null&&o.startsWith("\\*")&&(o=o.substring(1)),s==null&&o!=null&&o.endsWith("\\*")?(o=o.substring(0,o.length-2),"".concat(o,"*")):"".concat((t=s)!==null&&t!==void 0?t:"").concat((r=o)!==null&&r!==void 0?r:"")}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=O.eq;switch(s){case"<":u=O.lessThan;break;case"<=":case"=<":u=O.lessThanOrEqualTo;break;case">":u=O.greaterThan;break;case">=":case"=>":u=O.greaterThanOrEqualTo;break;case"!=":case"!":u=O.notEq;break;case"=":case"==":default:u=O.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===O.notEq?d.isNull().not():d.isNull();switch(r){case O.eq:{if(u!=null){var h=d.greaterThanOrEqualTo(o),c=d.lessThan(u);return h.and(c)}return d.eq(o)}case O.lessThan:return d.lessThan(o);case O.lessThanOrEqualTo:return u!=null?d.lessThan(u):d.lessThanOrEqualTo(o);case O.greaterThan:return u!=null?d.greaterThanOrEqualTo(u):d.greaterThan(o);case O.greaterThanOrEqualTo:return d.greaterThanOrEqualTo(o);case O.notEq:{if(u!=null){var v=d.lessThan(o),g=d.greaterThanOrEqualTo(u);return v.or(g)}return d.notEq(o)}default:throw new Error("Invalid operator: ".concat(r))}}makeQuickCharFilter(e,t){var{dh:r}=this,i="".concat(t).trim(),a=/^(>=|<=|=>|=<|>|<|!=|=|!)?(null|"."|'.'|.)?(.*)/,l=a.exec(i),s=null,o=null,u=null;if(l!==null&&l.length>3&&([,s,o,u]=l),u!=null&&u.trim().length>0||o==null||o.length===0)return null;s==null&&(s="=");var d=e.filter();if(o.toLowerCase()==="null")switch(s){case"=":return d.isNull();case"!=":case"!":return d.isNull().not();default:return null}var h=r.FilterValue.ofString(S.isRangeOperation(s)?S.quoteValue(o):o);return S.makeRangeFilterWithOperation(d,s,h)}makeAdvancedFilter(e,t,r){for(var{filterItems:i,filterOperators:a,invertSelection:l,selectedValues:s}=t,o=null,u=0;u<i.length;u+=1){var d=i[u],{selectedType:h,value:c}=d;if(h!=null&&h.length>0&&c!=null&&c.length>0)try{var v=this.makeAdvancedValueFilter(e,h,c,r);if(v!=null){if(u===0)o=v;else if(o!==null&&u-1<a.length){var g=a[u-1];if(g===vr.and)o=o.and(v);else if(g===vr.or)o=o.or(v);else{it.error("Unexpected filter operator",g,v),o=null;break}}}else it.debug2("Empty filter ignored for",h,c)}catch(m){it.error("Unable to create filter",m),o=null;break}}var p=this.makeSelectValueFilter(e,s,l);return p!=null&&(o!=null?o=o.and(p):o=p),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 O.eq:return s.eq(l);case O.eqIgnoreCase:return s.eqIgnoreCase(l);case O.notEq:return s.notEq(l);case O.notEqIgnoreCase:return s.notEqIgnoreCase(l);case O.greaterThan:return s.greaterThan(l);case O.greaterThanOrEqualTo:return s.greaterThanOrEqualTo(l);case O.lessThan:return s.lessThan(l);case O.lessThanOrEqualTo:return s.lessThanOrEqualTo(l);case O.isTrue:return s.isTrue();case O.isFalse:return s.isFalse();case O.isNull:return s.isNull();case O.contains:return s.isNull().not().and(s.invoke("matches",a.FilterValue.ofString("(?s)(?i).*\\Q".concat(r,"\\E.*"))));case O.notContains:return s.isNull().or(s.invoke("matches",a.FilterValue.ofString("(?s)(?i).*\\Q".concat(r,"\\E.*"))).not());case O.startsWith:return s.isNull().not().and(s.invoke("matches",a.FilterValue.ofString("(?s)(?i)^\\Q".concat(r,"\\E.*"))));case O.endsWith:return s.isNull().not().and(s.invoke("matches",a.FilterValue.ofString("(?s)(?i).*\\Q".concat(r,"\\E$"))));case O.in:case O.inIgnoreCase:case O.notIn:case O.notInIgnoreCase:case O.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 N(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 N(l),l}return S.isBigDecimalType(e.type)||S.isBigIntegerType(e.type)?e.filter().eq(this.makeFilterValue(e.type,t)):e.filter().containsIgnoreCase(this.makeFilterValue(e.type,t))}catch{return this.makeNeverFilter(e)}}applyNeverFilter(e,t){var r=arguments,i=this;return Ct(function*(){var a=r.length>2&&r[2]!==void 0?r[2]:S.APPLY_TABLE_CHANGE_TIMEOUT_MS;if(e==null)return null;var l=e.findColumn(t),s=[i.makeNeverFilter(l)];return yield i.applyFilter(e,s,a),e})()}applyCustomColumns(e,t){var r=arguments,i=this;return Ct(function*(){var a=r.length>2&&r[2]!==void 0?r[2]:S.APPLY_TABLE_CHANGE_TIMEOUT_MS,{dh:l}=i;return S.executeAndWaitForEvent(s=>s==null?void 0:s.applyCustomColumns(t),e,l.Table.EVENT_CUSTOMCOLUMNSCHANGED,a)})()}applyFilter(e,t){var r=arguments,i=this;return Ct(function*(){var a=r.length>2&&r[2]!==void 0?r[2]:S.APPLY_TABLE_CHANGE_TIMEOUT_MS,{dh:l}=i;return S.executeAndWaitForEvent(s=>s==null?void 0:s.applyFilter(t),e,l.Table.EVENT_FILTERCHANGED,a)})()}applySort(e,t){var r=arguments,i=this;return Ct(function*(){var a=r.length>2&&r[2]!==void 0?r[2]:S.APPLY_TABLE_CHANGE_TIMEOUT_MS,{dh:l}=i;return S.executeAndWaitForEvent(s=>s==null?void 0:s.applySort(t),e,l.Table.EVENT_SORTCHANGED,a)})()}makeNeverFilter(e){var{dh:t}=this,r=null;S.isTextType(e.type)?r=t.FilterValue.ofString("a"):S.isBooleanType(e.type)?r=t.FilterValue.ofBoolean(!0):S.isDateType(e.type)?r=t.FilterValue.ofNumber(t.DateWrapper.ofJsDate(new Date)):r=t.FilterValue.ofNumber(0);var i=e.filter().eq(r),a=e.filter().notEq(r);return i.and(a)}makeFilterValue(e,t){var{dh:r}=this,i=S.getBaseType(e);return S.isTextType(i)?r.FilterValue.ofString(t):S.isLongType(i)?r.FilterValue.ofNumber(r.LongWrapper.ofString(S.removeCommas(t))):r.FilterValue.ofNumber(S.removeCommas(t))}makeFilterRawValue(e,t){var{dh:r}=this;return S.isCharType(e)?r.FilterValue.ofString(typeof t=="number"?String.fromCharCode(t):t):S.isTextType(e)?r.FilterValue.ofString(t):S.isBooleanType(e)?r.FilterValue.ofBoolean(t):r.FilterValue.ofNumber(t)}makeNullableEqFilter(e,t){return t==null?e.filter().isNull():e.filter().eq(this.makeFilterRawValue(e.type,t))}makeValue(e,t,r){var{dh:i}=this;if(t==="null")return null;if(S.isTextType(e))return t;if(S.isLongType(e))return i.LongWrapper.ofString(S.removeCommas(t));if(S.isBooleanType(e))return S.makeBooleanValue(t,!0);if(S.isDateType(e)){var[a]=se.parseDateRange(i,t,r);return a}return S.isNumberType(e)?S.makeNumberValue(t):(it.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)}}Rt(S,"dataType",{BOOLEAN:"boolean",CHAR:"char",DATETIME:"datetime",DECIMAL:"decimal",INT:"int",STRING:"string",UNKNOWN:"unknown"});Rt(S,"sortDirection",{ascending:"ASC",descending:"DESC",reverse:"REVERSE",none:null});Rt(S,"APPLY_TABLE_CHANGE_TIMEOUT_MS",3e4);Rt(S,"REVERSE_TYPE",Object.freeze({NONE:"none",PRE_SORT:"pre-sort",POST_SORT:"post-sort"}));Rt(S,"NUMBER_REGEX",/^-?\d+(\.\d+)?$/);Rt(S,"executeAndWaitForEvent",function(){var n=Ct(function*(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:S.APPLY_TABLE_CHANGE_TIMEOUT_MS;if(t==null)return null;var a=S.makeCancelableTableEventPromise(t,r,i);return e(t),yield a,t});return function(e,t,r){return n.apply(this,arguments)}}());function kt(n,e,t){return e=pd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function pd(n){var e=md(n,"string");return typeof e=="symbol"?e:String(e)}function md(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class We{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]:[],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;kt(this,"defaultColumnFormatter",void 0),kt(this,"typeFormatterMap",void 0),kt(this,"columnFormatMap",void 0),kt(this,"truncateNumbersWithPound",void 0),kt(this,"showEmptyStrings",void 0),kt(this,"showNullStrings",void 0),this.defaultColumnFormatter=new Zu,this.typeFormatterMap=new Map([[S.dataType.BOOLEAN,new qu],[S.dataType.CHAR,new Xu],[S.dataType.DATETIME,new Vr(e,r)],[S.dataType.DECIMAL,new go(e,i)],[S.dataType.INT,new bo(e,a)],[S.dataType.STRING,new Qu]]),this.columnFormatMap=We.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 Wo(e,Vr),e.dhTimeZone.id}}function gd(n,e){var t=Ll(e),r=Al(e),{defaultDecimalFormatOptions:i,defaultIntegerFormatOptions:a,truncateNumbersWithPound:l,showEmptyStrings:s,showNullStrings:o}=e??{};return new We(n,t,r,i,a,l,s,o)}function Ll(n){if(n&&n.formatter){var{formatter:e}=n;return e}}function Al(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 bd(n,e,t){var r=n.getColumnFormat(t,e);return r!=null&&(r.type===Ut.TYPE_CONTEXT_PRESET||r.type===Ut.TYPE_CONTEXT_CUSTOM)}const Tn={createFormatterFromSettings:gd,getColumnFormats:Ll,getDateTimeFormatterOptions:Al,isCustomColumnFormatDefined:bd};var kl=T.createContext(null);function Hp(n){var{initialState:e,onChange:t,children:r}=n,[i,a]=Pe.useState(0),l=T.useRef({initial:e,initialStateMap:new Map,state:new Map,isTracking:!0}),s=T.useCallback((c,v)=>{l.current.isTracking&&l.current.state.set(c,v)},[]),o=T.useCallback(()=>{l.current.isTracking||(l.current.isTracking=!0,l.current.state=new Map,a(c=>c+1))},[]),u=T.useRef(l.current.initial[Symbol.iterator]()),d=T.useCallback(function(v){var g=l.current.initialStateMap.get(v);if(g)return g;var{value:p,done:m}=u.current.next(),b={value:p,done:m??!1};return l.current.initialStateMap.set(v,b),b},[]);T.useEffect(function(){l.current.isTracking&&(t([...l.current.state.values()]),l.current.isTracking=!1)},[i,t]);var h=T.useMemo(()=>({addState:s,scheduleStateUpdate:o,getInitialState:d,updateId:i}),[s,d,o,i]);return f.jsx(kl.Provider,{value:h,children:r})}function Cd(n,e,t,r,i){if(e>t)throw new Error("Persisted state ".concat(i," is a newer version than the current version. Persisted version: ").concat(e,". Current version: ").concat(t));for(var a=n,l=e;l<t;){var s=r.filter(u=>u.from===l);if(s.length===0)throw new Error("No migration found for persisted state ".concat(i," from version ").concat(l));if(s.length>1)throw new Error("Multiple migrations found for persisted state ".concat(i," from version ").concat(l));var o=s[0];try{a=o.migrate(a),l+=1}catch(u){throw new Error("Error migrating persisted state ".concat(i," from version ").concat(o.from,": ").concat(u),{cause:u})}}return a}function Sd(n,e){var t,[r]=T.useState(()=>Be()),i=T.useContext(kl),{value:a,done:l}=(t=i==null?void 0:i.getInitialState(r))!==null&&t!==void 0?t:{value:void 0,done:!0},[s,o]=T.useState(()=>{if(a==null||l)return typeof n=="function"?n():n;if(a.type!==e.type)throw new Error("usePersistentState type mismatch. Expected ".concat(e.type," but got ").concat(a.type,"."));if(a.version!==e.version){var d;return Cd(a.state,a.version,e.version,(d=e.migrations)!==null&&d!==void 0?d:[],e.type)}return a.state}),u={type:e.type,version:e.version,state:s};return T.useDebugValue(u),i==null||i.addState(r,u),T.useEffect(function(){i==null||i.scheduleStateUpdate()},[i,s]),T.useEffect(function(){return()=>{i==null||i.scheduleStateUpdate()}},[i]),[s,o]}function ki(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function yd(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ki(Object(t),!0).forEach(function(r){Ed(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ki(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Ed(n,e,t){return e=wd(e),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:String(e)}function Td(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Pd=T.lazy(()=>zr(()=>import("./Chart-1af17346.js"),["./Chart-1af17346.js","./vendor-9e6eb436.js","./helpers-de833af9.js","./vendor-6cb4b08b.css","./index-a8c7882b.js","./index-11271fba.css","./Plotly-17aec1e4.js","./plotly-2d4bc30c.js","./LogPanel-ea0c64de.js","./LogPanel-8a0231fc.css","./DownsamplingError-8e6bdb73.js","./useMergeRef-04ff7062.js","./Chart-b5066b0e.css"],import.meta.url));function xl(n){return f.jsx(T.Suspense,{fallback:f.jsx(ct,{}),children:f.jsx(Pd,yd({},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){Oe(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 Oe(n,e,t){return e=Od(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Od(n){var e=Dd(n,"string");return typeof e=="symbol"?e:String(e)}function Dd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Jt=J.module("ChartUtils"),_i="io.deephaven.time.DateTime",Fd=36e5,Nd=1e6;function Md(n){return n.asDate!==void 0}function Id(n){return n.asNumber!==void 0}function ji(n){return n.dhTimeZone!==void 0}function Rd(n){return n!=null&&n.range!=null&&(n.autorange===!1||n.autorange===void 0)}function Ld(){var n=document.createElement("canvas"),e=n.getContext("webgl")||n.getContext("experimental-webgl");return e!=null&&e instanceof WebGLRenderingContext}var Ad=Ld();class A{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*)(%?)(.*)/);N(a);var[,l,s,o,,u,d,h,c,v]=a,g=o.replace(",","").length,p=s.indexOf(",")>=0||o.indexOf(",")>=0,m=p?",":"",b=h!=null&&h!==""?"e":"f",y=c!==""?c:b,C=u.length+d.length,E="",w="0".concat(g).concat(m,".").concat(C).concat(E).concat(y),P=A.convertNumberPrefix(l),I=A.convertNumberPrefix(v);return{tickformat:w,tickprefix:P,ticksuffix:I,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/Nd),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]:A.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=A.getAllAxes(e);return A.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];Rd(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(" ");Jt.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=>[A.periodToDecimal(h.open),A.periodToDecimal(h.close)]);r.sort((h,c)=>h[0]-c[0]),r.length===0&&r.push([0,24]);var i=e.map(h=>[A.periodToDecimal(h.open),A.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){Oe(this,"dh",void 0),Oe(this,"daysOfWeek",void 0),this.dh=e,this.daysOfWeek=Object.freeze(e.calendar.DayOfWeek.values()),Hn(this)}getAxisFormats(e,t){for(var r=new Map,i={tickformat:null,ticksuffix:null},a=A.getAllAxes(e),l=A.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 p=v[g],{axis:m}=p,{type:b}=m,y=l.get(b);N(y);var C=y.indexOf(m),E=this.getAxisPropertyName(b);if(E!=null){var w=A.getAxisLayoutProperty(E,C);if(r.has(w))Jt.debug("".concat(w," already added."));else{Jt.debug("Adding ".concat(w," to axisFormats."));var P=this.getPlotlyAxisFormat(p,t);if(P===null)r.set(w,i);else{r.set(w,P);var{businessCalendar:I}=m;if(I!=null&&(P.rangebreaks=this.createRangeBreaksFromBusinessCalendar(I,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&&Ad&&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(A.MODE_LINES),(r??!0)&&a.add(A.MODE_MARKERS);break;case i.plot.SeriesPlotStyle.LINE:(t??!0)&&a.add(A.MODE_LINES),(r??!1)&&a.add(A.MODE_MARKERS);break}return a.size>0?[...a].join("+"):void 0}getPlotlyProperty(e,t){var{dh:r}=this;switch(e){case r.plot.SeriesPlotStyle.PIE:switch(t){case r.plot.SourceType.X:return"labels";case r.plot.SourceType.Y:return"values"}break;case r.plot.SeriesPlotStyle.OHLC:switch(t){case r.plot.SourceType.TIME:return"x"}break;case r.plot.SeriesPlotStyle.TREEMAP:switch(t){case r.plot.SourceType.X:return"ids";case r.plot.SourceType.Y:return"values";case r.plot.SourceType.LABEL:return"labels";case r.plot.SourceType.PARENT:return"parents";case r.plot.SourceType.COLOR:return"marker.colors"}break}switch(t){case r.plot.SourceType.X:return"x";case r.plot.SourceType.Y:return"y";case r.plot.SourceType.Z:return"z";case r.plot.SourceType.X_LOW:return"xLow";case r.plot.SourceType.X_HIGH:return"xHigh";case r.plot.SourceType.Y_LOW:return"yLow";case r.plot.SourceType.Y_HIGH:return"yHigh";case r.plot.SourceType.TIME:return"time";case r.plot.SourceType.OPEN:return"open";case r.plot.SourceType.HIGH:return"high";case r.plot.SourceType.LOW:return"low";case r.plot.SourceType.CLOSE:return"close";case r.plot.SourceType.SHAPE:return"shape";case r.plot.SourceType.SIZE:return"size";case r.plot.SourceType.LABEL:return"label";case r.plot.SourceType.COLOR:return"color";case r.plot.SourceType.PARENT:return"parent";case r.plot.SourceType.HOVER_TEXT:return"hovertext";case r.plot.SourceType.TEXT:return"text";default:throw new Error("Unrecognized source type: ".concat(t))}}getPlotlySeriesOrientation(e){var t,r,{dh:i}=this,{sources:a}=e;return a.length===2&&((t=a[0])===null||t===void 0||(r=t.axis)===null||r===void 0?void 0:r.type)===i.plot.AxisType.Y?A.ORIENTATION.HORIZONTAL:A.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,p=c.some(E=>{var w;return(w=E.axis)===null||w===void 0?void 0:w.businessCalendar}),m=this.getChartType(u,p,a),b=this.getPlotlyChartMode(u,s??void 0,o??void 0),y=this.getPlotlySeriesOrientation(e),C=A.makeSeriesData(m,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);ll(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=A.getMarkerSymbol(a)}catch(d){Jt.warn("Unable to handle shape",a,":",d)}l!=null&&(u.marker.size=l*A.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=A.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,p=1/s,m=1/o,b=A.AXIS_SIZE_PX/r,y=A.AXIS_SIZE_PX/i,C={bottom:(o-g)*m+(g<o?y/2:0),top:(o-h)*m-(h>0?y/2:0),left:u*p+(u>0?b/2:0),right:v*p-(v<s?b/2:0)},E=A.groupArray(t.axes,"position"),w=(a=E.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(A.LEGEND_WIDTH_PX/r,A.MAX_LEGEND_SIZE)):C.right-=(C.right-C.left)*A.DEFAULT_AXIS_SIZE),C}getPlotlyDateFormat(e,t,r){var{dh:i}=this,a=r==null?void 0:r.replace("%","%%").replace(/S{9}/g,"%9f").replace(/S{8}/g,"%8f").replace(/S{7}/g,"%7f").replace(/S{6}/g,"%6f").replace(/S{5}/g,"%5f").replace(/S{4}/g,"%4f").replace(/S{3}/g,"%3f").replace(/S{2}/g,"%2f").replace(/S{1}/g,"%1f").replace(/y{4}/g,"%Y").replace(/y{2}/g,"%y").replace(/M{4}/g,"%B").replace(/M{3}/g,"%b").replace(/M{2}/g,"%m").replace(/M{1}/g,"%-m").replace(/E{4,}/g,"%A").replace(/E{1,}/g,"%a").replace(/d{2}/g,"%d").replace(/([^%]|^)d{1}/g,"$1%-d").replace(/H{2}/g,"%H").replace(/h{2}/g,"%I").replace(/h{1}/g,"%-I").replace(/m{2}/g,"%M").replace(/s{2}/g,"%S").replace("'T'","T").replace(" z",""),l,s=e==null?void 0:e.getColumnTypeFormatter(t);return s!=null&&ji(s)&&s.dhTimeZone!=null&&s.showTimeZone&&(l=i.i18n.DateTimeFormat.format(" z",new Date,s.dhTimeZone)),{tickformat:a,ticksuffix:l,automargin:!0}}getPlotlyAxisFormat(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null,{dh:r}=this,{axis:i,columnType:a}=e,{formatPattern:l}=i,s=null;return S.isDateType(a)?(s=this.getPlotlyDateFormat(t,a,l),s=A.addTickSpacing(s,i,!0)):S.isNumberType(a)&&(s=A.getPlotlyNumberFormat(t,a,l),s=A.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(A.MIN_AXIS_SIZE,Math.min(A.AXIS_SIZE_PX/a,A.MAX_AXIS_SIZE)):A.DEFAULT_AXIS_SIZE,d=a>0?Math.max(A.MIN_AXIS_SIZE,Math.min(A.AXIS_SIZE_PX/i,A.MAX_AXIS_SIZE)):A.DEFAULT_AXIS_SIZE,h=e,c=A.groupArray(t,"position"),v=A.groupArray(t,"type"),g=[...v.keys()],p=A.groupArray(r,"type"),m=0;m<g.length;m+=1){var b=g[m],y=this.getAxisPropertyName(b);if(y!=null){var C=v.get(b),E=p.get(b),w=b===o.plot.AxisType.Y,P=w?a:i;N(C),N(E);for(var I=0;I<C.length;I+=1){var F=C[I],D=E.indexOf(F),M=A.getAxisLayoutProperty(y,D);h[M]==null&&(h[M]={});var R=h[M];if(R!=null){this.updateLayoutAxis(R,F,I,c,u,d,l);var{range:_,autorange:V}=R;if(s!=null&&_!==void 0&&(V===void 0||V===!1)){var K=s(F),[q,ie]=K(_);Jt.debug("Setting downsample range",P,q,ie),F.range(P,q,ie)}else F.range(P)}}}}}removeStaleAxes(e,t){for(var r=e,i=A.groupArray(t,"type"),a=[...i.keys()],l=0;l<a.length;l+=1){var s=a[l],o=i.get(s);N(o);var u=o.length,d=this.getAxisPropertyName(s);if(d!=null)for(var h=A.getAxisLayoutProperty(d,u);r[h]!=null;)delete r[h],u+=1,h=A.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,p;c.overlaying=(g=this.getAxisPropertyName(t.type))!==null&&g!==void 0?g:void 0;var m=(p=i.get(t.position))!==null&&p!==void 0?p:[],b=m.indexOf(t);b>0&&(c.anchor="free",t.position===u.plot.AxisPosition.RIGHT?c.position=s.right+(b-m.length+1)*h:t.position===u.plot.AxisPosition.TOP?c.position=s.top+(b-m.length+1)*h:t.position===u.plot.AxisPosition.BOTTOM?c.position=s.bottom+(m.length-b+1)*h:t.position===u.plot.AxisPosition.LEFT&&(c.position=s.left+(m.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)||[],E=Math.max(s.left,s.left+(y.length-1)*l),w=Math.min(s.right-(C.length-1)*l,s.right);c.domain=[E,w]}else if(t.type===u.plot.AxisType.Y){var P=i.get(u.plot.AxisPosition.BOTTOM)||[],I=i.get(u.plot.AxisPosition.TOP)||[],F=Math.max(s.bottom,s.bottom+(P.length-1)*a),D=Math.min(s.top-(I.length-1)*a,s.top);c.domain=[F,D]}var{minRange:M,maxRange:R,log:_}=t;(!Number.isNaN(M)||!Number.isNaN(R))&&(c.autorangeoptions={},Number.isNaN(M)||(c.autorangeoptions.minallowed=_?Math.log10(M):M),Number.isNaN(R)||(c.autorangeoptions.maxallowed=_?Math.log10(R):R))}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=>[(A.periodToDecimal(o.open)+t)%24,(A.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(_i),u;ji(o)&&(u=o.dhTimeZone);var d=A.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=A.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(A.decimalToPeriod(c),":00.000000"),t,r)],p=Fd*(v-c);d.push({values:g,dvalue:p})}}return d}adjustDateForTimeZone(e,t,r){return r&&r.standardOffset!==t.standardOffset?this.unwrapValue(this.wrapValue(e,_i,t),r):e}makeFigureSettings(e,t){var{dh:r}=this,{series:i,xAxis:a,type:l}=e,s=A.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(Md(e))return r.i18n.DateTimeFormat.format(A.DATE_FORMAT,e,t);if(Id(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=A.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}=e,h={paper_bgcolor:r,plot_bgcolor:i,autosize:!0,colorway:A.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({},A.DEFAULT_TITLE_PADDING),y:1},legend:{font:{color:a}},margin:wr({},A.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}};return h.datarevision=0,h}hydrateSettings(e){var{dh:t}=this;return wr(wr({},e),{},{type:e.type!=null?t.plot.SeriesPlotStyle[e.type]:void 0})}}Oe(A,"DEFAULT_AXIS_SIZE",.15);Oe(A,"MIN_AXIS_SIZE",.025);Oe(A,"MAX_AXIS_SIZE",.2);Oe(A,"AXIS_SIZE_PX",75);Oe(A,"LEGEND_WIDTH_PX",50);Oe(A,"MAX_LEGEND_SIZE",.25);Oe(A,"ORIENTATION",Object.freeze({HORIZONTAL:"h",VERTICAL:"v"}));Oe(A,"DATE_FORMAT","yyyy-MM-dd HH:mm:ss.SSSSSS");Oe(A,"DEFAULT_MARGIN",Object.freeze({l:60,r:50,t:30,b:60,pad:0}));Oe(A,"DEFAULT_TITLE_PADDING",Object.freeze({t:8}));Oe(A,"SUBTITLE_LINE_HEIGHT",25);Oe(A,"DEFAULT_MARKER_SIZE",6);Oe(A,"MODE_MARKERS","markers");Oe(A,"MODE_LINES","lines");const Re=A;function me(n,e,t){return e=kd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function kd(n){var e=xd(n,"string");return typeof e=="symbol"?e:String(e)}function xd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class ne{constructor(e){me(this,"dh",void 0),me(this,"listeners",void 0),me(this,"formatter",void 0),me(this,"renderOptions",void 0),me(this,"rect",void 0),me(this,"isDownsamplingDisabled",void 0),me(this,"title",void 0),this.dh=e,this.listeners=[],this.isDownsamplingDisabled=!1}getData(){return[]}getDefaultTitle(){return""}getLayout(){return{}}getFilterColumnMap(){return new Map}isFilterRequired(){return!1}setFilter(e){}close(){}setFormatter(e){this.formatter=e}setRenderOptions(e){this.renderOptions=e}setDownsamplingDisabled(e){this.isDownsamplingDisabled=e}setDimensions(e){this.rect=e}setTitle(e){this.title=e}subscribe(e){this.listeners.push(e)}unsubscribe(e){this.listeners=this.listeners.filter(t=>t!==e)}fireEvent(e){for(var t=0;t<this.listeners.length;t+=1)this.listeners[t](e)}fireUpdate(e){this.fireEvent(new CustomEvent(ne.EVENT_UPDATED,{detail:e}))}fireDisconnect(){this.fireEvent(new CustomEvent(ne.EVENT_DISCONNECT))}fireReconnect(){this.fireEvent(new CustomEvent(ne.EVENT_RECONNECT))}fireDownsampleStart(e){this.fireEvent(new CustomEvent(ne.EVENT_DOWNSAMPLESTARTED,{detail:e}))}fireDownsampleFinish(e){this.fireEvent(new CustomEvent(ne.EVENT_DOWNSAMPLEFINISHED,{detail:e}))}fireDownsampleFail(e){this.fireEvent(new CustomEvent(ne.EVENT_DOWNSAMPLEFAILED,{detail:e}))}fireDownsampleNeeded(e){this.fireEvent(new CustomEvent(ne.EVENT_DOWNSAMPLENEEDED,{detail:e}))}fireLoadFinished(){this.fireEvent(new CustomEvent(ne.EVENT_LOADFINISHED))}fireError(e){this.fireEvent(new CustomEvent(ne.EVENT_ERROR,{detail:e}))}fireBlocker(e){this.fireEvent(new CustomEvent(ne.EVENT_BLOCKER,{detail:e}))}fireBlockerClear(){this.fireEvent(new CustomEvent(ne.EVENT_BLOCKER_CLEAR))}fireLayoutUpdated(e){this.fireEvent(new CustomEvent(ne.EVENT_LAYOUT_UPDATED,{detail:e}))}}me(ne,"EVENT_UPDATED","ChartModel.EVENT_UPDATED");me(ne,"EVENT_DISCONNECT","ChartModel.EVENT_DISCONNECT");me(ne,"EVENT_RECONNECT","ChartModel.EVENT_RECONNECT");me(ne,"EVENT_DOWNSAMPLESTARTED","ChartModel.EVENT_DOWNSAMPLESTARTED");me(ne,"EVENT_DOWNSAMPLEFINISHED","ChartModel.EVENT_DOWNSAMPLEFINISHED");me(ne,"EVENT_DOWNSAMPLEFAILED","ChartModel.EVENT_DOWNSAMPLEFAILED");me(ne,"EVENT_DOWNSAMPLENEEDED","ChartModel.EVENT_DOWNSAMPLENEEDED");me(ne,"EVENT_LOADFINISHED","ChartModel.EVENT_LOADFINISHED");me(ne,"EVENT_ERROR","ChartModel.EVENT_ERROR");me(ne,"EVENT_BLOCKER","ChartModel.EVENT_BLOCKER");me(ne,"EVENT_BLOCKER_CLEAR","ChartModel.EVENT_BLOCKER_CLEAR");me(ne,"EVENT_LAYOUT_UPDATED","ChartModel.EVENT_LAYOUT_UPDATED");const _d=ne;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){ve(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 ve(n,e,t){return e=jd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function jd(n){var e=Vd(n,"string");return typeof e=="symbol"?e:String(e)}function Vd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ee=J.module("FigureChartModel");class Zr extends _d{constructor(e,t){var r,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};super(e),r=this,ve(this,"chartUtils",void 0),ve(this,"dh",void 0),ve(this,"figure",void 0),ve(this,"settings",void 0),ve(this,"data",void 0),ve(this,"layout",void 0),ve(this,"seriesDataMap",void 0),ve(this,"pendingSeries",void 0),ve(this,"oneClicks",void 0),ve(this,"filterColumnMap",void 0),ve(this,"lastFilter",void 0),ve(this,"isConnected",void 0),ve(this,"seriesToProcess",void 0),ve(this,"addPendingSeries",ht(()=>{for(var a=Re.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=[]},Zr.ADD_SERIES_DEBOUNCE)),ve(this,"getTimeZone",Ue((a,l)=>{if(l!=null){var s=l.getColumnTypeFormatter(a);if(s!=null)return s.dhTimeZone}})),ve(this,"getValueTranslator",Ue((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.unwrapValue(o,s)})),ve(this,"getValueParser",Ue((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.wrapValue(o,a,s)})),ve(this,"getRangeParser",Ue((a,l)=>s=>{var[o,u]=s,d=this.getValueParser(a,l);return o=d(o),u=d(u),[o,u]})),ve(this,"getAxisRangeParser",Ue((a,l)=>s=>{var o=Re.getSourceForAxis(a,s);return o!=null?this.getRangeParser(o.columnType,l):u=>u})),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 Re(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=Re.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:p,title:m}=c;if(m!=null&&m.length>0&&(t.length>1||e.figure.title!=null)){var b=p.find(M=>M.type===e.dh.plot.AxisType.X),y=p.find(M=>M.type===e.dh.plot.AxisType.Y);if(b==null||y==null)Ee.warn("Chart title provided, but unknown how to map to the correct axes for this chart type",c);else{var C,E,w,P,I=((C=(E=r.get(b.type))===null||E===void 0?void 0:E.findIndex(M=>M===b))!==null&&C!==void 0?C:0)+1,F=((w=(P=r.get(y.type))===null||P===void 0?void 0:P.findIndex(M=>M===y))!==null&&w!==void 0?w:0)+1,D={align:"center",x:.5,y:1,yshift:17,text:m,showarrow:!1,xref:"x".concat(I," domain"),yref:"y".concat(F," domain")};e.layout.annotations==null?e.layout.annotations=[D]:e.layout.annotations.push(D)}}},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,Re.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=Re.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){Ee.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&&(Ee.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){Ee.debug("Downsample started",e),this.fireDownsampleStart(e.detail)}handleDownsampleFinish(e){Ee.debug("Downsample finished",e),this.fireDownsampleFinish(e.detail)}handleDownsampleFail(e){Ee.error("Downsample failed",e),this.fireDownsampleFail(e.detail)}handleDownsampleNeeded(e){Ee.info("Downsample needed",e),this.fireDownsampleNeeded(e.detail)}handleFigureUpdated(e){var{detail:t}=e,{series:r}=t;Ee.debug2("handleFigureUpdated",r);for(var i=0;i<r.length;i+=1){var a=r[i];Ee.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){Ee.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){Ee.debug("Figure disconnected",e),this.isConnected=!1,this.listeners.length>0&&this.unsubscribeFigure(),this.fireDisconnect()}handleFigureReconnected(e){Ee.debug("Figure reconnected",e),this.isConnected=!0,this.initAllSeries(),this.fireReconnect(),this.listeners.length>0&&this.subscribeFigure()}handleFigureSeriesAdded(e){var{detail:t}=e;Ee.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=Re.DEFAULT_MARGIN.t+i*Re.SUBTITLE_LINE_HEIGHT;this.layout.margin?this.layout.margin.t=a:this.layout.margin={t:a},typeof this.layout.title=="string"?this.layout.title=e:(this.layout.title=$i({},this.layout.title),this.layout.title.text=e,this.layout.title.pad=$i({},this.layout.title.pad),this.layout.title.pad.t=Re.DEFAULT_TITLE_PADDING.t+i*Re.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)=>{Ee.debug("Assigning ".concat(r),this.layout[r],t);var i=this.layout[r];i!=null?Object.assign(i,t):Ee.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&&ll(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:p}=a;h&&c&&h!==d&&(a.error_x=Re.getPlotlyErrorBars(d,h,c)),g&&p&&g!==v&&(a.error_y=Re.getPlotlyErrorBars(v,g,p))}else if(i===t.plot.SeriesPlotStyle.TREEMAP){var{ids:m,labels:b}=a;m!==void 0&&b===void 0&&(a.labels=m)}}}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){Ee.warn("Trying to set a filter, but no one click!");return}Ee.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}}ve(Zr,"ADD_SERIES_DEBOUNCE",50);const Hi=Zr;function Gi(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function vn(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Gi(a,r,i,l,s,"next",o)}function s(o){Gi(a,r,i,l,s,"throw",o)}l(void 0)})}}class zn{static makeModelFromSettings(e,t,r){return vn(function*(){var i=yield zn.makeFigureFromSettings(e,t,r);return new Hi(e,i,t)})()}static makeFigureFromSettings(e,t,r){return vn(function*(){var i=yield r.copy();return i.applyCustomColumns(r.customColumns),i.applyFilter(r.filter),i.applySort(r.sort),e.plot.Figure.create(new Re(e).makeFigureSettings(t,i))})()}static makeModel(e,t,r){return vn(function*(){return new Hi(e,r,t)})()}}const ur=zn;function Ui(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 $d(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){Hr(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 Hr(n,e,t){return e=Hd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Hd(n){var e=Gd(n,"string");return typeof e=="symbol"?e:String(e)}function Gd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class _l extends T.Component{constructor(e){super(e),Hr(this,"container",void 0),Hr(this,"editor",void 0),this.handleResize=this.handleResize.bind(this),this.container=null,this.state={}}componentDidMount(){this.initEditor(),window.addEventListener("resize",this.handleResize)}componentWillUnmount(){window.removeEventListener("resize",this.handleResize),this.destroyEditor()}setLanguage(e){if(this.editor){var t=this.editor.getModel();N(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=$d({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),N(this.container),this.editor=Ci.create(this.container,t),this.editor.addAction({id:"find",label:"Find",keybindings:[Ys.CtrlCmd|Zs.KeyF],precondition:void 0,keybindingContext:void 0,contextMenuGroupId:"navigation",contextMenuOrder:1,run:()=>{this.toggleFind()}}),this.editor.layout(),Qs.registerLinkProvider("plaintext",{provideLinks:Ft.provideLinks}),e(this.editor)}destroyEditor(){var{onEditorWillDestroy:e}=this.props;N(this.editor),e(this.editor),this.editor.dispose(),this.editor=void 0}render(){var{className:e}=this.props;return f.jsx("div",{className:Ie("editor-container",e),ref:t=>{this.container=t}})}}Hr(_l,"defaultProps",{className:"fill-parent-absolute",onEditorInitialized:()=>{},onEditorWillDestroy:()=>{},settings:{}});const Ud=_l;var Bd={groovy:"Groovy",python:"Python",scala:"Scala"};class Wd{static normalizeScriptLanguage(e){return Bd[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(`
1
+ import{r as T,E as f,H as Ie,G as Bs,J as Pe,bh as Ws,I as Me,bi as kn,bj as zs,bk as qs,bl as Ks,bm as Xs,af as Ge,D as Be,_ as zr,bn as ll,ac as ht,ab as Ue,bo as Ci,bp as Ys,bq as Zs,br as Qs,bs as Js,bt as eo,bu as U,bg as Si,bv as jr,ad as B,bw as Et,aP as to,aO as yi,R as ro,K as sl,L as no}from"./vendor-9e6eb436.js";import{bx as ol,B as io,by as ao,bz as lo,bA as so,bB as oo,bC as uo,bD as ho,bE as co,bF as vo,bG as fo,bH as po,bI as xn,a5 as Ut,a6 as Ae,a1 as mo,bJ as Xe,bK as dn,a2 as Vr,a3 as go,a4 as bo,au as Nt,c as Ei,aP as ot,bL as Co,aZ as So,E as re,bM as jt,bN as le,aQ as $,aY as ul,x as Ke,bO as qt,be as wt,bP as Tt,z as Z,bQ as Kt,bR as ut,bS as dl,bT as _n,bU as qr,b7 as hl,bV as jn,bW as Kr,bX as mr,bY as gr,bl as Xr,O as cr,bZ as Vn,b_ as cl,b$ as yo,aT as Eo,c0 as vl,L as wo,P as Ne,b5 as To,c1 as Po,bm as Ve,c2 as oe,c3 as $r,H as Sn,T as yn,D as fl,c4 as Oo,y as wi,c5 as Do,c6 as No,c7 as pl,c8 as Ti,bn as Fo,u as Xt,a0 as Mo,c9 as ml,a9 as Pt,b2 as Yt,aR as Se,bt as Ar,ca as Io,aX as Ro,bv as gl,bw as bl,bu as Cl,a7 as Sl,ak as Lo,ai as Ao,bi as yl,bj as El,bg as En,bk as ko,an as wl,a8 as xo,b3 as _o,cb as jo,cc as Vo,cd as $o}from"./LogPanel-5b98b8a3.js";import{L as J,Z as Ho,_ as Tl,T as Go,$ as Uo,a0 as Bo,l as F,a1 as Wo,a as ct,a2 as At,e as zo,a3 as qo,a4 as $n,a5 as Pl,a6 as Ko,a7 as Ol,v as Yr,a8 as Dl,a9 as Pi,aa as Oi,ab as Xo,ac as Yo,M as Zo,s as Qo,b as Jo,ad as eu,ae as tu,af as ru,ag as nu,ah as iu,c as Di,ai as au,aj as lu,ak as su,al as ou,am as uu}from"./index-1e555ef0.js";function Hn(n){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,t=du(n,e);t.forEach(r=>{n[r]=n[r].bind(n)})}function du(n,e){for(var t=new Set,r=n,i=0;r!=null&&r!==Object.prototype&&(i<=1||e);){for(var a of Object.getOwnPropertyNames(r)){var l;a!=="constructor"&&typeof((l=Object.getOwnPropertyDescriptor(r,a))===null||l===void 0?void 0:l.value)=="function"&&t.add(a)}r=Object.getPrototypeOf(r),i+=1}return[...t.keys()]}function hu(n){return n!=null}var cu=3500,vu=J.module("useCopyToClipboard");function fu(){var[n,e]=T.useState(!1),t=T.useRef(null),r=T.useCallback(i=>{ol(i).then(()=>{e(!0)}).catch(a=>vu.error("Unable to copy ".concat(i),`
2
+ `,a))},[]);return T.useEffect(()=>(t.current&&clearTimeout(t.current),n&&(t.current=setTimeout(()=>{e(!1)},cu)),()=>{t.current&&clearTimeout(t.current)}),[n]),[n,r]}function Gn(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=T.useRef(null),s=T.useCallback(u=>{u.target===u.currentTarget&&document.body.classList.add("card-flip--is-flipping")},[]),o=T.useCallback(u=>{u.target===u.currentTarget&&document.body.classList.remove("card-flip--is-flipping")},[]);return T.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]),f.jsxs("div",{className:Ie(e,{"card-flip--show-front":t,"card-flip--show-back":!t}),"data-testid":i,children:[f.jsx("div",{className:"card-flip--back",children:a(0)}),f.jsx("div",{ref:l,className:"card-flip--front",onTransitionEnd:o,children:a(1)})]})}function pu(n){var{copy:e,kind:t="ghost",tooltip:r="Copy",className:i,style:a,"data-testid":l,children:s}=n,[o,u]=fu();return f.jsx(io,{kind:t,className:i,style:a,"data-testid":l,icon:o?Ho:Tl,tooltip:o?"Copied":r,onClick:()=>{u(typeof e=="function"?e():e)},children:s})}var mu=["className","timeout"];function Ni(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 gu(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ni(Object(t),!0).forEach(function(r){bu(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ni(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function bu(n,e,t){return e=Cu(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Cu(n){var e=Su(n,"string");return typeof e=="symbol"?e:String(e)}function Su(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function yu(n,e){if(n==null)return{};var t=Eu(n,e),r,i;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(n);for(i=0;i<a.length;i++)r=a[i],!(e.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(n,r)&&(t[r]=n[r])}return t}function Eu(n,e){if(n==null)return{};var t={},r=Object.keys(n),i,a;for(a=0;a<r.length;a++)i=r[a],!(e.indexOf(i)>=0)&&(t[i]=n[i]);return t}function wn(n){var{className:e,timeout:t=Go.transitionMs}=n,r=yu(n,mu);return f.jsx(Bs,gu({timeout:t,classNames:Ie("fade",e)},r))}var Un=Pe.forwardRef((n,e)=>{var{children:t,className:r,disabled:i,id:a,isLinked:l,isLinkedSource:s,isInvalid:o,onClick:u,onMouseEnter:d,onMouseLeave:h,style:c,"data-testid":v}=n,{UNSAFE_className:g}=Ws({},"button");return f.jsxs("button",{ref:e,type:"button",className:Ie("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,f.jsx(Me,{icon:Uo,className:"linked btn-socketed-icon",transform:"down-1"}),f.jsx(Me,{icon:Bo,className:"is-invalid btn-socketed-icon"})]})});Un.displayName="SocketedButton";Un.defaultProps={children:void 0,className:"",disabled:!1,id:void 0,isLinked:!1,isLinkedSource:!1,isInvalid:!1,onClick:void 0,onMouseEnter:void 0,onMouseLeave:void 0,style:void 0,"data-testid":void 0};const Nl=Un;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 hn(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){wu(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 wu(n,e,t){return e=Tu(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Tu(n){var e=Pu(n,"string");return typeof e=="symbol"?e:String(e)}function Pu(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function 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.type){case n:{var i=r.payload;return i==null?null:t!=null?hn(hn({},t),i):hn({},i)}default:return t}}}function Ot(n,e){return function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:e,r=arguments.length>1?arguments[1]:void 0;switch(r.type){case n:return r.payload;default:return t}}}const Ou=Ot(ao,null),Du=Ot(lo,null),Nu=Ot(so,null),Fu=Ot(oo,null),Mu=Ot(uo,null),Iu=Ot(ho,null),Ru=kn({commandHistoryStorage:Fu,fileStorage:Mu,workspaceStorage:Iu}),Lu=Fl(co,null),Au=Fl(vo,null),ku=Ot(fo,null),xu=Ot(po,null);var _u={activeTool:Du,api:Ou,plugins:Nu,storage:Ru,user:Lu,workspace:Au,defaultWorkspaceSettings:ku,serverConfigValues:xu};const ju=_u;var Mi=J.module("redux-logger"),Vu=n=>e=>t=>{Mi.debug("dispatching",t);var r=e(t);return Mi.debug("next state",n.getState()),r};const $u=Vu;var Hu=J.module("redux-crashReporter"),Gu=n=>e=>t=>{try{return e(t)}catch(r){throw Hu.error("Error executing",t," with state ",n.getState(),":",r),r}};const Uu=Gu,Bu=[$u,Uu,zs];var cn;Object.entries(ju).map(n=>{var[e,t]=n;return xn.register(e,t)});var Wu=(cn=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__)!==null&&cn!==void 0?cn:Xs,Ml=qs(kn(xn.reducers),Wu(Ks(...Bu)));xn.setListener(n=>{Ml.replaceReducer(kn(n))});const zu=Ml;class qu extends Ut{format(e){switch(e){case 1:case!0:return"true";case 0:case!1:return"false";default:return""}}}const Ku=qu;class Xu extends Ut{format(e){return String.fromCharCode(e)}}const Yu=Xu;class Zu extends Ut{format(e){return"".concat(e)}}const Qu=Zu;class Ju extends Ut{format(e){return e}}function Ii(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Ri(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ii(Object(t),!0).forEach(function(r){Bn(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ii(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Bn(n,e,t){return e=ed(e),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:String(e)}function td(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var rd=/\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"),p="".concat(o).padStart(2,"0"),m="".concat(u).padStart(9,"0"),b="".concat(d,"-").concat(h,"-").concat(c," ").concat(v,":").concat(g,":").concat(p,".").concat(m);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=rd.exec(e);if(r==null)throw new Error("Unexpected date string: ".concat(e));var[,i,,a,,l,,s,,o,,u,,d,h]=r;if(!t&&h!=null&&h.length>0)throw new Error("Unexpected characters after date string '".concat(e,"': ").concat(h));var c={year:i,month:a,date:l,hours:s,minutes:o,seconds:u,nanos:d};return t?Ri(Ri({},c),{},{overflow:h}):c}static parseDateRange(e,t,r){var i=t.trim().toLowerCase();if(i.length===0)throw new Error("Cannot parse date range from empty string");if(i==="null")return[null,null];if(i==="today"){var a=new Date(Date.now()),l=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 p=se.parseDateTimeString(i);if(p.year==null&&p.month==null&&p.date==null)throw new Error("Unable to extract year, month, or day ".concat(i));var m=se.parseDateValues(p.year,p.month,p.date,p.hours,p.minutes,p.seconds,p.nanos);if(m==null)throw new Error("Unable to extract date values from ".concat(p));var b=se.makeDateWrapper(e,r,m.year,m.month,m.date,m.hours,m.minutes,m.seconds,m.nanos),S=se.getNextDate(e,p,m,r);return[b,S]}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)}}Bn(se,"FULL_DATE_FORMAT","yyyy-MM-dd HH:mm:ss.SSSSSSSSS");Bn(se,"months",["january","february","march","april","may","june","july","august","september","october","november","december"]);function Mp(n,e){return n===e?{operator:"notEq",value:""}:{operator:"eq",value:n}}function Ip(n,e,t,r){return function(a){var l=t.trim();if(l==="")return null;var s=Il(e,o=>n.makeSearchTextFilter(o,l,r),"or");return s(a)}}function Il(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 nd(n,e,t,r){return Il(e,i=>i.filter()[r](n.makeFilterValue(i.type,t)),"or")}function Rp(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 Lp(n){return function(t){return t.filter().isNull().not().and(t.filter().notEq(n.makeFilterValue(t.type,"")))}}function Ap(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 Wn(n,e,t){return e=id(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function id(n){var e=ad(n,"string");return typeof e=="symbol"?e:String(e)}function ad(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class vr{}Wn(vr,"not","not");Wn(vr,"and","and");Wn(vr,"or","or");function kp(n){if(!(n==="not"||n==="and"||n==="or"))throw new Error("operator is not a valid FilterOperatorValue")}function he(n,e,t){return e=ld(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ld(n){var e=sd(n,"string");return typeof e=="symbol"?e:String(e)}function sd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class O{}he(O,"eq","eq");he(O,"eqIgnoreCase","eqIgnoreCase");he(O,"notEq","notEq");he(O,"notEqIgnoreCase","notEqIgnoreCase");he(O,"greaterThan","greaterThan");he(O,"greaterThanOrEqualTo","greaterThanOrEqualTo");he(O,"lessThan","lessThan");he(O,"lessThanOrEqualTo","lessThanOrEqualTo");he(O,"in","in");he(O,"inIgnoreCase","inIgnoreCase");he(O,"notIn","notIn");he(O,"notInIgnoreCase","notInIgnoreCase");he(O,"isTrue","isTrue");he(O,"isFalse","isFalse");he(O,"isNull","isNull");he(O,"invoke","invoke");he(O,"contains","contains");he(O,"notContains","notContains");he(O,"containsIgnoreCase","containsIgnoreCase");he(O,"startsWith","startsWith");he(O,"endsWith","endsWith");he(O,"containsAny","containsAny");function od(n){switch(n){case O.eq:return"is exactly";case O.eqIgnoreCase:return"is exactly (ignore case)";case O.notEq:return"is not exactly";case O.notEqIgnoreCase:return"is not exactly (ignore case)";case O.contains:return"contains";case O.notContains:return"does not contain";case O.startsWith:return"starts with";case O.endsWith:return"ends with";default:throw new Error("Unrecognized text filter type ".concat(n))}}function ud(n){switch(n){case O.eq:return"is equal to";case O.notEq:return"is not equal to";case O.greaterThan:return"greater than";case O.greaterThanOrEqualTo:return"greater than or equal to";case O.lessThan:return"less than";case O.lessThanOrEqualTo:return"less than or equal to";default:throw new Error("Unrecognized number filter type ".concat(n))}}function dd(n){switch(n){case O.eq:return"date is";case O.notEq:return"date is not";case O.notEqIgnoreCase:case O.greaterThan:return"date is after";case O.greaterThanOrEqualTo:return"date is after or equal";case O.lessThan:return"date is before";case O.lessThanOrEqualTo:return"date is before or equal";default:throw new Error("Unrecognized date filter type ".concat(n))}}function xp(n){switch(n){case O.isTrue:return"Is True";case O.isFalse:return"Is False";case O.isNull:return"Is Null";default:throw new Error("Unrecognized boolean filter type ".concat(n))}}var hd="DH_ITEM_KEY",Li=J.module("ViewportDataUtils");function Rl(n){return"".concat(hd,"_").concat(n)}function _p(n,e){var{bulkUpdate:t}=n;return function(i){var{columns:a,offset:l,rows:s}=i.detail;Li.debug("table updated",i.detail);var o=new Map;s.forEach((u,d)=>{var h=e(u,a),c=Rl(l+d);o.set(c,{key:c,item:h})}),Li.debug("update keys",o),t(o)}}function jp(n,e){return e.reduce((t,r)=>(t[r.name]=n.get(r),t),{})}function*Vp(n,e){for(var t=n;t<=e;++t)yield{key:Rl(t)}}function cd(n){return n==null||vd(n)?0:n.size}function vd(n){return"isClosed"in n?n.isClosed:!1}function $p(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]}function Ai(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function Ct(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Ai(a,r,i,l,s,"next",o)}function s(o){Ai(a,r,i,l,s,"throw",o)}l(void 0)})}}function Rt(n,e,t){return e=fd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function fd(n){var e=pd(n,"string");return typeof e=="symbol"?e:String(e)}function pd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var it=J.module("TableUtils");function Hp(n){return n===y.sortDirection.ascending||n===y.sortDirection.descending||n===y.sortDirection.reverse||n===y.sortDirection.none}class y{static copyTableAndApplyFilters(e){var t=arguments;return Ct(function*(){if(e==null)return null;for(var r=yield e.copy(),i=t.length,a=new Array(i>1?i-1:0),l=1;l<i;l++)a[l-1]=t[l];return r.applyFilter(dn(...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=y.getSortIndex(e,t);return r!=null?e[r]:null}static getFilterText(e){return e?e.toString():null}static getFilterTypes(e){return y.isBooleanType(e)?[O.isTrue,O.isFalse,O.isNull]:y.isCharType(e)||y.isNumberType(e)||y.isDateType(e)?[O.eq,O.notEq,O.greaterThan,O.greaterThanOrEqualTo,O.lessThan,O.lessThanOrEqualTo]:y.isTextType(e)?[O.eq,O.eqIgnoreCase,O.notEq,O.notEqIgnoreCase,O.contains,O.notContains,O.startsWith,O.endsWith]:[]}static getNextSort(e,t,r){var i=e[r];if(i==null)return null;var a=y.getSortForColumn(t,i.name);return a===null?this.makeColumnSort(e,r,y.sortDirection.ascending,!1):a.direction===y.sortDirection.ascending?this.makeColumnSort(e,r,y.sortDirection.descending,!1):null}static makeColumnSort(e,t,r,i){var a=e[t];return a==null||r===y.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=y.getNextSort(t,e,r);return y.setSortForColumn(e,t[r].name,a,i)}static sortColumn(e,t,r,i,a,l){if(r<0||r>=t.length)return[];var s=y.makeColumnSort(t,r,i,a);return y.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=y.getSortIndex(e,t),l=[];return i&&(l=l.concat(e.filter(s=>{var{direction:o}=s;return o!==y.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 y.dataType.BOOLEAN:return y.dataType.BOOLEAN;case"char":case"java.lang.Character":case y.dataType.CHAR:return y.dataType.CHAR;case"java.lang.String":case y.dataType.STRING:return y.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 y.dataType.DATETIME:return y.dataType.DATETIME;case"double":case"java.lang.Double":case"float":case"java.lang.Float":case"java.math.BigDecimal":case y.dataType.DECIMAL:return y.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 y.dataType.INT:return y.dataType.INT;default:return y.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 y.isIntegerType(e)||y.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 y.getNormalizedType(e)===y.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 Ae.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,a,l,s=!0,o=new Promise((u,d)=>{l=setTimeout(()=>{a(),s=!1,d(new mo('Event "'.concat(t,'" timed out.')))},r),a=e.addEventListener(t,h=>{if(i!=null&&!i(h)){it.debug2("Event triggered, but matcher returned false.");return}it.debug2("Event triggered, resolving."),a(),clearTimeout(l),s=!1,u(h)})});return o.cancel=()=>{if(s){it.debug2("Pending promise cleanup."),a(),clearTimeout(l),s=!1;return}it.debug2("Ignoring non-pending promise cancel.")},o}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=y.removeCommas(t);if(y.NUMBER_REGEX.test(r))return parseFloat(r);throw new Error("Invalid number '".concat(e,"'"))}static getFilterOperatorString(e){switch(e){case O.eq:return"=";case O.notEq:return"!=";case O.greaterThan:return">";case O.greaterThanOrEqualTo:return">=";case O.lessThan:return"<";case O.lessThanOrEqualTo:return"<=";case O.contains:return"~";case O.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 Xe.sort(a,l,t)})}constructor(e){Rt(this,"dh",void 0),this.dh=e,Hn(this)}createDistinctSortedColumnTable(e,t,r){var i=arguments,a=this;return Ct(function*(){if(e==null)return null;for(var l=e,s=i.length,o=new Array(s>3?s-3:0),u=3;u<s;u++)o[u-3]=i[u];o.length>0&&(l=yield e.copy(),yield l.applyFilter(dn(...o.map(v=>v(l)))));var d=l.findColumn(t),h=yield l.selectDistinct([d]);l!==e&&l.close();var c=h.findColumn(t).sort()[r]();return a.applySort(h,[c])})()}doesColumnValueExist(e,t,r,i){var a=this;return Ct(function*(){if(e==null)return null;var l=nd(a,t,r,i?"eq":"eqIgnoreCase"),s=yield e.copy();yield a.applyFilter(s,dn(l(s)));var o=cd(s);return s.close(),o>0})()}getValueType(e){if(e==null)return this.dh.ValueType.STRING;var t=y.getNormalizedType(e);switch(t){case y.dataType.BOOLEAN:return this.dh.ValueType.BOOLEAN;case y.dataType.CHAR:case y.dataType.STRING:return this.dh.ValueType.STRING;case y.dataType.DATETIME:return this.dh.ValueType.DATETIME;case y.dataType.DECIMAL:case y.dataType.INT:return y.isBigDecimalType(e)||y.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 y.isNumberType(i)?this.makeQuickNumberFilter(e,t):y.isBooleanType(i)?this.makeQuickBooleanFilter(e,t):r!=null&&y.isDateType(i)?this.makeQuickDateFilter(e,t,r):y.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=y.removeCommas(d),y.isLongType(e.type))try{d=i.FilterValue.ofNumber(i.LongWrapper.ofString("".concat(u!=null?"-":"").concat(d)))}catch(v){return it.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(),y.makeRangeFilterWithOperation(a,o,d)}static escapeQuickTextFilter(e){var t,r;if(e==null)return null;var i=/^(!~|!=|~|=|!)?(.*)/,a=/^\\*null$/,l=i.exec(e),s=null,o=null;if(l!==null&&l.length>2&&([,s,o]=l),s!=null){var u;return"\\".concat(s).concat((u=o)!==null&&u!==void 0?u:"")}return o!=null&&a.test(o.toLowerCase())||o!=null&&o.startsWith("*")?"\\".concat(o):o!=null&&o.endsWith("*")&&!o.endsWith("\\*")?(o=o.substring(0,o.length-1),"".concat(o,"\\*")):"".concat((t=s)!==null&&t!==void 0?t:"").concat((r=o)!==null&&r!==void 0?r:"")}static unescapeQuickTextFilter(e){var t,r,i=/^(\\!~|\\!=|\\~|\\=|\\!)?(.*)/,a=/^\\*null$/,l=i.exec(e),s=null,o=null;return l!==null&&l.length>2&&([,s,o]=l),s!=null&&(s=s.replace("\\","")),o!=null&&a.test(o.toLowerCase())&&(o=o.replace("\\","")),s==null&&o!=null&&o.startsWith("\\*")&&(o=o.substring(1)),s==null&&o!=null&&o.endsWith("\\*")?(o=o.substring(0,o.length-2),"".concat(o,"*")):"".concat((t=s)!==null&&t!==void 0?t:"").concat((r=o)!==null&&r!==void 0?r:"")}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=y.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=y.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=O.eq;switch(s){case"<":u=O.lessThan;break;case"<=":case"=<":u=O.lessThanOrEqualTo;break;case">":u=O.greaterThan;break;case">=":case"=>":u=O.greaterThanOrEqualTo;break;case"!=":case"!":u=O.notEq;break;case"=":case"==":default:u=O.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===O.notEq?d.isNull().not():d.isNull();switch(r){case O.eq:{if(u!=null){var h=d.greaterThanOrEqualTo(o),c=d.lessThan(u);return h.and(c)}return d.eq(o)}case O.lessThan:return d.lessThan(o);case O.lessThanOrEqualTo:return u!=null?d.lessThan(u):d.lessThanOrEqualTo(o);case O.greaterThan:return u!=null?d.greaterThanOrEqualTo(u):d.greaterThan(o);case O.greaterThanOrEqualTo:return d.greaterThanOrEqualTo(o);case O.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(y.isRangeOperation(s)?y.quoteValue(o):o);return y.makeRangeFilterWithOperation(d,s,h)}makeAdvancedFilter(e,t,r){for(var{filterItems:i,filterOperators:a,invertSelection:l,selectedValues:s}=t,o=null,u=0;u<i.length;u+=1){var d=i[u],{selectedType:h,value:c}=d;if(h!=null&&h.length>0&&c!=null&&c.length>0)try{var v=this.makeAdvancedValueFilter(e,h,c,r);if(v!=null){if(u===0)o=v;else if(o!==null&&u-1<a.length){var g=a[u-1];if(g===vr.and)o=o.and(v);else if(g===vr.or)o=o.or(v);else{it.error("Unexpected filter operator",g,v),o=null;break}}}else it.debug2("Empty filter ignored for",h,c)}catch(m){it.error("Unable to create filter",m),o=null;break}}var p=this.makeSelectValueFilter(e,s,l);return p!=null&&(o!=null?o=o.and(p):o=p),o}makeAdvancedValueFilter(e,t,r,i){var{dh:a}=this;if(y.isDateType(e.type))return this.makeQuickDateFilterWithOperation(e,r,t,i);if(y.isNumberType(e.type)||y.isCharType(e.type))return this.makeQuickFilter(e,"".concat(y.getFilterOperatorString(t)).concat(r));var l=this.makeFilterValue(e.type,r),s=e.filter();switch(t){case O.eq:return s.eq(l);case O.eqIgnoreCase:return s.eqIgnoreCase(l);case O.notEq:return s.notEq(l);case O.notEqIgnoreCase:return s.notEqIgnoreCase(l);case O.greaterThan:return s.greaterThan(l);case O.greaterThanOrEqualTo:return s.greaterThanOrEqualTo(l);case O.lessThan:return s.lessThan(l);case O.lessThanOrEqualTo:return s.lessThanOrEqualTo(l);case O.isTrue:return s.isTrue();case O.isFalse:return s.isFalse();case O.isNull:return s.isNull();case O.contains:return s.isNull().not().and(s.invoke("matches",a.FilterValue.ofString("(?s)(?i).*\\Q".concat(r,"\\E.*"))));case O.notContains:return s.isNull().or(s.invoke("matches",a.FilterValue.ofString("(?s)(?i).*\\Q".concat(r,"\\E.*"))).not());case O.startsWith:return s.isNull().not().and(s.invoke("matches",a.FilterValue.ofString("(?s)(?i)^\\Q".concat(r,"\\E.*"))));case O.endsWith:return s.isNull().not().and(s.invoke("matches",a.FilterValue.ofString("(?s)(?i).*\\Q".concat(r,"\\E$"))));case O.in:case O.inIgnoreCase:case O.notIn:case O.notInIgnoreCase:case O.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 F(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 F(l),l}return y.isBigDecimalType(e.type)||y.isBigIntegerType(e.type)?e.filter().eq(this.makeFilterValue(e.type,t)):e.filter().containsIgnoreCase(this.makeFilterValue(e.type,t))}catch{return this.makeNeverFilter(e)}}applyNeverFilter(e,t){var r=arguments,i=this;return Ct(function*(){var a=r.length>2&&r[2]!==void 0?r[2]:y.APPLY_TABLE_CHANGE_TIMEOUT_MS;if(e==null)return null;var l=e.findColumn(t),s=[i.makeNeverFilter(l)];return yield i.applyFilter(e,s,a),e})()}applyCustomColumns(e,t){var r=arguments,i=this;return Ct(function*(){var a=r.length>2&&r[2]!==void 0?r[2]:y.APPLY_TABLE_CHANGE_TIMEOUT_MS,{dh:l}=i;return y.executeAndWaitForEvent(s=>s==null?void 0:s.applyCustomColumns(t),e,l.Table.EVENT_CUSTOMCOLUMNSCHANGED,a)})()}applyFilter(e,t){var r=arguments,i=this;return Ct(function*(){var a=r.length>2&&r[2]!==void 0?r[2]:y.APPLY_TABLE_CHANGE_TIMEOUT_MS,{dh:l}=i;return y.executeAndWaitForEvent(s=>s==null?void 0:s.applyFilter(t),e,l.Table.EVENT_FILTERCHANGED,a)})()}applySort(e,t){var r=arguments,i=this;return Ct(function*(){var a=r.length>2&&r[2]!==void 0?r[2]:y.APPLY_TABLE_CHANGE_TIMEOUT_MS,{dh:l}=i;return y.executeAndWaitForEvent(s=>s==null?void 0:s.applySort(t),e,l.Table.EVENT_SORTCHANGED,a)})()}makeNeverFilter(e){var{dh:t}=this,r=null;y.isTextType(e.type)?r=t.FilterValue.ofString("a"):y.isBooleanType(e.type)?r=t.FilterValue.ofBoolean(!0):y.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=y.getBaseType(e);return y.isTextType(i)?r.FilterValue.ofString(t):y.isLongType(i)?r.FilterValue.ofNumber(r.LongWrapper.ofString(y.removeCommas(t))):r.FilterValue.ofNumber(y.removeCommas(t))}makeFilterRawValue(e,t){var{dh:r}=this;return y.isCharType(e)?r.FilterValue.ofString(typeof t=="number"?String.fromCharCode(t):t):y.isTextType(e)?r.FilterValue.ofString(t):y.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(y.isTextType(e))return t;if(y.isLongType(e))return i.LongWrapper.ofString(y.removeCommas(t));if(y.isBooleanType(e))return y.makeBooleanValue(t,!0);if(y.isDateType(e)){var[a]=se.parseDateRange(i,t,r);return a}return y.isNumberType(e)?y.makeNumberValue(t):(it.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:y.isTextType(e.type)?a.push(i.FilterValue.ofString(typeof o=="number"?String.fromCharCode(o):o)):y.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)}}Rt(y,"dataType",{BOOLEAN:"boolean",CHAR:"char",DATETIME:"datetime",DECIMAL:"decimal",INT:"int",STRING:"string",UNKNOWN:"unknown"});Rt(y,"sortDirection",{ascending:"ASC",descending:"DESC",reverse:"REVERSE",none:null});Rt(y,"APPLY_TABLE_CHANGE_TIMEOUT_MS",3e4);Rt(y,"REVERSE_TYPE",Object.freeze({NONE:"none",PRE_SORT:"pre-sort",POST_SORT:"post-sort"}));Rt(y,"NUMBER_REGEX",/^-?\d+(\.\d+)?$/);Rt(y,"executeAndWaitForEvent",function(){var n=Ct(function*(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:y.APPLY_TABLE_CHANGE_TIMEOUT_MS;if(t==null)return null;var a=y.makeCancelableTableEventPromise(t,r,i);return e(t),yield a,t});return function(e,t,r){return n.apply(this,arguments)}}());function kt(n,e,t){return e=md(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function md(n){var e=gd(n,"string");return typeof e=="symbol"?e:String(e)}function gd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class We{static makeColumnFormatMap(e){return e==null?new Map:e.reduce((t,r)=>{var i=y.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]:[],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;kt(this,"defaultColumnFormatter",void 0),kt(this,"typeFormatterMap",void 0),kt(this,"columnFormatMap",void 0),kt(this,"truncateNumbersWithPound",void 0),kt(this,"showEmptyStrings",void 0),kt(this,"showNullStrings",void 0),this.defaultColumnFormatter=new Qu,this.typeFormatterMap=new Map([[y.dataType.BOOLEAN,new Ku],[y.dataType.CHAR,new Yu],[y.dataType.DATETIME,new Vr(e,r)],[y.dataType.DECIMAL,new go(e,i)],[y.dataType.INT,new bo(e,a)],[y.dataType.STRING,new Ju]]),this.columnFormatMap=We.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=y.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=y.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(y.dataType.DATETIME);return Wo(e,Vr),e.dhTimeZone.id}}function bd(n,e){var t=Ll(e),r=Al(e),{defaultDecimalFormatOptions:i,defaultIntegerFormatOptions:a,truncateNumbersWithPound:l,showEmptyStrings:s,showNullStrings:o}=e??{};return new We(n,t,r,i,a,l,s,o)}function Ll(n){if(n&&n.formatter){var{formatter:e}=n;return e}}function Al(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 Cd(n,e,t){var r=n.getColumnFormat(t,e);return r!=null&&(r.type===Ut.TYPE_CONTEXT_PRESET||r.type===Ut.TYPE_CONTEXT_CUSTOM)}const Tn={createFormatterFromSettings:bd,getColumnFormats:Ll,getDateTimeFormatterOptions:Al,isCustomColumnFormatDefined:Cd};var kl=T.createContext(null);function Gp(n){var{initialState:e,onChange:t,children:r}=n,[i,a]=Pe.useState(0),l=T.useRef({initial:e,initialStateMap:new Map,state:new Map,isTracking:!0}),s=T.useCallback((c,v)=>{l.current.isTracking&&l.current.state.set(c,v)},[]),o=T.useCallback(()=>{l.current.isTracking||(l.current.isTracking=!0,l.current.state=new Map,a(c=>c+1))},[]),u=T.useRef(l.current.initial[Symbol.iterator]()),d=T.useCallback(function(v){var g=l.current.initialStateMap.get(v);if(g)return g;var{value:p,done:m}=u.current.next(),b={value:p,done:m??!1};return l.current.initialStateMap.set(v,b),b},[]);T.useEffect(function(){l.current.isTracking&&(t([...l.current.state.values()]),l.current.isTracking=!1)},[i,t]);var h=T.useMemo(()=>({addState:s,scheduleStateUpdate:o,getInitialState:d,updateId:i}),[s,d,o,i]);return f.jsx(kl.Provider,{value:h,children:r})}function Sd(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 yd(n,e){var t,[r]=T.useState(()=>Be()),i=T.useContext(kl),{value:a,done:l}=(t=i==null?void 0:i.getInitialState(r))!==null&&t!==void 0?t:{value:void 0,done:!0},[s,o]=T.useState(()=>{if(a==null||l)return typeof n=="function"?n():n;if(a.type!==e.type)throw new Error("usePersistentState type mismatch. Expected ".concat(e.type," but got ").concat(a.type,"."));if(a.version!==e.version){var d;return Sd(a.state,a.version,e.version,(d=e.migrations)!==null&&d!==void 0?d:[],e.type)}return a.state}),u={type:e.type,version:e.version,state:s};return T.useDebugValue(u),i==null||i.addState(r,u),T.useEffect(function(){i==null||i.scheduleStateUpdate()},[i,s]),T.useEffect(function(){return()=>{i==null||i.scheduleStateUpdate()}},[i]),[s,o]}function ki(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Ed(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ki(Object(t),!0).forEach(function(r){wd(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ki(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function wd(n,e,t){return e=Td(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Td(n){var e=Pd(n,"string");return typeof e=="symbol"?e:String(e)}function Pd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Od=T.lazy(()=>zr(()=>import("./Chart-c2a7e030.js"),["./Chart-c2a7e030.js","./vendor-9e6eb436.js","./helpers-de833af9.js","./vendor-6cb4b08b.css","./index-1e555ef0.js","./index-11271fba.css","./Plotly-17aec1e4.js","./plotly-2d4bc30c.js","./LogPanel-5b98b8a3.js","./LogPanel-8a0231fc.css","./DownsamplingError-8e6bdb73.js","./useMergeRef-04ff7062.js","./Chart-b5066b0e.css"],import.meta.url));function xl(n){return f.jsx(T.Suspense,{fallback:f.jsx(ct,{}),children:f.jsx(Od,Ed({},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){Oe(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 Oe(n,e,t){return e=Dd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Dd(n){var e=Nd(n,"string");return typeof e=="symbol"?e:String(e)}function Nd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Jt=J.module("ChartUtils"),_i="io.deephaven.time.DateTime",Fd=36e5,Md=1e6;function Id(n){return n.asDate!==void 0}function Rd(n){return n.asNumber!==void 0}function ji(n){return n.dhTimeZone!==void 0}function Ld(n){return n!=null&&n.range!=null&&(n.autorange===!1||n.autorange===void 0)}function Ad(){var n=document.createElement("canvas"),e=n.getContext("webgl")||n.getContext("experimental-webgl");return e!=null&&e instanceof WebGLRenderingContext}var kd=Ad();class A{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*)(%?)(.*)/);F(a);var[,l,s,o,,u,d,h,c,v]=a,g=o.replace(",","").length,p=s.indexOf(",")>=0||o.indexOf(",")>=0,m=p?",":"",b=h!=null&&h!==""?"e":"f",S=c!==""?c:b,C=u.length+d.length,w="",E="0".concat(g).concat(m,".").concat(C).concat(w).concat(S),P=A.convertNumberPrefix(l),I=A.convertNumberPrefix(v);return{tickformat:E,tickprefix:P,ticksuffix:I,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/Md),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]:A.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=A.getAllAxes(e);return A.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];Ld(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(" ");Jt.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=>[A.periodToDecimal(h.open),A.periodToDecimal(h.close)]);r.sort((h,c)=>h[0]-c[0]),r.length===0&&r.push([0,24]);var i=e.map(h=>[A.periodToDecimal(h.open),A.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){Oe(this,"dh",void 0),Oe(this,"daysOfWeek",void 0),this.dh=e,this.daysOfWeek=Object.freeze(e.calendar.DayOfWeek.values()),Hn(this)}getAxisFormats(e,t){for(var r=new Map,i={tickformat:null,ticksuffix:null},a=A.getAllAxes(e),l=A.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(D=>D.axis),g=0;g<v.length;g+=1){var p=v[g],{axis:m}=p,{type:b}=m,S=l.get(b);F(S);var C=S.indexOf(m),w=this.getAxisPropertyName(b);if(w!=null){var E=A.getAxisLayoutProperty(w,C);if(r.has(E))Jt.debug("".concat(E," already added."));else{Jt.debug("Adding ".concat(E," to axisFormats."));var P=this.getPlotlyAxisFormat(p,t);if(P===null)r.set(E,i);else{r.set(E,P);var{businessCalendar:I}=m;if(I!=null&&(P.rangebreaks=this.createRangeBreaksFromBusinessCalendar(I,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&&kd&&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(A.MODE_LINES),(r??!0)&&a.add(A.MODE_MARKERS);break;case i.plot.SeriesPlotStyle.LINE:(t??!0)&&a.add(A.MODE_LINES),(r??!1)&&a.add(A.MODE_MARKERS);break}return a.size>0?[...a].join("+"):void 0}getPlotlyProperty(e,t){var{dh:r}=this;switch(e){case r.plot.SeriesPlotStyle.PIE:switch(t){case r.plot.SourceType.X:return"labels";case r.plot.SourceType.Y:return"values"}break;case r.plot.SeriesPlotStyle.OHLC:switch(t){case r.plot.SourceType.TIME:return"x"}break;case r.plot.SeriesPlotStyle.TREEMAP:switch(t){case r.plot.SourceType.X:return"ids";case r.plot.SourceType.Y:return"values";case r.plot.SourceType.LABEL:return"labels";case r.plot.SourceType.PARENT:return"parents";case r.plot.SourceType.COLOR:return"marker.colors"}break}switch(t){case r.plot.SourceType.X:return"x";case r.plot.SourceType.Y:return"y";case r.plot.SourceType.Z:return"z";case r.plot.SourceType.X_LOW:return"xLow";case r.plot.SourceType.X_HIGH:return"xHigh";case r.plot.SourceType.Y_LOW:return"yLow";case r.plot.SourceType.Y_HIGH:return"yHigh";case r.plot.SourceType.TIME:return"time";case r.plot.SourceType.OPEN:return"open";case r.plot.SourceType.HIGH:return"high";case r.plot.SourceType.LOW:return"low";case r.plot.SourceType.CLOSE:return"close";case r.plot.SourceType.SHAPE:return"shape";case r.plot.SourceType.SIZE:return"size";case r.plot.SourceType.LABEL:return"label";case r.plot.SourceType.COLOR:return"color";case r.plot.SourceType.PARENT:return"parent";case r.plot.SourceType.HOVER_TEXT:return"hovertext";case r.plot.SourceType.TEXT:return"text";default:throw new Error("Unrecognized source type: ".concat(t))}}getPlotlySeriesOrientation(e){var t,r,{dh:i}=this,{sources:a}=e;return a.length===2&&((t=a[0])===null||t===void 0||(r=t.axis)===null||r===void 0?void 0:r.type)===i.plot.AxisType.Y?A.ORIENTATION.HORIZONTAL:A.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,p=c.some(w=>{var E;return(E=w.axis)===null||E===void 0?void 0:E.businessCalendar}),m=this.getChartType(u,p,a),b=this.getPlotlyChartMode(u,s??void 0,o??void 0),S=this.getPlotlySeriesOrientation(e),C=A.makeSeriesData(m,b,l,i,S);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);ll(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=A.getMarkerSymbol(a)}catch(d){Jt.warn("Unable to handle shape",a,":",d)}l!=null&&(u.marker.size=l*A.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=A.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,p=1/s,m=1/o,b=A.AXIS_SIZE_PX/r,S=A.AXIS_SIZE_PX/i,C={bottom:(o-g)*m+(g<o?S/2:0),top:(o-h)*m-(h>0?S/2:0),left:u*p+(u>0?b/2:0),right:v*p-(v<s?b/2:0)},w=A.groupArray(t.axes,"position"),E=(a=w.get(l.plot.AxisPosition.RIGHT))!==null&&a!==void 0?a:[];return E.length>0&&(r>0?C.right-=(C.right-C.left)*Math.max(0,Math.min(A.LEGEND_WIDTH_PX/r,A.MAX_LEGEND_SIZE)):C.right-=(C.right-C.left)*A.DEFAULT_AXIS_SIZE),C}getPlotlyDateFormat(e,t,r){var{dh:i}=this,a=r==null?void 0:r.replace("%","%%").replace(/S{9}/g,"%9f").replace(/S{8}/g,"%8f").replace(/S{7}/g,"%7f").replace(/S{6}/g,"%6f").replace(/S{5}/g,"%5f").replace(/S{4}/g,"%4f").replace(/S{3}/g,"%3f").replace(/S{2}/g,"%2f").replace(/S{1}/g,"%1f").replace(/y{4}/g,"%Y").replace(/y{2}/g,"%y").replace(/M{4}/g,"%B").replace(/M{3}/g,"%b").replace(/M{2}/g,"%m").replace(/M{1}/g,"%-m").replace(/E{4,}/g,"%A").replace(/E{1,}/g,"%a").replace(/d{2}/g,"%d").replace(/([^%]|^)d{1}/g,"$1%-d").replace(/H{2}/g,"%H").replace(/h{2}/g,"%I").replace(/h{1}/g,"%-I").replace(/m{2}/g,"%M").replace(/s{2}/g,"%S").replace("'T'","T").replace(" z",""),l,s=e==null?void 0:e.getColumnTypeFormatter(t);return s!=null&&ji(s)&&s.dhTimeZone!=null&&s.showTimeZone&&(l=i.i18n.DateTimeFormat.format(" z",new Date,s.dhTimeZone)),{tickformat:a,ticksuffix:l,automargin:!0}}getPlotlyAxisFormat(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null,{dh:r}=this,{axis:i,columnType:a}=e,{formatPattern:l}=i,s=null;return y.isDateType(a)?(s=this.getPlotlyDateFormat(t,a,l),s=A.addTickSpacing(s,i,!0)):y.isNumberType(a)&&(s=A.getPlotlyNumberFormat(t,a,l),s=A.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(A.MIN_AXIS_SIZE,Math.min(A.AXIS_SIZE_PX/a,A.MAX_AXIS_SIZE)):A.DEFAULT_AXIS_SIZE,d=a>0?Math.max(A.MIN_AXIS_SIZE,Math.min(A.AXIS_SIZE_PX/i,A.MAX_AXIS_SIZE)):A.DEFAULT_AXIS_SIZE,h=e,c=A.groupArray(t,"position"),v=A.groupArray(t,"type"),g=[...v.keys()],p=A.groupArray(r,"type"),m=0;m<g.length;m+=1){var b=g[m],S=this.getAxisPropertyName(b);if(S!=null){var C=v.get(b),w=p.get(b),E=b===o.plot.AxisType.Y,P=E?a:i;F(C),F(w);for(var I=0;I<C.length;I+=1){var D=C[I],N=w.indexOf(D),M=A.getAxisLayoutProperty(S,N);h[M]==null&&(h[M]={});var R=h[M];if(R!=null){this.updateLayoutAxis(R,D,I,c,u,d,l);var{range:_,autorange:V}=R;if(s!=null&&_!==void 0&&(V===void 0||V===!1)){var K=s(D),[q,ie]=K(_);Jt.debug("Setting downsample range",P,q,ie),D.range(P,q,ie)}else D.range(P)}}}}}removeStaleAxes(e,t){for(var r=e,i=A.groupArray(t,"type"),a=[...i.keys()],l=0;l<a.length;l+=1){var s=a[l],o=i.get(s);F(o);var u=o.length,d=this.getAxisPropertyName(s);if(d!=null)for(var h=A.getAxisLayoutProperty(d,u);r[h]!=null;)delete r[h],u+=1,h=A.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,p;c.overlaying=(g=this.getAxisPropertyName(t.type))!==null&&g!==void 0?g:void 0;var m=(p=i.get(t.position))!==null&&p!==void 0?p:[],b=m.indexOf(t);b>0&&(c.anchor="free",t.position===u.plot.AxisPosition.RIGHT?c.position=s.right+(b-m.length+1)*h:t.position===u.plot.AxisPosition.TOP?c.position=s.top+(b-m.length+1)*h:t.position===u.plot.AxisPosition.BOTTOM?c.position=s.bottom+(m.length-b+1)*h:t.position===u.plot.AxisPosition.LEFT&&(c.position=s.left+(m.length-b+1)*h))}else if(t.type===u.plot.AxisType.X){var S=i.get(u.plot.AxisPosition.LEFT)||[],C=i.get(u.plot.AxisPosition.RIGHT)||[],w=Math.max(s.left,s.left+(S.length-1)*l),E=Math.min(s.right-(C.length-1)*l,s.right);c.domain=[w,E]}else if(t.type===u.plot.AxisType.Y){var P=i.get(u.plot.AxisPosition.BOTTOM)||[],I=i.get(u.plot.AxisPosition.TOP)||[],D=Math.max(s.bottom,s.bottom+(P.length-1)*a),N=Math.min(s.top-(I.length-1)*a,s.top);c.domain=[D,N]}var{minRange:M,maxRange:R,log:_}=t;(!Number.isNaN(M)||!Number.isNaN(R))&&(c.autorangeoptions={},Number.isNaN(M)||(c.autorangeoptions.minallowed=_?Math.log10(M):M),Number.isNaN(R)||(c.autorangeoptions.maxallowed=_?Math.log10(R):R))}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=>[(A.periodToDecimal(o.open)+t)%24,(A.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(_i),u;ji(o)&&(u=o.dhTimeZone);var d=A.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=A.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(A.decimalToPeriod(c),":00.000000"),t,r)],p=Fd*(v-c);d.push({values:g,dvalue:p})}}return d}adjustDateForTimeZone(e,t,r){return r&&r.standardOffset!==t.standardOffset?this.unwrapValue(this.wrapValue(e,_i,t),r):e}makeFigureSettings(e,t){var{dh:r}=this,{series:i,xAxis:a,type:l}=e,s=A.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(Id(e))return r.i18n.DateTimeFormat.format(A.DATE_FORMAT,e,t);if(Rd(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(y.isDateType(t)&&typeof e=="string"){var a=e,l=A.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}=e,h={paper_bgcolor:r,plot_bgcolor:i,autosize:!0,colorway:A.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({},A.DEFAULT_TITLE_PADDING),y:1},legend:{font:{color:a}},margin:wr({},A.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}};return h.datarevision=0,h}hydrateSettings(e){var{dh:t}=this;return wr(wr({},e),{},{type:e.type!=null?t.plot.SeriesPlotStyle[e.type]:void 0})}}Oe(A,"DEFAULT_AXIS_SIZE",.15);Oe(A,"MIN_AXIS_SIZE",.025);Oe(A,"MAX_AXIS_SIZE",.2);Oe(A,"AXIS_SIZE_PX",75);Oe(A,"LEGEND_WIDTH_PX",50);Oe(A,"MAX_LEGEND_SIZE",.25);Oe(A,"ORIENTATION",Object.freeze({HORIZONTAL:"h",VERTICAL:"v"}));Oe(A,"DATE_FORMAT","yyyy-MM-dd HH:mm:ss.SSSSSS");Oe(A,"DEFAULT_MARGIN",Object.freeze({l:60,r:50,t:30,b:60,pad:0}));Oe(A,"DEFAULT_TITLE_PADDING",Object.freeze({t:8}));Oe(A,"SUBTITLE_LINE_HEIGHT",25);Oe(A,"DEFAULT_MARKER_SIZE",6);Oe(A,"MODE_MARKERS","markers");Oe(A,"MODE_LINES","lines");const Re=A;function me(n,e,t){return e=xd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function xd(n){var e=_d(n,"string");return typeof e=="symbol"?e:String(e)}function _d(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class ne{constructor(e){me(this,"dh",void 0),me(this,"listeners",void 0),me(this,"formatter",void 0),me(this,"renderOptions",void 0),me(this,"rect",void 0),me(this,"isDownsamplingDisabled",void 0),me(this,"title",void 0),this.dh=e,this.listeners=[],this.isDownsamplingDisabled=!1}getData(){return[]}getDefaultTitle(){return""}getLayout(){return{}}getFilterColumnMap(){return new Map}isFilterRequired(){return!1}setFilter(e){}close(){}setFormatter(e){this.formatter=e}setRenderOptions(e){this.renderOptions=e}setDownsamplingDisabled(e){this.isDownsamplingDisabled=e}setDimensions(e){this.rect=e}setTitle(e){this.title=e}subscribe(e){this.listeners.push(e)}unsubscribe(e){this.listeners=this.listeners.filter(t=>t!==e)}fireEvent(e){for(var t=0;t<this.listeners.length;t+=1)this.listeners[t](e)}fireUpdate(e){this.fireEvent(new CustomEvent(ne.EVENT_UPDATED,{detail:e}))}fireDisconnect(){this.fireEvent(new CustomEvent(ne.EVENT_DISCONNECT))}fireReconnect(){this.fireEvent(new CustomEvent(ne.EVENT_RECONNECT))}fireDownsampleStart(e){this.fireEvent(new CustomEvent(ne.EVENT_DOWNSAMPLESTARTED,{detail:e}))}fireDownsampleFinish(e){this.fireEvent(new CustomEvent(ne.EVENT_DOWNSAMPLEFINISHED,{detail:e}))}fireDownsampleFail(e){this.fireEvent(new CustomEvent(ne.EVENT_DOWNSAMPLEFAILED,{detail:e}))}fireDownsampleNeeded(e){this.fireEvent(new CustomEvent(ne.EVENT_DOWNSAMPLENEEDED,{detail:e}))}fireLoadFinished(){this.fireEvent(new CustomEvent(ne.EVENT_LOADFINISHED))}fireError(e){this.fireEvent(new CustomEvent(ne.EVENT_ERROR,{detail:e}))}fireBlocker(e){this.fireEvent(new CustomEvent(ne.EVENT_BLOCKER,{detail:e}))}fireBlockerClear(){this.fireEvent(new CustomEvent(ne.EVENT_BLOCKER_CLEAR))}fireLayoutUpdated(e){this.fireEvent(new CustomEvent(ne.EVENT_LAYOUT_UPDATED,{detail:e}))}}me(ne,"EVENT_UPDATED","ChartModel.EVENT_UPDATED");me(ne,"EVENT_DISCONNECT","ChartModel.EVENT_DISCONNECT");me(ne,"EVENT_RECONNECT","ChartModel.EVENT_RECONNECT");me(ne,"EVENT_DOWNSAMPLESTARTED","ChartModel.EVENT_DOWNSAMPLESTARTED");me(ne,"EVENT_DOWNSAMPLEFINISHED","ChartModel.EVENT_DOWNSAMPLEFINISHED");me(ne,"EVENT_DOWNSAMPLEFAILED","ChartModel.EVENT_DOWNSAMPLEFAILED");me(ne,"EVENT_DOWNSAMPLENEEDED","ChartModel.EVENT_DOWNSAMPLENEEDED");me(ne,"EVENT_LOADFINISHED","ChartModel.EVENT_LOADFINISHED");me(ne,"EVENT_ERROR","ChartModel.EVENT_ERROR");me(ne,"EVENT_BLOCKER","ChartModel.EVENT_BLOCKER");me(ne,"EVENT_BLOCKER_CLEAR","ChartModel.EVENT_BLOCKER_CLEAR");me(ne,"EVENT_LAYOUT_UPDATED","ChartModel.EVENT_LAYOUT_UPDATED");const jd=ne;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){ve(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 ve(n,e,t){return e=Vd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Vd(n){var e=$d(n,"string");return typeof e=="symbol"?e:String(e)}function $d(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ee=J.module("FigureChartModel");class Zr extends jd{constructor(e,t){var r,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};super(e),r=this,ve(this,"chartUtils",void 0),ve(this,"dh",void 0),ve(this,"figure",void 0),ve(this,"settings",void 0),ve(this,"data",void 0),ve(this,"layout",void 0),ve(this,"seriesDataMap",void 0),ve(this,"pendingSeries",void 0),ve(this,"oneClicks",void 0),ve(this,"filterColumnMap",void 0),ve(this,"lastFilter",void 0),ve(this,"isConnected",void 0),ve(this,"seriesToProcess",void 0),ve(this,"addPendingSeries",ht(()=>{for(var a=Re.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=[]},Zr.ADD_SERIES_DEBOUNCE)),ve(this,"getTimeZone",Ue((a,l)=>{if(l!=null){var s=l.getColumnTypeFormatter(a);if(s!=null)return s.dhTimeZone}})),ve(this,"getValueTranslator",Ue((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.unwrapValue(o,s)})),ve(this,"getValueParser",Ue((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.wrapValue(o,a,s)})),ve(this,"getRangeParser",Ue((a,l)=>s=>{var[o,u]=s,d=this.getValueParser(a,l);return o=d(o),u=d(u),[o,u]})),ve(this,"getAxisRangeParser",Ue((a,l)=>s=>{var o=Re.getSourceForAxis(a,s);return o!=null?this.getRangeParser(o.columnType,l):u=>u})),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 Re(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=Re.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:p,title:m}=c;if(m!=null&&m.length>0&&(t.length>1||e.figure.title!=null)){var b=p.find(M=>M.type===e.dh.plot.AxisType.X),S=p.find(M=>M.type===e.dh.plot.AxisType.Y);if(b==null||S==null)Ee.warn("Chart title provided, but unknown how to map to the correct axes for this chart type",c);else{var C,w,E,P,I=((C=(w=r.get(b.type))===null||w===void 0?void 0:w.findIndex(M=>M===b))!==null&&C!==void 0?C:0)+1,D=((E=(P=r.get(S.type))===null||P===void 0?void 0:P.findIndex(M=>M===S))!==null&&E!==void 0?E:0)+1,N={align:"center",x:.5,y:1,yshift:17,text:m,showarrow:!1,xref:"x".concat(I," domain"),yref:"y".concat(D," domain")};e.layout.annotations==null?e.layout.annotations=[N]:e.layout.annotations.push(N)}}},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,Re.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=Re.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){Ee.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&&(Ee.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){Ee.debug("Downsample started",e),this.fireDownsampleStart(e.detail)}handleDownsampleFinish(e){Ee.debug("Downsample finished",e),this.fireDownsampleFinish(e.detail)}handleDownsampleFail(e){Ee.error("Downsample failed",e),this.fireDownsampleFail(e.detail)}handleDownsampleNeeded(e){Ee.info("Downsample needed",e),this.fireDownsampleNeeded(e.detail)}handleFigureUpdated(e){var{detail:t}=e,{series:r}=t;Ee.debug2("handleFigureUpdated",r);for(var i=0;i<r.length;i+=1){var a=r[i];Ee.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){Ee.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){Ee.debug("Figure disconnected",e),this.isConnected=!1,this.listeners.length>0&&this.unsubscribeFigure(),this.fireDisconnect()}handleFigureReconnected(e){Ee.debug("Figure reconnected",e),this.isConnected=!0,this.initAllSeries(),this.fireReconnect(),this.listeners.length>0&&this.subscribeFigure()}handleFigureSeriesAdded(e){var{detail:t}=e;Ee.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=Re.DEFAULT_MARGIN.t+i*Re.SUBTITLE_LINE_HEIGHT;this.layout.margin?this.layout.margin.t=a:this.layout.margin={t:a},typeof this.layout.title=="string"?this.layout.title=e:(this.layout.title=$i({},this.layout.title),this.layout.title.text=e,this.layout.title.pad=$i({},this.layout.title.pad),this.layout.title.pad.t=Re.DEFAULT_TITLE_PADDING.t+i*Re.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)=>{Ee.debug("Assigning ".concat(r),this.layout[r],t);var i=this.layout[r];i!=null?Object.assign(i,t):Ee.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&&ll(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:p}=a;h&&c&&h!==d&&(a.error_x=Re.getPlotlyErrorBars(d,h,c)),g&&p&&g!==v&&(a.error_y=Re.getPlotlyErrorBars(v,g,p))}else if(i===t.plot.SeriesPlotStyle.TREEMAP){var{ids:m,labels:b}=a;m!==void 0&&b===void 0&&(a.labels=m)}}}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){Ee.warn("Trying to set a filter, but no one click!");return}Ee.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}}ve(Zr,"ADD_SERIES_DEBOUNCE",50);const Hi=Zr;function Gi(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function vn(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Gi(a,r,i,l,s,"next",o)}function s(o){Gi(a,r,i,l,s,"throw",o)}l(void 0)})}}class zn{static makeModelFromSettings(e,t,r){return vn(function*(){var i=yield zn.makeFigureFromSettings(e,t,r);return new Hi(e,i,t)})()}static makeFigureFromSettings(e,t,r){return vn(function*(){var i=yield r.copy();return i.applyCustomColumns(r.customColumns),i.applyFilter(r.filter),i.applySort(r.sort),e.plot.Figure.create(new Re(e).makeFigureSettings(t,i))})()}static makeModel(e,t,r){return vn(function*(){return new Hi(e,r,t)})()}}const ur=zn;function Ui(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 Hd(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){Hr(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 Hr(n,e,t){return e=Gd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Gd(n){var e=Ud(n,"string");return typeof e=="symbol"?e:String(e)}function Ud(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class _l extends T.Component{constructor(e){super(e),Hr(this,"container",void 0),Hr(this,"editor",void 0),this.handleResize=this.handleResize.bind(this),this.container=null,this.state={}}componentDidMount(){this.initEditor(),window.addEventListener("resize",this.handleResize)}componentWillUnmount(){window.removeEventListener("resize",this.handleResize),this.destroyEditor()}setLanguage(e){if(this.editor){var t=this.editor.getModel();F(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=Hd({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),F(this.container),this.editor=Ci.create(this.container,t),this.editor.addAction({id:"find",label:"Find",keybindings:[Ys.CtrlCmd|Zs.KeyF],precondition:void 0,keybindingContext:void 0,contextMenuGroupId:"navigation",contextMenuOrder:1,run:()=>{this.toggleFind()}}),this.editor.layout(),Qs.registerLinkProvider("plaintext",{provideLinks:Nt.provideLinks}),e(this.editor)}destroyEditor(){var{onEditorWillDestroy:e}=this.props;F(this.editor),e(this.editor),this.editor.dispose(),this.editor=void 0}render(){var{className:e}=this.props;return f.jsx("div",{className:Ie("editor-container",e),ref:t=>{this.container=t}})}}Hr(_l,"defaultProps",{className:"fill-parent-absolute",onEditorInitialized:()=>{},onEditorWillDestroy:()=>{},settings:{}});const Bd=_l;var Wd={groovy:"Groovy",python:"Python",scala:"Scala"};class zd{static normalizeScriptLanguage(e){return Wd[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(`
3
3
  `),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(`
4
- `)}}const Pn=Wd;function ar(n,e,t){return e=zd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function zd(n){var e=qd(n,"string");return typeof e=="symbol"?e:String(e)}function qd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var xe=J.module("ScriptEditor");class jl extends T.Component{constructor(e){super(e),ar(this,"contextActionCleanups",void 0),ar(this,"completionCleanup",void 0),ar(this,"editor",void 0),ar(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=Pe.createRef(),this.state={model:null}}componentDidMount(){Ei.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(){Ei.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();N(r);var i=(t=this.editor)===null||t===void 0?void 0:t.getModel();N(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 Pn.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()}),Ft.setEOL(e),Ft.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:[Ft.getMonacoKeyCodeFromShortcut(ot.NOTEBOOK.RUN)],contextMenuGroupId:"navigation",contextMenuOrder:1.5,run:()=>{this.handleRun()}})),e.push(this.editor.addAction({id:"run-selected-code",label:"Run Selected",keybindings:[Ft.getMonacoKeyCodeFromShortcut(ot.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=Ft.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&&Ft.closeDocument(this.editor,e))}append(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;N(this.editor);var r=this.editor.getModel();N(r);var i=r.getValue();i?r.setValue("".concat(i,`
5
- `).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 f.jsxs(f.Fragment,{children:[(t||i)&&f.jsx("div",{className:"h-100 w-100 position-relative",children:f.jsx(ct,{errorMessage:u,isLoading:i,isLoaded:r})}),r&&f.jsx("div",{className:"h-100 w-100 script-editor",children:s&&f.jsxs(f.Fragment,{children:[f.jsx(Ud,{ref:this.editorComponent,settings:s,onEditorInitialized:this.handleEditorInitialized,onEditorWillDestroy:this.handleEditorWillDestroy}),h!=null&&h&&f.jsx(Co,{model:o,language:d,session:a})]})})]})}}ar(jl,"defaultProps",{error:null,isLoading:!1,isLoaded:!1,focusOnMount:!0,onChange:()=>{},onEditorInitialized:()=>{},onEditorWillDestroy:()=>{},session:null});const Kd=jl;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.");Pe.useEffect(()=>{var l=n(a,e,t,r);return()=>{l()}},[e,r,t,a,n])}function qn(){var n=T.useContext(So);if(n==null)throw new Error("LayoutManager not available, did you add a LayoutManagerContext.Provider to the tree?");return n}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 Xd(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){Yd(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 Yd(n,e,t){return e=Zd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Zd(n){var e=Qd(n,"string");return typeof e=="symbol"?e:String(e)}function Qd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Jd=T.lazy(()=>zr(()=>import("./IrisGrid-09ef392e.js"),["./IrisGrid-09ef392e.js","./vendor-9e6eb436.js","./helpers-de833af9.js","./vendor-6cb4b08b.css","./index-a8c7882b.js","./index-11271fba.css","./LogPanel-ea0c64de.js","./LogPanel-8a0231fc.css","./IrisGridThemeProvider-6ebfacf0.js","./useMergeRef-04ff7062.js","./IrisGridThemeProvider-7173ead5.css","./IrisGrid-5c3a4e4a.css"],import.meta.url)),Vl=T.forwardRef((n,e)=>f.jsx(T.Suspense,{fallback:f.jsx(ct,{}),children:f.jsx(Jd,Xd({ref:e},n))}));Vl.displayName="LazyIrisGrid";const Kn=Vl;var On;(function(n){n.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS="filter-control-change-clears-all-filters",n.LINK_CHANGE_CLEARS_ALL_FILTERS="link-change-clears-all-filters"})(On||(On={}));const zi=On;var eh=Object.freeze([[zi.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS,!1],[zi.LINK_CHANGE_CLEARS_ALL_FILTERS,!1]]);const $l={DEFAULTS:eh};var Dn;(function(n){n.COUNT="Count",n.MIN="Min",n.MAX="Max",n.SUM="Sum",n.ABS_SUM="AbsSum",n.VAR="Var",n.AVG="Avg",n.MEDIAN="Median",n.STD="Std",n.FIRST="First",n.LAST="Last",n.SKIP="Skip",n.COUNT_DISTINCT="CountDistinct",n.DISTINCT="Distinct",n.UNIQUE="Unique"})(Dn||(Dn={}));const Y=Dn;var Gp=[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],th=n=>{switch(n){default:return!1}},rh=n=>{switch(n){case Y.MEDIAN:return!0;default:return!1}},Hl=(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}},Gl=(n,e)=>n.filter(t=>t.isProxy!==!0&&Hl(e,t.type)),nh=(n,e,t,r)=>Gl(n,e).map(i=>{var{name:a}=i;return a}).filter(i=>t.includes(i)?!r:r);const fn={isValidOperation:Hl,isRollupOperation:th,isRollupProhibited:rh,filterValidColumns:Gl,getOperationColumnNames:nh};function ih(n){return(n==null?void 0:n.hasExpandableRows)!==void 0}function lr(n,e,t){return e=ah(e),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:String(e)}function lh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Fn;(function(n){n.DOWN="DOWN",n.UP="UP",n.LEFT="LEFT",n.RIGHT="RIGHT"})(Fn||(Fn={}));class k{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 k(...k.normalize(e,t,r,i))}static makeCell(e,t){return new k(e,t,e,t)}static makeColumn(e){return new k(e,null,e,null)}static makeRow(e){return new k(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=k.minOrNull(a.startColumn,s.startColumn),h=k.maxOrNull(a.endColumn,s.endColumn);r=!0,t[i]=new k(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=k.minOrNull(a.startRow,s.startRow),p=k.maxOrNull(a.endRow,s.endRow);r=!0,t[i]=new k(c,g,v,p),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){var r,i,a,l,s,o;if(e.equals(t))return e;var{startColumn:u,startRow:d,endColumn:h,endRow:c}=e;return u=u!=null&&t.startColumn!=null?Math.max(u,t.startColumn):(r=u)!==null&&r!==void 0?r:t.startColumn,h=h!=null&&t.endColumn!=null?Math.min(h,t.endColumn):(i=h)!==null&&i!==void 0?i:t.endColumn,d=d!=null&&t.startRow!=null?Math.max(d,t.startRow):(a=d)!==null&&a!==void 0?a:t.startRow,c=c!=null&&t.endRow!=null?Math.min(c,t.endRow):(l=c)!==null&&l!==void 0?l:t.endRow,u!=null&&u>((s=h)!==null&&s!==void 0?s:-1)||d!=null&&d>((o=c)!==null&&o!==void 0?o:-1)?null:new k(u,d,h,c)}static subtractFromRange(e,t){var r=[],i=k.intersection(e,t);return i==null?[e]:(i.startRow!=null&&(e.startRow==null||e.startRow<i.startRow)&&r.push(new k(e.startColumn,e.startRow,e.endColumn,i.startRow-1)),i.startColumn!=null&&(e.startColumn==null||e.startColumn<i.startColumn)&&r.push(new k(e.startColumn,i.startRow,i.startColumn-1,i.endRow)),i.endColumn!=null&&(e.endColumn==null||e.endColumn>i.endColumn)&&r.push(new k(i.endColumn+1,i.startRow,e.endColumn,i.endRow)),i.endRow!=null&&(e.endRow==null||e.endRow>i.endRow)&&r.push(new k(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(...k.subtractFromRange(e[i],t));return r}static subtractRangesFromRanges(e,t){for(var r=[...e],i=0;i<t.length;i+=1)r=k.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 k.isBounded(e)?e:new k((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=>k.boundedRange(i,t,r))}static offset(e,t,r){return new k(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]:k.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 k.SELECTION_DIRECTION.DOWN:case k.SELECTION_DIRECTION.RIGHT:{var o=a<e.length-1?a+1:0,u=e[o];return u.startCell(i)}case k.SELECTION_DIRECTION.LEFT:case k.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]:k.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 k.isAxisRangeTouching(this.startRow,this.endRow,e.startRow,e.endRow)&&k.isAxisRangeTouching(this.startColumn,this.endColumn,e.startColumn,e.endColumn)}subtract(e){return k.subtractFromRange(this,e)}startCell(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:k.SELECTION_DIRECTION.DOWN;if(!k.isBounded(this))throw new Error("Cannot get the startCell of an unbounded range");switch(e){case k.SELECTION_DIRECTION.DOWN:case k.SELECTION_DIRECTION.RIGHT:return{column:this.startColumn,row:this.startRow};case k.SELECTION_DIRECTION.LEFT:case k.SELECTION_DIRECTION.UP:return{column:this.endColumn,row:this.endRow};default:throw new Error("Invalid direction: ".concat(e))}}nextCell(e,t,r){if(!k.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 k.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 k.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 k.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 k.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]:k.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(k,"SELECTION_DIRECTION",Fn);function sh(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 sh(n)&&n[0]!=null&&n[1]!=null}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 Pr(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){Ul(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 Ul(n,e,t){return e=oh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function oh(n){var e=uh(n,"string");return typeof e=="symbol"?e:String(e)}function uh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Up(n){return(n==null?void 0:n.href)!==void 0}class H{static getGridPointFromXY(e,t,r){var i=H.getColumnAtX(e,r),a=H.getRowAtY(t,r),l=H.getColumnHeaderDepthAtY(t,r);return{x:e,y:t,row:a,column:i,columnHeaderDepth:l}}static getCellInfoFromXY(e,t,r){var{row:i,column:a}=H.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,p=i!==null?u.get(i):null,m=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:p??null,columnWidth:m??null,rowHeight:b??null}}static getColumnHeaderDepthAtY(e,t){var r=H.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=H.iterateFloatingStart(e,r,i);return a!==void 0?a:H.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=H.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:H.iterateFloating(r,i,t,c=>{if(H.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(H.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 H.getNextShownItem(e,r,i,a)}static getNextShownRow(e,t){var{modelRows:r,visibleRows:i,userRowHeights:a}=t;return H.getNextShownItem(e,r,i,a)}static getColumnSeparatorIndex(e,t,r,i){var{rowHeaderWidth:a,columnHeaderHeight:l,floatingColumns:s,floatingLeftWidth:o,visibleColumns:u,allColumnXs:d,allColumnWidths:h,columnHeaderMaxDepth:c}=r,{allowColumnResize:v,headerSeparatorHandleSize:g}=i;if(c*l<t||!v||g<=0)return null;for(var p=e-a,m=g*.5,b=!1,y=s.length-1;y>=0;y-=1){var C,E,w=s[y],P=(C=d.get(w))!==null&&C!==void 0?C:0,I=(E=h.get(w))!==null&&E!==void 0?E:0,F=I===0;if(!b||!F){var D=P+I;F?D+=m:b&&(D-=m);var M=D-m,R=D+m;if(M<=p&&p<=R)return w;b=F}}b=!1;for(var _=u.length-1;_>=0;_-=1){var V,K,q=u[_],ie=(V=d.get(q))!==null&&V!==void 0?V:0,ee=(K=h.get(q))!==null&&K!==void 0?K:0,ge=ee===0;if(ie<o-ee)return null;if(!b||!ge){var be=ie+ee;ge?be+=m:b&&(be-=m);var $e=be-m,L=be+m;if($e<=p&&p<=L)return q;b=ge}}return null}static isItemHidden(e,t){return t.get(e)===0}static isColumnHidden(e,t){var{allColumnWidths:r}=t;return H.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(!H.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(!H.isItemHidden(s,t))break;i.push(s)}return i}static getHiddenColumns(e,t){var{visibleColumns:r,allColumnWidths:i}=t;return H.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,p=s.length-1;p>=0;p-=1){var m,b,y=s[p],C=(m=o.get(y))!==null&&m!==void 0?m:0,E=(b=u.get(y))!==null&&b!==void 0?b:0,w=E===0;if(!g||!w){var P=C+E;w?P+=v:g&&(P-=v);var I=P-v,F=P+v;if(I<=c&&c<=F)return y;g=w}}return null}static isRowHidden(e,t){var{allRowHeights:r}=t;return H.isItemHidden(e,r)}static getHiddenRows(e,t){var{visibleRows:r,allRowHeights:i}=t;return H.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 H.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)?H.moveRange(e,t,r,i):H.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,p=i?c:d,m=p-v,b=[],y=function(){var w,P,I=(w=a[C][0])!==null&&w!==void 0?w:Number.NEGATIVE_INFINITY,F=(P=a[C][1])!==null&&P!==void 0?P:Number.POSITIVE_INFINITY,D,M=[[I,v-1],[v,g],[g+1,F]].map(R=>{var[_,V]=R;return[Math.max(_,I),Math.min(V,F)]}).filter(R=>{var[_,V]=R;return _<=V}).map(R=>{var[_,V]=R;return v<=_&&g>=V?(D=[_+m,V+m],D):g<_?[_-h,V-h]:R}).map(R=>{var[_,V]=R;return p>_&&p<=V?[[_,p-1],[p+h,V+h]]:R===D?[R]:p<=_?[[_+h,V+h]]:[R]}).flat();b.push(...M)},C=0;C<a.length;C+=1)y();a=b.map(E=>{var[w,P]=E;return[Number.isFinite(w)?w:null,Number.isFinite(P)?P: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=H.applyItemMoves(e.startColumn,e.endColumn,t,i),l=H.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 k(u[0],h[0],u[1],h[1]))}return s}static getModelIndex(e,t){var r=H.applyItemMoves(e,e,t,!0)[0][0];return r}static getModelIndexes(e,t){return e.map(r=>H.getModelIndex(r,t))}static getModelRangeIndexes(e,t,r){return H.applyItemMoves(e,t,r,!0)}static getModelRange(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:re,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:re;return H.translateRange(e,t,r,!0)}static getModelRanges(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:re,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:re,i=[],a=0;a<e.length;a+=1)i.push(...H.getModelRange(e[a],t,r));return i}static getVisibleRangeIndexes(e,t,r){return H.applyItemMoves(e,t,r,!1)}static getVisibleRange(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:re,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:re;return this.translateRange(e,t,r,!1)}static getVisibleRanges(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:re,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:re,i=[],a=0;a<e.length;a+=1)i.push(...H.getVisibleRange(e[a],t,r));return i}static getVisibleIndex(e,t){var r=H.applyItemMoves(e,e,t)[0][0];return r}static getVisibleIndexes(e,t){return e.map(r=>H.getVisibleIndex(r,t))}static isMacPlatform(){var{platform:e}=window.navigator;return e.startsWith("Mac")}static getModifierKey(){return H.isMacPlatform()?"metaKey":"ctrlKey"}static isModifierKeyDown(e){var t=H.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:p,columnCount:m,rowCount:b}=e,y=i,C=a,E=l,w=s;return r!=null&&(r>d&&(y+=c),r<m-h&&(E-=v)),t!=null&&(t>o&&(C+=g),t<b-u&&(w-=p)),{x1:y,y1:C,x2:E,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!H.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&&(H.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),p=Ge(o+i,o,d-c),m=Ge(o+l,o,d-c);return{x1:v,y1:p,x2:g,y2:m,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:p,treeHorizontalPadding:m}=l,b=At(c,r),y=At(v,t),C=a.textAlignForCell(y,b),E=At(o,t),w=At(d,r),P=At(u,t),I=At(h,r),F=t===s,D=0;ih(a)&&a.hasExpandableRows&&F&&(D=p*(a.depthForRow(r)+1)+m);var M=P-D,R=E+g,_=w+I*.5;return C==="right"?R=E+M-g:C==="center"&&(R=E+M*.5),R+=D,{width:M-g*2,x:R,y:_}}static findTokensWithProtocolInText(e){var t=Js(e);return t.filter(r=>r.type==="url"?/^https?:\/\//.test(r.value):!0)}}Ul(H,"PIXELS_PER_LINE",100/3);const Ki=H;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 Yi(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){dh(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 dh(n,e,t){return e=hh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function hh(n){var e=ch(n,"string");return typeof e=="symbol"?e:String(e)}function ch(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var vh=(n,e)=>{var t=!1,r=Ue(n,Yi(Yi({},e),{},{dispose:()=>{t||(t=!0,r.clear(),t=!1)}}));return r};const Nn=vh;function fh(n,e,t){return e=ph(e),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:String(e)}function mh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var pn=5e3;class gh extends eo{constructor(){super(...arguments),fh(this,"getCachedTokensInText",Nn((e,t)=>{if(t>=e.length)return Ki.findTokensWithProtocolInText(e);var r=e.slice(t-1,pn).search(/\s/),i=t+r;r===-1&&(i=Math.min(pn,e.length));var a=e.substring(0,i);return Ki.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]:pn,i=this.textForCell(e,t);return this.getCachedTokensInText(i,r)}renderTypeForCell(e,t){return"text"}}const bh=gh;function Mn(n,e,t){return e=Ch(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ch(n){var e=Sh(n,"string");return typeof e=="symbol"?e:String(e)}function Sh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var vt=[],yh=new Set;class Bl extends bh{constructor(e){super(),Mn(this,"dh",void 0),Mn(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 vt}get groupedColumns(){return vt}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 vt}get initialMovedRows(){return vt}get initialColumnHeaderGroups(){return vt}get layoutHints(){return null}get frontColumns(){return vt}get backColumns(){return vt}get keyColumnSet(){return yh}get frozenColumns(){return vt}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 isOrganizeColumnsAvailable(){return!1}get isCustomColumnsAvailable(){return!1}get isFormatColumnsAvailable(){return!1}get isExportAvailable(){return!1}get isValuesTableAvailable(){return!1}get isChartBuilderAvailable(){return!1}get isRollupAvailable(){return!1}get isSelectDistinctAvailable(){return!1}get isTotalsAvailable(){return!1}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.")}}Mn(Bl,"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"}));const W=Bl;function St(n,e,t){return e=Eh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Eh(n){var e=wh(n,"string");return typeof e=="symbol"?e:String(e)}function wh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Th=J.module("ColumnHeaderGroup");function mn(n){return n instanceof br}class br{constructor(e){var{name:t,children:r,color:i,depth:a,childIndexes:l,parent:s}=e;St(this,"name",void 0),St(this,"children",void 0),St(this,"depth",void 0),St(this,"parent",void 0),St(this,"color",void 0),St(this,"childIndexes",void 0),St(this,"getVisibleRange",U(o=>{var u=this.childIndexes.flat(),d=H.getVisibleIndexes(u,o),h=Math.min(...d),c=Math.max(...d);return c-h!==u.length-1&&Th.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(br.NEW_GROUP_PREFIX)}}St(br,"NEW_GROUP_PREFIX",":newGroup");function rt(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 Bp(n){return rt(n)&&n.partitionConfig!==void 0}var Ph=["selectedValues"],Oh=["selectedValues"];function Zi(n,e){if(n==null)return{};var t=Dh(n,e),r,i;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(n);for(i=0;i<a.length;i++)r=a[i],!(e.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(n,r)&&(t[r]=n[r])}return t}function Dh(n,e){if(n==null)return{};var t={},r=Object.keys(n),i,a;for(a=0;a<r.length;a++)i=r[a],!(e.indexOf(i)>=0)&&(t[i]=n[i]);return t}function 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 He(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){In(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 In(n,e,t){return e=Fh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Fh(n){var e=Nh(n,"string");return typeof e=="symbol"?e:String(e)}function Nh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var tr=J.module("IrisGridUtils");function Wp(n){return n.partition!==void 0}function Ji(n){return Array.isArray(n.partitions)}function ft(n,e){return n>=0&&n<e.length}function Mh(n){return(n==null?void 0:n.asDate)!=null}class ae{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=ae.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=p=>typeof p=="string"?d.findIndex(m=>m===p):p;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 Ji(t)?a=t.partitions:t.partition!=null&&(a=[t.partition]),{isSelectingPartition:r,partitions:a,advancedSettings:new Map([...$l.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=Ji(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=ae.parseCustomColumnNames(e),i=ae.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=He({},v),[p,m]=Array.isArray(v.from)?v.from:[v.from,v.from];d<=v.to&&(g.to-=1),d<p&&(p-=1),d<=m&&(m-=1),p<=m&&p!==g.to&&(p===m?h.push(He(He({},g),{},{from:p})):h.push(He(He({},g),{},{from:[p,m]}))),d=H.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=H.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=H.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=H.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=ae.getVisibleColumnsInRange(e,t,r,i,a),u=o.length*s,d=ae.getPrevVisibleColumns(e,t-1,u,i,a),h=ae.getNextVisibleColumns(e,r+1,u,i,a),c=[...d,...o,...h];return ae.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];N(a.startColumn),N(a.endColumn);for(var l=(s=a.startColumn)!==null&&s!==void 0?s:0;l<=((o=a.endColumn)!==null&&o!==void 0?o:t.length-1);l+=1){var s,o;r.add(l)}}return[...r].map(u=>t[u])}static snapshotDataToMatrix(e){for(var{columns:t,rows:r}=e,i=[],a=0;a<r.length;a+=1){for(var l=r[a],s=[],o=0;o<t.length;o+=1){var u=t[o],d=l.get(u);s.push(d)}i.push(s)}return i}static getModelRollupConfig(e,t,r){var i,a;if(((i=t==null||(a=t.columns)===null||a===void 0?void 0:a.length)!==null&&i!==void 0?i:0)===0)return null;for(var{columns:l=[],showConstituents:s=!0,showNonAggregatedColumns:o=!0,includeDescriptions:u=!0}=t??{},{aggregations:d=[]}=r??{},h=d.filter(y=>{var{operation:C}=y;return!fn.isRollupProhibited(C)}),c=h.map(y=>{var{operation:C,selected:E,invert:w}=y;return fn.isRollupOperation(C)?[]:fn.getOperationColumnNames(e,C,E,w)}),v={},g=0;g<h.length;g+=1)v[h[g].operation]=c[g];if(o){var p=new Set(e.map(y=>y.name).filter(y=>!l.includes(y)));if(c.forEach(y=>{y.forEach(C=>p.delete(C))}),p.size>0){var m,b=(m=v[Y.FIRST])!==null&&m!==void 0?m:[];v[Y.FIRST]=[...b,...p]}}return{groupingColumns:l,includeConstituents:s,includeDescriptions:u,aggregations:v}}static getPendingErrors(e){e.forEach((t,r)=>{if(!ae.isValidIndex(r))throw new Error("Invalid rowIndex ".concat(r));var{data:i}=t;i.forEach((a,l)=>{if(!ae.isValidIndex(l))throw new Error("Invalid columnIndex ".concat(l))})})}static getColumn(e,t){return t<e.length?e[t]:(tr.error("Unable to retrieve column",t,">=",e.length),null)}static getColumnByName(e,t){var r=e.find(i=>{var{name:a}=i;return a===t});return r==null&&tr.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 br(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;if(N(g,"Column header group has no name"),e.getColumnIndexByName(g)!=null)throw new Error("Column header group has same name as column: ".concat(g));var p=l.get(g);if(p)return p;var m=[],b=1;if(c.children==null)throw new Error("Column header group ".concat(g," has no children"));c.children.forEach(E=>{if(u.has(E))throw new Error("Column group child ".concat(E," specified in multiple groups"));u.add(E);var w=o.get(E),P=e.getColumnIndexByName(E);if(w){var I=d(w);m.push(...I.childIndexes),b=Math.max(b,I.depth+1)}else if(P!=null)m.push(P),b=Math.max(b,1);else throw new Error("Unknown child ".concat(E," in group ").concat(g))});var y=He(He({},c),{},{name:g,children:c.children,depth:b,childIndexes:m.flat()}),C=r(y);return l.set(g,C),(v=c.children)===null||v===void 0||v.forEach(E=>a.set(E,C)),i=Math.max(i,C.depth+1),C},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)&&Mh(e)){var r=new Date(e.asDate()),i=r.getTimezoneOffset(),a=new Date(r.getTime()-i*60*1e3),l=a.toISOString(),s=l.replace("T"," ").substring(0,23);return s}return e==null?"":"".concat(e)}constructor(e){In(this,"dh",void 0),In(this,"tableUtils",void 0),this.dh=e,this.tableUtils=new S(e),Hn(this)}dehydrateIrisGridState(e,t){var{aggregationSettings:r={aggregations:re,showOnTop:!1},advancedFilters:i,customColumnFormatMap:a,isFilterBarShown:l,metrics:{userColumnWidths:s,userRowHeights:o}={userColumnWidths:jt,userRowHeights:jt},quickFilters:u,customColumns:d,conditionalFormats:h=re,reverse:c,rollupConfig:v,showSearchBar:g,searchValue:p,selectDistinctColumns:m=re,selectedSearchColumns:b,sorts:y,invertSearchColumns:C,pendingDataMap:E=jt,frozenColumns:w,columnHeaderGroups:P,partitionConfig:I}=t,{columns:F}=e,D=rt(e)?e.partitionColumns:[];return{advancedFilters:this.dehydrateAdvancedFilters(F,i),aggregationSettings:r,customColumnFormatMap:[...a],isFilterBarShown:l,quickFilters:ae.dehydrateQuickFilters(u),sorts:ae.dehydrateSort(y),userColumnWidths:[...s].filter(M=>{var[R]=M;return R!=null&&R>=0&&R<F.length}).map(M=>{var[R,_]=M;return[F[R].name,_]}),userRowHeights:[...o],customColumns:[...d],conditionalFormats:[...h],reverse:c,rollupConfig:v,showSearchBar:g,searchValue:p,selectDistinctColumns:[...m],selectedSearchColumns:b,invertSearchColumns:C,pendingDataMap:this.dehydratePendingDataMap(F,E),frozenColumns:w,columnHeaderGroups:P==null?void 0:P.map(M=>{var R;return{name:M.name,children:M.children,color:(R=M.color)!==null&&R!==void 0?R:null}}),partitionConfig:this.dehydratePartitionConfig(D,I)}}hydrateIrisGridState(e,t){var r,i,{advancedFilters:a,aggregationSettings:l={aggregations:[],showOnTop:!1},customColumnFormatMap:s,isFilterBarShown:o,quickFilters:u,sorts:d,customColumns:h,conditionalFormats:c,userColumnWidths:v,userRowHeights:g,reverseType:p,reverse:m,rollupConfig:b=void 0,showSearchBar:y,searchValue:C,selectDistinctColumns:E,selectedSearchColumns:w,invertSearchColumns:P=!0,pendingDataMap:I=[],frozenColumns:F,columnHeaderGroups:D,partitionConfig:M}=t,{columns:R,formatter:_}=e,V=rt(e)?e.partitionColumns:[];return{advancedFilters:this.hydrateAdvancedFilters(R,a,_.timeZone),aggregationSettings:l,customColumnFormatMap:new Map(s),isFilterBarShown:o,quickFilters:this.hydrateQuickFilters(R,u,_.timeZone),sorts:this.hydrateSort(R,d),userColumnWidths:new Map(v.map(K=>{var[q,ie]=K;return typeof q=="string"||q instanceof String?[R.findIndex(ee=>{var{name:ge}=ee;return ge===q}),ie]:[q,ie]}).filter(K=>{var[q]=K;return q!=null&&q>=0&&q<R.length})),customColumns:h,conditionalFormats:c,userRowHeights:new Map(g),reverse:p===S.REVERSE_TYPE.POST_SORT||m,rollupConfig:b,showSearchBar:y,searchValue:C,selectDistinctColumns:E,selectedSearchColumns:w,invertSearchColumns:P,pendingDataMap:this.hydratePendingDataMap(R,I),frozenColumns:F,columnHeaderGroups:ae.parseColumnHeaderGroups(e,(r=D??((i=e.layoutHints)===null||i===void 0?void 0:i.columnGroups))!==null&&r!==void 0?r:[]).groups,partitionConfig:this.hydratePartitionConfig(V,M)}}hydrateQuickFilters(e,t,r){var i=t.map(a=>{var[l,s]=a,{text:o}=s,u=null;try{var d=ae.getColumn(e,l);d!=null&&(u=this.tableUtils.makeQuickFilter(d,o,r))}catch(h){tr.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=ae.getColumn(e,i);N(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=ae.getColumn(e,l);N(o);var u=this.hydrateAdvancedFilterOptions(o,s.options),d=null;try{var h=ae.getColumn(e,l);h!=null&&(d=this.tableUtils.makeAdvancedFilter(o,u,r))}catch(c){tr.error("hydrateAdvancedFilters error with",u,c)}return[l,{options:u,filter:d}]});return new Map(i)}dehydrateAdvancedFilterOptions(e,t){var{selectedValues:r}=t,i=Zi(t,Ph);return He({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=Zi(t,Oh);return He({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,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 N(c),[(u=i(d))!==null&&u!==void 0?u:null,this.hydrateValue(h,e[c].type)]}))}]}))}dehydratePartitionConfig(e,t){return t==null?t:He(He({},t),{},{partitions:t.partitions.map((r,i)=>this.dehydrateValue(r,e[i].type))})}hydratePartitionConfig(e,t){return t==null?t:He(He({},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)?ae.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{dh:r}=this;return t.map(i=>{var{column:a,isAbs:l,direction:s}=i;if(s===S.sortDirection.reverse)return r.Table.reverse();var o=typeof a=="string"?ae.getColumnByName(e,a):ae.getColumn(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(i=>i!=null&&i.direction!==S.sortDirection.reverse)}applyTableSettings(e,t,r){var{columns:i}=e,a=[];t.quickFilters&&(a=ae.getFiltersFromFilterMap(this.hydrateQuickFilters(i,t.quickFilters,r)));var l=[];t.advancedFilters&&(l=ae.getFiltersFromFilterMap(this.hydrateAdvancedFilters(i,t.advancedFilters,r)));var s=this.getFiltersFromInputFilters(i,t.inputFilters,r),o=[];t.sorts&&(o=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(p=>ae.getColumnByName(i,p)),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){tr.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)=>(N(i.startRow),N(a.startRow),i.startRow-a.startRow)).map(i=>{var{startRow:a,endRow:l}=i;return N(a),N(l),t.RangeSet.ofRange(a,l)});return t.RangeSet.ofRanges(r)}static colorForValue(e,t,r,i){return S.isDateType(t)||r==="Date"?(N(e.dateColor),e.dateColor):S.isNumberType(t)?i>0?(N(e.positiveNumberColor),e.positiveNumberColor):i<0?(N(e.negativeNumberColor),e.negativeNumberColor):(N(e.zeroNumberColor),e.zeroNumberColor):e.textColor}static textAlignForValue(e,t){return S.isDateType(e)||t==="Date"?"center":S.isNumberType(e)?"right":"left"}}const Q=ae;function gn(n,e,t){return e=Ih(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ih(n){var e=Rh(n,"string");return typeof e=="symbol"?e:String(e)}function Rh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Lh extends Error{constructor(e,t){super("".concat(t," can't be empty (on pending row ").concat(e+1,")")),gn(this,"isMissingKey",!0),gn(this,"rowIndex",void 0),gn(this,"columnName",void 0),this.rowIndex=e,this.columnName=t}}const Ah=Lh;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 Or(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){X(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 ta(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function pt(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){ta(a,r,i,l,s,"next",o)}function s(o){ta(a,r,i,l,s,"throw",o)}l(void 0)})}}function X(n,e,t){return e=kh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function kh(n){var e=xh(n,"string");return typeof e=="symbol"?e:String(e)}function xh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ue=J.module("IrisGridTableModelTemplate"),_h=150,jh=0;function Mt(n){return n.table!==void 0}class fr extends W{seekRow(e,t,r,i,a,l,s){throw new Error("Method not implemented.")}export(){throw new Error("Method not implemented.")}columnStatistics(e){throw new Error("Method not implemented.")}get customColumns(){return[]}set customColumns(e){throw new Error("Method not implemented.")}get formatColumns(){return[]}set formatColumns(e){throw new Error("Method not implemented.")}updateFrozenColumns(e){throw new Error("Method not implemented.")}get rollupConfig(){throw new Error("Method not implemented.")}set rollupConfig(e){throw new Error("Method not implemented.")}get selectDistinctColumns(){throw new Error("Method not implemented.")}set selectDistinctColumns(e){throw new Error("Method not implemented.")}get columns(){return this.table.columns}constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new We(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e),X(this,"dh",void 0),X(this,"irisGridUtils",void 0),X(this,"tableUtils",void 0),X(this,"irisFormatter",void 0),X(this,"inputTable",void 0),X(this,"subscription",void 0),X(this,"table",void 0),X(this,"viewport",void 0),X(this,"viewportData",void 0),X(this,"formattedStringData",void 0),X(this,"pendingStringData",void 0),X(this,"isSaveInProgress",void 0),X(this,"totalsTable",void 0),X(this,"totalsTablePromise",void 0),X(this,"totals",void 0),X(this,"totalsDataMap",void 0),X(this,"pendingNewDataMap",void 0),X(this,"pendingNewRowCount",0),X(this,"_columnHeaderGroupMap",new Map),X(this,"columnHeaderParentMap",new Map),X(this,"_columnHeaderMaxDepth",null),X(this,"_columnHeaderGroups",[]),X(this,"_isColumnHeaderGroupsInitialized",!1),X(this,"_movedColumns",null),X(this,"getMemoizedInitialMovedColumns",U(a=>{var l,s,o,u;if(!a)return[];var d=[],{groupMap:h}=Q.parseColumnHeaderGroups(this,(l=a==null?void 0:a.columnGroups)!==null&&l!==void 0?l:[]),c=(P,I)=>{var F=this.getColumnIndexByName(P);if(F==null)throw new Error("Unknown layout hint column: ".concat(P));var D=H.getVisibleIndex(F,d);d=H.moveItem(D,I,d)},v=(P,I)=>{var F=h.get(P);if(F==null)throw new Error("Unknown layout hint group: ".concat(P));var D=F.getVisibleRange(d);d=H.moveRange(D,I,d)},g=(s=a.frontColumns)!==null&&s!==void 0?s:[],p=(o=a.backColumns)!==null&&o!==void 0?o:[],m=(u=a.frozenColumns)!==null&&u!==void 0?u:[];if(g.length>0||p.length>0||m.length>0){var b=new Set,y=0;m==null||m.forEach(P=>{if(b.has(P))throw new Error("Column specified in multiple layout hints: ".concat(P));c(P,y),y+=1}),g.forEach(P=>{if(b.has(P))throw new Error("Column specified in multiple layout hints: ".concat(P));c(P,y),y+=1});var C=this.columns.length-1;p==null||p.forEach(P=>{if(b.has(P))throw new Error("Column specified in multiple layout hints: ".concat(P));c(P,C),C-=1})}var E=a==null?void 0:a.columnGroups;if(E){var w=[...h.values()];w.sort((P,I)=>P.depth-I.depth),w.forEach(P=>{var I=P.children[0],F=this.getColumnIndexByName(I),D;if(F!=null)D=H.getVisibleIndex(F,d);else{var M=h.get(I);if(!M)throw new Error("Unknown column ".concat(I," in group ").concat(P.name));var R=M.getVisibleRange(d);[,D]=R}for(var _=1;_<P.children.length;_+=1){var V=P.children[_],K=h.get(V),q=this.getColumnIndexByName(V);if(K){var ie=K.getVisibleRange(d)[0]<D,ee=ie?D-K.childIndexes.length+1:D+1;v(V,ee),D=ee+K.childIndexes.length-1}else if(q!=null){var ge=H.getVisibleIndex(q,d)<D,be=ge?D:D+1;c(V,be),D=be}}})}return this._movedColumns=d,d})),X(this,"getMemoizedInitialColumnHeaderGroups",U(a=>{var l;return Q.parseColumnHeaderGroups(this,(l=a==null?void 0:a.columnGroups)!==null&&l!==void 0?l:[]).groups})),X(this,"getColumnIndicesByNameMap",U(a=>{var l=new Map;return a.forEach((s,o)=>{var{name:u}=s;return l.set(u,o)}),l})),X(this,"setViewport",Si((a,l,s)=>{if(l<a){ue.error("Invalid viewport",a,l);return}var{viewport:o}=this;if(o!=null&&o.top===a&&o.bottom===l&&o.columns===s){ue.debug2("Ignoring duplicate viewport",o);return}this.viewport={top:a,bottom:l,columns:s},ue.debug2("setViewport",this.viewport),this.applyViewport()},_h)),X(this,"applyViewport",Si(()=>{if(this.viewport){ue.debug2("applyViewport",this.viewport);var{top:a,bottom:l,columns:s}=this.viewport,[o,u]=this.getCachedViewportRowRange(a,l);this.applyBufferedViewport(o,u,s)}},jh,{leading:!1})),X(this,"getCachedFormattedString",Nn((a,l,s,o,u)=>a.getFormattedString(l,s,o,u),{max:1e4})),X(this,"getCachedCustomColumnFormatFlag",Nn(Tn.isCustomColumnFormatDefined,{max:1e4})),X(this,"getCachedViewportRowRange",U((a,l)=>{var s=l-a,o=Math.max(0,a-s*fr.ROW_BUFFER_PAGES),u=l+s*fr.ROW_BUFFER_PAGES;return[o,u]})),X(this,"getCachedPendingErrors",U((a,l,s)=>{var o=new Map;return a.forEach((u,d)=>{for(var{data:h}=u,c=0;c<s;c+=1)if(!h.has(c)){var v;o.has(d)||o.set(d,[]),(v=o.get(d))===null||v===void 0||v.push(new Ah(d,l[c].name))}}),o})),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.irisGridUtils=new Q(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(W.EVENT.DISCONNECT))}handleTableReconnect(){this.dispatchEvent(new le(W.EVENT.RECONNECT))}handleTableUpdate(e){this.copyViewportData(e.detail),this.dispatchEvent(new le(W.EVENT.UPDATED))}handleTotalsUpdate(e){this.copyTotalsData(e.detail),this.dispatchEvent(new le(W.EVENT.UPDATED))}handleRequestFailed(e){this.dispatchEvent(new le(W.EVENT.REQUEST_FAILED,e))}handleCustomColumnsChanged(){this.dispatchEvent(new le(W.EVENT.COLUMNS_CHANGED,{detail:this.columns}))}get rowCount(){var e,t,r;return Math.max(this.table.size,0)+this.pendingNewRowCount+((e=(t=this.totals)===null||t===void 0||(r=t.operationOrder)===null||r===void 0?void 0:r.length)!==null&&e!==void 0?e:0)}get pendingDataErrors(){var e,t;return this.getCachedPendingErrors(this.pendingNewDataMap,this.columns,(e=(t=this.inputTable)===null||t===void 0?void 0:t.keyColumns.length)!==null&&e!==void 0?e:0)}get pendingDataMap(){return this.pendingNewDataMap}set pendingDataMap(e){e!==this.pendingNewDataMap&&(e.forEach((t,r)=>{if(!Q.isValidIndex(r))throw new Error("Invalid rowIndex ".concat(r));var{data:i}=t;i.forEach((a,l)=>{if(!Q.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(W.EVENT.PENDING_DATA_UPDATED)))}get pendingRowCount(){return this.pendingNewRowCount}set pendingRowCount(e){e!==this.pendingNewRowCount&&(this.pendingNewRowCount=Math.max(0,e,this.maxPendingDataRow),this.dispatchEvent(new le(W.EVENT.UPDATED)))}get maxPendingDataRow(){return this.pendingNewDataMap.size>0?Math.max(...this.pendingNewDataMap.keys())+1:0}get columnCount(){return this.columns.length}get floatingBottomRowCount(){var e,t,r;return this.totals!=null&&this.totals.showOnTop?0:(e=(t=this.totals)===null||t===void 0||(r=t.operationOrder)===null||r===void 0?void 0:r.length)!==null&&e!==void 0?e:0}get floatingTopRowCount(){var e,t,r;return this.totals!=null&&this.totals.showOnTop&&(e=(t=this.totals)===null||t===void 0||(r=t.operationOrder)===null||r===void 0?void 0:r.length)!==null&&e!==void 0?e:0}get isValuesTableAvailable(){return this.table.selectDistinct!=null&&this.table.copy!=null}get isChartBuilderAvailable(){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 N(r.nullStringColor),r.nullStringColor;if((a==null?void 0:a.color)!=null&&a.color!=="")return a.color;if(this.isPendingRow(t))return N(r.pendingTextColor),r.pendingTextColor;if(l!=null){var s=this.sourceColumn(e,t);return Q.colorForValue(r,s.type,s.name,l)}}else if(this.isPendingRow(t)&&this.isKeyColumn(e))return N(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);return Q.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 mn(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(mn(r)){var i;return(i=r.color)!==null&&i!==void 0?i:null}return null}getColumnHeaderGroup(e,t){var r=this.columnAtDepth(e,t);if(mn(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}=Q.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=Q.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,h,c=(t=(r=this.totals)===null||r===void 0||(i=r.operationOrder)===null||i===void 0?void 0:i.length)!==null&&t!==void 0?t:0,v=(a=(l=this.totals)===null||l===void 0?void 0:l.showOnTop)!==null&&a!==void 0?a:!1,g=this.totalsRow(e);if(g!=null){var p,m,b,y=(p=this.totals)===null||p===void 0?void 0:p.operationOrder[g];return N(y),(m=(b=this.totalsDataMap)===null||b===void 0?void 0:b.get(y))!==null&&m!==void 0?m:null}var C=this.pendingRow(e);if(C!=null){var E;return(E=this.pendingNewDataMap.get(C))!==null&&E!==void 0?E:null}var w=(s=(o=this.viewportData)===null||o===void 0?void 0:o.offset)!==null&&s!==void 0?s:0,P=(v?e-c:e)-w;return(u=(d=this.viewportData)===null||d===void 0||(h=d.rows)===null||h===void 0?void 0:h[P])!==null&&u!==void 0?u: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,g;return c.name==="".concat(d.name,"__").concat(o)||(o===u||((v=this.totals)===null||v===void 0||(g=v.operationMap[c.name])===null||g===void 0?void 0:g.length)===1)&&c.name===d.name});if(h!=null)return h}return this.columns[e]}totalsRow(e){var t,r,i,a,l,s=(t=(r=this.totals)===null||r===void 0||(i=r.operationOrder)===null||i===void 0?void 0:i.length)!==null&&t!==void 0?t:0,o=(a=(l=this.totals)===null||l===void 0?void 0:l.showOnTop)!==null&&a!==void 0?a:!1,u=o?e:e-this.table.size;return u>=0&&u<s?u: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 p,m,b=l[v],[y,C=(p=h==null||(m=h[y])===null||m===void 0?void 0:m[0])!==null&&p!==void 0?p:d]=b.name.split("__");o.has(C)||o.set(C,{data:new Map});var{data:E}=o.get(C),w=a.columns.findIndex(P=>P.name===y);E.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(W.EVENT.FORMATTER_UPDATED))}displayString(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"",i=arguments.length>3?arguments[3]:void 0;return this.getCachedFormattedString(this.formatter,e,t,r,i)}get sort(){return this.table.sort}set sort(e){this.closeSubscription(),this.table.applySort(e),this.applyViewport()}set totalsConfig(e){if(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(W.EVENT.UPDATED));return}this.totalsTablePromise=Ae.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{Ae.isCanceled(t)||(ue.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new le(W.EVENT.REQUEST_FAILED,{detail:t})))})}}setTotalsTable(e){ue.debug("setTotalsTable",e),this.totalsTable!==null&&(this.listenerCount>0&&this.removeTotalsListeners(this.totalsTable),this.totalsTable.close()),this.totalsTable=e,this.totalsDataMap=null,this.listenerCount>0&&this.totalsTable!=null&&this.addTotalsListeners(this.totalsTable)}applyBufferedViewport(e,t,r){if(this.dispatchEvent(new le(W.EVENT.VIEWPORT_UPDATED)),ue.debug2("applyBufferedViewport",e,t,r),this.subscription==null){var i;ue.debug2("applyBufferedViewport creating new subscription"),this.subscription=(i=this.table.setViewport(e,t,r))!==null&&i!==void 0?i:null}else ue.debug2("applyBufferedViewport using existing subscription"),this.subscription.setViewport(e,t,r)}snapshot(e){var t=arguments,r=this;return pt(function*(){var i=t.length>1&&t[1]!==void 0?t[1]:!1,a=t.length>2&&t[2]!==void 0?t[2]:D=>D,l=t.length>3&&t[3]!==void 0?t[3]:!0;if(r.subscription==null)throw new Error("No subscription available");var s=l?k.consolidate(e):e;if(!Q.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];N(c.endRow),N(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 k(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 p=Q.columnsFromRanges(s,r.columns),m=[];i&&m.push(p.map(D=>D.name));for(var b=[...o].sort(),y=function*(){var M=b[C],R=p.map(_=>{var V=r.getColumnIndexByName(_.name);return N(V),a(r.valueForCell(V,M),_)});i&&R.push(r.textForRowFooter(M)),m.push(R)},C=0;C<b.length;C+=1)yield*y();if(u.length>0){var E=r.irisGridUtils.rangeSetFromRanges(u),w=yield r.subscription.snapshot(E,p);m.push(...w.rows.map(D=>p.map(M=>a(D.get(M),M))))}for(var P=[...d].sort(),I=function*(){var M=P[F],R=p.map(_=>{var V=r.getColumnIndexByName(_.name);return N(V),a(r.valueForCell(V,M),_)});i&&R.push(r.textForRowFooter(M)),m.push(R)},F=0;F<P.length;F+=1)yield*I();return m})()}textSnapshot(e){var t=arguments,r=this;return pt(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(`
6
- `)})()}valuesTable(e){var t=this;return pt(function*(){var r=null;try{return r=yield t.table.copy(),r.applyFilter([]),r.applySort([]),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)}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;N(e.startColumn);for(var a=(t=e.endColumn)!==null&&t!==void 0?t:this.table.size,l=e.startColumn;l<=a;l+=1)if(this.isKeyColumn(l)){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 k(null,this.floatingTopRowCount,null,this.floatingTopRowCount+this.table.size-1)}getPendingAreaRange(){return new k(null,this.floatingTopRowCount+this.table.size,null,this.floatingTopRowCount+this.table.size+this.pendingNewRowCount-1)}setValueForCell(e,t,r){var i=this;return pt(function*(){return i.setValueForRanges([new k(e,t,e,t)],r)})()}setValueForRanges(e,t){var r=this;return pt(function*(){if(!r.isEditableRanges(e))throw new Error("Uneditable ranges ".concat(e));try{var i=new Set,a=[];k.forEachCell(e,(p,m)=>{var b=r.columns[p];if(i.add(b),a[p]===void 0){var y=r.tableUtils.makeValue(b.type,t,r.formatter.timeZone);a[p]=y!=null?r.displayString(y,b.type,b.name):null}r.cachePendingValue(p,m,a[p])});var l=r.getPendingAreaRange(),s=e.map(p=>k.intersection(l,p)).filter(p=>p!=null).map(p=>(N(p),k.offset(p,0,-(r.floatingTopRowCount+r.table.size))));if(s.length>0){var o=new Map(r.pendingNewDataMap);k.forEachCell(s,(p,m)=>{o.has(m)||o.set(m,{data:new Map});var b=r.columns[p],y=o.get(m);N(y);var{data:C}=y,E=new Map(C),w=r.tableUtils.makeValue(b.type,t,r.formatter.timeZone);w!=null?E.set(p,{value:w}):E.delete(p),E.size>0?o.set(m,Or(Or({},y),{},{data:E})):o.delete(m)}),r.pendingDataMap=o}r.dispatchEvent(new le(W.EVENT.UPDATED));var u=r.getTableAreaRange(),d=e.map(p=>k.intersection(u,p)).filter(p=>p!=null);if(d.length>0){var h,c=yield r.snapshot(d.map(p=>{var m,b;return new k(null,(m=p==null?void 0:p.startRow)!==null&&m!==void 0?m:null,null,(b=p==null?void 0:p.endRow)!==null&&b!==void 0?b:null)})),v=c.map(p=>{for(var m={},b=0;b<r.columns.length;b+=1)m[r.columns[b].name]=p[b];return i.forEach(y=>{m[y.name]=r.tableUtils.makeValue(y.type,t,r.formatter.timeZone)}),m}),g=yield(h=r.inputTable)===null||h===void 0?void 0:h.addRows(v);ue.debug("setValueForRanges(",e,",",t,") set tableRanges",d,"result",g)}k.forEachCell(e,(p,m)=>{var b=a[p];N(b),r.cacheFormattedValue(p,m,b)})}catch(p){ue.error("Unable to set ranges",e,t,p)}finally{k.forEachCell(e,(p,m)=>{r.clearPendingValue(p,m)})}})()}setValues(){var e=arguments,t=this;return pt(function*(){var r=e.length>0&&e[0]!==void 0?e[0]:[];if(ue.debug("setValues(",r,")"),!r.every(v=>{var g,p;return t.isEditableRange(k.makeCell((g=v.column)!==null&&g!==void 0?g:v.x,(p=v.row)!==null&&p!==void 0?p:v.y))}))throw new Error("Uneditable ranges ".concat(r));try{var i=new Map(t.pendingNewDataMap);r.forEach(v=>{var g,p,{text:m}=v,b=(g=v.column)!==null&&g!==void 0?g:v.x,y=(p=v.row)!==null&&p!==void 0?p:v.y,C=t.columns[b],E=t.tableUtils.makeValue(C.type,m,t.formatter.timeZone),w=E!=null?t.displayString(E,C.type,C.name):null;t.cachePendingValue(b,y,w);var P=t.pendingRow(y);if(P!=null){i.has(P)||i.set(P,{data:new Map});var I=i.get(P);N(I);var{data:F}=I,D=new Map(F);E!=null?D.set(b,{value:E}):D.delete(b),D.size>0?i.set(P,Or(Or({},I),{},{data:D})):i.delete(P)}}),t.pendingDataMap=i,t.dispatchEvent(new le(W.EVENT.UPDATED));var a=r.reduce((v,g)=>{var p,m,b=(p=g.row)!==null&&p!==void 0?p:g.y;return v.has(b)||v.set(b,[]),(m=v.get(b))===null||m===void 0||m.push(g),v},new Map),l=k.consolidate(r.map(v=>{var g,p;return k.makeCell((g=v.column)!==null&&g!==void 0?g:v.x,(p=v.row)!==null&&p!==void 0?p:v.y)})),s=t.getTableAreaRange(),o=l.map(v=>k.intersection(s,v)).filter(v=>v!=null);if(o.length>0){var u,d=yield t.snapshot(o.map(v=>(N(v),new k(null,v.startRow,null,v.endRow)))),h=d.map((v,g)=>{for(var p=null,m=g,b=0;b<o.length;b+=1){var y=o[b];N(y);var C=k.rowCount([y]);if(m<C){N(y.startRow),p=y.startRow+m;break}m-=C}for(var E={},w=0;w<t.columns.length;w+=1)E[t.columns[w].name]=v[w];N(p);var P=a.get(p);return P!=null&&P.forEach(I=>{var F,D=t.columns[(F=I.column)!==null&&F!==void 0?F:I.x];E[D.name]=t.tableUtils.makeValue(D.type,I.text,t.formatter.timeZone)}),E});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,p,{text:m}=v,b=(g=v.column)!==null&&g!==void 0?g:v.x,y=(p=v.row)!==null&&p!==void 0?p:v.y,C=t.columns[b],E=t.tableUtils.makeValue(C.type,m,t.formatter.timeZone),w=E!=null?t.displayString(E,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 pt(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(W.EVENT.PENDING_DATA_UPDATED))}finally{e.isSaveInProgress=!1}})()}editValueForCell(e,t){var r;return(r=this.textValueForCell(e,t))!==null&&r!==void 0?r:""}delete(e){return pt(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}}}X(fr,"ROW_BUFFER_PAGES",1);const Wl=fr;function Vh(n,e,t){return e=$h(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function $h(n){var e=Hh(n,"string");return typeof e=="symbol"?e:String(e)}function Hh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Gh extends Error{constructor(){super(...arguments),Vh(this,"isMissingPartitionError",!0)}}function Uh(n){return(n==null?void 0:n.isMissingPartitionError)===!0}const ra=Gh;function na(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function Dt(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 et(n,e,t){return e=Bh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Bh(n){var e=Wh(n,"string");return typeof e=="symbol"?e:String(e)}function Wh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var at=J.module("IrisGridTableModel");class zh extends Wl{constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new We(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e,t,r,i),et(this,"userFrozenColumns",void 0),et(this,"customColumnList",void 0),et(this,"formatColumnList",void 0),et(this,"initialFilters",[]),et(this,"getMemoizedKeyColumnSet",U(a=>new Set(a??re))),et(this,"getMemoizedFrontColumns",U(a=>a??re)),et(this,"getMemoizedBackColumns",U(a=>a??re)),et(this,"getMemoizedFrozenColumns",U((a,l)=>{var s;return(s=l??a)!==null&&s!==void 0?s:re})),et(this,"getCachedFilterableColumnSet",U(a=>new Set(a.map((l,s)=>s)))),et(this,"getCachedPartitionColumns",U(a=>a.filter(l=>l.isPartitionColumn))),this.customColumnList=[],this.formatColumnList=[],this.initialFilters=t.filter}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 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(at.debug2("set customColumns",e,this.customColumnList,e===this.customColumnList),this.customColumnList.length===0&&e.length===0){at.debug("Ignore empty initial customColumns"),this.customColumnList=e;return}if(this.customColumnList===e){at.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(at.debug2("set formatColumns",e,this.formatColumnList,e===this.formatColumnList),this.formatColumnList.length===0&&e.length===0){at.debug("Ignore empty initial formatColumns"),this.formatColumnList=e;return}if(this.formatColumnList===e){at.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(W.EVENT.COLUMNS_CHANGED,{detail:this.columns}))}get partitionColumns(){return this.getCachedPartitionColumns(this.columns)}partitionKeysTable(){var e=this;return Dt(function*(){return e.valuesTable(e.partitionColumns)})()}partitionMergedTable(){var e=this;return Dt(function*(){var t=yield e.table.copy();return t.applyFilter([]),t})()}partitionBaseTable(){var e=this;return Dt(function*(){return e.partitionKeysTable()})()}partitionTable(e){var t=this;return Dt(function*(){at.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(at.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(W.EVENT.UPDATED));return}this.totalsTablePromise=Ae.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{Ae.isCanceled(t)||(at.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new le(W.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.isPartitionRequired}isFilterable(e){return this.getCachedFilterableColumnSet(this.columns).has(e)}export(){var e=this;return Dt(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 Dt(function*(){var a;if(!i.isDeletableRanges(e))throw new Error("Undeletable ranges ".concat(e));N(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=>k.intersection(s,C)).filter(C=>C!=null).map(C=>(N(C),k.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];N(h.startRow),N(h.endRow);for(var c=h.startRow;c<=h.endRow;c+=1)u.delete(c)}r(u),i.formattedStringData=[],i.dispatchEvent(new le(W.EVENT.PENDING_DATA_UPDATED)),i.dispatchEvent(new le(W.EVENT.UPDATED))}var v=i.getTableAreaRange(),g=e.map(C=>k.intersection(v,C)).filter(C=>C!=null);if(!(g.length<=0)){var[p,m]=yield Promise.all([i.snapshot(g.map(C=>(N(C),l.map(E=>{var w=i.getColumnIndexByName(E.name);if(w==null)throw new Error("Key column ".concat(E.name," not found"));return new k(w,C.startRow,w,C.endRow)}))).flat()),i.table.copy()]),b=p.map(C=>{for(var E=[],w=0;w<l.length;w+=1){var P=l[w],I=C[w],F=i.tableUtils.makeNullableEqFilter(P,I);E.push(F)}return E.reduce((D,M)=>{var R;return(R=D==null?void 0:D.and(M))!==null&&R!==void 0?R:M})}),y=b.reduce((C,E)=>{var w;return(w=C==null?void 0:C.or(E))!==null&&w!==void 0?w:E});m.applyFilter([y]),yield(a=i.inputTable)===null||a===void 0?void 0:a.deleteTable(m),m.close()}})()}seekRow(e,t,r,i,a,l,s){var o=this;return Dt(function*(){return o.table.seekRow(e,t,r,i,a,l,s)})()}get isSeekRowAvailable(){return this.table.seekRow!=null}}const qh=zh;function Kh(n,e,t){return e=Xh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Xh(n){var e=Yh(n,"string");return typeof e=="symbol"?e:String(e)}function Yh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Zh extends W{constructor(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:new We(e);super(e),Kh(this,"modelFormatter",void 0),this.modelFormatter=t}get rowCount(){return 0}get columnCount(){return 0}textForCell(e,t){return""}textForColumnHeader(e,t){}get columns(){return re}getColumnIndexByName(e){}get initialMovedColumns(){return re}get initialMovedRows(){return re}get initialColumnHeaderGroups(){return re}get groupedColumns(){return re}formatForCell(e,t){}valueForCell(e,t){}get filter(){return re}set filter(e){}get partition(){return re}set partition(e){}get partitionColumns(){return re}get formatter(){return this.modelFormatter}set formatter(e){this.modelFormatter=e}displayString(e,t,r){return""}get sort(){return re}set sort(e){}get customColumns(){return re}set customColumns(e){}get formatColumns(){return re}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 re}set selectDistinctColumns(e){}get pendingDataMap(){return jt}set pendingDataMap(e){}get pendingRowCount(){return 0}set pendingRowCount(e){}get pendingDataErrors(){return jt}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 re}set columnHeaderGroups(e){}get columnHeaderGroupMap(){return jt}getColumnHeaderParentGroup(e,t){}}const Qh=Zh;function ia(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function Dr(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 Jh(n,e,t){return e=ec(e),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:String(e)}function tc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class rc extends Qh{constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new We(e);super(e,r),Jh(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 Dr(function*(){return e.partitionedTable.getKeyTable()})()}partitionBaseTable(){var e=this;return Dr(function*(){return e.partitionedTable.getBaseTable()})()}partitionMergedTable(){var e=this;return Dr(function*(){return e.partitionedTable.getMergedTable()})()}partitionTable(e){var t=this;return Dr(function*(){try{var r=yield t.partitionedTable.getTable(e);if(r==null)throw new ra("Partition not found");return r}catch(i){throw Uh(i)?i:new ra("Unable to retrieve partition")}})()}}const nc=rc;function aa(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function ic(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 la(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 sa(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?la(Object(t),!0).forEach(function(r){_t(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):la(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function _t(n,e,t){return e=ac(e),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:String(e)}function lc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var sc=J.module("IrisGridTreeTableModel");function oa(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 oc(n){return n.layoutHints!==void 0}class uc extends Wl{constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new We(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e,t,r,i),_t(this,"virtualColumns",void 0),_t(this,"getCachedColumns",U((a,l)=>[...a,...l])),_t(this,"getCachedGroupColumns",U((a,l)=>[...a,...l])),_t(this,"getCachedFilterableColumnSet",U((a,l,s,o,u)=>l?new Set(a.filter(d=>!u.includes(d)&&!s.includes(d)).map(d=>a.findIndex(h=>d.name===h.name))):new Set(((o==null?void 0:o.length)>0?o:a).filter(d=>!u.includes(d)).map(d=>a.findIndex(h=>d.name===h.name))))),_t(this,"getCachedGroupedColumnSet",U(a=>new Set(a.map(l=>this.columns.findIndex(s=>l.name===s.name))))),this.virtualColumns=t.groupedColumns.length>1?[{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")}}]:[]}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 N(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);N(o);var u=s.type;return oa(o)&&o.hasChildren===!1&&s.constituentType!=null&&(u=s.constituentType),Q.colorForValue(r,u,s.name,l)}}return r.textColor}textAlignForCell(e,t){var r=this.sourceColumn(e,t),i=this.row(t);N(i);var a=r.type;return oa(i)&&i.hasChildren===!1&&r.constituentType!=null&&(a=r.constituentType),Q.textAlignForValue(a,r.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?sc.warn("Missing key data for virtual column",o,a,u,e):s.set(o,d)}return sa(sa({},l),{},{data:s,isExpanded:r,hasChildren:i,depth:a})}snapshot(e,t){var r=arguments,i=this;return ic(function*(){var a,l,s=r.length>2&&r[2]!==void 0?r[2]:y=>y;N(i.viewport),N(i.viewportData);var o=(a=i.viewport.columns)!==null&&a!==void 0?a:i.columns,u=[];t!=null&&t&&u.push(o.map(y=>y.name));for(var d=new k(0,(l=i.viewportData)===null||l===void 0?void 0:l.offset,o.length,i.viewportData.offset+i.viewportData.rows.length),h=0;h<e.length;h+=1){var c=k.intersection(d,e[h]);N(c),N(c.startRow),N(c.endRow);for(var v=c.startRow;v<=c.endRow;v+=1){var g=[],p=i.viewportData.rows[v-i.viewportData.offset];N(c.startColumn),N(c.endColumn);for(var m=c.startColumn;m<=c.endColumn;m+=1){var b;g.push(s((b=p.data.get(m))===null||b===void 0?void 0:b.value,i.columns[m]))}u.push(g)}}return u})()}get columns(){return this.getCachedColumns(this.virtualColumns,super.columns)}get aggregatedColumns(){return this.isAggregatedColumnsAvailable?this.table.aggregatedColumns:re}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(oc(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 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")}}const dc=uc;function lt(n,e,t){return e=hc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function hc(n){var e=cc(n,"string");return typeof e=="symbol"?e:String(e)}function cc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var st=J.module("IrisGridProxyModel");function xt(n,e,t,r){return S.isTreeTable(e)?new dc(n,e,t):S.isPartitionedTable(e)?new nc(n,e,t):new qh(n,e,t,r)}class vc extends W{constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new We(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e),lt(this,"model",void 0),lt(this,"dh",void 0),lt(this,"originalModel",void 0),lt(this,"modelPromise",void 0),lt(this,"rollup",void 0),lt(this,"partition",void 0),lt(this,"selectDistinct",void 0),lt(this,"currentViewport",void 0),lt(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=xt(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){st.debug2("handleModelEvent",e);var{detail:t,type:r}=e;this.dispatchEvent(new le(r,{detail:t}))}setModel(e){st.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(W.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)}Mt(e)&&this.dispatchEvent(new le(W.EVENT.TABLE_CHANGED,{detail:e.table}))}setNextModel(e){st.debug2("setNextModel"),this.modelPromise&&this.modelPromise.cancel(),this.listenerCount>0&&this.removeListeners(this.model),this.modelPromise=Ae.makeCancelable(e,t=>t.close()),this.modelPromise.then(t=>{this.modelPromise=null,this.setModel(t)}).catch(t=>{if(Ae.isCanceled(t)){st.debug2("setNextModel cancelled");return}st.error("Unable to set next model",t),this.modelPromise=null,this.dispatchEvent(new le(W.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(W.EVENT),r=0;r<t.length;r+=1)e.addEventListener(t[r],this.handleModelEvent)}removeListeners(e){for(var t=Object.keys(W.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 rt(this.originalModel)?this.originalModel.partitionColumns:[]}get partitionConfig(){return!rt(this.originalModel)||!this.originalModel.isPartitionRequired?null:this.partition}set partitionConfig(e){if(!this.isPartitionRequired)throw new Error("Partitions are not available");st.debug("set partitionConfig",e),this.partition=e;var t=Promise.resolve(this.originalModel);e!=null&&rt(this.originalModel)&&(e.mode==="keys"?t=this.originalModel.partitionBaseTable().then(r=>xt(this.dh,r,this.formatter)):e.mode==="merged"?t=this.originalModel.partitionMergedTable().then(r=>xt(this.dh,r,this.formatter)):t=this.originalModel.partitionTable(e.partitions).then(r=>xt(this.dh,r,this.formatter))),this.setNextModel(t)}partitionKeysTable(){if(!rt(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionKeysTable()}partitionMergedTable(){if(!rt(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionMergedTable()}partitionTable(e){if(!rt(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionTable(e)}get rollupConfig(){return this.rollup}set rollupConfig(e){if(st.debug("set rollupConfig",e),!this.isRollupAvailable)throw new Error("Rollup Rows are not available");if(!jr(e,this.rollup)){this.rollup=e;var t=Promise.resolve(this.originalModel);Mt(this.originalModel)&&e!=null&&(t=this.originalModel.table.rollup(e).then(r=>xt(this.dh,r,this.formatter))),this.setNextModel(t)}}get selectDistinctColumns(){return this.selectDistinct}set selectDistinctColumns(e){if(st.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){st.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);Mt(this.originalModel)&&t.length>0&&(r=this.originalModel.table.selectDistinct(t).then(i=>xt(this.dh,i,this.formatter))),this.setNextModel(r)}get isFilterRequired(){return this.originalModel.isFilterRequired}get isPartitionRequired(){return rt(this.originalModel)?this.originalModel.isPartitionRequired:!1}get formatter(){return this.originalModel.formatter}set formatter(e){this.originalModel.formatter=e}}const fc=vc;function ua(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function pc(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)})}}class mc{static makeModel(e,t){var r=arguments;return pc(function*(){var i=r.length>2&&r[2]!==void 0?r[2]:new We(e),a=null;return!S.isTreeTable(t)&&!S.isPartitionedTable(t)&&t.hasInputTable&&(a=yield t.inputTable()),new fc(e,t,i,a)})()}}const zl=mc;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 ha(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){gc(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 gc(n,e,t){return e=bc(e),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:String(e)}function Cc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function ql(n,e){var t=["isStuckToBottom","isStuckToRight","movedColumns","movedRows"];return n===e||t.every(r=>n[r]===e[r])}function Kl(n,e){var t=["advancedFilters","aggregationSettings","customColumnFormatMap","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.metrics.userColumnWidths===e.metrics.userColumnWidths&&n.metrics.userRowHeights===e.metrics.userRowHeights&&t.every(r=>n[r]===e[r])}function Sc(){return U((n,e)=>Q.dehydrateGridState(n,e),(n,e)=>{var[t,r]=n,[i,a]=e;return t===i&&ql(r,a)})}function yc(){return U((n,e)=>{var t=new Q(n.dh);return t.dehydrateIrisGridState(n,e)},(n,e)=>{var[t,r]=n,[i,a]=e;return t===i&&Kl(r,a)})}function Ec(){return U((n,e,t)=>{var r=new Q(n.dh);return ha(ha({},r.dehydrateIrisGridState(n,e)),Q.dehydrateGridState(n,t))},(n,e)=>{var[t,r,i]=n,[a,l,s]=e;return t===a&&Kl(r,l)&&ql(i,s)})}var Rn={makeMemoizedGridStateDehydrator:Sc,makeMemoizedIrisGridStateDehydrator:yc,makeMemoizedCombinedGridStateDehydrator:Ec};function Xn(n,e,t){return e=wc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function wc(n){var e=Tc(n,"string");return typeof e=="symbol"?e:String(e)}function Tc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Qr{}Xn(Qr,"OPEN","ChartEvent.OPEN");Xn(Qr,"CLOSE","ChartEvent.CLOSE");Xn(Qr,"COLUMN_SELECTED","ChartEvent.COLUMN_SELECTED");const Ln=Qr;function Zt(n,e,t){return e=Pc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Pc(n){var e=Oc(n,"string");return typeof e=="symbol"?e:String(e)}function Oc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Lt{}Zt(Lt,"OPEN_GRID","IrisGridEvent.OPEN_GRID");Zt(Lt,"CLOSE_GRID","IrisGridEvent.CLOSE_GRID");Zt(Lt,"DATA_SELECTED","IrisGridEvent.DATA_SELECTED");Zt(Lt,"COLUMN_SELECTED","IrisGridEvent.COLUMN_SELECTED");Zt(Lt,"STATE_CHANGED","IrisGridEvent.STATE_CHANGED");Zt(Lt,"CREATE_CHART","IrisGridevent.CREATE_CHART");const nt=Lt,Xl=Object.freeze({OPEN:"MarkdownEvent.OPEN"});function Yl(n,e,t){return e=Dc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Dc(n){var e=Fc(n,"string");return typeof e=="symbol"?e:String(e)}function Fc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Yn{}Yl(Yn,"OPEN","PandasEvent.OPEN");Yl(Yn,"CLOSE","PandasEvent.CLOSE");const Nc=Yn;function Cr(n){var{widgetType:e,widgetName:t,glContainer:r,description:i,children:a}=n,l=$.getTitleFromContainer(r);return f.jsxs("div",{className:"tab-tooltip-grid-container",children:[f.jsxs("span",{className:"tab-tooltip-title",children:[e," Name"]}),f.jsxs("div",{className:"tab-tooltip-name-wrapper",children:[f.jsx("span",{className:"tab-tooltip-name",children:t}),f.jsx(fu,{className:"tab-tooltip-copy",tooltip:"Copy name",copy:t})]}),t!==l&&f.jsxs(f.Fragment,{children:[f.jsx("span",{className:"tab-tooltip-title",children:"Display Name"}),f.jsx("span",{className:"tab-tooltip-name",children:l})]}),i&&f.jsx("div",{className:"tab-tooltip-description",children:i}),a]})}Cr.propTypes={glContainer:ul.Container.isRequired,widgetType:B.string,widgetName:B.string,description:B.string,children:B.node};Cr.defaultProps={widgetType:"",widgetName:"",description:null,children:null};function Zl(n,e,t){return e=Mc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Mc(n){var e=Ic(n,"string");return typeof e=="symbol"?e:String(e)}function Ic(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Ql extends T.PureComponent{constructor(e){super(e),Zl(this,"getCachedRenderTabTooltip",U((t,r,i,a,l)=>t?()=>f.jsx(Cr,{glContainer:r,widgetType:i,widgetName:a,description:l}):null)),this.handleSessionClosed=this.handleSessionClosed.bind(this),this.handleSessionOpened=this.handleSessionOpened.bind(this),this.handleCopyName=this.handleCopyName.bind(this),this.state={isClientDisconnected:!1,isPanelDisconnected:!1,isWidgetDisconnected:!1,isWaitingForReconnect:!1,isPanelInactive:!1}}handleCopyName(){var{widgetName:e}=this.props;ol(e)}getErrorMessage(){var{errorMessage:e}=this.props,{isClientDisconnected:t,isPanelDisconnected:r,isWidgetDisconnected:i,isWaitingForReconnect:a}=this.state;if(e)return"".concat(e);if(t&&r&&a)return`Disconnected from server.
4
+ `)}}const Pn=zd;function ar(n,e,t){return e=qd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function qd(n){var e=Kd(n,"string");return typeof e=="symbol"?e:String(e)}function Kd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var xe=J.module("ScriptEditor");class jl extends T.Component{constructor(e){super(e),ar(this,"contextActionCleanups",void 0),ar(this,"completionCleanup",void 0),ar(this,"editor",void 0),ar(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=Pe.createRef(),this.state={model:null}}componentDidMount(){Ei.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(){Ei.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();F(r);var i=(t=this.editor)===null||t===void 0?void 0:t.getModel();F(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 Pn.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()}),Nt.setEOL(e),Nt.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:[Nt.getMonacoKeyCodeFromShortcut(ot.NOTEBOOK.RUN)],contextMenuGroupId:"navigation",contextMenuOrder:1.5,run:()=>{this.handleRun()}})),e.push(this.editor.addAction({id:"run-selected-code",label:"Run Selected",keybindings:[Nt.getMonacoKeyCodeFromShortcut(ot.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=Nt.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&&Nt.closeDocument(this.editor,e))}append(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;F(this.editor);var r=this.editor.getModel();F(r);var i=r.getValue();i?r.setValue("".concat(i,`
5
+ `).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 f.jsxs(f.Fragment,{children:[(t||i)&&f.jsx("div",{className:"h-100 w-100 position-relative",children:f.jsx(ct,{errorMessage:u,isLoading:i,isLoaded:r})}),r&&f.jsx("div",{className:"h-100 w-100 script-editor",children:s&&f.jsxs(f.Fragment,{children:[f.jsx(Bd,{ref:this.editorComponent,settings:s,onEditorInitialized:this.handleEditorInitialized,onEditorWillDestroy:this.handleEditorWillDestroy}),h!=null&&h&&f.jsx(Co,{model:o,language:d,session:a})]})})]})}}ar(jl,"defaultProps",{error:null,isLoading:!1,isLoaded:!1,focusOnMount:!0,onChange:()=>{},onEditorInitialized:()=>{},onEditorWillDestroy:()=>{},session:null});const Xd=jl;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.");Pe.useEffect(()=>{var l=n(a,e,t,r);return()=>{l()}},[e,r,t,a,n])}function qn(){var n=T.useContext(So);if(n==null)throw new Error("LayoutManager not available, did you add a LayoutManagerContext.Provider to the tree?");return n}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 Yd(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){Zd(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 Zd(n,e,t){return e=Qd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Qd(n){var e=Jd(n,"string");return typeof e=="symbol"?e:String(e)}function Jd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var eh=T.lazy(()=>zr(()=>import("./IrisGrid-3d21ad1b.js"),["./IrisGrid-3d21ad1b.js","./vendor-9e6eb436.js","./helpers-de833af9.js","./vendor-6cb4b08b.css","./index-1e555ef0.js","./index-11271fba.css","./LogPanel-5b98b8a3.js","./LogPanel-8a0231fc.css","./IrisGridThemeProvider-173abd35.js","./useMergeRef-04ff7062.js","./IrisGridThemeProvider-7173ead5.css","./IrisGrid-5c3a4e4a.css"],import.meta.url)),Vl=T.forwardRef((n,e)=>f.jsx(T.Suspense,{fallback:f.jsx(ct,{}),children:f.jsx(eh,Yd({ref:e},n))}));Vl.displayName="LazyIrisGrid";const Kn=Vl;var On;(function(n){n.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS="filter-control-change-clears-all-filters",n.LINK_CHANGE_CLEARS_ALL_FILTERS="link-change-clears-all-filters"})(On||(On={}));const zi=On;var th=Object.freeze([[zi.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS,!1],[zi.LINK_CHANGE_CLEARS_ALL_FILTERS,!1]]);const $l={DEFAULTS:th};var Dn;(function(n){n.COUNT="Count",n.MIN="Min",n.MAX="Max",n.SUM="Sum",n.ABS_SUM="AbsSum",n.VAR="Var",n.AVG="Avg",n.MEDIAN="Median",n.STD="Std",n.FIRST="First",n.LAST="Last",n.SKIP="Skip",n.COUNT_DISTINCT="CountDistinct",n.DISTINCT="Distinct",n.UNIQUE="Unique"})(Dn||(Dn={}));const Y=Dn;var Up=[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],rh=n=>{switch(n){default:return!1}},nh=n=>{switch(n){case Y.MEDIAN:return!0;default:return!1}},Hl=(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 y.isNumberType(e)||y.isDateType(e)||y.isTextType(e);case Y.SUM:case Y.ABS_SUM:case Y.VAR:case Y.AVG:case Y.STD:return y.isNumberType(e);case Y.SKIP:return!1}},Gl=(n,e)=>n.filter(t=>t.isProxy!==!0&&Hl(e,t.type)),ih=(n,e,t,r)=>Gl(n,e).map(i=>{var{name:a}=i;return a}).filter(i=>t.includes(i)?!r:r);const fn={isValidOperation:Hl,isRollupOperation:rh,isRollupProhibited:nh,filterValidColumns:Gl,getOperationColumnNames:ih};function ah(n){return(n==null?void 0:n.hasExpandableRows)!==void 0}function lr(n,e,t){return e=lh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function lh(n){var e=sh(n,"string");return typeof e=="symbol"?e:String(e)}function sh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Nn;(function(n){n.DOWN="DOWN",n.UP="UP",n.LEFT="LEFT",n.RIGHT="RIGHT"})(Nn||(Nn={}));class k{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 k(...k.normalize(e,t,r,i))}static makeCell(e,t){return new k(e,t,e,t)}static makeColumn(e){return new k(e,null,e,null)}static makeRow(e){return new k(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=k.minOrNull(a.startColumn,s.startColumn),h=k.maxOrNull(a.endColumn,s.endColumn);r=!0,t[i]=new k(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=k.minOrNull(a.startRow,s.startRow),p=k.maxOrNull(a.endRow,s.endRow);r=!0,t[i]=new k(c,g,v,p),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){var r,i,a,l,s,o;if(e.equals(t))return e;var{startColumn:u,startRow:d,endColumn:h,endRow:c}=e;return u=u!=null&&t.startColumn!=null?Math.max(u,t.startColumn):(r=u)!==null&&r!==void 0?r:t.startColumn,h=h!=null&&t.endColumn!=null?Math.min(h,t.endColumn):(i=h)!==null&&i!==void 0?i:t.endColumn,d=d!=null&&t.startRow!=null?Math.max(d,t.startRow):(a=d)!==null&&a!==void 0?a:t.startRow,c=c!=null&&t.endRow!=null?Math.min(c,t.endRow):(l=c)!==null&&l!==void 0?l:t.endRow,u!=null&&u>((s=h)!==null&&s!==void 0?s:-1)||d!=null&&d>((o=c)!==null&&o!==void 0?o:-1)?null:new k(u,d,h,c)}static subtractFromRange(e,t){var r=[],i=k.intersection(e,t);return i==null?[e]:(i.startRow!=null&&(e.startRow==null||e.startRow<i.startRow)&&r.push(new k(e.startColumn,e.startRow,e.endColumn,i.startRow-1)),i.startColumn!=null&&(e.startColumn==null||e.startColumn<i.startColumn)&&r.push(new k(e.startColumn,i.startRow,i.startColumn-1,i.endRow)),i.endColumn!=null&&(e.endColumn==null||e.endColumn>i.endColumn)&&r.push(new k(i.endColumn+1,i.startRow,e.endColumn,i.endRow)),i.endRow!=null&&(e.endRow==null||e.endRow>i.endRow)&&r.push(new k(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(...k.subtractFromRange(e[i],t));return r}static subtractRangesFromRanges(e,t){for(var r=[...e],i=0;i<t.length;i+=1)r=k.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 k.isBounded(e)?e:new k((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=>k.boundedRange(i,t,r))}static offset(e,t,r){return new k(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]:k.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 k.SELECTION_DIRECTION.DOWN:case k.SELECTION_DIRECTION.RIGHT:{var o=a<e.length-1?a+1:0,u=e[o];return u.startCell(i)}case k.SELECTION_DIRECTION.LEFT:case k.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]:k.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 k.isAxisRangeTouching(this.startRow,this.endRow,e.startRow,e.endRow)&&k.isAxisRangeTouching(this.startColumn,this.endColumn,e.startColumn,e.endColumn)}subtract(e){return k.subtractFromRange(this,e)}startCell(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:k.SELECTION_DIRECTION.DOWN;if(!k.isBounded(this))throw new Error("Cannot get the startCell of an unbounded range");switch(e){case k.SELECTION_DIRECTION.DOWN:case k.SELECTION_DIRECTION.RIGHT:return{column:this.startColumn,row:this.startRow};case k.SELECTION_DIRECTION.LEFT:case k.SELECTION_DIRECTION.UP:return{column:this.endColumn,row:this.endRow};default:throw new Error("Invalid direction: ".concat(e))}}nextCell(e,t,r){if(!k.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 k.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 k.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 k.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 k.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]:k.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(k,"SELECTION_DIRECTION",Nn);function oh(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 oh(n)&&n[0]!=null&&n[1]!=null}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 Pr(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){Ul(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 Ul(n,e,t){return e=uh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function uh(n){var e=dh(n,"string");return typeof e=="symbol"?e:String(e)}function dh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Bp(n){return(n==null?void 0:n.href)!==void 0}class H{static getGridPointFromXY(e,t,r){var i=H.getColumnAtX(e,r),a=H.getRowAtY(t,r),l=H.getColumnHeaderDepthAtY(t,r);return{x:e,y:t,row:a,column:i,columnHeaderDepth:l}}static getCellInfoFromXY(e,t,r){var{row:i,column:a}=H.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,p=i!==null?u.get(i):null,m=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:p??null,columnWidth:m??null,rowHeight:b??null}}static getColumnHeaderDepthAtY(e,t){var r=H.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=H.iterateFloatingStart(e,r,i);return a!==void 0?a:H.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=H.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:H.iterateFloating(r,i,t,c=>{if(H.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(H.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 H.getNextShownItem(e,r,i,a)}static getNextShownRow(e,t){var{modelRows:r,visibleRows:i,userRowHeights:a}=t;return H.getNextShownItem(e,r,i,a)}static getColumnSeparatorIndex(e,t,r,i){var{rowHeaderWidth:a,columnHeaderHeight:l,floatingColumns:s,floatingLeftWidth:o,visibleColumns:u,allColumnXs:d,allColumnWidths:h,columnHeaderMaxDepth:c}=r,{allowColumnResize:v,headerSeparatorHandleSize:g}=i;if(c*l<t||!v||g<=0)return null;for(var p=e-a,m=g*.5,b=!1,S=s.length-1;S>=0;S-=1){var C,w,E=s[S],P=(C=d.get(E))!==null&&C!==void 0?C:0,I=(w=h.get(E))!==null&&w!==void 0?w:0,D=I===0;if(!b||!D){var N=P+I;D?N+=m:b&&(N-=m);var M=N-m,R=N+m;if(M<=p&&p<=R)return E;b=D}}b=!1;for(var _=u.length-1;_>=0;_-=1){var V,K,q=u[_],ie=(V=d.get(q))!==null&&V!==void 0?V:0,ee=(K=h.get(q))!==null&&K!==void 0?K:0,ge=ee===0;if(ie<o-ee)return null;if(!b||!ge){var be=ie+ee;ge?be+=m:b&&(be-=m);var $e=be-m,L=be+m;if($e<=p&&p<=L)return q;b=ge}}return null}static isItemHidden(e,t){return t.get(e)===0}static isColumnHidden(e,t){var{allColumnWidths:r}=t;return H.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(!H.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(!H.isItemHidden(s,t))break;i.push(s)}return i}static getHiddenColumns(e,t){var{visibleColumns:r,allColumnWidths:i}=t;return H.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,p=s.length-1;p>=0;p-=1){var m,b,S=s[p],C=(m=o.get(S))!==null&&m!==void 0?m:0,w=(b=u.get(S))!==null&&b!==void 0?b:0,E=w===0;if(!g||!E){var P=C+w;E?P+=v:g&&(P-=v);var I=P-v,D=P+v;if(I<=c&&c<=D)return S;g=E}}return null}static isRowHidden(e,t){var{allRowHeights:r}=t;return H.isItemHidden(e,r)}static getHiddenRows(e,t){var{visibleRows:r,allRowHeights:i}=t;return H.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 H.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)?H.moveRange(e,t,r,i):H.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,p=i?c:d,m=p-v,b=[],S=function(){var E,P,I=(E=a[C][0])!==null&&E!==void 0?E:Number.NEGATIVE_INFINITY,D=(P=a[C][1])!==null&&P!==void 0?P:Number.POSITIVE_INFINITY,N,M=[[I,v-1],[v,g],[g+1,D]].map(R=>{var[_,V]=R;return[Math.max(_,I),Math.min(V,D)]}).filter(R=>{var[_,V]=R;return _<=V}).map(R=>{var[_,V]=R;return v<=_&&g>=V?(N=[_+m,V+m],N):g<_?[_-h,V-h]:R}).map(R=>{var[_,V]=R;return p>_&&p<=V?[[_,p-1],[p+h,V+h]]:R===N?[R]:p<=_?[[_+h,V+h]]:[R]}).flat();b.push(...M)},C=0;C<a.length;C+=1)S();a=b.map(w=>{var[E,P]=w;return[Number.isFinite(E)?E:null,Number.isFinite(P)?P: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=H.applyItemMoves(e.startColumn,e.endColumn,t,i),l=H.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 k(u[0],h[0],u[1],h[1]))}return s}static getModelIndex(e,t){var r=H.applyItemMoves(e,e,t,!0)[0][0];return r}static getModelIndexes(e,t){return e.map(r=>H.getModelIndex(r,t))}static getModelRangeIndexes(e,t,r){return H.applyItemMoves(e,t,r,!0)}static getModelRange(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:re,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:re;return H.translateRange(e,t,r,!0)}static getModelRanges(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:re,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:re,i=[],a=0;a<e.length;a+=1)i.push(...H.getModelRange(e[a],t,r));return i}static getVisibleRangeIndexes(e,t,r){return H.applyItemMoves(e,t,r,!1)}static getVisibleRange(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:re,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:re;return this.translateRange(e,t,r,!1)}static getVisibleRanges(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:re,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:re,i=[],a=0;a<e.length;a+=1)i.push(...H.getVisibleRange(e[a],t,r));return i}static getVisibleIndex(e,t){var r=H.applyItemMoves(e,e,t)[0][0];return r}static getVisibleIndexes(e,t){return e.map(r=>H.getVisibleIndex(r,t))}static isMacPlatform(){var{platform:e}=window.navigator;return e.startsWith("Mac")}static getModifierKey(){return H.isMacPlatform()?"metaKey":"ctrlKey"}static isModifierKeyDown(e){var t=H.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:p,columnCount:m,rowCount:b}=e,S=i,C=a,w=l,E=s;return r!=null&&(r>d&&(S+=c),r<m-h&&(w-=v)),t!=null&&(t>o&&(C+=g),t<b-u&&(E-=p)),{x1:S,y1:C,x2:w,y2:E}}static getScrollDelta(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1024,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:768,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:20,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:20,{deltaX:l,deltaY:s}=e;return!H.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&&(H.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),p=Ge(o+i,o,d-c),m=Ge(o+l,o,d-c);return{x1:v,y1:p,x2:g,y2:m,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:p,treeHorizontalPadding:m}=l,b=At(c,r),S=At(v,t),C=a.textAlignForCell(S,b),w=At(o,t),E=At(d,r),P=At(u,t),I=At(h,r),D=t===s,N=0;ah(a)&&a.hasExpandableRows&&D&&(N=p*(a.depthForRow(r)+1)+m);var M=P-N,R=w+g,_=E+I*.5;return C==="right"?R=w+M-g:C==="center"&&(R=w+M*.5),R+=N,{width:M-g*2,x:R,y:_}}static findTokensWithProtocolInText(e){var t=Js(e);return t.filter(r=>r.type==="url"?/^https?:\/\//.test(r.value):!0)}}Ul(H,"PIXELS_PER_LINE",100/3);const Ki=H;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 Yi(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){hh(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 hh(n,e,t){return e=ch(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ch(n){var e=vh(n,"string");return typeof e=="symbol"?e:String(e)}function vh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var fh=(n,e)=>{var t=!1,r=Ue(n,Yi(Yi({},e),{},{dispose:()=>{t||(t=!0,r.clear(),t=!1)}}));return r};const Fn=fh;function ph(n,e,t){return e=mh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function mh(n){var e=gh(n,"string");return typeof e=="symbol"?e:String(e)}function gh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var pn=5e3;class bh extends eo{constructor(){super(...arguments),ph(this,"getCachedTokensInText",Fn((e,t)=>{if(t>=e.length)return Ki.findTokensWithProtocolInText(e);var r=e.slice(t-1,pn).search(/\s/),i=t+r;r===-1&&(i=Math.min(pn,e.length));var a=e.substring(0,i);return Ki.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]:pn,i=this.textForCell(e,t);return this.getCachedTokensInText(i,r)}renderTypeForCell(e,t){return"text"}}const Ch=bh;function Mn(n,e,t){return e=Sh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Sh(n){var e=yh(n,"string");return typeof e=="symbol"?e:String(e)}function yh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var vt=[],Eh=new Set;class Bl extends Ch{constructor(e){super(),Mn(this,"dh",void 0),Mn(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 vt}get groupedColumns(){return vt}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 vt}get initialMovedRows(){return vt}get initialColumnHeaderGroups(){return vt}get layoutHints(){return null}get frontColumns(){return vt}get backColumns(){return vt}get keyColumnSet(){return Eh}get frozenColumns(){return vt}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 isOrganizeColumnsAvailable(){return!1}get isCustomColumnsAvailable(){return!1}get isFormatColumnsAvailable(){return!1}get isExportAvailable(){return!1}get isValuesTableAvailable(){return!1}get isChartBuilderAvailable(){return!1}get isRollupAvailable(){return!1}get isSelectDistinctAvailable(){return!1}get isTotalsAvailable(){return!1}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.")}}Mn(Bl,"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"}));const W=Bl;function St(n,e,t){return e=wh(e),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:String(e)}function Th(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ph=J.module("ColumnHeaderGroup");function mn(n){return n instanceof br}class br{constructor(e){var{name:t,children:r,color:i,depth:a,childIndexes:l,parent:s}=e;St(this,"name",void 0),St(this,"children",void 0),St(this,"depth",void 0),St(this,"parent",void 0),St(this,"color",void 0),St(this,"childIndexes",void 0),St(this,"getVisibleRange",U(o=>{var u=this.childIndexes.flat(),d=H.getVisibleIndexes(u,o),h=Math.min(...d),c=Math.max(...d);return c-h!==u.length-1&&Ph.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(br.NEW_GROUP_PREFIX)}}St(br,"NEW_GROUP_PREFIX",":newGroup");function rt(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 Wp(n){return rt(n)&&n.partitionConfig!==void 0}var Oh=["selectedValues"],Dh=["selectedValues"];function Zi(n,e){if(n==null)return{};var t=Nh(n,e),r,i;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(n);for(i=0;i<a.length;i++)r=a[i],!(e.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(n,r)&&(t[r]=n[r])}return t}function Nh(n,e){if(n==null)return{};var t={},r=Object.keys(n),i,a;for(a=0;a<r.length;a++)i=r[a],!(e.indexOf(i)>=0)&&(t[i]=n[i]);return t}function 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 He(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){In(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 In(n,e,t){return e=Fh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Fh(n){var e=Mh(n,"string");return typeof e=="symbol"?e:String(e)}function Mh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var tr=J.module("IrisGridUtils");function zp(n){return n.partition!==void 0}function Ji(n){return Array.isArray(n.partitions)}function ft(n,e){return n>=0&&n<e.length}function Ih(n){return(n==null?void 0:n.asDate)!=null}class ae{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=ae.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=p=>typeof p=="string"?d.findIndex(m=>m===p):p;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 Ji(t)?a=t.partitions:t.partition!=null&&(a=[t.partition]),{isSelectingPartition:r,partitions:a,advancedSettings:new Map([...$l.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=Ji(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=ae.parseCustomColumnNames(e),i=ae.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=He({},v),[p,m]=Array.isArray(v.from)?v.from:[v.from,v.from];d<=v.to&&(g.to-=1),d<p&&(p-=1),d<=m&&(m-=1),p<=m&&p!==g.to&&(p===m?h.push(He(He({},g),{},{from:p})):h.push(He(He({},g),{},{from:[p,m]}))),d=H.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=H.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=H.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=H.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=ae.getVisibleColumnsInRange(e,t,r,i,a),u=o.length*s,d=ae.getPrevVisibleColumns(e,t-1,u,i,a),h=ae.getNextVisibleColumns(e,r+1,u,i,a),c=[...d,...o,...h];return ae.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];F(a.startColumn),F(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(S=>{var{operation:C}=S;return!fn.isRollupProhibited(C)}),c=h.map(S=>{var{operation:C,selected:w,invert:E}=S;return fn.isRollupOperation(C)?[]:fn.getOperationColumnNames(e,C,w,E)}),v={},g=0;g<h.length;g+=1)v[h[g].operation]=c[g];if(o){var p=new Set(e.map(S=>S.name).filter(S=>!l.includes(S)));if(c.forEach(S=>{S.forEach(C=>p.delete(C))}),p.size>0){var m,b=(m=v[Y.FIRST])!==null&&m!==void 0?m:[];v[Y.FIRST]=[...b,...p]}}return{groupingColumns:l,includeConstituents:s,includeDescriptions:u,aggregations:v}}static getPendingErrors(e){e.forEach((t,r)=>{if(!ae.isValidIndex(r))throw new Error("Invalid rowIndex ".concat(r));var{data:i}=t;i.forEach((a,l)=>{if(!ae.isValidIndex(l))throw new Error("Invalid columnIndex ".concat(l))})})}static getColumn(e,t){return t<e.length?e[t]:(tr.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&&tr.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=y.getFilterOperatorString(s)));var u="".concat(o).concat(a);s==="startsWith"&&(u="".concat(a).concat(o)),e!=null&&l!==null&&y.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 br(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;F(g,"Column header group has no name");var p=e.getColumnIndexByName(g);if(p!=null&&p>=0)throw new Error("Column header group has same name as column: ".concat(g));var m=l.get(g);if(m)return m;var b=[],S=1;if(c.children==null)throw new Error("Column header group ".concat(g," has no children"));c.children.forEach(E=>{if(u.has(E))throw new Error("Column group child ".concat(E," specified in multiple groups"));u.add(E);var P=o.get(E),I=e.getColumnIndexByName(E);if(P){var D=d(P);b.push(...D.childIndexes),S=Math.max(S,D.depth+1)}else if(I!=null)b.push(I),S=Math.max(S,1);else throw new Error("Unknown child ".concat(E," in group ").concat(g))});var C=He(He({},c),{},{name:g,children:c.children,depth:S,childIndexes:b.flat()}),w=r(C);return l.set(g,w),(v=c.children)===null||v===void 0||v.forEach(E=>a.set(E,w)),i=Math.max(i,w.depth+1),w},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&&y.isCharType(t)&&e!=null&&typeof e=="number")return String.fromCharCode(e);if(y.isDateType(t)&&Ih(e)){var r=new Date(e.asDate()),i=r.getTimezoneOffset(),a=new Date(r.getTime()-i*60*1e3),l=a.toISOString(),s=l.replace("T"," ").substring(0,23);return s}return e==null?"":"".concat(e)}constructor(e){In(this,"dh",void 0),In(this,"tableUtils",void 0),this.dh=e,this.tableUtils=new y(e),Hn(this)}dehydrateIrisGridState(e,t){var{aggregationSettings:r={aggregations:re,showOnTop:!1},advancedFilters:i,customColumnFormatMap:a,isFilterBarShown:l,metrics:{userColumnWidths:s,userRowHeights:o}={userColumnWidths:jt,userRowHeights:jt},quickFilters:u,customColumns:d,conditionalFormats:h=re,reverse:c,rollupConfig:v,showSearchBar:g,searchValue:p,selectDistinctColumns:m=re,selectedSearchColumns:b,sorts:S,invertSearchColumns:C,pendingDataMap:w=jt,frozenColumns:E,columnHeaderGroups:P,partitionConfig:I}=t,{columns:D}=e,N=rt(e)?e.partitionColumns:[];return{advancedFilters:this.dehydrateAdvancedFilters(D,i),aggregationSettings:r,customColumnFormatMap:[...a],isFilterBarShown:l,quickFilters:ae.dehydrateQuickFilters(u),sorts:ae.dehydrateSort(S),userColumnWidths:[...s].filter(M=>{var[R]=M;return R!=null&&R>=0&&R<D.length}).map(M=>{var[R,_]=M;return[D[R].name,_]}),userRowHeights:[...o],customColumns:[...d],conditionalFormats:[...h],reverse:c,rollupConfig:v,showSearchBar:g,searchValue:p,selectDistinctColumns:[...m],selectedSearchColumns:b,invertSearchColumns:C,pendingDataMap:this.dehydratePendingDataMap(D,w),frozenColumns:E,columnHeaderGroups:P==null?void 0:P.map(M=>{var R;return{name:M.name,children:M.children,color:(R=M.color)!==null&&R!==void 0?R:null}}),partitionConfig:this.dehydratePartitionConfig(N,I)}}hydrateIrisGridState(e,t){var r,i,{advancedFilters:a,aggregationSettings:l={aggregations:[],showOnTop:!1},customColumnFormatMap:s,isFilterBarShown:o,quickFilters:u,sorts:d,customColumns:h,conditionalFormats:c,userColumnWidths:v,userRowHeights:g,reverseType:p,reverse:m,rollupConfig:b=void 0,showSearchBar:S,searchValue:C,selectDistinctColumns:w,selectedSearchColumns:E,invertSearchColumns:P=!0,pendingDataMap:I=[],frozenColumns:D,columnHeaderGroups:N,partitionConfig:M}=t,{columns:R,formatter:_}=e,V=rt(e)?e.partitionColumns:[];return{advancedFilters:this.hydrateAdvancedFilters(R,a,_.timeZone),aggregationSettings:l,customColumnFormatMap:new Map(s),isFilterBarShown:o,quickFilters:this.hydrateQuickFilters(R,u,_.timeZone),sorts:this.hydrateSort(R,d,!0),userColumnWidths:new Map(v.map(K=>{var[q,ie]=K;return typeof q=="string"||q instanceof String?[R.findIndex(ee=>{var{name:ge}=ee;return ge===q}),ie]:[q,ie]}).filter(K=>{var[q]=K;return q!=null&&q>=0&&q<R.length})),customColumns:h,conditionalFormats:c,userRowHeights:new Map(g),reverse:p===y.REVERSE_TYPE.POST_SORT||m,rollupConfig:b,showSearchBar:S,searchValue:C,selectDistinctColumns:w,selectedSearchColumns:E,invertSearchColumns:P,pendingDataMap:this.hydratePendingDataMap(R,I),frozenColumns:D,columnHeaderGroups:ae.parseColumnHeaderGroups(e,(r=N??((i=e.layoutHints)===null||i===void 0?void 0:i.columnGroups))!==null&&r!==void 0?r:[]).groups,partitionConfig:this.hydratePartitionConfig(V,M)}}hydrateQuickFilters(e,t,r){var i=t.map(a=>{var[l,s]=a,{text:o}=s,u=null;try{var d=ae.getColumn(e,l);d!=null&&(u=this.tableUtils.makeQuickFilter(d,o,r))}catch(h){tr.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=ae.getColumn(e,i);F(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=ae.getColumn(e,l);F(o);var u=this.hydrateAdvancedFilterOptions(o,s.options),d=null;try{var h=ae.getColumn(e,l);h!=null&&(d=this.tableUtils.makeAdvancedFilter(o,u,r))}catch(c){tr.error("hydrateAdvancedFilters error with",u,c)}return[l,{options:u,filter:d}]});return new Map(i)}dehydrateAdvancedFilterOptions(e,t){var{selectedValues:r}=t,i=Zi(t,Oh);return He({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=Zi(t,Dh);return He({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,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 F(c),[(u=i(d))!==null&&u!==void 0?u:null,this.hydrateValue(h,e[c].type)]}))}]}))}dehydratePartitionConfig(e,t){return t==null?t:He(He({},t),{},{partitions:t.partitions.map((r,i)=>this.dehydrateValue(r,e[i].type))})}hydratePartitionConfig(e,t){return t==null?t:He(He({},t),{},{partitions:t.partitions.map((r,i)=>this.hydrateValue(r,e[i].type))})}dehydrateValue(e,t){return y.isDateType(t)?this.dehydrateDateTime(e):y.isLongType(t)?ae.dehydrateLong(e):e}hydrateValue(e,t){return y.isDateType(t)?this.hydrateDateTime(e):y.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===y.sortDirection.reverse)return i.Table.reverse();var u=typeof l=="string"?ae.getColumnByName(e,l):ae.getColumn(e,l);return u!=null?{column:{name:u.name,type:u.type},isAbs:s,direction:o}:null}).filter(a=>a!=null&&(a.direction!==y.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===y.sortDirection.reverse)return r.Table.reverse();var o=ae.getColumnByName(e,a);if(o!=null){var u=o.sort();return l&&(u=u.abs()),s===y.sortDirection.descending?u=u.desc():u=u.asc(),u}return null}).filter(hu)}applyTableSettings(e,t,r){var{columns:i}=e,a=[];t.quickFilters&&(a=ae.getFiltersFromFilterMap(this.hydrateQuickFilters(i,t.quickFilters,r)));var l=[];t.advancedFilters&&(l=ae.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(p=>ae.getColumnByName(i,p)),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){tr.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)=>(F(i.startRow),F(a.startRow),i.startRow-a.startRow)).map(i=>{var{startRow:a,endRow:l}=i;return F(a),F(l),t.RangeSet.ofRange(a,l)});return t.RangeSet.ofRanges(r)}static colorForValue(e,t,r,i){return y.isDateType(t)||r==="Date"?(F(e.dateColor),e.dateColor):y.isNumberType(t)?i>0?(F(e.positiveNumberColor),e.positiveNumberColor):i<0?(F(e.negativeNumberColor),e.negativeNumberColor):(F(e.zeroNumberColor),e.zeroNumberColor):e.textColor}static textAlignForValue(e,t){return y.isDateType(e)||t==="Date"?"center":y.isNumberType(e)?"right":"left"}}const Q=ae;function gn(n,e,t){return e=Rh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Rh(n){var e=Lh(n,"string");return typeof e=="symbol"?e:String(e)}function Lh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Ah extends Error{constructor(e,t){super("".concat(t," can't be empty (on pending row ").concat(e+1,")")),gn(this,"isMissingKey",!0),gn(this,"rowIndex",void 0),gn(this,"columnName",void 0),this.rowIndex=e,this.columnName=t}}const kh=Ah;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 Or(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){X(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 ta(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function pt(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){ta(a,r,i,l,s,"next",o)}function s(o){ta(a,r,i,l,s,"throw",o)}l(void 0)})}}function X(n,e,t){return e=xh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function xh(n){var e=_h(n,"string");return typeof e=="symbol"?e:String(e)}function _h(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ue=J.module("IrisGridTableModelTemplate"),jh=150,Vh=0;function Mt(n){return n.table!==void 0}class fr extends W{seekRow(e,t,r,i,a,l,s){throw new Error("Method not implemented.")}export(){throw new Error("Method not implemented.")}columnStatistics(e){throw new Error("Method not implemented.")}get customColumns(){return[]}set customColumns(e){throw new Error("Method not implemented.")}get formatColumns(){return[]}set formatColumns(e){throw new Error("Method not implemented.")}updateFrozenColumns(e){throw new Error("Method not implemented.")}get rollupConfig(){throw new Error("Method not implemented.")}set rollupConfig(e){throw new Error("Method not implemented.")}get selectDistinctColumns(){throw new Error("Method not implemented.")}set selectDistinctColumns(e){throw new Error("Method not implemented.")}get columns(){return this.table.columns}constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new We(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e),X(this,"dh",void 0),X(this,"irisGridUtils",void 0),X(this,"tableUtils",void 0),X(this,"irisFormatter",void 0),X(this,"inputTable",void 0),X(this,"subscription",void 0),X(this,"table",void 0),X(this,"viewport",void 0),X(this,"viewportData",void 0),X(this,"formattedStringData",void 0),X(this,"pendingStringData",void 0),X(this,"isSaveInProgress",void 0),X(this,"totalsTable",void 0),X(this,"totalsTablePromise",void 0),X(this,"totals",void 0),X(this,"totalsDataMap",void 0),X(this,"pendingNewDataMap",void 0),X(this,"pendingNewRowCount",0),X(this,"_columnHeaderGroupMap",new Map),X(this,"columnHeaderParentMap",new Map),X(this,"_columnHeaderMaxDepth",null),X(this,"_columnHeaderGroups",[]),X(this,"_isColumnHeaderGroupsInitialized",!1),X(this,"_movedColumns",null),X(this,"getMemoizedInitialMovedColumns",U(a=>{var l,s,o,u;if(!a)return[];var d=[],{groupMap:h}=Q.parseColumnHeaderGroups(this,(l=a==null?void 0:a.columnGroups)!==null&&l!==void 0?l:[]),c=(P,I)=>{var D=this.getColumnIndexByName(P);if(D==null)throw new Error("Unknown layout hint column: ".concat(P));var N=H.getVisibleIndex(D,d);d=H.moveItem(N,I,d)},v=(P,I)=>{var D=h.get(P);if(D==null)throw new Error("Unknown layout hint group: ".concat(P));var N=D.getVisibleRange(d);d=H.moveRange(N,I,d)},g=(s=a.frontColumns)!==null&&s!==void 0?s:[],p=(o=a.backColumns)!==null&&o!==void 0?o:[],m=(u=a.frozenColumns)!==null&&u!==void 0?u:[];if(g.length>0||p.length>0||m.length>0){var b=new Set,S=0;m==null||m.forEach(P=>{if(b.has(P))throw new Error("Column specified in multiple layout hints: ".concat(P));c(P,S),S+=1}),g.forEach(P=>{if(b.has(P))throw new Error("Column specified in multiple layout hints: ".concat(P));c(P,S),S+=1});var C=this.columns.length-1;p==null||p.forEach(P=>{if(b.has(P))throw new Error("Column specified in multiple layout hints: ".concat(P));c(P,C),C-=1})}var w=a==null?void 0:a.columnGroups;if(w){var E=[...h.values()];E.sort((P,I)=>P.depth-I.depth),E.forEach(P=>{var I=P.children[0],D=this.getColumnIndexByName(I),N;if(D!=null)N=H.getVisibleIndex(D,d);else{var M=h.get(I);if(!M)throw new Error("Unknown column ".concat(I," in group ").concat(P.name));var R=M.getVisibleRange(d);[,N]=R}for(var _=1;_<P.children.length;_+=1){var V=P.children[_],K=h.get(V),q=this.getColumnIndexByName(V);if(K){var ie=K.getVisibleRange(d)[0]<N,ee=ie?N-K.childIndexes.length+1:N+1;v(V,ee),N=ee+K.childIndexes.length-1}else if(q!=null){var ge=H.getVisibleIndex(q,d)<N,be=ge?N:N+1;c(V,be),N=be}}})}return this._movedColumns=d,d})),X(this,"getMemoizedInitialColumnHeaderGroups",U(a=>{var l;return Q.parseColumnHeaderGroups(this,(l=a==null?void 0:a.columnGroups)!==null&&l!==void 0?l:[]).groups})),X(this,"getColumnIndicesByNameMap",U(a=>{var l=new Map;return a.forEach((s,o)=>{var{name:u}=s;return l.set(u,o)}),l})),X(this,"setViewport",Si((a,l,s)=>{if(l<a){ue.error("Invalid viewport",a,l);return}var{viewport:o}=this;if(o!=null&&o.top===a&&o.bottom===l&&o.columns===s){ue.debug2("Ignoring duplicate viewport",o);return}this.viewport={top:a,bottom:l,columns:s},ue.debug2("setViewport",this.viewport),this.applyViewport()},jh)),X(this,"applyViewport",Si(()=>{if(this.viewport){ue.debug2("applyViewport",this.viewport);var{top:a,bottom:l,columns:s}=this.viewport,[o,u]=this.getCachedViewportRowRange(a,l);this.applyBufferedViewport(o,u,s)}},Vh,{leading:!1})),X(this,"getCachedFormattedString",Fn((a,l,s,o,u)=>a.getFormattedString(l,s,o,u),{max:1e4})),X(this,"getCachedCustomColumnFormatFlag",Fn(Tn.isCustomColumnFormatDefined,{max:1e4})),X(this,"getCachedViewportRowRange",U((a,l)=>{var s=l-a,o=Math.max(0,a-s*fr.ROW_BUFFER_PAGES),u=l+s*fr.ROW_BUFFER_PAGES;return[o,u]})),X(this,"getCachedPendingErrors",U((a,l,s)=>{var o=new Map;return a.forEach((u,d)=>{for(var{data:h}=u,c=0;c<s;c+=1)if(!h.has(c)){var v;o.has(d)||o.set(d,[]),(v=o.get(d))===null||v===void 0||v.push(new kh(d,l[c].name))}}),o})),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.irisGridUtils=new Q(e),this.inputTable=i,this.subscription=null,this.table=t,this.tableUtils=new y(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(W.EVENT.DISCONNECT))}handleTableReconnect(){this.dispatchEvent(new le(W.EVENT.RECONNECT))}handleTableUpdate(e){this.copyViewportData(e.detail),this.dispatchEvent(new le(W.EVENT.UPDATED))}handleTotalsUpdate(e){this.copyTotalsData(e.detail),this.dispatchEvent(new le(W.EVENT.UPDATED))}handleRequestFailed(e){this.dispatchEvent(new le(W.EVENT.REQUEST_FAILED,e))}handleCustomColumnsChanged(){this.dispatchEvent(new le(W.EVENT.COLUMNS_CHANGED,{detail:this.columns}))}get rowCount(){var e,t,r;return Math.max(this.table.size,0)+this.pendingNewRowCount+((e=(t=this.totals)===null||t===void 0||(r=t.operationOrder)===null||r===void 0?void 0:r.length)!==null&&e!==void 0?e:0)}get pendingDataErrors(){var e,t;return this.getCachedPendingErrors(this.pendingNewDataMap,this.columns,(e=(t=this.inputTable)===null||t===void 0?void 0:t.keyColumns.length)!==null&&e!==void 0?e:0)}get pendingDataMap(){return this.pendingNewDataMap}set pendingDataMap(e){e!==this.pendingNewDataMap&&(e.forEach((t,r)=>{if(!Q.isValidIndex(r))throw new Error("Invalid rowIndex ".concat(r));var{data:i}=t;i.forEach((a,l)=>{if(!Q.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(W.EVENT.PENDING_DATA_UPDATED)))}get pendingRowCount(){return this.pendingNewRowCount}set pendingRowCount(e){e!==this.pendingNewRowCount&&(this.pendingNewRowCount=Math.max(0,e,this.maxPendingDataRow),this.dispatchEvent(new le(W.EVENT.UPDATED)))}get maxPendingDataRow(){return this.pendingNewDataMap.size>0?Math.max(...this.pendingNewDataMap.keys())+1:0}get columnCount(){return this.columns.length}get floatingBottomRowCount(){var e,t,r;return this.totals!=null&&this.totals.showOnTop?0:(e=(t=this.totals)===null||t===void 0||(r=t.operationOrder)===null||r===void 0?void 0:r.length)!==null&&e!==void 0?e:0}get floatingTopRowCount(){var e,t,r;return this.totals!=null&&this.totals.showOnTop&&(e=(t=this.totals)===null||t===void 0||(r=t.operationOrder)===null||r===void 0?void 0:r.length)!==null&&e!==void 0?e:0}get isValuesTableAvailable(){return this.table.selectDistinct!=null&&this.table.copy!=null}get isChartBuilderAvailable(){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(y.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(y.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 F(r.nullStringColor),r.nullStringColor;if((a==null?void 0:a.color)!=null&&a.color!=="")return a.color;if(this.isPendingRow(t))return F(r.pendingTextColor),r.pendingTextColor;if(l!=null){var s=this.sourceColumn(e,t);return Q.colorForValue(r,s.type,s.name,l)}}else if(this.isPendingRow(t)&&this.isKeyColumn(e))return F(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);return Q.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 mn(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(mn(r)){var i;return(i=r.color)!==null&&i!==void 0?i:null}return null}getColumnHeaderGroup(e,t){var r=this.columnAtDepth(e,t);if(mn(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}=Q.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=Q.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,h,c=(t=(r=this.totals)===null||r===void 0||(i=r.operationOrder)===null||i===void 0?void 0:i.length)!==null&&t!==void 0?t:0,v=(a=(l=this.totals)===null||l===void 0?void 0:l.showOnTop)!==null&&a!==void 0?a:!1,g=this.totalsRow(e);if(g!=null){var p,m,b,S=(p=this.totals)===null||p===void 0?void 0:p.operationOrder[g];return F(S),(m=(b=this.totalsDataMap)===null||b===void 0?void 0:b.get(S))!==null&&m!==void 0?m:null}var C=this.pendingRow(e);if(C!=null){var w;return(w=this.pendingNewDataMap.get(C))!==null&&w!==void 0?w:null}var E=(s=(o=this.viewportData)===null||o===void 0?void 0:o.offset)!==null&&s!==void 0?s:0,P=(v?e-c:e)-E;return(u=(d=this.viewportData)===null||d===void 0||(h=d.rows)===null||h===void 0?void 0:h[P])!==null&&u!==void 0?u: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,g;return c.name==="".concat(d.name,"__").concat(o)||(o===u||((v=this.totals)===null||v===void 0||(g=v.operationMap[c.name])===null||g===void 0?void 0:g.length)===1)&&c.name===d.name});if(h!=null)return h}return this.columns[e]}totalsRow(e){var t,r,i,a,l,s=(t=(r=this.totals)===null||r===void 0||(i=r.operationOrder)===null||i===void 0?void 0:i.length)!==null&&t!==void 0?t:0,o=(a=(l=this.totals)===null||l===void 0?void 0:l.showOnTop)!==null&&a!==void 0?a:!1,u=o?e:e-this.table.size;return u>=0&&u<s?u: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 p,m,b=l[v],[S,C=(p=h==null||(m=h[S])===null||m===void 0?void 0:m[0])!==null&&p!==void 0?p:d]=b.name.split("__");o.has(C)||o.set(C,{data:new Map});var{data:w}=o.get(C),E=a.columns.findIndex(P=>P.name===S);w.set(E,{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(W.EVENT.FORMATTER_UPDATED))}displayString(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"",i=arguments.length>3?arguments[3]:void 0;return this.getCachedFormattedString(this.formatter,e,t,r,i)}get sort(){return this.table.sort}set sort(e){this.closeSubscription(),this.table.applySort(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(W.EVENT.UPDATED));return}this.totalsTablePromise=Ae.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{Ae.isCanceled(t)||(ue.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new le(W.EVENT.REQUEST_FAILED,{detail:t})))})}}setTotalsTable(e){ue.debug("setTotalsTable",e),this.totalsTable!==null&&(this.listenerCount>0&&this.removeTotalsListeners(this.totalsTable),this.totalsTable.close()),this.totalsTable=e,this.totalsDataMap=null,this.listenerCount>0&&this.totalsTable!=null&&this.addTotalsListeners(this.totalsTable)}applyBufferedViewport(e,t,r){if(this.dispatchEvent(new le(W.EVENT.VIEWPORT_UPDATED)),ue.debug2("applyBufferedViewport",e,t,r),this.subscription==null){var i;ue.debug2("applyBufferedViewport creating new subscription"),this.subscription=(i=this.table.setViewport(e,t,r))!==null&&i!==void 0?i:null}else ue.debug2("applyBufferedViewport using existing subscription"),this.subscription.setViewport(e,t,r)}snapshot(e){var t=arguments,r=this;return pt(function*(){var i=t.length>1&&t[1]!==void 0?t[1]:!1,a=t.length>2&&t[2]!==void 0?t[2]:N=>N,l=t.length>3&&t[3]!==void 0?t[3]:!0;if(r.subscription==null)throw new Error("No subscription available");var s=l?k.consolidate(e):e;if(!Q.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];F(c.endRow),F(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 k(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 p=Q.columnsFromRanges(s,r.columns),m=[];i&&m.push(p.map(N=>N.name));for(var b=[...o].sort(),S=function*(){var M=b[C],R=p.map(_=>{var V=r.getColumnIndexByName(_.name);return F(V),a(r.valueForCell(V,M),_)});i&&R.push(r.textForRowFooter(M)),m.push(R)},C=0;C<b.length;C+=1)yield*S();if(u.length>0){var w=r.irisGridUtils.rangeSetFromRanges(u),E=yield r.subscription.snapshot(w,p);m.push(...E.rows.map(N=>p.map(M=>a(N.get(M),M))))}for(var P=[...d].sort(),I=function*(){var M=P[D],R=p.map(_=>{var V=r.getColumnIndexByName(_.name);return F(V),a(r.valueForCell(V,M),_)});i&&R.push(r.textForRowFooter(M)),m.push(R)},D=0;D<P.length;D+=1)yield*I();return m})()}textSnapshot(e){var t=arguments,r=this;return pt(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(`
6
+ `)})()}valuesTable(e){var t=this;return pt(function*(){var r=null;try{return r=yield t.table.copy(),r.applyFilter([]),r.applySort([]),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)}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;F(e.startColumn);for(var a=(t=e.endColumn)!==null&&t!==void 0?t:this.table.size,l=e.startColumn;l<=a;l+=1)if(this.isKeyColumn(l)){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 k(null,this.floatingTopRowCount,null,this.floatingTopRowCount+this.table.size-1)}getPendingAreaRange(){return new k(null,this.floatingTopRowCount+this.table.size,null,this.floatingTopRowCount+this.table.size+this.pendingNewRowCount-1)}setValueForCell(e,t,r){var i=this;return pt(function*(){return i.setValueForRanges([new k(e,t,e,t)],r)})()}setValueForRanges(e,t){var r=this;return pt(function*(){if(!r.isEditableRanges(e))throw new Error("Uneditable ranges ".concat(e));try{var i=new Set,a=[];k.forEachCell(e,(p,m)=>{var b=r.columns[p];if(i.add(b),a[p]===void 0){var S=r.tableUtils.makeValue(b.type,t,r.formatter.timeZone);a[p]=S!=null?r.displayString(S,b.type,b.name):null}r.cachePendingValue(p,m,a[p])});var l=r.getPendingAreaRange(),s=e.map(p=>k.intersection(l,p)).filter(p=>p!=null).map(p=>(F(p),k.offset(p,0,-(r.floatingTopRowCount+r.table.size))));if(s.length>0){var o=new Map(r.pendingNewDataMap);k.forEachCell(s,(p,m)=>{o.has(m)||o.set(m,{data:new Map});var b=r.columns[p],S=o.get(m);F(S);var{data:C}=S,w=new Map(C),E=r.tableUtils.makeValue(b.type,t,r.formatter.timeZone);E!=null?w.set(p,{value:E}):w.delete(p),w.size>0?o.set(m,Or(Or({},S),{},{data:w})):o.delete(m)}),r.pendingDataMap=o}r.dispatchEvent(new le(W.EVENT.UPDATED));var u=r.getTableAreaRange(),d=e.map(p=>k.intersection(u,p)).filter(p=>p!=null);if(d.length>0){var h,c=yield r.snapshot(d.map(p=>{var m,b;return new k(null,(m=p==null?void 0:p.startRow)!==null&&m!==void 0?m:null,null,(b=p==null?void 0:p.endRow)!==null&&b!==void 0?b:null)})),v=c.map(p=>{for(var m={},b=0;b<r.columns.length;b+=1)m[r.columns[b].name]=p[b];return i.forEach(S=>{m[S.name]=r.tableUtils.makeValue(S.type,t,r.formatter.timeZone)}),m}),g=yield(h=r.inputTable)===null||h===void 0?void 0:h.addRows(v);ue.debug("setValueForRanges(",e,",",t,") set tableRanges",d,"result",g)}k.forEachCell(e,(p,m)=>{var b=a[p];F(b),r.cacheFormattedValue(p,m,b)})}catch(p){ue.error("Unable to set ranges",e,t,p)}finally{k.forEachCell(e,(p,m)=>{r.clearPendingValue(p,m)})}})()}setValues(){var e=arguments,t=this;return pt(function*(){var r=e.length>0&&e[0]!==void 0?e[0]:[];if(ue.debug("setValues(",r,")"),!r.every(v=>{var g,p;return t.isEditableRange(k.makeCell((g=v.column)!==null&&g!==void 0?g:v.x,(p=v.row)!==null&&p!==void 0?p:v.y))}))throw new Error("Uneditable ranges ".concat(r));try{var i=new Map(t.pendingNewDataMap);r.forEach(v=>{var g,p,{text:m}=v,b=(g=v.column)!==null&&g!==void 0?g:v.x,S=(p=v.row)!==null&&p!==void 0?p:v.y,C=t.columns[b],w=t.tableUtils.makeValue(C.type,m,t.formatter.timeZone),E=w!=null?t.displayString(w,C.type,C.name):null;t.cachePendingValue(b,S,E);var P=t.pendingRow(S);if(P!=null){i.has(P)||i.set(P,{data:new Map});var I=i.get(P);F(I);var{data:D}=I,N=new Map(D);w!=null?N.set(b,{value:w}):N.delete(b),N.size>0?i.set(P,Or(Or({},I),{},{data:N})):i.delete(P)}}),t.pendingDataMap=i,t.dispatchEvent(new le(W.EVENT.UPDATED));var a=r.reduce((v,g)=>{var p,m,b=(p=g.row)!==null&&p!==void 0?p:g.y;return v.has(b)||v.set(b,[]),(m=v.get(b))===null||m===void 0||m.push(g),v},new Map),l=k.consolidate(r.map(v=>{var g,p;return k.makeCell((g=v.column)!==null&&g!==void 0?g:v.x,(p=v.row)!==null&&p!==void 0?p:v.y)})),s=t.getTableAreaRange(),o=l.map(v=>k.intersection(s,v)).filter(v=>v!=null);if(o.length>0){var u,d=yield t.snapshot(o.map(v=>(F(v),new k(null,v.startRow,null,v.endRow)))),h=d.map((v,g)=>{for(var p=null,m=g,b=0;b<o.length;b+=1){var S=o[b];F(S);var C=k.rowCount([S]);if(m<C){F(S.startRow),p=S.startRow+m;break}m-=C}for(var w={},E=0;E<t.columns.length;E+=1)w[t.columns[E].name]=v[E];F(p);var P=a.get(p);return P!=null&&P.forEach(I=>{var D,N=t.columns[(D=I.column)!==null&&D!==void 0?D:I.x];w[N.name]=t.tableUtils.makeValue(N.type,I.text,t.formatter.timeZone)}),w});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,p,{text:m}=v,b=(g=v.column)!==null&&g!==void 0?g:v.x,S=(p=v.row)!==null&&p!==void 0?p:v.y,C=t.columns[b],w=t.tableUtils.makeValue(C.type,m,t.formatter.timeZone),E=w!=null?t.displayString(w,C.type,C.name):null;t.cacheFormattedValue(b,S,E)})}finally{r.forEach(v=>{t.clearPendingValue(v.column,v.row)})}})()}commitPending(){var e=this;return pt(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(W.EVENT.PENDING_DATA_UPDATED))}finally{e.isSaveInProgress=!1}})()}editValueForCell(e,t){var r;return(r=this.textValueForCell(e,t))!==null&&r!==void 0?r:""}delete(e){return pt(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}}}X(fr,"ROW_BUFFER_PAGES",1);const Wl=fr;function $h(n,e,t){return e=Hh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Hh(n){var e=Gh(n,"string");return typeof e=="symbol"?e:String(e)}function Gh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Uh extends Error{constructor(){super(...arguments),$h(this,"isMissingPartitionError",!0)}}function Bh(n){return(n==null?void 0:n.isMissingPartitionError)===!0}const ra=Uh;function na(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function Dt(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 et(n,e,t){return e=Wh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Wh(n){var e=zh(n,"string");return typeof e=="symbol"?e:String(e)}function zh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var at=J.module("IrisGridTableModel");class qh extends Wl{constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new We(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e,t,r,i),et(this,"userFrozenColumns",void 0),et(this,"customColumnList",void 0),et(this,"formatColumnList",void 0),et(this,"initialFilters",[]),et(this,"getMemoizedKeyColumnSet",U(a=>new Set(a??re))),et(this,"getMemoizedFrontColumns",U(a=>a??re)),et(this,"getMemoizedBackColumns",U(a=>a??re)),et(this,"getMemoizedFrozenColumns",U((a,l)=>{var s;return(s=l??a)!==null&&s!==void 0?s:re})),et(this,"getCachedFilterableColumnSet",U(a=>new Set(a.map((l,s)=>s)))),et(this,"getCachedPartitionColumns",U(a=>a.filter(l=>l.isPartitionColumn))),this.customColumnList=[],this.formatColumnList=[],this.initialFilters=t.filter}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 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(at.debug2("set customColumns",e,this.customColumnList,e===this.customColumnList),this.customColumnList.length===0&&e.length===0){at.debug("Ignore empty initial customColumns"),this.customColumnList=e;return}if(this.customColumnList===e){at.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(at.debug2("set formatColumns",e,this.formatColumnList,e===this.formatColumnList),this.formatColumnList.length===0&&e.length===0){at.debug("Ignore empty initial formatColumns"),this.formatColumnList=e;return}if(this.formatColumnList===e){at.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(W.EVENT.COLUMNS_CHANGED,{detail:this.columns}))}get partitionColumns(){return this.getCachedPartitionColumns(this.columns)}partitionKeysTable(){var e=this;return Dt(function*(){return e.valuesTable(e.partitionColumns)})()}partitionMergedTable(){var e=this;return Dt(function*(){var t=yield e.table.copy();return t.applyFilter([]),t})()}partitionBaseTable(){var e=this;return Dt(function*(){return e.partitionKeysTable()})()}partitionTable(e){var t=this;return Dt(function*(){at.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(at.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(W.EVENT.UPDATED));return}this.totalsTablePromise=Ae.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{Ae.isCanceled(t)||(at.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new le(W.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.isPartitionRequired}isFilterable(e){return this.getCachedFilterableColumnSet(this.columns).has(e)}export(){var e=this;return Dt(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 Dt(function*(){var a;if(!i.isDeletableRanges(e))throw new Error("Undeletable ranges ".concat(e));F(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=>k.intersection(s,C)).filter(C=>C!=null).map(C=>(F(C),k.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];F(h.startRow),F(h.endRow);for(var c=h.startRow;c<=h.endRow;c+=1)u.delete(c)}r(u),i.formattedStringData=[],i.dispatchEvent(new le(W.EVENT.PENDING_DATA_UPDATED)),i.dispatchEvent(new le(W.EVENT.UPDATED))}var v=i.getTableAreaRange(),g=e.map(C=>k.intersection(v,C)).filter(C=>C!=null);if(!(g.length<=0)){var[p,m]=yield Promise.all([i.snapshot(g.map(C=>(F(C),l.map(w=>{var E=i.getColumnIndexByName(w.name);if(E==null)throw new Error("Key column ".concat(w.name," not found"));return new k(E,C.startRow,E,C.endRow)}))).flat()),i.table.copy()]),b=p.map(C=>{for(var w=[],E=0;E<l.length;E+=1){var P=l[E],I=C[E],D=i.tableUtils.makeNullableEqFilter(P,I);w.push(D)}return w.reduce((N,M)=>{var R;return(R=N==null?void 0:N.and(M))!==null&&R!==void 0?R:M})}),S=b.reduce((C,w)=>{var E;return(E=C==null?void 0:C.or(w))!==null&&E!==void 0?E:w});m.applyFilter([S]),yield(a=i.inputTable)===null||a===void 0?void 0:a.deleteTable(m),m.close()}})()}seekRow(e,t,r,i,a,l,s){var o=this;return Dt(function*(){return o.table.seekRow(e,t,r,i,a,l,s)})()}get isSeekRowAvailable(){return this.table.seekRow!=null}}const Kh=qh;function Xh(n,e,t){return e=Yh(e),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:String(e)}function Zh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Qh extends W{constructor(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:new We(e);super(e),Xh(this,"modelFormatter",void 0),this.modelFormatter=t}get rowCount(){return 0}get columnCount(){return 0}textForCell(e,t){return""}textForColumnHeader(e,t){}get columns(){return re}getColumnIndexByName(e){}get initialMovedColumns(){return re}get initialMovedRows(){return re}get initialColumnHeaderGroups(){return re}get groupedColumns(){return re}formatForCell(e,t){}valueForCell(e,t){}get filter(){return re}set filter(e){}get partition(){return re}set partition(e){}get partitionColumns(){return re}get formatter(){return this.modelFormatter}set formatter(e){this.modelFormatter=e}displayString(e,t,r){return""}get sort(){return re}set sort(e){}get customColumns(){return re}set customColumns(e){}get formatColumns(){return re}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 re}set selectDistinctColumns(e){}get pendingDataMap(){return jt}set pendingDataMap(e){}get pendingRowCount(){return 0}set pendingRowCount(e){}get pendingDataErrors(){return jt}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 re}set columnHeaderGroups(e){}get columnHeaderGroupMap(){return jt}getColumnHeaderParentGroup(e,t){}}const Jh=Qh;function ia(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function Dr(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 ec(n,e,t){return e=tc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function tc(n){var e=rc(n,"string");return typeof e=="symbol"?e:String(e)}function rc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class nc extends Jh{constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new We(e);super(e,r),ec(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 Dr(function*(){return e.partitionedTable.getKeyTable()})()}partitionBaseTable(){var e=this;return Dr(function*(){return e.partitionedTable.getBaseTable()})()}partitionMergedTable(){var e=this;return Dr(function*(){return e.partitionedTable.getMergedTable()})()}partitionTable(e){var t=this;return Dr(function*(){try{var r=yield t.partitionedTable.getTable(e);if(r==null)throw new ra("Partition not found");return r}catch(i){throw Bh(i)?i:new ra("Unable to retrieve partition")}})()}}const ic=nc;function aa(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function ac(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 la(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 sa(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?la(Object(t),!0).forEach(function(r){_t(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):la(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function _t(n,e,t){return e=lc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function lc(n){var e=sc(n,"string");return typeof e=="symbol"?e:String(e)}function sc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var oc=J.module("IrisGridTreeTableModel");function oa(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 uc(n){return n.layoutHints!==void 0}class dc extends Wl{constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new We(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e,t,r,i),_t(this,"virtualColumns",void 0),_t(this,"getCachedColumns",U((a,l)=>[...a,...l])),_t(this,"getCachedGroupColumns",U((a,l)=>[...a,...l])),_t(this,"getCachedFilterableColumnSet",U((a,l,s,o,u)=>l?new Set(a.filter(d=>!u.includes(d)&&!s.includes(d)).map(d=>a.findIndex(h=>d.name===h.name))):new Set(((o==null?void 0:o.length)>0?o:a).filter(d=>!u.includes(d)).map(d=>a.findIndex(h=>d.name===h.name))))),_t(this,"getCachedGroupedColumnSet",U(a=>new Set(a.map(l=>this.columns.findIndex(s=>l.name===s.name))))),this.virtualColumns=t.groupedColumns.length>1?[{name:"__DH_UI_GROUP__",displayName:"Group",type:y.dataType.STRING,constituentType:y.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")}}]:[]}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(y.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 F(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);F(o);var u=s.type;return oa(o)&&o.hasChildren===!1&&s.constituentType!=null&&(u=s.constituentType),Q.colorForValue(r,u,s.name,l)}}return r.textColor}textAlignForCell(e,t){var r=this.sourceColumn(e,t),i=this.row(t);F(i);var a=r.type;return oa(i)&&i.hasChildren===!1&&r.constituentType!=null&&(a=r.constituentType),Q.textAlignForValue(a,r.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?oc.warn("Missing key data for virtual column",o,a,u,e):s.set(o,d)}return sa(sa({},l),{},{data:s,isExpanded:r,hasChildren:i,depth:a})}snapshot(e,t){var r=arguments,i=this;return ac(function*(){var a,l,s=r.length>2&&r[2]!==void 0?r[2]:S=>S;F(i.viewport),F(i.viewportData);var o=(a=i.viewport.columns)!==null&&a!==void 0?a:i.columns,u=[];t!=null&&t&&u.push(o.map(S=>S.name));for(var d=new k(0,(l=i.viewportData)===null||l===void 0?void 0:l.offset,o.length,i.viewportData.offset+i.viewportData.rows.length),h=0;h<e.length;h+=1){var c=k.intersection(d,e[h]);F(c),F(c.startRow),F(c.endRow);for(var v=c.startRow;v<=c.endRow;v+=1){var g=[],p=i.viewportData.rows[v-i.viewportData.offset];F(c.startColumn),F(c.endColumn);for(var m=c.startColumn;m<=c.endColumn;m+=1){var b;g.push(s((b=p.data.get(m))===null||b===void 0?void 0:b.value,i.columns[m]))}u.push(g)}}return u})()}get columns(){return this.getCachedColumns(this.virtualColumns,super.columns)}get aggregatedColumns(){return this.isAggregatedColumnsAvailable?this.table.aggregatedColumns:re}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(uc(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 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")}}const hc=dc;function lt(n,e,t){return e=cc(e),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:String(e)}function vc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var st=J.module("IrisGridProxyModel");function xt(n,e,t,r){return y.isTreeTable(e)?new hc(n,e,t):y.isPartitionedTable(e)?new ic(n,e,t):new Kh(n,e,t,r)}class fc extends W{constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new We(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e),lt(this,"model",void 0),lt(this,"dh",void 0),lt(this,"originalModel",void 0),lt(this,"modelPromise",void 0),lt(this,"rollup",void 0),lt(this,"partition",void 0),lt(this,"selectDistinct",void 0),lt(this,"currentViewport",void 0),lt(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=xt(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){st.debug2("handleModelEvent",e);var{detail:t,type:r}=e;this.dispatchEvent(new le(r,{detail:t}))}setModel(e){st.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(W.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)}Mt(e)&&this.dispatchEvent(new le(W.EVENT.TABLE_CHANGED,{detail:e.table}))}setNextModel(e){st.debug2("setNextModel"),this.modelPromise&&this.modelPromise.cancel(),this.listenerCount>0&&this.removeListeners(this.model),this.modelPromise=Ae.makeCancelable(e,t=>t.close()),this.modelPromise.then(t=>{this.modelPromise=null,this.setModel(t)}).catch(t=>{if(Ae.isCanceled(t)){st.debug2("setNextModel cancelled");return}st.error("Unable to set next model",t),this.modelPromise=null,this.dispatchEvent(new le(W.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(W.EVENT),r=0;r<t.length;r+=1)e.addEventListener(t[r],this.handleModelEvent)}removeListeners(e){for(var t=Object.keys(W.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 rt(this.originalModel)?this.originalModel.partitionColumns:[]}get partitionConfig(){return!rt(this.originalModel)||!this.originalModel.isPartitionRequired?null:this.partition}set partitionConfig(e){if(!this.isPartitionRequired)throw new Error("Partitions are not available");st.debug("set partitionConfig",e),this.partition=e;var t=Promise.resolve(this.originalModel);e!=null&&rt(this.originalModel)&&(e.mode==="keys"?t=this.originalModel.partitionBaseTable().then(r=>xt(this.dh,r,this.formatter)):e.mode==="merged"?t=this.originalModel.partitionMergedTable().then(r=>xt(this.dh,r,this.formatter)):t=this.originalModel.partitionTable(e.partitions).then(r=>xt(this.dh,r,this.formatter))),this.setNextModel(t)}partitionKeysTable(){if(!rt(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionKeysTable()}partitionMergedTable(){if(!rt(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionMergedTable()}partitionTable(e){if(!rt(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionTable(e)}get rollupConfig(){return this.rollup}set rollupConfig(e){if(st.debug("set rollupConfig",e),!this.isRollupAvailable)throw new Error("Rollup Rows are not available");if(!jr(e,this.rollup)){this.rollup=e;var t=Promise.resolve(this.originalModel);Mt(this.originalModel)&&e!=null&&(t=this.originalModel.table.rollup(e).then(r=>xt(this.dh,r,this.formatter))),this.setNextModel(t)}}get selectDistinctColumns(){return this.selectDistinct}set selectDistinctColumns(e){if(st.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){st.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);Mt(this.originalModel)&&t.length>0&&(r=this.originalModel.table.selectDistinct(t).then(i=>xt(this.dh,i,this.formatter))),this.setNextModel(r)}get isFilterRequired(){return this.originalModel.isFilterRequired}get isPartitionRequired(){return rt(this.originalModel)?this.originalModel.isPartitionRequired:!1}get formatter(){return this.originalModel.formatter}set formatter(e){this.originalModel.formatter=e}}const pc=fc;function ua(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function mc(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)})}}class gc{static makeModel(e,t){var r=arguments;return mc(function*(){var i=r.length>2&&r[2]!==void 0?r[2]:new We(e),a=null;return!y.isTreeTable(t)&&!y.isPartitionedTable(t)&&t.hasInputTable&&(a=yield t.inputTable()),new pc(e,t,i,a)})()}}const zl=gc;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 ha(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){bc(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 bc(n,e,t){return e=Cc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Cc(n){var e=Sc(n,"string");return typeof e=="symbol"?e:String(e)}function Sc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function ql(n,e){var t=["isStuckToBottom","isStuckToRight","movedColumns","movedRows"];return n===e||t.every(r=>n[r]===e[r])}function Kl(n,e){var t=["advancedFilters","aggregationSettings","customColumnFormatMap","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.metrics.userColumnWidths===e.metrics.userColumnWidths&&n.metrics.userRowHeights===e.metrics.userRowHeights&&t.every(r=>n[r]===e[r])}function yc(){return U((n,e)=>Q.dehydrateGridState(n,e),(n,e)=>{var[t,r]=n,[i,a]=e;return t===i&&ql(r,a)})}function Ec(){return U((n,e)=>{var t=new Q(n.dh);return t.dehydrateIrisGridState(n,e)},(n,e)=>{var[t,r]=n,[i,a]=e;return t===i&&Kl(r,a)})}function wc(){return U((n,e,t)=>{var r=new Q(n.dh);return ha(ha({},r.dehydrateIrisGridState(n,e)),Q.dehydrateGridState(n,t))},(n,e)=>{var[t,r,i]=n,[a,l,s]=e;return t===a&&Kl(r,l)&&ql(i,s)})}var Rn={makeMemoizedGridStateDehydrator:yc,makeMemoizedIrisGridStateDehydrator:Ec,makeMemoizedCombinedGridStateDehydrator:wc};function Xn(n,e,t){return e=Tc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Tc(n){var e=Pc(n,"string");return typeof e=="symbol"?e:String(e)}function Pc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Qr{}Xn(Qr,"OPEN","ChartEvent.OPEN");Xn(Qr,"CLOSE","ChartEvent.CLOSE");Xn(Qr,"COLUMN_SELECTED","ChartEvent.COLUMN_SELECTED");const Ln=Qr;function Zt(n,e,t){return e=Oc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Oc(n){var e=Dc(n,"string");return typeof e=="symbol"?e:String(e)}function Dc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Lt{}Zt(Lt,"OPEN_GRID","IrisGridEvent.OPEN_GRID");Zt(Lt,"CLOSE_GRID","IrisGridEvent.CLOSE_GRID");Zt(Lt,"DATA_SELECTED","IrisGridEvent.DATA_SELECTED");Zt(Lt,"COLUMN_SELECTED","IrisGridEvent.COLUMN_SELECTED");Zt(Lt,"STATE_CHANGED","IrisGridEvent.STATE_CHANGED");Zt(Lt,"CREATE_CHART","IrisGridevent.CREATE_CHART");const nt=Lt,Xl=Object.freeze({OPEN:"MarkdownEvent.OPEN"});function Yl(n,e,t){return e=Nc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Nc(n){var e=Fc(n,"string");return typeof e=="symbol"?e:String(e)}function Fc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Yn{}Yl(Yn,"OPEN","PandasEvent.OPEN");Yl(Yn,"CLOSE","PandasEvent.CLOSE");const Mc=Yn;function Cr(n){var{widgetType:e,widgetName:t,glContainer:r,description:i,children:a}=n,l=$.getTitleFromContainer(r);return f.jsxs("div",{className:"tab-tooltip-grid-container",children:[f.jsxs("span",{className:"tab-tooltip-title",children:[e," Name"]}),f.jsxs("div",{className:"tab-tooltip-name-wrapper",children:[f.jsx("span",{className:"tab-tooltip-name",children:t}),f.jsx(pu,{className:"tab-tooltip-copy",tooltip:"Copy name",copy:t})]}),t!==l&&f.jsxs(f.Fragment,{children:[f.jsx("span",{className:"tab-tooltip-title",children:"Display Name"}),f.jsx("span",{className:"tab-tooltip-name",children:l})]}),i&&f.jsx("div",{className:"tab-tooltip-description",children:i}),a]})}Cr.propTypes={glContainer:ul.Container.isRequired,widgetType:B.string,widgetName:B.string,description:B.string,children:B.node};Cr.defaultProps={widgetType:"",widgetName:"",description:null,children:null};function Zl(n,e,t){return e=Ic(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ic(n){var e=Rc(n,"string");return typeof e=="symbol"?e:String(e)}function Rc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Ql extends T.PureComponent{constructor(e){super(e),Zl(this,"getCachedRenderTabTooltip",U((t,r,i,a,l)=>t?()=>f.jsx(Cr,{glContainer:r,widgetType:i,widgetName:a,description:l}):null)),this.handleSessionClosed=this.handleSessionClosed.bind(this),this.handleSessionOpened=this.handleSessionOpened.bind(this),this.handleCopyName=this.handleCopyName.bind(this),this.state={isClientDisconnected:!1,isPanelDisconnected:!1,isWidgetDisconnected:!1,isWaitingForReconnect:!1,isPanelInactive:!1}}handleCopyName(){var{widgetName:e}=this.props;ol(e)}getErrorMessage(){var{errorMessage:e}=this.props,{isClientDisconnected:t,isPanelDisconnected:r,isWidgetDisconnected:i,isWaitingForReconnect:a}=this.state;if(e)return"".concat(e);if(t&&r&&a)return`Disconnected from server.
7
7
  Check your internet connection.`;if(t&&r)return"Disconnected from server.";if(r){var{widgetName:l,widgetType:s}=this.props;return'Variable "'.concat(l,`" not set.
8
- `).concat(s," does not exist yet.")}if(i){var{widgetName:o}=this.props;return"".concat(o," is unavailable.")}}handleSessionClosed(){var{onSessionClose:e}=this.props;this.setState({isPanelDisconnected:!0,isWaitingForReconnect:!1}),e(...arguments)}handleSessionOpened(){var{onSessionOpen:e}=this.props;e(...arguments)}render(){var{children:e,className:t,componentPanel:r,isLoaded:i,isLoading:a,glContainer:l,glEventHub:s,isDisconnected:o,isClonable:u,isRenamable:d,showTabTooltip:h,renderTabTooltip:c,widgetType:v,widgetName:g,description:p,onClearAllFilters:m,onHide:b,onFocus:y,onBlur:C,onResize:E,onShow:w,onTabBlur:P,onTabFocus:I,onTabClicked:F}=this.props,{isPanelDisconnected:D,isWidgetDisconnected:M,isPanelInactive:R}=this.state,_=this.getErrorMessage(),V=c??this.getCachedRenderTabTooltip(h,l,v,g,p),K=[{title:"Copy ".concat(v," Name"),group:Ke.groups.medium,order:20,action:this.handleCopyName}];return f.jsxs(qt,{className:Ie(t,{disconnected:D||M||o,inactive:R}),componentPanel:r,glContainer:l,glEventHub:s,onClearAllFilters:m,onHide:b,onFocus:y,onBlur:C,onResize:E,onShow:w,onSessionClose:this.handleSessionClosed,onSessionOpen:this.handleSessionOpened,onTabBlur:P,onTabFocus:I,onTabClicked:F,renderTabTooltip:V,errorMessage:_,isLoaded:i,isLoading:a,isClonable:u,isRenamable:d,additionalActions:K,children:[e,R&&f.jsx("div",{className:"fill-parent-absolute"})]})}}Zl(Ql,"defaultProps",{className:"",errorMessage:null,isClonable:!0,isDisconnected:!1,isLoading:!1,isLoaded:!0,isRenamable:!0,showTabTooltip:!0,widgetName:"Widget",widgetType:"Widget",renderTabTooltip:null,description:"",onFocus:()=>{},onBlur:()=>{},onHide:()=>{},onClearAllFilters:()=>{},onResize:()=>{},onSessionClose:()=>{},onSessionOpen:()=>{},onShow:()=>{},onTabBlur:()=>{},onTabFocus:()=>{},onTabClicked:()=>{}});const Sr=Ql,Qe=Object.freeze({DEFAULT:"DEFAULT",LINKER:"LINKER"});var Rc=(n,e)=>t=>t(wt(n,{connection:e})),Lc=(n,e)=>t=>t(wt(n,{sessionWrapper:e})),Jr=(n,e)=>t=>t(wt(n,{links:e})),Jl=(n,e)=>(t,r)=>{var i=Tt(r(),n),a=e.filter(l=>i.findIndex(s=>jr(s.start,l.start)&&jr(s.end,l.end))<0);return t(Jr(n,i.concat(a)))},es=(n,e)=>(t,r)=>{var i=Tt(r(),n),a=i.filter(l=>!e.includes(l.id));return t(Jr(n,a))},Zn=(n,e)=>t=>t(wt(n,{isolatedLinkerPanelId:e})),ts=(n,e)=>t=>t(wt(n,{columnSelectionValidator:e})),rs=(n,e)=>t=>t(wt(n,{consoleSettings:e})),ns=(n,e)=>t=>t(wt(n,{filterSets:e}));function is(n){var{columnMap:e,inputFilterMap:t,linkedColumnMap:r,onAdd:i,onOpenLinker:a,waitingFilterMap:l,waitingInputMap:s}=n,o=T.useMemo(()=>{var g=Array.from(s.keys()),p=g.find(y=>t.get(y)!=null),m=g.find(y=>r.get(y)!=null),b=Xe.join(g.map(y=>'"'.concat(y,'"')));return p!=null&&p&&m!=null&&m?"Use a filter control or linked table to set a value for ".concat(b):p!=null&&p?"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=T.useMemo(()=>Array.from(e.values()),[e]),d=T.useCallback(g=>{g.stopPropagation(),g.preventDefault(),i(Array.from(l.values()))},[i,l]),h=T.useCallback(g=>{g.stopPropagation(),g.preventDefault(),a()},[a]),c=l.size>0,v=!c&&s.size>0;return f.jsx("div",{className:"chart-panel-overlay chart-filter-overlay",children:f.jsxs("div",{className:Ie("chart-panel-overlay-content chart-filter-overlay-content",{"chart-filter-waiting-filter":c},{"chart-filter-waiting-input":v}),children:[c&&f.jsxs(f.Fragment,{children:[f.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:"}),f.jsx("div",{className:"waiting-filter-list",children:u.map(g=>{var p=l.has(g.name),m=p?zo:qo;return f.jsxs("div",{className:Ie("waiting-filter-item",{"is-invalid":p}),children:[f.jsx(Me,{icon:m}),g.name]},g.name)})}),f.jsxs("div",{children:[f.jsx(Z,{kind:"primary",onClick:d,children:"Add Input Filters"}),f.jsx(Z,{kind:"primary",onClick:h,children:"Open Linker Tool"})]})]}),v&&f.jsxs(f.Fragment,{children:[f.jsx("div",{className:"info-message",children:"Waiting for User Input"}),f.jsx("div",{className:"",children:o})]})]})})}is.propTypes={columnMap:B.instanceOf(Map).isRequired,inputFilterMap:B.instanceOf(Map).isRequired,linkedColumnMap:B.instanceOf(Map).isRequired,onAdd:B.func.isRequired,onOpenLinker:B.func.isRequired,waitingFilterMap:B.instanceOf(Map).isRequired,waitingInputMap:B.instanceOf(Map).isRequired};function pr(n){var{columns:e,onColumnSelected:t,onMouseEnter:r,onMouseLeave:i}=n;return f.jsx("div",{className:"chart-panel-overlay chart-column-selector-overlay",children:f.jsxs("div",{className:Ie("chart-panel-overlay-content"),children:[f.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:"}),f.jsx("div",{className:"waiting-column-select-list",children:e.map(a=>f.jsx(Fl,{className:Ie("btn-chart-column-selector",pr.makeButtonClassName(a.name)),onClick:()=>t(a.name),onMouseEnter:()=>{r&&r(a)},onMouseLeave:i,disabled:!a.isValid,isLinked:a.isActive,children:a.name},a.name))})]})})}pr.makeButtonClassName=n=>"btn-chart-column-selector-".concat(n);pr.defaultProps={onMouseEnter:()=>{},onMouseLeave:()=>{}};function Vt(n){return n.settings!==void 0}function Qn(n){return n.figure!==void 0}function as(n){if(n==null)return!1;var{settings:e,tableSettings:t}=n;return typeof e=="object"&&typeof t=="object"}function ls(n){return n!=null&&as(n.panelState)}var Jn=Kt(ut.COLUMNS_CHANGED),Ac=Jn.listen,Gr=Jn.emit,kc=Jn.useListener,ei=Kt(ut.TABLE_CHANGED);ei.listen;var Ur=ei.emit,xc=ei.useListener,ti=Kt(ut.FILTERS_CHANGED);ti.listen;var ss=ti.emit,_c=ti.useListener,ri=Object.freeze({LINK_POINT_SELECTED:"LinkerEvent.LINK_POINT_SELECTED",SOURCE_DATA_SELECTED:"LinkerEvent.SOURCE_DATA_SELECTED",REGISTER_TARGET:"LinkerEvent.REGISTER_TARGET"}),ni=Kt(ri.LINK_POINT_SELECTED),jc=ni.listen,en=ni.emit;ni.useListener;var ii=Kt(ri.SOURCE_DATA_SELECTED),Vc=ii.listen,os=ii.emit;ii.useListener;var ai=Kt(ri.REGISTER_TARGET),$c=ai.listen,ca=ai.emit;ai.useListener;function va(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function fa(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?va(Object(t),!0).forEach(function(r){Ye(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):va(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Ye(n,e,t){return e=Hc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Hc(n){var e=Gc(n,"string");return typeof e=="symbol"?e:String(e)}function Gc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var _e=J.module("ChartPanel"),Uc=150;function Bc(n){return n.inputFilters!=null}function Wc(n){return n.panelState!=null}class tn extends T.Component{constructor(e){super(e),Ye(this,"panelContainer",void 0),Ye(this,"pending",void 0),Ye(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})),Ye(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})),Ye(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})),Ye(this,"getLinkedColumnMap",U((l,s)=>{for(var o=new Map,u=$.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);N(v),o.set(c,v)}}return o})),Ye(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)})))),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=ht(this.updateModelFromSource.bind(this),Uc),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.panelContainer=Pe.createRef(),this.pending=new _n;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&&Vt(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;s&&(a!==e.makeModel&&this.initModel(),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&&Ui(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});var{makeModel:e}=this.props;this.pending.add(e(),t=>{t.close()}).then(this.handleLoadSuccess,this.handleLoadError)}startListeningToSource(e){_e.debug("startListeningToSource",e);var{model:t}=this.state;N(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){_e.debug("stopListeningToSource",e);var{model:t}=this.state;N(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=$.getIdFromPanel(this);N(i);var a=r.get(e);a!=null&&en(t,i,a,{type:"chartLink"})}handleColumnMouseEnter(e){var{type:t,name:r}=e,{columnSelectionValidator:i}=this.props;_e.debug("handleColumnMouseEnter",i,t,r),i&&i(this,{type:t,name:r},{type:"chartLink"})}handleColumnMouseLeave(){var{columnSelectionValidator:e}=this.props;_e.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(Qe.LINKER)}handleReconnect(){this.setState({isDisconnected:!1,error:void 0}),this.sendColumnChange(),this.updateColumnFilters()}handleLoadSuccess(e){_e.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){Ae.isCanceled(e)||(_e.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){_e.debug2("updateModelFromSource ignoring",r,i,t);return}var{dh:a}=i;if(this.pending.cancel(),Vt(e)){var{settings:l}=e;this.pending.add(a.plot.Figure.create(new Re(a).makeFigureSettings(l,t))).then(s=>{Ui(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&&Bc(e.props)&&Wc(e.state)){var{inputFilters:l}=e.props,{panelState:s}=e.state;s!=null&&(a=Q.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=fa(fa({},r),e);return _e.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(ut.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=$.getIdFromPanel(this);N(r),Gr(t,r,Array.from(e.getFilterColumnMap().values()))}}getCoordinateForColumn(e){var t,r=pr.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){_e.debug("setFilterMap",e),this.setState(t=>{var r,{columnMap:i,filterMap:a}=t,l=null,s=new Map(t.filterValueMap);return e.forEach((o,u)=>{var{columnType:d,filterList:h}=o,c=i.get(u);if(!(c==null||c.type!==d)){if(h.length===0){_e.debug("Ignoring empty filterList for column",u);return}var{value:v}=h[0];s.set(u,v),a.get(u)!==v&&(l===null&&(l=new Map(a)),l.set(u,v))}}),{filterValueMap:s,filterMap:(r=l)!==null&&r!==void 0?r:a}})}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 _e.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 _e.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;N(r);var i=this.getWaitingInputMap(r.isFilterRequired(),e,t);if(r.setFilter(t),t.size>0&&i.size===0){var a=r.getDefaultTitle(),l=Xe.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),_e.debug2("updateFilters filters set",t),this.setState({isLoading:!0})}else _e.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 e,{columnSelectionValidator:t,glContainer:r,glEventHub:i,inputFilters:a,isLinkerActive:l,links:s,metadata:o,settings:u,Plotly:d,containerRef:h}=this.props,{columnMap:c,filterMap:v,error:g,model:p,isActive:m,isDisconnected:b,isLoaded:y,isLoading:C}=this.state,E;Vt(o)?E=o.table:Qn(o)?E=o.figure:E=o.name;var w=this.getInputFilterColumnMap(c,a),P=this.getLinkedColumnMap(c,s),I=p!=null?this.getWaitingInputMap(p.isFilterRequired(),c,v):new Map,F=p!=null?this.getWaitingFilterMap(p.isFilterRequired(),c,v,P,w):new Map,D=g!=null?"Unable to open chart. ".concat(g):void 0,M=I.size>0,R=c.size>0&&l;return f.jsx(Sr,{className:Ie("iris-chart-panel",{"input-required":M}),componentPanel:this,glContainer:r,glEventHub:i,onHide:this.handleHide,onClearAllFilters:this.handleClearAllFilters,onShow:this.handleShow,onTabBlur:this.handleTabBlur,onTabFocus:this.handleTabFocus,errorMessage:D,isDisconnected:b,isLoading:C,isLoaded:y,widgetName:(e=E)!==null&&e!==void 0?e:void 0,widgetType:"Chart",children:f.jsxs("div",{ref:this.panelContainer,className:"chart-panel-container h-100 w-100",children:[f.jsx("div",{className:"chart-container h-100 w-100",children:y&&p&&f.jsx(xl,{isActive:m,model:p,settings:u,onDisconnect:this.handleDisconnect,onReconnect:this.handleReconnect,onUpdate:this.handleUpdate,onError:this.handleError,onSettingsChanged:this.handleSettingsChanged,Plotly:d,containerRef:h})}),f.jsx(wn,{in:M&&!R&&!C,mountOnEnter:!0,unmountOnExit:!0,children:f.jsx(is,{inputFilterMap:w,linkedColumnMap:P,onAdd:this.handleFilterAdd,onOpenLinker:this.handleOpenLinker,columnMap:c,waitingFilterMap:F,waitingInputMap:I})}),f.jsx(wn,{in:R,mountOnEnter:!0,unmountOnExit:!0,children:f.jsx(pr,{columns:this.getSelectorColumns(c,P,t),onColumnSelected:this.handleColumnSelected,onMouseEnter:this.handleColumnMouseEnter,onMouseLeave:this.handleColumnMouseLeave})})]})})}}Ye(tn,"defaultProps",{columnSelectionValidator:null,isLinkerActive:!1,source:null,sourcePanel:null,panelState:null,settings:{},containerRef:null});Ye(tn,"displayName","ChartPanel");Ye(tn,"COMPONENT","ChartPanel");var zc=(n,e)=>{var{localDashboardId:t,metadata:r}=e,i;r!=null&&Vt(r)&&(i=r.sourcePanelId);var a=qr(n,t),l=hl(n,t),s=jn(n),o=Kr(n,t),u=s===Qe.LINKER&&o===void 0;return{columnSelectionValidator:mr(n,t),isLinkerActive:u,inputFilters:gr(n,t),links:Tt(n,t),source:i!=null?a.get(i):void 0,sourcePanel:i!=null?l.get(i):void 0,settings:Xr(n)}},qc=Et(zc,{setActiveTool:dl,setDashboardIsolatedLinkerPanelId:Zn},null,{forwardRef:!0})(tn);const li=qc;function Ze(n,e,t){return e=Kc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Kc(n){var e=Xc(n,"string");return typeof e=="symbol"?e:String(e)}function Xc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Fr=J.module("DropdownFilter"),Yc=150;class dt extends T.Component{constructor(e){super(e),Ze(this,"dropdownRef",void 0),Ze(this,"getCompatibleColumns",U((a,l)=>a!=null?l.filter(s=>{var{type:o}=s;return o!==void 0&&S.isCompatibleType(o,a.columnType)}):[])),Ze(this,"getColumnOptions",U((a,l)=>{var s=-1,o=[];return o.push(f.jsx("option",{value:"-1",children:"Select a column"},"placeholder")),a.forEach((u,d)=>{o.push(f.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]})),Ze(this,"getSelectedOptionIndex",U((a,l)=>a.indexOf(l))),Ze(this,"getValueOptions",U(a=>[f.jsx("option",{value:"-1",children:dt.PLACEHOLDER},"-1"),...a.map((l,s)=>f.jsx("option",{value:s,children:l??"(null)"},"".concat(s,"/").concat(l)))])),Ze(this,"getItemLabel",Ue((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})),Ze(this,"sendUpdate",ht(()=>{var{onChange:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a({column:l,isValueShown:o,value:s??void 0})},Yc)),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=Pe.createRef();var{column:t,isValueShown:r,value:i}=e;this.state={column:t,id:Be(),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:p,selectedColumn:m,value:b}=this.state,y=l===null,C=this.getCompatibleColumns(l,t),E=l!=null,w=(e=l==null?void 0:l.columnName)!==null&&e!==void 0?e:dt.SOURCE_BUTTON_PLACEHOLDER,P=c!=null?"".concat(c.name," Filter"):null,[I,F]=this.getColumnOptions(C,m),D=this.getValueOptions(d),M=this.getSelectedOptionIndex(d,b),R=!E||m==null,_=p&&!i,V="source-column-btn-".concat(g),K="filter-column-select-".concat(g);return f.jsxs(Gn,{className:"dropdown-filter fill-parent-absolute",isFlipped:_,children:[f.jsx("div",{className:"dropdown-filter-settings-card",children:f.jsxs("div",{className:"dropdown-filter-card-content",children:[f.jsxs("div",{className:"dropdown-filter-settings-grid",children:[f.jsx("label",{htmlFor:V,children:"Source Column"}),f.jsx(Fl,{id:V,isLinked:E,onClick:s,onMouseEnter:o,onMouseLeave:u,className:dt.SOURCE_BUTTON_CLASS_NAME,disabled:r,children:w}),f.jsx("div",{className:"text-muted small",children:"Select a source column for the list by linking to a table."}),f.jsx("label",{htmlFor:K,children:"Filter Column"}),f.jsx(cr,{id:K,value:String(F),className:"custom-select",onChange:this.handleColumnChange,disabled:y,children:I}),f.jsx("div",{className:"text-muted small",children:"Dropdown filter control will apply its filter to all columns matching this name in this dashboard."})]}),h&&f.jsx("div",{className:"error-message text-center",children:h}),E&&f.jsxs("div",{className:"dropdown-filter-settings-buttons",children:[f.jsx(Z,{kind:"secondary",type:"button",onClick:this.handleSettingsCancel,disabled:v||p||i,tooltip:i?"Cancel disabled while linker open":void 0,children:"Cancel"}),f.jsx(Z,{kind:"primary",type:"button",className:"ml-2",onClick:this.handleSettingsSave,disabled:R||p||i,tooltip:i?"Save disabled while linker open":void 0,children:"Save"})]})]})}),f.jsx("div",{className:"dropdown-filter-value-card",onClick:this.handleBackgroundClick,"data-testid":"dropdown-filter-value-background",children:a&&f.jsxs(f.Fragment,{children:[f.jsx("div",{className:"dropdown-filter-column",children:f.jsx("div",{className:"dropdown-filter-column-title",children:P})}),f.jsxs("div",{className:"dropdown-filter-card-content",children:[f.jsx("div",{className:"dropdown-filter-value-input d-flex flex-column justify-content-center",children:f.jsx(cr,{className:"custom-select",value:String(M),ref:this.dropdownRef,onChange:this.handleValueChange,onKeyDown:this.handleDropdownKeyPress,title:"Select Value",children:D})}),h&&f.jsx("div",{className:"error-message mt-3 text-center",children:h})]}),f.jsx("div",{className:"dropdown-filter-menu",children:f.jsx(Z,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:f.jsx(Me,{icon:$n,transform:"grow-4"}),tooltip:"Dropdown Filter Settings"})})]})})]})}}Ze(dt,"defaultProps",{column:null,disableLinking:!1,isLinkerActive:!1,isLoaded:!1,isValueShown:!1,settingsError:null,source:null,value:"",values:[],onColumnSelected:()=>{},onSourceMouseEnter:()=>{},onSourceMouseLeave:()=>{}});Ze(dt,"PLACEHOLDER","Select a value...");Ze(dt,"SOURCE_BUTTON_CLASS_NAME","btn-dropdown-filter-selector");Ze(dt,"SOURCE_BUTTON_PLACEHOLDER","Select a column");const pa=dt;function Le(n,e,t){return e=Zc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Zc(n){var e=Qc(n,"string");return typeof e=="symbol"?e:String(e)}function Qc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var de=J.module("DropdownFilterPanel"),Jc=250,ev=(n,e)=>{var{localDashboardId:t}=e,r=$.getIdFromPanel({props:e}),i=qr(n,t),a=Tt(n,t),l=jn(n),s=Kr(n,t),o=l===Qe.LINKER&&(s===void 0||s===r),u=l===Qe.LINKER&&s!==void 0&&s!==r;return{columns:Vn(n,t),columnSelectionValidator:mr(n,t),dh:cl(n),isLinkerActive:o,disableLinking:u,settings:Xr(n),panelTableMap:i,dashboardLinks:a}},tv=Et(ev,null,null,{forwardRef:!0});class Je extends T.Component{constructor(e){super(e),Le(this,"dateTimeFormatter",void 0),Le(this,"dropdownFilterRef",void 0),Le(this,"panelContainer",void 0),Le(this,"pending",void 0),Le(this,"cleanup",void 0),Le(this,"columnFormats",void 0),Le(this,"getCachedValues",Ue((h,c,v)=>{var{type:g,name:p}=c;return g!==void 0&&S.isDateType(g)?h.map(m=>this.dateTimeFormatter.format(m)):h.map(m=>m!=null&&g!=null?v.getFormattedString(m,g,p):null)})),Le(this,"getCachedPanelLinks",Ue((h,c)=>{var v=$.getIdFromPanel(c);return de.debug("getCachedPanelLinks",h,v),h.filter(g=>{var p;return((p=g.end)===null||p===void 0?void 0:p.panelId)===v})})),Le(this,"getCachedSource",Ue(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})),Le(this,"getCachedSourceTable",Ue((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})),Le(this,"getCachedSourceColumn",Ue((h,c)=>{var v;return de.debug("getCachedSourceColumn",h,c),h==null||c==null?null:(v=h.columns.find(g=>{var{name:p,type:m}=g;return p===c.columnName&&m===c.columnType}))!==null&&v!==void 0?v:null})),this.handleChange=ht(this.handleChange.bind(this),Jc),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=Pe.createRef(),this.panelContainer=Pe.createRef(),this.pending=new _n;var{dh:t,panelState:r,settings:i}=e;this.columnFormats=Tn.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 We(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(pa.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>Je.MAX_TABLE_SIZE)return"Table too large, must have fewer than ".concat(Je.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,h,{panelState:c,timestamp:v,wasFlipped:g,skipUpdate:p}=u,m=c!=null&&r!==c.isValueShown&&a===c.name&&l===c.type&&i===c.value;return s=(d=!p&&r&&(!m||!g))!==null&&d!==void 0?d:!1,s||(o=v),{panelState:{isValueShown:r,name:a,type:l,value:i,timestamp:(h=o)!==null&&h!==void 0?h: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=$.getIdFromPanel(this);N(t),en(e,t,Je.SOURCE_COLUMN,{type:"filterSource"})}handleClearAllFilters(){var e,t;(e=this.dropdownFilterRef)===null||e===void 0||(t=e.current)===null||t===void 0||t.clearFilter()}setPanelState(e){var t,r,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,{dashboardLinks:a}=this.props;if(this.getSource(a)==null){de.debug("Ignore state update for unlinked filter",e);return}this.setState({skipUpdate:!i}),(t=this.dropdownFilterRef)===null||t===void 0||(r=t.current)===null||r===void 0||r.setFilterState(e)}sendUpdate(e,t,r,i){var a,{dashboardLinks: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=$.getIdFromPanel(this);N(d),ss(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=>{Ae.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,Je.MAX_TABLE_SIZE-1,[r])}updateFormatterSettings(e){var{dh:t}=this.props,r=Tn.getColumnFormats(e);jr(this.columnFormats,r)||(this.columnFormats=r,this.setState({formatter:new We(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,Je.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:p}=this.state,m=this.getSource(t),b=this.getSettingsErrorMessage(),y=this.getPanelErrorMessage(),C=p&&v!=null?this.getCachedValues(c,v,o):[];return f.jsx(Sr,{errorMessage:y,isLoading:g,isLoaded:p,isDisconnected:u,className:"iris-dropdown-filter-panel",componentPanel:this,glContainer:i,glEventHub:a,onClearAllFilters:this.handleClearAllFilters,widgetName:"Dropdown Filter",widgetType:"DropdownFilter",children:f.jsx("div",{ref:this.panelContainer,className:"dropdown-filter-container h-100 w-100 container",children:f.jsx(pa,{ref:this.dropdownFilterRef,column:s,columns:e,isValueShown:d,isLinkerActive:l,disableLinking:r,isLoaded:p,settingsError:b,source:m,value:h,values:C,onChange:this.handleChange,onColumnSelected:this.handleColumnSelected,onSourceMouseEnter:this.handleSourceMouseEnter,onSourceMouseLeave:this.handleSourceMouseLeave})})})}}Le(Je,"displayName","DropdownFilterPanel");Le(Je,"COMPONENT","DropdownFilterPanel");Le(Je,"MAX_TABLE_SIZE",256);Le(Je,"SOURCE_COLUMN",Object.freeze({name:"FilterSource",type:null}));var rv=tv(Je);const $t=rv;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 Nr(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){sr(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 sr(n,e,t){return e=nv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function nv(n){var e=iv(n,"string");return typeof e=="symbol"?e:String(e)}function iv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ce=J.module("FilterSetManager"),av="Enter name...",ga="No Available Filter Sets";class Br extends T.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),sr(this,"renameInputRef",Pe.createRef()),sr(this,"dropdownRef",Pe.createRef()),sr(this,"editDropdownRef",Pe.createRef()),sr(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;ce.debug("initSettingsScreen",e,t),this.setState({modifiedFilterSets:[...e],editId:t})}updateSelectedId(){var{isValueShown:e,filterSets:t,selectedId:r,onChange:i}=this.props;if(ce.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:[]}),ce.debug("Update sets",r,i),t(r),r.length>0&&e({isValueShown:!0,selectedId:i})}handleCaptureNewSet(){var{getFilterState:e}=this.props;Br.animateScreenFlash();var t=Be(),r=e(),i={id:t,title:"",panels:r};ce.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 ce.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 ce.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){ce.error("Renamed set undefined.");return}var l=this.getNameError(t);if(ce.debug("handleRenameConfirm",t,l),l!==void 0){this.setState({nameInputError:l});return}var s=(e=t==null?void 0:t.trim())!==null&&e!==void 0?e:"",o=Nr(Nr({},r),{},{title:s,restoreFullState:a}),u=i.findIndex(h=>{var{id:c}=h;return c===r.id}),d=[...i];u>=0?(d[u]=o,ce.debug("Renamed existing set",d)):(d.push(o),ce.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 ce.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 ce.debug("Deleted selected set",t,r,a),ce.debug("New selection",l,s),{modifiedFilterSets:a,editId:s}})}handleSetUpdate(){var{getFilterState:e}=this.props;Br.animateScreenFlash();var t=e();this.setState(r=>{var{modifiedFilterSets:i,editId:a}=r;if(a===void 0)return ce.error("Filter for update not selected."),null;var l=[...i],s=l.findIndex(o=>{var{id:u}=o;return u===a});return s<0?(ce.error("Selected set for update not found."),null):(l[s]=Nr(Nr({},l[s]),{},{panels:t}),ce.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 ce.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){ce.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){ce.debug("No filter selected");return}var i=r.find(a=>{var{id:l}=a;return l===e});if(i===void 0){ce.debug("Selected id not found in filterSets",e,r);return}ce.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,p=f.jsxs("div",{className:"fa-layers mr-3",children:[f.jsx(Me,{icon:Pi,mask:Oi,transform:"shrink-1 down-5 right-7"}),f.jsx(Me,{icon:Xo,className:"text-primary",transform:"shrink-6 down-5 right-7"})]}),m=f.jsxs("div",{className:"fa-layers",children:[f.jsx(Me,{icon:Pi,mask:Oi,transform:"shrink-1 down-5 right-7"}),f.jsx(Me,{icon:Yo,transform:"shrink-1 down-5 right-7"})]});return f.jsx("div",{className:"filter-set-manager fill-parent-absolute",children:f.jsxs(Gn,{className:"w-100 h-100",isFlipped:s,children:[f.jsx("div",{className:"filter-set-manager-settings-card fill-parent-absolute",children:f.jsxs("div",{className:"filter-set-manager-card-content",children:[v&&f.jsxs("div",{children:[f.jsx(Z,{kind:"ghost",className:"btn btn-link no-underline",onClick:this.handleCaptureNewSet,icon:p,children:"Capture filter set"}),f.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&&f.jsxs("div",{className:"d-flex flex-column justify-content-center","data-testid":"edit-filter-set-container",children:[f.jsxs("div",{className:"form-group",children:[f.jsx("label",{children:h?"Edit set":"Name captured set"}),f.jsxs("div",{className:"name-input-container",children:[f.jsx("input",{type:"text",className:"input-set-name form-control",placeholder:av,value:e,ref:this.renameInputRef,onChange:this.handleNameInputChange,onKeyPress:this.handleNameInputKeyPress,spellCheck:"false"}),f.jsx(Z,{"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}),f.jsx(Z,{"data-testid":"rename-cancel-button",kind:"ghost",className:"btn btn-link no-underline pt-2 pb-2",onClick:this.handleRenameCancel,tooltip:"Cancel",icon:Ko})]}),t!==void 0&&f.jsx("div",{className:"error-message",children:t})]}),f.jsx("div",{className:"form-group",children:f.jsxs(to,{"aria-label":"Restoration options",onChange:this.handleRestoreFullStateChange,value:"".concat(l),children:[f.jsx(yi,{value:"false",children:"Restore only filters"}),f.jsx(yi,{value:"true",children:"Restore full table state"})]})})]}),g&&f.jsxs("div",{className:"filter-set-manager-settings-grid-1",children:[f.jsxs("div",{className:"form-group",children:[f.jsx("label",{children:"Edit filter sets"}),f.jsxs("div",{className:"filter-select-container",children:[f.jsxs(cr,{"data-testid":"settings-card-filter-select",ref:this.editDropdownRef,value:r??"-1",className:"custom-select filter-value-select",onChange:this.handleEditDropdownChange,disabled:c,children:[c&&f.jsx("option",{value:"-1",disabled:!0,children:ga}),a.map(b=>{var{id:y,title:C}=b;return f.jsx("option",{value:y,children:C},y)})]}),f.jsx(Z,{kind:"ghost",onClick:this.handleSetUpdate,disabled:c,icon:m,tooltip:"Update"}),f.jsx(Z,{kind:"ghost",onClick:this.handleSetEdit,disabled:c,icon:Ol,tooltip:"Edit"}),f.jsx(Z,{kind:"ghost",onClick:this.handleSetDelete,disabled:c,icon:Yr,tooltip:"Delete"})]})]}),f.jsx("div",{children:f.jsx(Z,{kind:"ghost",className:"btn btn-link no-underline",onClick:this.handleCaptureNewSet,icon:p,children:"Capture new filter set"})}),f.jsxs("div",{className:"py-3 text-right",children:[f.jsx(Z,{kind:"secondary",onClick:this.handleSettingsCancel,children:"Cancel"})," ",f.jsx(Z,{kind:"primary",onClick:this.handleSettingsSave,children:"Save"})]})]})]})},"front"),f.jsxs("div",{className:"filter-set-manager-value-card fill-parent-absolute",onClick:this.handleBackgroundClick,children:[f.jsx("div",{className:"filter-set-manager-column",children:f.jsx("div",{className:"filter-set-manager-column-title",children:"Filter sets"})}),f.jsx("div",{className:"filter-set-manager-card-content",children:f.jsx("div",{className:"filter-set-manager-value-input",children:f.jsxs("div",{className:"filter-select-container",children:[f.jsxs(cr,{"data-testid":"value-card-filter-select",ref:this.dropdownRef,value:u??"-1",className:"custom-select filter-value-select",onChange:this.handleFilterChange,children:[o.length===0&&f.jsx("option",{value:"-1",disabled:!0,children:ga}),o.map(b=>{var{id:y,title:C}=b;return f.jsx("option",{value:y,children:C},y)})]}),f.jsx(Z,{"data-testid":"filter-apply-button",kind:"ghost",onClick:this.handleFilterApply,icon:Dl,tooltip:"Apply Filter Set"})]})})}),f.jsx("div",{className:"filter-set-manager-menu",children:f.jsx(Z,{kind:"ghost",className:"btn btn-link btn-link-icon m-2 px-2",onClick:this.handleSettingsClick,tooltip:"Settings",icon:f.jsx(Me,{icon:$n,transform:"grow-4"})})})]},"back")]})})}}const us=Br;function si(n){var e,t,r,i,a,{model:l,widgetName:s,glContainer:o,description:u}=n,d=((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),h=l==null?void 0:l.displayString(d,"long"),c=(a=l==null?void 0:l.columnCount)!==null&&a!==void 0?a:0,v=l==null?void 0:l.displayString(c,"long");return f.jsxs(Cr,{widgetType:"Table",widgetName:s,glContainer:o,description:u,children:[f.jsx("hr",{className:"tab-tooltip-divider"}),f.jsx("span",{children:"Number of Columns"}),f.jsx("span",{className:"tab-tooltip-statistic-value",children:v}),f.jsx("span",{children:"Number of Rows"}),f.jsx("span",{className:"tab-tooltip-statistic-value",children:h})]})}si.propTypes={glContainer:ul.Container.isRequired,widgetName:B.string.isRequired,description:B.string};si.defaultProps={description:null};function ds(n){if(n==null)return!1;var e=n;return typeof e.table=="string"}function hs(n){if(n==null)return!1;var e=n;return typeof e.name=="string"}function ba(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function mt(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ba(Object(t),!0).forEach(function(r){pe(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ba(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function pe(n,e,t){return e=lv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function lv(n){var e=sv(n,"string");return typeof e=="symbol"?e:String(e)}function sv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var tt=J.module("IrisGridPanel"),ov=500;function Ca(n){if(n==null)throw new Error("No metadata provided");if(hs(n))return n.name;if(ds(n))return n.table;throw new Error("Unable to determine table name from metadata: ".concat(JSON.stringify(n)))}class Bt extends T.PureComponent{constructor(e){super(e),pe(this,"irisGrid",void 0),pe(this,"pluginRef",void 0),pe(this,"modelPromise",void 0),pe(this,"irisGridState",void 0),pe(this,"gridState",void 0),pe(this,"pluginState",void 0),pe(this,"irisGridUtils",void 0),pe(this,"gridStateDehydrator",Rn.makeMemoizedGridStateDehydrator()),pe(this,"irisGridStateDehydrator",Rn.makeMemoizedIrisGridStateDehydrator()),pe(this,"getGridInputFilters",U((r,i)=>Q.getInputFiltersForColumns(r,i.filter(a=>{var{value:l,excludePanelIds:s}=a,o=$.getIdFromPanel(this);return l!=null&&(s==null||o!=null&&!s.includes(o))})))),pe(this,"getAlwaysFetchColumns",U((r,i)=>{for(var a=$.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]})),pe(this,"getPluginContent",U((r,i,a)=>{if(!i||!Mt(i)||r==null||i.table==null)return null;var l={panel:this};return f.jsx("div",{className:"iris-grid-plugin",children:f.jsx(r,mt({ref:this.pluginRef,filter:this.handlePluginFilter,fetchColumns:this.handlePluginFetchColumns,model:i,table:i.table,onStateChange:this.handlePluginStateChange,pluginState:a},l))})})),pe(this,"getDehydratedIrisGridPanelState",U((r,i,a,l)=>Q.dehydrateIrisGridPanelState(r,{isSelectingPartition:i,partitions:a,advancedSettings:l}))),pe(this,"getCachedPanelState",U((r,i,a,l)=>({irisGridPanelState:r,irisGridState:i,gridState:a,pluginState:l}))),pe(this,"savePanelState",ht(()=>{var{irisGridState:r,gridState:i,pluginState:a}=this;N(r);var{onPanelStateUpdate:l}=this.props,{model:s,panelState:o,isSelectingPartition:u,partitions:d,advancedSettings:h}=this.state;N(this.irisGridUtils),N(s),N(i);var c=this.getCachedPanelState(this.getDehydratedIrisGridPanelState(s,u,d,h),this.irisGridStateDehydrator(s,r),this.gridStateDehydrator(s,i),a);c!==o&&(tt.debug("Saving panel state",this,c),this.setState({panelState:c}),l==null||l(c))},ov)),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=Pe.createRef(),this.pluginRef=Pe.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($l.DEFAULTS),customColumns:[],customColumnFormatMap:new Map,isFilterBarShown:!1,quickFilters:new Map,sorts:[],userColumnWidths:new Map,userRowHeights:new Map,reverse:!1,movedColumns:[],movedRows:[],isSelectingPartition:!1,partitions:[],rollupConfig:void 0,showSearchBar:!1,searchValue:"",selectedSearchColumns:void 0,invertSearchColumns:!0,Plugin:void 0,pluginFilters:[],pluginFetchColumns:[],modelQueue:[],pendingDataMap:new Map,frozenColumns:void 0,panelState:t,irisGridStateOverrides:{},gridStateOverrides:{},isStuckToBottom:!1,isStuckToRight:!1,conditionalFormats:[],selectDistinctColumns:[]}}componentDidMount(){this.initModel()}componentDidUpdate(e,t){var{model:r}=this.state,{makeModel:i}=this.props;r!==t.model&&(t.model!=null&&(this.stopModelListening(t.model),t.model.close()),r!=null&&this.startModelListening(r)),i!==e.makeModel&&this.initModel()}componentWillUnmount(){this.savePanelState.cancel(),this.modelPromise!=null&&(this.modelPromise.cancel(),this.modelPromise=void 0);var{model:e}=this.state;e&&(this.stopModelListening(e),e.close())}getTableName(){var{metadata:e}=this.props;return Ca(e)}initModel(){this.setState({isModelReady:!1,isLoading:!0,error:null});var{makeModel:e}=this.props;this.modelPromise!=null&&this.modelPromise.cancel(),this.modelPromise=Ae.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 Q(t.dh),r!=null){var{irisGridState:l}=r,{aggregationSettings:s,customColumns:o,selectDistinctColumns:u=[],rollupConfig:d}=mt(mt({},l),i);o.length>0&&a.push(h=>{h.customColumns=o}),d!=null&&d.columns.length>0&&a.push(h=>{h.rollupConfig=Q.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();tt.debug("initModelQueue",i),i&&i(r),this.setState({modelQueue:t})}handleAdvancedSettingsChange(e,t){tt.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;N(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(nt.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):(N(r),this.initModelQueue(r,i))}handleTableChanged(e){tt.debug("handleTableChanged",e);var{glEventHub:t}=this.props,{detail:r}=e,i=$.getIdFromPanel(this);N(i),Ur(t,i,r)}handleCreateChart(e,t){this.savePanelState.flush(),this.setState(()=>null,()=>{var{glEventHub:r,inputFilters:i}=this.props,a=this.getTableName(),{panelState:l}=this.state,s=$.getIdFromPanel(this),o;l&&(o=Q.extractTableSettings(l,i)),r.emit(nt.CREATE_CHART,{metadata:{settings:e,sourcePanelId:s,table:a,tableSettings:o},table:Mt(t)?t.table:void 0})})}handleColumnSelected(e){var{glEventHub:t}=this.props,r=$.getIdFromPanel(this);N(r),en(t,r,e,{type:"tableLink"})}handleDataSelected(e,t){var{glEventHub:r}=this.props,i=$.getIdFromPanel(this);N(i),os(r,i,t)}handleShow(){this.updateGrid()}handleTabClicked(){this.irisGrid.current&&this.irisGrid.current.focus()}handleError(e){tt.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){Ae.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}),Mt(e)){var{table:i}=e,{pluginName:a}=i;if(a!==""&&r!=null&&a!=null){var l=r(a);this.setState({Plugin:l})}var s=$.getIdFromPanel(this);N(s),Ur(t,s,i)}this.sendColumnsChange(e.columns)}handleClearAllFilters(){var e=this.irisGrid.current,{isDisconnected:t}=this.state;e!=null&&!t&&e.clearAllFilters()}sendColumnsChange(e){tt.debug2("sendColumnsChange",e);var{glEventHub:t}=this.props,r=$.getIdFromPanel(this);N(r),Gr(t,r,e)}startModelListening(e){e.addEventListener(W.EVENT.DISCONNECT,this.handleDisconnect),e.addEventListener(W.EVENT.RECONNECT,this.handleReconnect),e.addEventListener(W.EVENT.COLUMNS_CHANGED,this.handleColumnsChanged),e.addEventListener(W.EVENT.TABLE_CHANGED,this.handleTableChanged)}stopModelListening(e){e.removeEventListener(W.EVENT.DISCONNECT,this.handleDisconnect),e.removeEventListener(W.EVENT.RECONNECT,this.handleReconnect),e.removeEventListener(W.EVENT.COLUMNS_CHANGED,this.handleColumnsChanged),e.removeEventListener(W.EVENT.TABLE_CHANGED,this.handleTableChanged)}getCoordinateForColumn(e){var t,r,i,{model:a}=this.state;if(!a)return null;var l=this.irisGrid.current,{gridWrapper:s}=l||{},o=(t=s==null?void 0:s.getBoundingClientRect())!==null&&t!==void 0?t:null;if(o==null||o.width<=0||o.height<=0)return null;N(l);var{metrics:u}=l.state;N(u);var{columnHeaderHeight:d,allColumnXs:h,allColumnWidths:c,right:v,columnHeaderMaxDepth:g}=u,p=a.getColumnIndexByName(e);N(p);var m=l.getVisibleColumn(p),b=(r=h.get(m))!==null&&r!==void 0?r:0,y=(i=c.get(m))!==null&&i!==void 0?i:0,C=Ge(m>v?o.right:o.left+b+y*.5,o.left,o.right),E=o.top+d*g;return[C,E]}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;tt.debug("setFilters",t,r);var{model:i,isDisconnected:a}=this.state,l=this.irisGrid.current;if(l==null||a){tt.debug("Ignore setFilters, model disconnected");return}N(i);var{columns:s,formatter:o}=i,u=Q.changeFilterColumnNamesToIndexes(i.columns,t).filter(h=>{var[c]=h;return i.isFilterable(c)}),d=Q.changeFilterColumnNamesToIndexes(i.columns,r).filter(h=>{var[c]=h;return i.isFilterable(c)});N(this.irisGridUtils),l.clearAllFilters(),l.setFilters({quickFilters:this.irisGridUtils.hydrateQuickFilters(s,u,o.timeZone),advancedFilters:this.irisGridUtils.hydrateAdvancedFilters(s,d,o.timeZone)})}setStateOverrides(e){tt.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=mt({},r),{quickFilters:u,advancedFilters:d}=o;u&&(o.quickFilters=Q.changeFilterColumnNamesToIndexes(e.columns,u)),d&&(o.advancedFilters=Q.changeFilterColumnNamesToIndexes(e.columns,d));var{isSelectingPartition:h,partitions:c,advancedSettings:v}=Q.hydrateIrisGridPanelState(e,s);N(this.irisGridUtils);var{advancedFilters:g,customColumns:p,customColumnFormatMap:m,isFilterBarShown:b,quickFilters:y,reverse:C,rollupConfig:E,aggregationSettings:w,sorts:P,userColumnWidths:I,userRowHeights:F,showSearchBar:D,searchValue:M,selectDistinctColumns:R,selectedSearchColumns:_,invertSearchColumns:V,pendingDataMap:K,frozenColumns:q,conditionalFormats:ie,columnHeaderGroups:ee,partitionConfig:ge}=this.irisGridUtils.hydrateIrisGridState(e,mt(mt({},l),o)),{isStuckToBottom:be,isStuckToRight:$e,movedColumns:L,movedRows:x}=Q.hydrateGridState(e,mt(mt({},a),i),l.customColumns);this.setState({advancedFilters:g,advancedSettings:v,conditionalFormats:ie,customColumns:p,customColumnFormatMap:m,isFilterBarShown:b,isSelectingPartition:h,movedColumns:L,movedRows:x,partitions:c,quickFilters:y,reverse:C,rollupConfig:E,aggregationSettings:w,sorts:P,userColumnWidths:I,userRowHeights:F,showSearchBar:D,searchValue:M,selectDistinctColumns:R,selectedSearchColumns:_,invertSearchColumns:V,pendingDataMap:K,frozenColumns:q,isStuckToBottom:be,isStuckToRight:$e,columnHeaderGroups:ee,partitionConfig:ge})}catch(j){tt.error("loadPanelState failed to load panelState",t,j)}}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:p,getMetricCalculator:m,theme:b}=this.props,{advancedFilters:y,aggregationSettings:C,advancedSettings:E,conditionalFormats:w,customColumns:P,customColumnFormatMap:I,error:F,isDisconnected:D,isFilterBarShown:M,isSelectingPartition:R,isStuckToBottom:_,isStuckToRight:V,isLoaded:K,isLoading:q,isModelReady:ie,model:ee,movedColumns:ge,movedRows:be,partitions:$e,partitionConfig:L,quickFilters:x,reverse:j,rollupConfig:G,sorts:z,userColumnWidths:Ce,userRowHeights:ye,showSearchBar:ke,searchValue:ze,selectDistinctColumns:qe,selectedSearchColumns:sn,invertSearchColumns:on,Plugin:Er,pluginFilters:un,pluginFetchColumns:Qt,pendingDataMap:ks,frozenColumns:xs,columnHeaderGroups:_s}=this.state,js=F!=null?"Unable to open table. ".concat(F):void 0,gi=Ca(d),bi=(e=ee==null?void 0:ee.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(Er,ee,Vs),{permissions:Hs}=v,{canCopy:Gs,canDownloadCsv:Us}=Hs;return f.jsx(Sr,{errorMessage:js,isDisconnected:D,isLoading:q,isLoaded:K,className:"iris-grid-panel",glContainer:i,glEventHub:a,onClearAllFilters:this.handleClearAllFilters,onShow:this.handleShow,onTabFocus:this.handleShow,onTabClicked:this.handleTabClicked,widgetName:gi,widgetType:"Table",description:bi,componentPanel:this,renderTabTooltip:()=>f.jsx(si,{model:ee,widgetName:gi,glContainer:i,description:bi}),children:ie&&ee&&f.jsx(Kn,{advancedFilters:y,aggregationSettings:C,advancedSettings:E,alwaysFetchColumns:this.getAlwaysFetchColumns(u,Qt),columnAllowedCursor:"linker",columnNotAllowedCursor:"linker-not-allowed",copyCursor:"copy",customColumns:P,customColumnFormatMap:I,columnSelectionValidator:this.isColumnSelectionValid,conditionalFormats:w,inputFilters:this.getGridInputFilters(ee.columns,o),applyInputFiltersOnInit:c==null,isFilterBarShown:M,isSelectingColumn:l!=null,isSelectingPartition:R,isStuckToBottom:_,isStuckToRight:V,mouseHandlers:h,movedColumns:ge,movedRows:be,partitions:$e,partitionConfig:L,quickFilters:x,renderer:g,reverse:j,rollupConfig:G,settings:p,sorts:z,userColumnWidths:Ce,userRowHeights:ye,model:ee,showSearchBar:ke,searchValue:ze,selectedSearchColumns:sn,selectDistinctColumns:qe,invertSearchColumns:on,onColumnSelected:this.handleColumnSelected,onCreateChart:this.handleCreateChart,onDataSelected:this.handleDataSelected,onError:this.handleError,onStateChange:this.handleGridStateChange,onContextMenu:this.handleContextMenu,onAdvancedSettingsChange:this.handleAdvancedSettingsChange,customFilters:un,pendingDataMap:ks,canCopy:Gs,canDownloadCsv:Us,ref:this.irisGrid,getDownloadWorker:s,frozenColumns:xs,theme:b,columnHeaderGroups:_s,getMetricCalculator:m,children:$s})})}}pe(Bt,"defaultProps",{onStateChange:()=>{},onPanelStateUpdate:()=>{}});pe(Bt,"displayName","IrisGridPanel");pe(Bt,"COMPONENT","IrisGridPanel");var uv=(n,e)=>{var{localDashboardId:t=Eo,glContainer:r}=e;return{inputFilters:gr(n,t),links:Tt(n,t),columnSelectionValidator:mr(n,t),user:yo(n),settings:Xr(n)}},dv=Et(uv,null,null,{forwardRef:!0})(Bt);const oi=dv;function dr(n,e,t){return e=hv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function hv(n){var e=cv(n,"string");return typeof e=="symbol"?e:String(e)}function cv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Sa=J.module("InputFilter"),vv=150;class Wt extends T.Component{constructor(e){super(e),dr(this,"inputRef",void 0),dr(this,"getItemLabel",Ue((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})),dr(this,"sendUpdate",ht(()=>{var{onChange:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a({column:l,isValueShown:o,value:s})},vv)),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=Pe.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?Wt.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 f.jsxs(Gn,{className:"input-filter fill-parent-absolute",isFlipped:r??!1,children:[f.jsx("div",{className:"input-filter-settings-card",children:f.jsxs("div",{className:"input-filter-settings-content",children:[f.jsxs("div",{className:"input-filter-settings-grid",children:[f.jsx("label",{children:"Filter Column"}),f.jsxs(cr,{value:String(e.findIndex(u=>u.name===(i==null?void 0:i.name)&&u.type===(i==null?void 0:i.type))),className:"custom-select",onChange:this.handleColumnChange,children:[e.map((u,d)=>f.jsx("option",{value:d,children:this.getItemLabel(e,d)},"".concat(u.name,"/").concat(u.type))),e.length===0&&f.jsx("option",{value:"-1",disabled:!0,children:"No Available Columns"})]}),f.jsx("div",{className:"text-muted small",children:"Input filter control will apply its filter to all columns matching this name in this dashboard."})]}),f.jsxs("div",{className:"input-filter-settings-buttons",children:[f.jsx(Z,{kind:"secondary",onClick:this.handleSettingsCancel,disabled:t==null,children:"Cancel"}),f.jsx(Z,{kind:"primary",className:"ml-2",onClick:this.handleSettingsSave,disabled:i==null,children:"Save"})]})]})}),f.jsxs("div",{className:"input-filter-value-card",onClick:this.handleBackgroundClick,children:[f.jsx("div",{className:"input-filter-column",children:f.jsxs("div",{className:"input-filter-column-title",children:[s," Filter"]})}),f.jsx("div",{className:"d-flex justify-content-center align-items-center h-100 w-100",children:f.jsx("div",{className:"input-filter-value-input d-flex flex-column justify-content-center",children:f.jsx("input",{type:"text",ref:this.inputRef,placeholder:Wt.PLACEHOLDER,value:a??"",onChange:this.handleValueChange,onKeyPress:this.handleInputKeyPress,style:{width:"".concat(l+3,"ch")},spellCheck:"false"})})}),f.jsx("div",{className:"input-filter-menu",children:f.jsx(Z,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:f.jsx(Me,{icon:$n,transform:"grow-4"}),tooltip:"Input Filter Settings"})})]})]})}}dr(Wt,"PLACEHOLDER","Enter value...");dr(Wt,"defaultProps",{column:null,isValueShown:!1,value:null});const fv=Wt;function rn(n,e,t){return e=pv(e),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:String(e)}function mv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var gv=250;class nn extends T.Component{constructor(e){super(e),rn(this,"inputFilterRef",void 0),this.handleChange=ht(this.handleChange.bind(this),gv),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.inputFilterRef=Pe.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,p=h!=null&&r!==h.isValueShown&&a===h.name&&l===h.type&&i===h.value;return s=(d=!g&&r&&(!p||!v))!==null&&d!==void 0?d:!1,s||(o=c),{panelState:{isValueShown:r,name:a,type:l,value:i,timestamp:o},timestamp:o,wasFlipped:p,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=$.getIdFromPanel(this);N(l),ss(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 f.jsx(qt,{className:"iris-input-filter-panel",componentPanel:this,glContainer:e,glEventHub:t,onClearAllFilters:this.handleClearAllFilters,isClonable:!0,isRenamable:!0,children:f.jsx(fv,{ref:this.inputFilterRef,column:r,columns:i,onChange:this.handleChange,isValueShown:a,value:l})})}}rn(nn,"defaultProps",{panelState:null});rn(nn,"COMPONENT","InputFilterPanel");rn(nn,"displayName","InputFilterPanel");var bv=(n,e)=>{var{localDashboardId:t}=e;return{columns:Vn(n,t)}},Cv=Et(bv,null,null,{forwardRef:!0})(nn);const Ht=Cv;function ya(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?ya(Object(t),!0).forEach(function(r){ui(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ya(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function ui(n,e,t){return e=Sv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Sv(n){var e=yv(n,"string");return typeof e=="symbol"?e:String(e)}function yv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var De=J.module("FilterSetManagerPanel");function Ev(n){return n.setPanelState!=null}class zt extends T.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=$.getComponentNameFromPanel(i),l=$.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=$.getComponentConfigFromContainer(s);if(o==null){De.error("Could not get component config from container",s);return}var u=$.getPanelComponentState(o);if(u==null){De.debug("Panel state is null ".concat(l));return}switch(a){case $.getComponentName(Bt):{var d;l!=null&&(d=this.getIrisGridPanelFilters(l,u)),d!=null&&t.push({panelId:l,type:a,state:d});break}case $.getComponentName(Ht):case $.getComponentName($t):{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=zt.changeFilterIndexesToColumnNames(i,s));var d;return o&&(d=zt.changeFilterIndexesToColumnNames(i,o)),{irisGridState:Mr(Mr({},a),{},{advancedFilters:u,quickFilters:d}),gridState:Mr({},l)}}handleGetFilterState(){return this.getFilterState()}handleChange(e){var{isValueShown:t,selectedId:r}=e;De.debug("handleChange",t,r),this.setState({isValueShown:t,selectedId:r}),this.updatePanelState()}handleFilterApply(e){var{dashboardOpenedPanelMap:t}=this.props,{panels:r,restoreFullState:i=!1}=e;De.debug("Apply filters from filter set",e),r.forEach(a=>{var{panelId:l,type:s,state:o}=a;if(l==null){De.debug("panel is null",l);return}if(!t.has(l)){De.debug("Ignore closed panel",l);return}De.debug("Apply panel filters",l,s,o);var u=t.get(l);switch(s){case $.getComponentName(Bt):this.restoreIrisGridFilters(u,o,i);break;case $.getComponentName(Ht):case $.getComponentName($t):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=$.getIdFromPanel(e);if(d==null){De.error("Panel Id is null.");return}var h=u.get(d);if(h==null){De.error("Unable to get table for panel ".concat(d,"."));return}De.debug("restoreIrisGridFilters",d,t,r),r?e.setStateOverrides(t):e.setFilters({quickFilters:o,advancedFilters:s})}restoreInputFilterState(e,t){var r=Mr({},t);delete r.isValueShown,De.debug("restoreInputFilterState",e,r),e&&Ev(e)&&e.setPanelState(r)}render(){var{glContainer:e,glEventHub:t,filterSets:r}=this.props,{isValueShown:i,selectedId:a}=this.state;return f.jsx(qt,{className:"filter-set-manager-panel",componentPanel:this,glContainer:e,glEventHub:t,isClonable:!0,isRenamable:!0,children:f.jsx("div",{className:"input-filter-container h-100 w-100 container",children:f.jsx(us,{onChange:this.handleChange,onApply:this.handleFilterApply,onUpdateSets:this.handleSetsUpdate,isValueShown:i,filterSets:r,selectedId:a,getFilterState:this.handleGetFilterState})})})}}ui(zt,"defaultProps",{panelState:null});ui(zt,"COMPONENT","FilterSetManagerPanel");var wv=(n,e)=>{var{localDashboardId:t}=e;return{filterSets:vl(n,t),dashboardOpenedPanelMap:hl(n,t),dashboardInputFilters:gr(n,t),panelTableMap:qr(n,t)}},Tv=Et(wv,{setDashboardFilterSets:ns},null,{forwardRef:!0})(zt);const kr=Tv;function Pv(n,e,t){return e=Ov(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ov(n){var e=Dv(n,"string");return typeof e=="symbol"?e:String(e)}function Dv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class cs extends T.PureComponent{render(){var{isEditing:e,children:t,onDoubleClick:r}=this.props;return f.jsxs("div",{className:"markdown-editor-container h-100 w-100",onDoubleClick:r,children:[f.jsx("div",{className:Ie("text-muted","edit-hint",{viewing:e===void 0||!e}),children:f.jsxs("span",{children:["double-click to edit ",f.jsx(Me,{icon:Ol})]})}),t]})}}Pv(cs,"defaultProps",{isEditing:!1});function Fv(n,e,t){return e=Nv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Nv(n){var e=Mv(n,"string");return typeof e=="symbol"?e:String(e)}function Mv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Iv=J.module("MarkdownStartPage");class vs extends T.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(Iv.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 f.jsx("div",{className:"markdown-panel-start-page h-100 w-100",children:f.jsxs("div",{className:"markdown-panel-start-page-container",children:[f.jsxs("div",{className:"markdown-panel-start-list",children:[f.jsx("h3",{className:"list-title",children:"Start"}),f.jsx("div",{className:"list-item",children:f.jsx(Z,{kind:"ghost",className:"title",onClick:r,children:"New Markdown Note"})})]}),f.jsxs("div",{className:"markdown-panel-start-list",children:[f.jsx("h3",{className:"list-title",children:"Recently Closed from Dashboard"}),e.map(l=>f.jsxs("div",{className:"list-item",children:[f.jsx(Z,{kind:"ghost",className:"title",onClick:()=>t(l),children:l.title}),f.jsx("button",{className:"btn-link icon",type:"button",onClick:()=>{this.handleDeleteButtonClick(l)},children:f.jsx(Me,{icon:Yr})})]},l.id)),f.jsxs(Zo,{isOpen:i,toggle:this.handleDeleteModalClose,className:"modal-dialog-centered markdown-delete-modal",children:[f.jsx(Qo,{children:"Are you sure you want to permanently delete this note?"}),f.jsx(Jo,{children:"You can't undo this action."}),f.jsxs(wo,{children:[f.jsx(Z,{kind:"secondary",onClick:this.handleDeleteModalClose,children:"Cancel"}),f.jsx(Z,{kind:"danger",onClick:()=>{this.handleDeleteMarkdown(a)},children:"Delete"})]})]})]})]})})}}Fv(vs,"defaultProps",{closedMarkdowns:[],onOpen:()=>{},onCreate:()=>{},onDelete:()=>{}});const Rv=vs;function di(n,e,t){return e=Lv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Lv(n){var e=Av(n,"string");return typeof e=="symbol"?e:String(e)}function Av(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class It{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
8
+ `).concat(s," does not exist yet.")}if(i){var{widgetName:o}=this.props;return"".concat(o," is unavailable.")}}handleSessionClosed(){var{onSessionClose:e}=this.props;this.setState({isPanelDisconnected:!0,isWaitingForReconnect:!1}),e(...arguments)}handleSessionOpened(){var{onSessionOpen:e}=this.props;e(...arguments)}render(){var{children:e,className:t,componentPanel:r,isLoaded:i,isLoading:a,glContainer:l,glEventHub:s,isDisconnected:o,isClonable:u,isRenamable:d,showTabTooltip:h,renderTabTooltip:c,widgetType:v,widgetName:g,description:p,onClearAllFilters:m,onHide:b,onFocus:S,onBlur:C,onResize:w,onShow:E,onTabBlur:P,onTabFocus:I,onTabClicked:D}=this.props,{isPanelDisconnected:N,isWidgetDisconnected:M,isPanelInactive:R}=this.state,_=this.getErrorMessage(),V=c??this.getCachedRenderTabTooltip(h,l,v,g,p),K=[{title:"Copy ".concat(v," Name"),group:Ke.groups.medium,order:20,action:this.handleCopyName}];return f.jsxs(qt,{className:Ie(t,{disconnected:N||M||o,inactive:R}),componentPanel:r,glContainer:l,glEventHub:s,onClearAllFilters:m,onHide:b,onFocus:S,onBlur:C,onResize:w,onShow:E,onSessionClose:this.handleSessionClosed,onSessionOpen:this.handleSessionOpened,onTabBlur:P,onTabFocus:I,onTabClicked:D,renderTabTooltip:V,errorMessage:_,isLoaded:i,isLoading:a,isClonable:u,isRenamable:d,additionalActions:K,children:[e,R&&f.jsx("div",{className:"fill-parent-absolute"})]})}}Zl(Ql,"defaultProps",{className:"",errorMessage:null,isClonable:!0,isDisconnected:!1,isLoading:!1,isLoaded:!0,isRenamable:!0,showTabTooltip:!0,widgetName:"Widget",widgetType:"Widget",renderTabTooltip:null,description:"",onFocus:()=>{},onBlur:()=>{},onHide:()=>{},onClearAllFilters:()=>{},onResize:()=>{},onSessionClose:()=>{},onSessionOpen:()=>{},onShow:()=>{},onTabBlur:()=>{},onTabFocus:()=>{},onTabClicked:()=>{}});const Sr=Ql,Qe=Object.freeze({DEFAULT:"DEFAULT",LINKER:"LINKER"});var Lc=(n,e)=>t=>t(wt(n,{connection:e})),Ac=(n,e)=>t=>t(wt(n,{sessionWrapper:e})),Jr=(n,e)=>t=>t(wt(n,{links:e})),Jl=(n,e)=>(t,r)=>{var i=Tt(r(),n),a=e.filter(l=>i.findIndex(s=>jr(s.start,l.start)&&jr(s.end,l.end))<0);return t(Jr(n,i.concat(a)))},es=(n,e)=>(t,r)=>{var i=Tt(r(),n),a=i.filter(l=>!e.includes(l.id));return t(Jr(n,a))},Zn=(n,e)=>t=>t(wt(n,{isolatedLinkerPanelId:e})),ts=(n,e)=>t=>t(wt(n,{columnSelectionValidator:e})),rs=(n,e)=>t=>t(wt(n,{consoleSettings:e})),ns=(n,e)=>t=>t(wt(n,{filterSets:e}));function is(n){var{columnMap:e,inputFilterMap:t,linkedColumnMap:r,onAdd:i,onOpenLinker:a,waitingFilterMap:l,waitingInputMap:s}=n,o=T.useMemo(()=>{var g=Array.from(s.keys()),p=g.find(S=>t.get(S)!=null),m=g.find(S=>r.get(S)!=null),b=Xe.join(g.map(S=>'"'.concat(S,'"')));return p!=null&&p&&m!=null&&m?"Use a filter control or linked table to set a value for ".concat(b):p!=null&&p?"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=T.useMemo(()=>Array.from(e.values()),[e]),d=T.useCallback(g=>{g.stopPropagation(),g.preventDefault(),i(Array.from(l.values()))},[i,l]),h=T.useCallback(g=>{g.stopPropagation(),g.preventDefault(),a()},[a]),c=l.size>0,v=!c&&s.size>0;return f.jsx("div",{className:"chart-panel-overlay chart-filter-overlay",children:f.jsxs("div",{className:Ie("chart-panel-overlay-content chart-filter-overlay-content",{"chart-filter-waiting-filter":c},{"chart-filter-waiting-input":v}),children:[c&&f.jsxs(f.Fragment,{children:[f.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:"}),f.jsx("div",{className:"waiting-filter-list",children:u.map(g=>{var p=l.has(g.name),m=p?zo:qo;return f.jsxs("div",{className:Ie("waiting-filter-item",{"is-invalid":p}),children:[f.jsx(Me,{icon:m}),g.name]},g.name)})}),f.jsxs("div",{children:[f.jsx(Z,{kind:"primary",onClick:d,children:"Add Input Filters"}),f.jsx(Z,{kind:"primary",onClick:h,children:"Open Linker Tool"})]})]}),v&&f.jsxs(f.Fragment,{children:[f.jsx("div",{className:"info-message",children:"Waiting for User Input"}),f.jsx("div",{className:"",children:o})]})]})})}is.propTypes={columnMap:B.instanceOf(Map).isRequired,inputFilterMap:B.instanceOf(Map).isRequired,linkedColumnMap:B.instanceOf(Map).isRequired,onAdd:B.func.isRequired,onOpenLinker:B.func.isRequired,waitingFilterMap:B.instanceOf(Map).isRequired,waitingInputMap:B.instanceOf(Map).isRequired};function pr(n){var{columns:e,onColumnSelected:t,onMouseEnter:r,onMouseLeave:i}=n;return f.jsx("div",{className:"chart-panel-overlay chart-column-selector-overlay",children:f.jsxs("div",{className:Ie("chart-panel-overlay-content"),children:[f.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:"}),f.jsx("div",{className:"waiting-column-select-list",children:e.map(a=>f.jsx(Nl,{className:Ie("btn-chart-column-selector",pr.makeButtonClassName(a.name)),onClick:()=>t(a.name),onMouseEnter:()=>{r&&r(a)},onMouseLeave:i,disabled:!a.isValid,isLinked:a.isActive,children:a.name},a.name))})]})})}pr.makeButtonClassName=n=>"btn-chart-column-selector-".concat(n);pr.defaultProps={onMouseEnter:()=>{},onMouseLeave:()=>{}};function Vt(n){return n.settings!==void 0}function Qn(n){return n.figure!==void 0}function as(n){if(n==null)return!1;var{settings:e,tableSettings:t}=n;return typeof e=="object"&&typeof t=="object"}function ls(n){return n!=null&&as(n.panelState)}var Jn=Kt(ut.COLUMNS_CHANGED),kc=Jn.listen,Gr=Jn.emit,xc=Jn.useListener,ei=Kt(ut.TABLE_CHANGED);ei.listen;var Ur=ei.emit,_c=ei.useListener,ti=Kt(ut.FILTERS_CHANGED);ti.listen;var ss=ti.emit,jc=ti.useListener,ri=Object.freeze({LINK_POINT_SELECTED:"LinkerEvent.LINK_POINT_SELECTED",SOURCE_DATA_SELECTED:"LinkerEvent.SOURCE_DATA_SELECTED",REGISTER_TARGET:"LinkerEvent.REGISTER_TARGET"}),ni=Kt(ri.LINK_POINT_SELECTED),Vc=ni.listen,en=ni.emit;ni.useListener;var ii=Kt(ri.SOURCE_DATA_SELECTED),$c=ii.listen,os=ii.emit;ii.useListener;var ai=Kt(ri.REGISTER_TARGET),Hc=ai.listen,ca=ai.emit;ai.useListener;function va(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function fa(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?va(Object(t),!0).forEach(function(r){Ye(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):va(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Ye(n,e,t){return e=Gc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Gc(n){var e=Uc(n,"string");return typeof e=="symbol"?e:String(e)}function Uc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var _e=J.module("ChartPanel"),Bc=150;function Wc(n){return n.inputFilters!=null}function zc(n){return n.panelState!=null}class tn extends T.Component{constructor(e){super(e),Ye(this,"panelContainer",void 0),Ye(this,"pending",void 0),Ye(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})),Ye(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})),Ye(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})),Ye(this,"getLinkedColumnMap",U((l,s)=>{for(var o=new Map,u=$.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);F(v),o.set(c,v)}}return o})),Ye(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)})))),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=ht(this.updateModelFromSource.bind(this),Bc),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.panelContainer=Pe.createRef(),this.pending=new _n;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&&Vt(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;s&&(a!==e.makeModel&&this.initModel(),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&&Ui(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});var{makeModel:e}=this.props;this.pending.add(e(),t=>{t.close()}).then(this.handleLoadSuccess,this.handleLoadError)}startListeningToSource(e){_e.debug("startListeningToSource",e);var{model:t}=this.state;F(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){_e.debug("stopListeningToSource",e);var{model:t}=this.state;F(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=$.getIdFromPanel(this);F(i);var a=r.get(e);a!=null&&en(t,i,a,{type:"chartLink"})}handleColumnMouseEnter(e){var{type:t,name:r}=e,{columnSelectionValidator:i}=this.props;_e.debug("handleColumnMouseEnter",i,t,r),i&&i(this,{type:t,name:r},{type:"chartLink"})}handleColumnMouseLeave(){var{columnSelectionValidator:e}=this.props;_e.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(Qe.LINKER)}handleReconnect(){this.setState({isDisconnected:!1,error:void 0}),this.sendColumnChange(),this.updateColumnFilters()}handleLoadSuccess(e){_e.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){Ae.isCanceled(e)||(_e.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){_e.debug2("updateModelFromSource ignoring",r,i,t);return}var{dh:a}=i;if(this.pending.cancel(),Vt(e)){var{settings:l}=e;this.pending.add(a.plot.Figure.create(new Re(a).makeFigureSettings(l,t))).then(s=>{Ui(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&&Wc(e.props)&&zc(e.state)){var{inputFilters:l}=e.props,{panelState:s}=e.state;s!=null&&(a=Q.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=fa(fa({},r),e);return _e.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(ut.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=$.getIdFromPanel(this);F(r),Gr(t,r,Array.from(e.getFilterColumnMap().values()))}}getCoordinateForColumn(e){var t,r=pr.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){_e.debug("setFilterMap",e),this.setState(t=>{var r,{columnMap:i,filterMap:a}=t,l=null,s=new Map(t.filterValueMap);return e.forEach((o,u)=>{var{columnType:d,filterList:h}=o,c=i.get(u);if(!(c==null||c.type!==d)){if(h.length===0){_e.debug("Ignoring empty filterList for column",u);return}var{value:v}=h[0];s.set(u,v),a.get(u)!==v&&(l===null&&(l=new Map(a)),l.set(u,v))}}),{filterValueMap:s,filterMap:(r=l)!==null&&r!==void 0?r:a}})}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 _e.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 _e.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;F(r);var i=this.getWaitingInputMap(r.isFilterRequired(),e,t);if(r.setFilter(t),t.size>0&&i.size===0){var a=r.getDefaultTitle(),l=Xe.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),_e.debug2("updateFilters filters set",t),this.setState({isLoading:!0})}else _e.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 e,{columnSelectionValidator:t,glContainer:r,glEventHub:i,inputFilters:a,isLinkerActive:l,links:s,metadata:o,settings:u,Plotly:d,containerRef:h}=this.props,{columnMap:c,filterMap:v,error:g,model:p,isActive:m,isDisconnected:b,isLoaded:S,isLoading:C}=this.state,w;Vt(o)?w=o.table:Qn(o)?w=o.figure:w=o.name;var E=this.getInputFilterColumnMap(c,a),P=this.getLinkedColumnMap(c,s),I=p!=null?this.getWaitingInputMap(p.isFilterRequired(),c,v):new Map,D=p!=null?this.getWaitingFilterMap(p.isFilterRequired(),c,v,P,E):new Map,N=g!=null?"Unable to open chart. ".concat(g):void 0,M=I.size>0,R=c.size>0&&l;return f.jsx(Sr,{className:Ie("iris-chart-panel",{"input-required":M}),componentPanel:this,glContainer:r,glEventHub:i,onHide:this.handleHide,onClearAllFilters:this.handleClearAllFilters,onShow:this.handleShow,onTabBlur:this.handleTabBlur,onTabFocus:this.handleTabFocus,errorMessage:N,isDisconnected:b,isLoading:C,isLoaded:S,widgetName:(e=w)!==null&&e!==void 0?e:void 0,widgetType:"Chart",children:f.jsxs("div",{ref:this.panelContainer,className:"chart-panel-container h-100 w-100",children:[f.jsx("div",{className:"chart-container h-100 w-100",children:S&&p&&f.jsx(xl,{isActive:m,model:p,settings:u,onDisconnect:this.handleDisconnect,onReconnect:this.handleReconnect,onUpdate:this.handleUpdate,onError:this.handleError,onSettingsChanged:this.handleSettingsChanged,Plotly:d,containerRef:h})}),f.jsx(wn,{in:M&&!R&&!C,mountOnEnter:!0,unmountOnExit:!0,children:f.jsx(is,{inputFilterMap:E,linkedColumnMap:P,onAdd:this.handleFilterAdd,onOpenLinker:this.handleOpenLinker,columnMap:c,waitingFilterMap:D,waitingInputMap:I})}),f.jsx(wn,{in:R,mountOnEnter:!0,unmountOnExit:!0,children:f.jsx(pr,{columns:this.getSelectorColumns(c,P,t),onColumnSelected:this.handleColumnSelected,onMouseEnter:this.handleColumnMouseEnter,onMouseLeave:this.handleColumnMouseLeave})})]})})}}Ye(tn,"defaultProps",{columnSelectionValidator:null,isLinkerActive:!1,source:null,sourcePanel:null,panelState:null,settings:{},containerRef:null});Ye(tn,"displayName","ChartPanel");Ye(tn,"COMPONENT","ChartPanel");var qc=(n,e)=>{var{localDashboardId:t,metadata:r}=e,i;r!=null&&Vt(r)&&(i=r.sourcePanelId);var a=qr(n,t),l=hl(n,t),s=jn(n),o=Kr(n,t),u=s===Qe.LINKER&&o===void 0;return{columnSelectionValidator:mr(n,t),isLinkerActive:u,inputFilters:gr(n,t),links:Tt(n,t),source:i!=null?a.get(i):void 0,sourcePanel:i!=null?l.get(i):void 0,settings:Xr(n)}},Kc=Et(qc,{setActiveTool:dl,setDashboardIsolatedLinkerPanelId:Zn},null,{forwardRef:!0})(tn);const li=Kc;function Ze(n,e,t){return e=Xc(e),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:String(e)}function Yc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Nr=J.module("DropdownFilter"),Zc=150;class dt extends T.Component{constructor(e){super(e),Ze(this,"dropdownRef",void 0),Ze(this,"getCompatibleColumns",U((a,l)=>a!=null?l.filter(s=>{var{type:o}=s;return o!==void 0&&y.isCompatibleType(o,a.columnType)}):[])),Ze(this,"getColumnOptions",U((a,l)=>{var s=-1,o=[];return o.push(f.jsx("option",{value:"-1",children:"Select a column"},"placeholder")),a.forEach((u,d)=>{o.push(f.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]})),Ze(this,"getSelectedOptionIndex",U((a,l)=>a.indexOf(l))),Ze(this,"getValueOptions",U(a=>[f.jsx("option",{value:"-1",children:dt.PLACEHOLDER},"-1"),...a.map((l,s)=>f.jsx("option",{value:s,children:l??"(null)"},"".concat(s,"/").concat(l)))])),Ze(this,"getItemLabel",Ue((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})),Ze(this,"sendUpdate",ht(()=>{var{onChange:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a({column:l,isValueShown:o,value:s??void 0})},Zc)),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=Pe.createRef();var{column:t,isValueShown:r,value:i}=e;this.state={column:t,id:Be(),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(Nr.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(),Nr.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]:Nr.debug2("Selected default item"),Nr.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:p,selectedColumn:m,value:b}=this.state,S=l===null,C=this.getCompatibleColumns(l,t),w=l!=null,E=(e=l==null?void 0:l.columnName)!==null&&e!==void 0?e:dt.SOURCE_BUTTON_PLACEHOLDER,P=c!=null?"".concat(c.name," Filter"):null,[I,D]=this.getColumnOptions(C,m),N=this.getValueOptions(d),M=this.getSelectedOptionIndex(d,b),R=!w||m==null,_=p&&!i,V="source-column-btn-".concat(g),K="filter-column-select-".concat(g);return f.jsxs(Gn,{className:"dropdown-filter fill-parent-absolute",isFlipped:_,children:[f.jsx("div",{className:"dropdown-filter-settings-card",children:f.jsxs("div",{className:"dropdown-filter-card-content",children:[f.jsxs("div",{className:"dropdown-filter-settings-grid",children:[f.jsx("label",{htmlFor:V,children:"Source Column"}),f.jsx(Nl,{id:V,isLinked:w,onClick:s,onMouseEnter:o,onMouseLeave:u,className:dt.SOURCE_BUTTON_CLASS_NAME,disabled:r,children:E}),f.jsx("div",{className:"text-muted small",children:"Select a source column for the list by linking to a table."}),f.jsx("label",{htmlFor:K,children:"Filter Column"}),f.jsx(cr,{id:K,value:String(D),className:"custom-select",onChange:this.handleColumnChange,disabled:S,children:I}),f.jsx("div",{className:"text-muted small",children:"Dropdown filter control will apply its filter to all columns matching this name in this dashboard."})]}),h&&f.jsx("div",{className:"error-message text-center",children:h}),w&&f.jsxs("div",{className:"dropdown-filter-settings-buttons",children:[f.jsx(Z,{kind:"secondary",type:"button",onClick:this.handleSettingsCancel,disabled:v||p||i,tooltip:i?"Cancel disabled while linker open":void 0,children:"Cancel"}),f.jsx(Z,{kind:"primary",type:"button",className:"ml-2",onClick:this.handleSettingsSave,disabled:R||p||i,tooltip:i?"Save disabled while linker open":void 0,children:"Save"})]})]})}),f.jsx("div",{className:"dropdown-filter-value-card",onClick:this.handleBackgroundClick,"data-testid":"dropdown-filter-value-background",children:a&&f.jsxs(f.Fragment,{children:[f.jsx("div",{className:"dropdown-filter-column",children:f.jsx("div",{className:"dropdown-filter-column-title",children:P})}),f.jsxs("div",{className:"dropdown-filter-card-content",children:[f.jsx("div",{className:"dropdown-filter-value-input d-flex flex-column justify-content-center",children:f.jsx(cr,{className:"custom-select",value:String(M),ref:this.dropdownRef,onChange:this.handleValueChange,onKeyDown:this.handleDropdownKeyPress,title:"Select Value",children:N})}),h&&f.jsx("div",{className:"error-message mt-3 text-center",children:h})]}),f.jsx("div",{className:"dropdown-filter-menu",children:f.jsx(Z,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:f.jsx(Me,{icon:$n,transform:"grow-4"}),tooltip:"Dropdown Filter Settings"})})]})})]})}}Ze(dt,"defaultProps",{column:null,disableLinking:!1,isLinkerActive:!1,isLoaded:!1,isValueShown:!1,settingsError:null,source:null,value:"",values:[],onColumnSelected:()=>{},onSourceMouseEnter:()=>{},onSourceMouseLeave:()=>{}});Ze(dt,"PLACEHOLDER","Select a value...");Ze(dt,"SOURCE_BUTTON_CLASS_NAME","btn-dropdown-filter-selector");Ze(dt,"SOURCE_BUTTON_PLACEHOLDER","Select a column");const pa=dt;function Le(n,e,t){return e=Qc(e),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:String(e)}function Jc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var de=J.module("DropdownFilterPanel"),ev=250,tv=(n,e)=>{var{localDashboardId:t}=e,r=$.getIdFromPanel({props:e}),i=qr(n,t),a=Tt(n,t),l=jn(n),s=Kr(n,t),o=l===Qe.LINKER&&(s===void 0||s===r),u=l===Qe.LINKER&&s!==void 0&&s!==r;return{columns:Vn(n,t),columnSelectionValidator:mr(n,t),dh:cl(n),isLinkerActive:o,disableLinking:u,settings:Xr(n),panelTableMap:i,dashboardLinks:a}},rv=Et(tv,null,null,{forwardRef:!0});class Je extends T.Component{constructor(e){super(e),Le(this,"dateTimeFormatter",void 0),Le(this,"dropdownFilterRef",void 0),Le(this,"panelContainer",void 0),Le(this,"pending",void 0),Le(this,"cleanup",void 0),Le(this,"columnFormats",void 0),Le(this,"getCachedValues",Ue((h,c,v)=>{var{type:g,name:p}=c;return g!==void 0&&y.isDateType(g)?h.map(m=>this.dateTimeFormatter.format(m)):h.map(m=>m!=null&&g!=null?v.getFormattedString(m,g,p):null)})),Le(this,"getCachedPanelLinks",Ue((h,c)=>{var v=$.getIdFromPanel(c);return de.debug("getCachedPanelLinks",h,v),h.filter(g=>{var p;return((p=g.end)===null||p===void 0?void 0:p.panelId)===v})})),Le(this,"getCachedSource",Ue(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})),Le(this,"getCachedSourceTable",Ue((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})),Le(this,"getCachedSourceColumn",Ue((h,c)=>{var v;return de.debug("getCachedSourceColumn",h,c),h==null||c==null?null:(v=h.columns.find(g=>{var{name:p,type:m}=g;return p===c.columnName&&m===c.columnType}))!==null&&v!==void 0?v:null})),this.handleChange=ht(this.handleChange.bind(this),ev),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=Pe.createRef(),this.panelContainer=Pe.createRef(),this.pending=new _n;var{dh:t,panelState:r,settings:i}=e;this.columnFormats=Tn.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 We(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(pa.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>Je.MAX_TABLE_SIZE)return"Table too large, must have fewer than ".concat(Je.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,h,{panelState:c,timestamp:v,wasFlipped:g,skipUpdate:p}=u,m=c!=null&&r!==c.isValueShown&&a===c.name&&l===c.type&&i===c.value;return s=(d=!p&&r&&(!m||!g))!==null&&d!==void 0?d:!1,s||(o=v),{panelState:{isValueShown:r,name:a,type:l,value:i,timestamp:(h=o)!==null&&h!==void 0?h: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=$.getIdFromPanel(this);F(t),en(e,t,Je.SOURCE_COLUMN,{type:"filterSource"})}handleClearAllFilters(){var e,t;(e=this.dropdownFilterRef)===null||e===void 0||(t=e.current)===null||t===void 0||t.clearFilter()}setPanelState(e){var t,r,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,{dashboardLinks:a}=this.props;if(this.getSource(a)==null){de.debug("Ignore state update for unlinked filter",e);return}this.setState({skipUpdate:!i}),(t=this.dropdownFilterRef)===null||t===void 0||(r=t.current)===null||r===void 0||r.setFilterState(e)}sendUpdate(e,t,r,i){var a,{dashboardLinks: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=$.getIdFromPanel(this);F(d),ss(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=>{Ae.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,Je.MAX_TABLE_SIZE-1,[r])}updateFormatterSettings(e){var{dh:t}=this.props,r=Tn.getColumnFormats(e);jr(this.columnFormats,r)||(this.columnFormats=r,this.setState({formatter:new We(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,Je.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:p}=this.state,m=this.getSource(t),b=this.getSettingsErrorMessage(),S=this.getPanelErrorMessage(),C=p&&v!=null?this.getCachedValues(c,v,o):[];return f.jsx(Sr,{errorMessage:S,isLoading:g,isLoaded:p,isDisconnected:u,className:"iris-dropdown-filter-panel",componentPanel:this,glContainer:i,glEventHub:a,onClearAllFilters:this.handleClearAllFilters,widgetName:"Dropdown Filter",widgetType:"DropdownFilter",children:f.jsx("div",{ref:this.panelContainer,className:"dropdown-filter-container h-100 w-100 container",children:f.jsx(pa,{ref:this.dropdownFilterRef,column:s,columns:e,isValueShown:d,isLinkerActive:l,disableLinking:r,isLoaded:p,settingsError:b,source:m,value:h,values:C,onChange:this.handleChange,onColumnSelected:this.handleColumnSelected,onSourceMouseEnter:this.handleSourceMouseEnter,onSourceMouseLeave:this.handleSourceMouseLeave})})})}}Le(Je,"displayName","DropdownFilterPanel");Le(Je,"COMPONENT","DropdownFilterPanel");Le(Je,"MAX_TABLE_SIZE",256);Le(Je,"SOURCE_COLUMN",Object.freeze({name:"FilterSource",type:null}));var nv=rv(Je);const $t=nv;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 Fr(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){sr(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 sr(n,e,t){return e=iv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function iv(n){var e=av(n,"string");return typeof e=="symbol"?e:String(e)}function av(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ce=J.module("FilterSetManager"),lv="Enter name...",ga="No Available Filter Sets";class Br extends T.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),sr(this,"renameInputRef",Pe.createRef()),sr(this,"dropdownRef",Pe.createRef()),sr(this,"editDropdownRef",Pe.createRef()),sr(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;ce.debug("initSettingsScreen",e,t),this.setState({modifiedFilterSets:[...e],editId:t})}updateSelectedId(){var{isValueShown:e,filterSets:t,selectedId:r,onChange:i}=this.props;if(ce.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:[]}),ce.debug("Update sets",r,i),t(r),r.length>0&&e({isValueShown:!0,selectedId:i})}handleCaptureNewSet(){var{getFilterState:e}=this.props;Br.animateScreenFlash();var t=Be(),r=e(),i={id:t,title:"",panels:r};ce.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 ce.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 ce.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){ce.error("Renamed set undefined.");return}var l=this.getNameError(t);if(ce.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=Fr(Fr({},r),{},{title:s,restoreFullState:a}),u=i.findIndex(h=>{var{id:c}=h;return c===r.id}),d=[...i];u>=0?(d[u]=o,ce.debug("Renamed existing set",d)):(d.push(o),ce.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 ce.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 ce.debug("Deleted selected set",t,r,a),ce.debug("New selection",l,s),{modifiedFilterSets:a,editId:s}})}handleSetUpdate(){var{getFilterState:e}=this.props;Br.animateScreenFlash();var t=e();this.setState(r=>{var{modifiedFilterSets:i,editId:a}=r;if(a===void 0)return ce.error("Filter for update not selected."),null;var l=[...i],s=l.findIndex(o=>{var{id:u}=o;return u===a});return s<0?(ce.error("Selected set for update not found."),null):(l[s]=Fr(Fr({},l[s]),{},{panels:t}),ce.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 ce.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){ce.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){ce.debug("No filter selected");return}var i=r.find(a=>{var{id:l}=a;return l===e});if(i===void 0){ce.debug("Selected id not found in filterSets",e,r);return}ce.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,p=f.jsxs("div",{className:"fa-layers mr-3",children:[f.jsx(Me,{icon:Pi,mask:Oi,transform:"shrink-1 down-5 right-7"}),f.jsx(Me,{icon:Xo,className:"text-primary",transform:"shrink-6 down-5 right-7"})]}),m=f.jsxs("div",{className:"fa-layers",children:[f.jsx(Me,{icon:Pi,mask:Oi,transform:"shrink-1 down-5 right-7"}),f.jsx(Me,{icon:Yo,transform:"shrink-1 down-5 right-7"})]});return f.jsx("div",{className:"filter-set-manager fill-parent-absolute",children:f.jsxs(Gn,{className:"w-100 h-100",isFlipped:s,children:[f.jsx("div",{className:"filter-set-manager-settings-card fill-parent-absolute",children:f.jsxs("div",{className:"filter-set-manager-card-content",children:[v&&f.jsxs("div",{children:[f.jsx(Z,{kind:"ghost",className:"btn btn-link no-underline",onClick:this.handleCaptureNewSet,icon:p,children:"Capture filter set"}),f.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&&f.jsxs("div",{className:"d-flex flex-column justify-content-center","data-testid":"edit-filter-set-container",children:[f.jsxs("div",{className:"form-group",children:[f.jsx("label",{children:h?"Edit set":"Name captured set"}),f.jsxs("div",{className:"name-input-container",children:[f.jsx("input",{type:"text",className:"input-set-name form-control",placeholder:lv,value:e,ref:this.renameInputRef,onChange:this.handleNameInputChange,onKeyPress:this.handleNameInputKeyPress,spellCheck:"false"}),f.jsx(Z,{"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}),f.jsx(Z,{"data-testid":"rename-cancel-button",kind:"ghost",className:"btn btn-link no-underline pt-2 pb-2",onClick:this.handleRenameCancel,tooltip:"Cancel",icon:Ko})]}),t!==void 0&&f.jsx("div",{className:"error-message",children:t})]}),f.jsx("div",{className:"form-group",children:f.jsxs(to,{"aria-label":"Restoration options",onChange:this.handleRestoreFullStateChange,value:"".concat(l),children:[f.jsx(yi,{value:"false",children:"Restore only filters"}),f.jsx(yi,{value:"true",children:"Restore full table state"})]})})]}),g&&f.jsxs("div",{className:"filter-set-manager-settings-grid-1",children:[f.jsxs("div",{className:"form-group",children:[f.jsx("label",{children:"Edit filter sets"}),f.jsxs("div",{className:"filter-select-container",children:[f.jsxs(cr,{"data-testid":"settings-card-filter-select",ref:this.editDropdownRef,value:r??"-1",className:"custom-select filter-value-select",onChange:this.handleEditDropdownChange,disabled:c,children:[c&&f.jsx("option",{value:"-1",disabled:!0,children:ga}),a.map(b=>{var{id:S,title:C}=b;return f.jsx("option",{value:S,children:C},S)})]}),f.jsx(Z,{kind:"ghost",onClick:this.handleSetUpdate,disabled:c,icon:m,tooltip:"Update"}),f.jsx(Z,{kind:"ghost",onClick:this.handleSetEdit,disabled:c,icon:Ol,tooltip:"Edit"}),f.jsx(Z,{kind:"ghost",onClick:this.handleSetDelete,disabled:c,icon:Yr,tooltip:"Delete"})]})]}),f.jsx("div",{children:f.jsx(Z,{kind:"ghost",className:"btn btn-link no-underline",onClick:this.handleCaptureNewSet,icon:p,children:"Capture new filter set"})}),f.jsxs("div",{className:"py-3 text-right",children:[f.jsx(Z,{kind:"secondary",onClick:this.handleSettingsCancel,children:"Cancel"})," ",f.jsx(Z,{kind:"primary",onClick:this.handleSettingsSave,children:"Save"})]})]})]})},"front"),f.jsxs("div",{className:"filter-set-manager-value-card fill-parent-absolute",onClick:this.handleBackgroundClick,children:[f.jsx("div",{className:"filter-set-manager-column",children:f.jsx("div",{className:"filter-set-manager-column-title",children:"Filter sets"})}),f.jsx("div",{className:"filter-set-manager-card-content",children:f.jsx("div",{className:"filter-set-manager-value-input",children:f.jsxs("div",{className:"filter-select-container",children:[f.jsxs(cr,{"data-testid":"value-card-filter-select",ref:this.dropdownRef,value:u??"-1",className:"custom-select filter-value-select",onChange:this.handleFilterChange,children:[o.length===0&&f.jsx("option",{value:"-1",disabled:!0,children:ga}),o.map(b=>{var{id:S,title:C}=b;return f.jsx("option",{value:S,children:C},S)})]}),f.jsx(Z,{"data-testid":"filter-apply-button",kind:"ghost",onClick:this.handleFilterApply,icon:Dl,tooltip:"Apply Filter Set"})]})})}),f.jsx("div",{className:"filter-set-manager-menu",children:f.jsx(Z,{kind:"ghost",className:"btn btn-link btn-link-icon m-2 px-2",onClick:this.handleSettingsClick,tooltip:"Settings",icon:f.jsx(Me,{icon:$n,transform:"grow-4"})})})]},"back")]})})}}const us=Br;function si(n){var e,t,r,i,a,{model:l,widgetName:s,glContainer:o,description:u}=n,d=((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),h=l==null?void 0:l.displayString(d,"long"),c=(a=l==null?void 0:l.columnCount)!==null&&a!==void 0?a:0,v=l==null?void 0:l.displayString(c,"long");return f.jsxs(Cr,{widgetType:"Table",widgetName:s,glContainer:o,description:u,children:[f.jsx("hr",{className:"tab-tooltip-divider"}),f.jsx("span",{children:"Number of Columns"}),f.jsx("span",{className:"tab-tooltip-statistic-value",children:v}),f.jsx("span",{children:"Number of Rows"}),f.jsx("span",{className:"tab-tooltip-statistic-value",children:h})]})}si.propTypes={glContainer:ul.Container.isRequired,widgetName:B.string.isRequired,description:B.string};si.defaultProps={description:null};function ds(n){if(n==null)return!1;var e=n;return typeof e.table=="string"}function hs(n){if(n==null)return!1;var e=n;return typeof e.name=="string"}function ba(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function mt(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ba(Object(t),!0).forEach(function(r){pe(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ba(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function pe(n,e,t){return e=sv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function sv(n){var e=ov(n,"string");return typeof e=="symbol"?e:String(e)}function ov(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var tt=J.module("IrisGridPanel"),uv=500;function Ca(n){if(n==null)throw new Error("No metadata provided");if(hs(n))return n.name;if(ds(n))return n.table;throw new Error("Unable to determine table name from metadata: ".concat(JSON.stringify(n)))}class Bt extends T.PureComponent{constructor(e){super(e),pe(this,"irisGrid",void 0),pe(this,"pluginRef",void 0),pe(this,"modelPromise",void 0),pe(this,"irisGridState",void 0),pe(this,"gridState",void 0),pe(this,"pluginState",void 0),pe(this,"irisGridUtils",void 0),pe(this,"gridStateDehydrator",Rn.makeMemoizedGridStateDehydrator()),pe(this,"irisGridStateDehydrator",Rn.makeMemoizedIrisGridStateDehydrator()),pe(this,"getGridInputFilters",U((r,i)=>Q.getInputFiltersForColumns(r,i.filter(a=>{var{value:l,excludePanelIds:s}=a,o=$.getIdFromPanel(this);return l!=null&&(s==null||o!=null&&!s.includes(o))})))),pe(this,"getAlwaysFetchColumns",U((r,i)=>{for(var a=$.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]})),pe(this,"getPluginContent",U((r,i,a)=>{if(!i||!Mt(i)||r==null||i.table==null)return null;var l={panel:this};return f.jsx("div",{className:"iris-grid-plugin",children:f.jsx(r,mt({ref:this.pluginRef,filter:this.handlePluginFilter,fetchColumns:this.handlePluginFetchColumns,model:i,table:i.table,onStateChange:this.handlePluginStateChange,pluginState:a},l))})})),pe(this,"getDehydratedIrisGridPanelState",U((r,i,a,l)=>Q.dehydrateIrisGridPanelState(r,{isSelectingPartition:i,partitions:a,advancedSettings:l}))),pe(this,"getCachedPanelState",U((r,i,a,l)=>({irisGridPanelState:r,irisGridState:i,gridState:a,pluginState:l}))),pe(this,"savePanelState",ht(()=>{var{irisGridState:r,gridState:i,pluginState:a}=this;F(r);var{onPanelStateUpdate:l}=this.props,{model:s,panelState:o,isSelectingPartition:u,partitions:d,advancedSettings:h}=this.state;F(this.irisGridUtils),F(s),F(i);var c=this.getCachedPanelState(this.getDehydratedIrisGridPanelState(s,u,d,h),this.irisGridStateDehydrator(s,r),this.gridStateDehydrator(s,i),a);c!==o&&(tt.debug("Saving panel state",this,c),this.setState({panelState:c}),l==null||l(c))},uv)),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=Pe.createRef(),this.pluginRef=Pe.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($l.DEFAULTS),customColumns:[],customColumnFormatMap:new Map,isFilterBarShown:!1,quickFilters:new Map,sorts:[],userColumnWidths:new Map,userRowHeights:new Map,reverse:!1,movedColumns:[],movedRows:[],isSelectingPartition:!1,partitions:[],rollupConfig:void 0,showSearchBar:!1,searchValue:"",selectedSearchColumns:void 0,invertSearchColumns:!0,Plugin:void 0,pluginFilters:[],pluginFetchColumns:[],modelQueue:[],pendingDataMap:new Map,frozenColumns:void 0,panelState:t,irisGridStateOverrides:{},gridStateOverrides:{},isStuckToBottom:!1,isStuckToRight:!1,conditionalFormats:[],selectDistinctColumns:[]}}componentDidMount(){this.initModel()}componentDidUpdate(e,t){var{model:r}=this.state,{makeModel:i}=this.props;r!==t.model&&(t.model!=null&&(this.stopModelListening(t.model),t.model.close()),r!=null&&this.startModelListening(r)),i!==e.makeModel&&this.initModel()}componentWillUnmount(){this.savePanelState.cancel(),this.modelPromise!=null&&(this.modelPromise.cancel(),this.modelPromise=void 0);var{model:e}=this.state;e&&(this.stopModelListening(e),e.close())}getTableName(){var{metadata:e}=this.props;return Ca(e)}initModel(){this.setState({isModelReady:!1,isLoading:!0,error:null});var{makeModel:e}=this.props;this.modelPromise!=null&&this.modelPromise.cancel(),this.modelPromise=Ae.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 Q(t.dh),r!=null){var{irisGridState:l}=r,{aggregationSettings:s,customColumns:o,selectDistinctColumns:u=[],rollupConfig:d}=mt(mt({},l),i);o.length>0&&a.push(h=>{h.customColumns=o}),d!=null&&d.columns.length>0&&a.push(h=>{h.rollupConfig=Q.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();tt.debug("initModelQueue",i),i&&i(r),this.setState({modelQueue:t})}handleAdvancedSettingsChange(e,t){tt.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;F(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(nt.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):(F(r),this.initModelQueue(r,i))}handleTableChanged(e){tt.debug("handleTableChanged",e);var{glEventHub:t}=this.props,{detail:r}=e,i=$.getIdFromPanel(this);F(i),Ur(t,i,r)}handleCreateChart(e,t){this.savePanelState.flush(),this.setState(()=>null,()=>{var{glEventHub:r,inputFilters:i}=this.props,a=this.getTableName(),{panelState:l}=this.state,s=$.getIdFromPanel(this),o;l&&(o=Q.extractTableSettings(l,i)),r.emit(nt.CREATE_CHART,{metadata:{settings:e,sourcePanelId:s,table:a,tableSettings:o},table:Mt(t)?t.table:void 0})})}handleColumnSelected(e){var{glEventHub:t}=this.props,r=$.getIdFromPanel(this);F(r),en(t,r,e,{type:"tableLink"})}handleDataSelected(e,t){var{glEventHub:r}=this.props,i=$.getIdFromPanel(this);F(i),os(r,i,t)}handleShow(){this.updateGrid()}handleTabClicked(){this.irisGrid.current&&this.irisGrid.current.focus()}handleError(e){tt.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){Ae.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}),Mt(e)){var{table:i}=e,{pluginName:a}=i;if(a!==""&&r!=null&&a!=null){var l=r(a);this.setState({Plugin:l})}var s=$.getIdFromPanel(this);F(s),Ur(t,s,i)}this.sendColumnsChange(e.columns)}handleClearAllFilters(){var e=this.irisGrid.current,{isDisconnected:t}=this.state;e!=null&&!t&&e.clearAllFilters()}sendColumnsChange(e){tt.debug2("sendColumnsChange",e);var{glEventHub:t}=this.props,r=$.getIdFromPanel(this);F(r),Gr(t,r,e)}startModelListening(e){e.addEventListener(W.EVENT.DISCONNECT,this.handleDisconnect),e.addEventListener(W.EVENT.RECONNECT,this.handleReconnect),e.addEventListener(W.EVENT.COLUMNS_CHANGED,this.handleColumnsChanged),e.addEventListener(W.EVENT.TABLE_CHANGED,this.handleTableChanged)}stopModelListening(e){e.removeEventListener(W.EVENT.DISCONNECT,this.handleDisconnect),e.removeEventListener(W.EVENT.RECONNECT,this.handleReconnect),e.removeEventListener(W.EVENT.COLUMNS_CHANGED,this.handleColumnsChanged),e.removeEventListener(W.EVENT.TABLE_CHANGED,this.handleTableChanged)}getCoordinateForColumn(e){var t,r,i,{model:a}=this.state;if(!a)return null;var l=this.irisGrid.current,{gridWrapper:s}=l||{},o=(t=s==null?void 0:s.getBoundingClientRect())!==null&&t!==void 0?t:null;if(o==null||o.width<=0||o.height<=0)return null;F(l);var{metrics:u}=l.state;F(u);var{columnHeaderHeight:d,allColumnXs:h,allColumnWidths:c,right:v,columnHeaderMaxDepth:g}=u,p=a.getColumnIndexByName(e);F(p);var m=l.getVisibleColumn(p),b=(r=h.get(m))!==null&&r!==void 0?r:0,S=(i=c.get(m))!==null&&i!==void 0?i:0,C=Ge(m>v?o.right:o.left+b+S*.5,o.left,o.right),w=o.top+d*g;return[C,w]}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;tt.debug("setFilters",t,r);var{model:i,isDisconnected:a}=this.state,l=this.irisGrid.current;if(l==null||a){tt.debug("Ignore setFilters, model disconnected");return}F(i);var{columns:s,formatter:o}=i,u=Q.changeFilterColumnNamesToIndexes(i.columns,t).filter(h=>{var[c]=h;return i.isFilterable(c)}),d=Q.changeFilterColumnNamesToIndexes(i.columns,r).filter(h=>{var[c]=h;return i.isFilterable(c)});F(this.irisGridUtils),l.clearAllFilters(),l.setFilters({quickFilters:this.irisGridUtils.hydrateQuickFilters(s,u,o.timeZone),advancedFilters:this.irisGridUtils.hydrateAdvancedFilters(s,d,o.timeZone)})}setStateOverrides(e){tt.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=mt({},r),{quickFilters:u,advancedFilters:d}=o;u&&(o.quickFilters=Q.changeFilterColumnNamesToIndexes(e.columns,u)),d&&(o.advancedFilters=Q.changeFilterColumnNamesToIndexes(e.columns,d));var{isSelectingPartition:h,partitions:c,advancedSettings:v}=Q.hydrateIrisGridPanelState(e,s);F(this.irisGridUtils);var{advancedFilters:g,customColumns:p,customColumnFormatMap:m,isFilterBarShown:b,quickFilters:S,reverse:C,rollupConfig:w,aggregationSettings:E,sorts:P,userColumnWidths:I,userRowHeights:D,showSearchBar:N,searchValue:M,selectDistinctColumns:R,selectedSearchColumns:_,invertSearchColumns:V,pendingDataMap:K,frozenColumns:q,conditionalFormats:ie,columnHeaderGroups:ee,partitionConfig:ge}=this.irisGridUtils.hydrateIrisGridState(e,mt(mt({},l),o)),{isStuckToBottom:be,isStuckToRight:$e,movedColumns:L,movedRows:x}=Q.hydrateGridState(e,mt(mt({},a),i),l.customColumns);this.setState({advancedFilters:g,advancedSettings:v,conditionalFormats:ie,customColumns:p,customColumnFormatMap:m,isFilterBarShown:b,isSelectingPartition:h,movedColumns:L,movedRows:x,partitions:c,quickFilters:S,reverse:C,rollupConfig:w,aggregationSettings:E,sorts:P,userColumnWidths:I,userRowHeights:D,showSearchBar:N,searchValue:M,selectDistinctColumns:R,selectedSearchColumns:_,invertSearchColumns:V,pendingDataMap:K,frozenColumns:q,isStuckToBottom:be,isStuckToRight:$e,columnHeaderGroups:ee,partitionConfig:ge})}catch(j){tt.error("loadPanelState failed to load panelState",t,j)}}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:p,getMetricCalculator:m,theme:b}=this.props,{advancedFilters:S,aggregationSettings:C,advancedSettings:w,conditionalFormats:E,customColumns:P,customColumnFormatMap:I,error:D,isDisconnected:N,isFilterBarShown:M,isSelectingPartition:R,isStuckToBottom:_,isStuckToRight:V,isLoaded:K,isLoading:q,isModelReady:ie,model:ee,movedColumns:ge,movedRows:be,partitions:$e,partitionConfig:L,quickFilters:x,reverse:j,rollupConfig:G,sorts:z,userColumnWidths:Ce,userRowHeights:ye,showSearchBar:ke,searchValue:ze,selectDistinctColumns:qe,selectedSearchColumns:sn,invertSearchColumns:on,Plugin:Er,pluginFilters:un,pluginFetchColumns:Qt,pendingDataMap:ks,frozenColumns:xs,columnHeaderGroups:_s}=this.state,js=D!=null?"Unable to open table. ".concat(D):void 0,gi=Ca(d),bi=(e=ee==null?void 0:ee.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(Er,ee,Vs),{permissions:Hs}=v,{canCopy:Gs,canDownloadCsv:Us}=Hs;return f.jsx(Sr,{errorMessage:js,isDisconnected:N,isLoading:q,isLoaded:K,className:"iris-grid-panel",glContainer:i,glEventHub:a,onClearAllFilters:this.handleClearAllFilters,onShow:this.handleShow,onTabFocus:this.handleShow,onTabClicked:this.handleTabClicked,widgetName:gi,widgetType:"Table",description:bi,componentPanel:this,renderTabTooltip:()=>f.jsx(si,{model:ee,widgetName:gi,glContainer:i,description:bi}),children:ie&&ee&&f.jsx(Kn,{advancedFilters:S,aggregationSettings:C,advancedSettings:w,alwaysFetchColumns:this.getAlwaysFetchColumns(u,Qt),columnAllowedCursor:"linker",columnNotAllowedCursor:"linker-not-allowed",copyCursor:"copy",customColumns:P,customColumnFormatMap:I,columnSelectionValidator:this.isColumnSelectionValid,conditionalFormats:E,inputFilters:this.getGridInputFilters(ee.columns,o),applyInputFiltersOnInit:c==null,isFilterBarShown:M,isSelectingColumn:l!=null,isSelectingPartition:R,isStuckToBottom:_,isStuckToRight:V,mouseHandlers:h,movedColumns:ge,movedRows:be,partitions:$e,partitionConfig:L,quickFilters:x,renderer:g,reverse:j,rollupConfig:G,settings:p,sorts:z,userColumnWidths:Ce,userRowHeights:ye,model:ee,showSearchBar:ke,searchValue:ze,selectedSearchColumns:sn,selectDistinctColumns:qe,invertSearchColumns:on,onColumnSelected:this.handleColumnSelected,onCreateChart:this.handleCreateChart,onDataSelected:this.handleDataSelected,onError:this.handleError,onStateChange:this.handleGridStateChange,onContextMenu:this.handleContextMenu,onAdvancedSettingsChange:this.handleAdvancedSettingsChange,customFilters:un,pendingDataMap:ks,canCopy:Gs,canDownloadCsv:Us,ref:this.irisGrid,getDownloadWorker:s,frozenColumns:xs,theme:b,columnHeaderGroups:_s,getMetricCalculator:m,children:$s})})}}pe(Bt,"defaultProps",{onStateChange:()=>{},onPanelStateUpdate:()=>{}});pe(Bt,"displayName","IrisGridPanel");pe(Bt,"COMPONENT","IrisGridPanel");var dv=(n,e)=>{var{localDashboardId:t=Eo,glContainer:r}=e;return{inputFilters:gr(n,t),links:Tt(n,t),columnSelectionValidator:mr(n,t),user:yo(n),settings:Xr(n)}},hv=Et(dv,null,null,{forwardRef:!0})(Bt);const oi=hv;function dr(n,e,t){return e=cv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function cv(n){var e=vv(n,"string");return typeof e=="symbol"?e:String(e)}function vv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Sa=J.module("InputFilter"),fv=150;class Wt extends T.Component{constructor(e){super(e),dr(this,"inputRef",void 0),dr(this,"getItemLabel",Ue((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})),dr(this,"sendUpdate",ht(()=>{var{onChange:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a({column:l,isValueShown:o,value:s})},fv)),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=Pe.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?Wt.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 f.jsxs(Gn,{className:"input-filter fill-parent-absolute",isFlipped:r??!1,children:[f.jsx("div",{className:"input-filter-settings-card",children:f.jsxs("div",{className:"input-filter-settings-content",children:[f.jsxs("div",{className:"input-filter-settings-grid",children:[f.jsx("label",{children:"Filter Column"}),f.jsxs(cr,{value:String(e.findIndex(u=>u.name===(i==null?void 0:i.name)&&u.type===(i==null?void 0:i.type))),className:"custom-select",onChange:this.handleColumnChange,children:[e.map((u,d)=>f.jsx("option",{value:d,children:this.getItemLabel(e,d)},"".concat(u.name,"/").concat(u.type))),e.length===0&&f.jsx("option",{value:"-1",disabled:!0,children:"No Available Columns"})]}),f.jsx("div",{className:"text-muted small",children:"Input filter control will apply its filter to all columns matching this name in this dashboard."})]}),f.jsxs("div",{className:"input-filter-settings-buttons",children:[f.jsx(Z,{kind:"secondary",onClick:this.handleSettingsCancel,disabled:t==null,children:"Cancel"}),f.jsx(Z,{kind:"primary",className:"ml-2",onClick:this.handleSettingsSave,disabled:i==null,children:"Save"})]})]})}),f.jsxs("div",{className:"input-filter-value-card",onClick:this.handleBackgroundClick,children:[f.jsx("div",{className:"input-filter-column",children:f.jsxs("div",{className:"input-filter-column-title",children:[s," Filter"]})}),f.jsx("div",{className:"d-flex justify-content-center align-items-center h-100 w-100",children:f.jsx("div",{className:"input-filter-value-input d-flex flex-column justify-content-center",children:f.jsx("input",{type:"text",ref:this.inputRef,placeholder:Wt.PLACEHOLDER,value:a??"",onChange:this.handleValueChange,onKeyPress:this.handleInputKeyPress,style:{width:"".concat(l+3,"ch")},spellCheck:"false"})})}),f.jsx("div",{className:"input-filter-menu",children:f.jsx(Z,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:f.jsx(Me,{icon:$n,transform:"grow-4"}),tooltip:"Input Filter Settings"})})]})]})}}dr(Wt,"PLACEHOLDER","Enter value...");dr(Wt,"defaultProps",{column:null,isValueShown:!1,value:null});const pv=Wt;function rn(n,e,t){return e=mv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function mv(n){var e=gv(n,"string");return typeof e=="symbol"?e:String(e)}function gv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var bv=250;class nn extends T.Component{constructor(e){super(e),rn(this,"inputFilterRef",void 0),this.handleChange=ht(this.handleChange.bind(this),bv),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.inputFilterRef=Pe.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,p=h!=null&&r!==h.isValueShown&&a===h.name&&l===h.type&&i===h.value;return s=(d=!g&&r&&(!p||!v))!==null&&d!==void 0?d:!1,s||(o=c),{panelState:{isValueShown:r,name:a,type:l,value:i,timestamp:o},timestamp:o,wasFlipped:p,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=$.getIdFromPanel(this);F(l),ss(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 f.jsx(qt,{className:"iris-input-filter-panel",componentPanel:this,glContainer:e,glEventHub:t,onClearAllFilters:this.handleClearAllFilters,isClonable:!0,isRenamable:!0,children:f.jsx(pv,{ref:this.inputFilterRef,column:r,columns:i,onChange:this.handleChange,isValueShown:a,value:l})})}}rn(nn,"defaultProps",{panelState:null});rn(nn,"COMPONENT","InputFilterPanel");rn(nn,"displayName","InputFilterPanel");var Cv=(n,e)=>{var{localDashboardId:t}=e;return{columns:Vn(n,t)}},Sv=Et(Cv,null,null,{forwardRef:!0})(nn);const Ht=Sv;function ya(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?ya(Object(t),!0).forEach(function(r){ui(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ya(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function ui(n,e,t){return e=yv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function yv(n){var e=Ev(n,"string");return typeof e=="symbol"?e:String(e)}function Ev(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var De=J.module("FilterSetManagerPanel");function wv(n){return n.setPanelState!=null}class zt extends T.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=$.getComponentNameFromPanel(i),l=$.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=$.getComponentConfigFromContainer(s);if(o==null){De.error("Could not get component config from container",s);return}var u=$.getPanelComponentState(o);if(u==null){De.debug("Panel state is null ".concat(l));return}switch(a){case $.getComponentName(Bt):{var d;l!=null&&(d=this.getIrisGridPanelFilters(l,u)),d!=null&&t.push({panelId:l,type:a,state:d});break}case $.getComponentName(Ht):case $.getComponentName($t):{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=zt.changeFilterIndexesToColumnNames(i,s));var d;return o&&(d=zt.changeFilterIndexesToColumnNames(i,o)),{irisGridState:Mr(Mr({},a),{},{advancedFilters:u,quickFilters:d}),gridState:Mr({},l)}}handleGetFilterState(){return this.getFilterState()}handleChange(e){var{isValueShown:t,selectedId:r}=e;De.debug("handleChange",t,r),this.setState({isValueShown:t,selectedId:r}),this.updatePanelState()}handleFilterApply(e){var{dashboardOpenedPanelMap:t}=this.props,{panels:r,restoreFullState:i=!1}=e;De.debug("Apply filters from filter set",e),r.forEach(a=>{var{panelId:l,type:s,state:o}=a;if(l==null){De.debug("panel is null",l);return}if(!t.has(l)){De.debug("Ignore closed panel",l);return}De.debug("Apply panel filters",l,s,o);var u=t.get(l);switch(s){case $.getComponentName(Bt):this.restoreIrisGridFilters(u,o,i);break;case $.getComponentName(Ht):case $.getComponentName($t):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=$.getIdFromPanel(e);if(d==null){De.error("Panel Id is null.");return}var h=u.get(d);if(h==null){De.error("Unable to get table for panel ".concat(d,"."));return}De.debug("restoreIrisGridFilters",d,t,r),r?e.setStateOverrides(t):e.setFilters({quickFilters:o,advancedFilters:s})}restoreInputFilterState(e,t){var r=Mr({},t);delete r.isValueShown,De.debug("restoreInputFilterState",e,r),e&&wv(e)&&e.setPanelState(r)}render(){var{glContainer:e,glEventHub:t,filterSets:r}=this.props,{isValueShown:i,selectedId:a}=this.state;return f.jsx(qt,{className:"filter-set-manager-panel",componentPanel:this,glContainer:e,glEventHub:t,isClonable:!0,isRenamable:!0,children:f.jsx("div",{className:"input-filter-container h-100 w-100 container",children:f.jsx(us,{onChange:this.handleChange,onApply:this.handleFilterApply,onUpdateSets:this.handleSetsUpdate,isValueShown:i,filterSets:r,selectedId:a,getFilterState:this.handleGetFilterState})})})}}ui(zt,"defaultProps",{panelState:null});ui(zt,"COMPONENT","FilterSetManagerPanel");var Tv=(n,e)=>{var{localDashboardId:t}=e;return{filterSets:vl(n,t),dashboardOpenedPanelMap:hl(n,t),dashboardInputFilters:gr(n,t),panelTableMap:qr(n,t)}},Pv=Et(Tv,{setDashboardFilterSets:ns},null,{forwardRef:!0})(zt);const kr=Pv;function Ov(n,e,t){return e=Dv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Dv(n){var e=Nv(n,"string");return typeof e=="symbol"?e:String(e)}function Nv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class cs extends T.PureComponent{render(){var{isEditing:e,children:t,onDoubleClick:r}=this.props;return f.jsxs("div",{className:"markdown-editor-container h-100 w-100",onDoubleClick:r,children:[f.jsx("div",{className:Ie("text-muted","edit-hint",{viewing:e===void 0||!e}),children:f.jsxs("span",{children:["double-click to edit ",f.jsx(Me,{icon:Ol})]})}),t]})}}Ov(cs,"defaultProps",{isEditing:!1});function Fv(n,e,t){return e=Mv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Mv(n){var e=Iv(n,"string");return typeof e=="symbol"?e:String(e)}function Iv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Rv=J.module("MarkdownStartPage");class vs extends T.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(Rv.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 f.jsx("div",{className:"markdown-panel-start-page h-100 w-100",children:f.jsxs("div",{className:"markdown-panel-start-page-container",children:[f.jsxs("div",{className:"markdown-panel-start-list",children:[f.jsx("h3",{className:"list-title",children:"Start"}),f.jsx("div",{className:"list-item",children:f.jsx(Z,{kind:"ghost",className:"title",onClick:r,children:"New Markdown Note"})})]}),f.jsxs("div",{className:"markdown-panel-start-list",children:[f.jsx("h3",{className:"list-title",children:"Recently Closed from Dashboard"}),e.map(l=>f.jsxs("div",{className:"list-item",children:[f.jsx(Z,{kind:"ghost",className:"title",onClick:()=>t(l),children:l.title}),f.jsx("button",{className:"btn-link icon",type:"button",onClick:()=>{this.handleDeleteButtonClick(l)},children:f.jsx(Me,{icon:Yr})})]},l.id)),f.jsxs(Zo,{isOpen:i,toggle:this.handleDeleteModalClose,className:"modal-dialog-centered markdown-delete-modal",children:[f.jsx(Qo,{children:"Are you sure you want to permanently delete this note?"}),f.jsx(Jo,{children:"You can't undo this action."}),f.jsxs(wo,{children:[f.jsx(Z,{kind:"secondary",onClick:this.handleDeleteModalClose,children:"Cancel"}),f.jsx(Z,{kind:"danger",onClick:()=>{this.handleDeleteMarkdown(a)},children:"Delete"})]})]})]})]})})}}Fv(vs,"defaultProps",{closedMarkdowns:[],onOpen:()=>{},onCreate:()=>{},onDelete:()=>{}});const Lv=vs;function di(n,e,t){return e=Av(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Av(n){var e=kv(n,"string");return typeof e=="symbol"?e:String(e)}function kv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class It{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
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()));const xr=It;function hr(n,e,t){return e=kv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function kv(n){var e=xv(n,"string");return typeof e=="symbol"?e:String(e)}function xv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var _v=T.lazy(()=>zr(()=>import("./MarkdownEditor-d4fa93a1.js"),["./MarkdownEditor-d4fa93a1.js","./vendor-9e6eb436.js","./helpers-de833af9.js","./vendor-6cb4b08b.css","./LogPanel-ea0c64de.js","./index-a8c7882b.js","./index-11271fba.css","./LogPanel-8a0231fc.css"],import.meta.url)),Ir=J.module("MarkdownPanel");class hi extends T.Component{constructor(e){super(e),hr(this,"markdownEditor",void 0),hr(this,"editor",void 0),hr(this,"getClosedMarkdowns",U(xr.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=xr.DEFAULT_CONTENT),this.state={isStartPageShown:r==null&&this.getClosedMarkdowns(e.closedPanels).length!==0,isEditing:!1,content:r,panelState:t},this.markdownEditor=null}setEditorPosition(e){N(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=$.getComponentConfigFromContainer(t);r.emit(Fe.REOPEN,e,i)}handleDeleteMarkdown(e){var{glEventHub:t}=this.props;t.emit(Fe.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 f.jsx(qt,{glContainer:e,glEventHub:t,className:"markdown-panel",componentPanel:this,onResize:this.handleEditorResize,onBlur:this.handleEditorBlur,isClonable:!0,isRenamable:!0,children:a?f.jsx(Rv,{closedMarkdowns:s,onCreate:this.handleCreateMarkdown,onOpen:this.handleOpenMarkdown,onDelete:this.handleDeleteMarkdown}):f.jsx(cs,{isEditing:i,onDoubleClick:this.handleContainerDoubleClick,children:f.jsx(T.Suspense,{fallback:f.jsx(ct,{}),children:f.jsx(_v,{ref:o=>{this.markdownEditor=o},isEditing:i,content:l??xr.DEFAULT_CONTENT,onEditorInitialized:this.handleEditorInitialized})})})})}}hr(hi,"defaultProps",{panelState:null});hr(hi,"COMPONENT","MarkdownPanel");var jv=(n,e)=>{var{localDashboardId:t}=e;return{closedPanels:To(n,t)}},Vv=Et(jv,null,null,{forwardRef:!0})(hi);const or=Vv;function Ea(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function wa(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 je(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){Ne(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 Ne(n,e,t){return e=$v(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function $v(n){var e=Hv(n,"string");return typeof e=="symbol"?e:String(e)}function Hv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Gv=T.lazy(()=>zr(()=>import("./MarkdownNotebook-1fa4a282.js"),["./MarkdownNotebook-1fa4a282.js","./vendor-9e6eb436.js","./helpers-de833af9.js","./vendor-6cb4b08b.css","./index-a8c7882b.js","./index-11271fba.css","./LogPanel-ea0c64de.js","./LogPanel-8a0231fc.css","./MarkdownNotebook-9207e775.css"],import.meta.url)),te=J.module("NotebookPanel"),Pa=400;class Te extends T.Component{static handleError(e){Ae.isCanceled(e)||te.error(e)}static unsavedNotebookCount(){return document.querySelectorAll(".".concat(Te.UNSAVED_INDICATOR_CLASS_NAME,".").concat(Te.UNSAVED_STATUS_CLASS_NAME)).length}static languageFromFileName(e){var t=Ve.getExtension(e).toLowerCase();switch(t){case"py":case"python":return"python";case"groovy":return"groovy";case"scala":return"scala";default:return null}}constructor(e){super(e),Ne(this,"pending",void 0),Ne(this,"debouncedSavePanelState",void 0),Ne(this,"debouncedLoad",void 0),Ne(this,"notebook",void 0),Ne(this,"tabTitleElement",void 0),Ne(this,"tabInitOnce",void 0),Ne(this,"editor",void 0),Ne(this,"getSettings",U((c,v)=>je(je({},c),{},{minimap:{enabled:v}}))),Ne(this,"getOverflowActions",U((c,v)=>[{title:"Find",icon:nu,action:this.handleFind,group:Ke.groups.high,shortcut:ot.NOTEBOOK.FIND,order:10},{title:"Copy File",icon:Tl,action:this.handleCopy,group:Ke.groups.medium,order:20},{title:"Rename File",icon:iu,action:this.handleShowRename,group:Ke.groups.medium,order:30},{title:"Delete File",icon:Yr,action:this.handleDelete,group:Ke.groups.medium,order:40},{title:"Show Minimap",icon:c?Di:void 0,action:this.handleMinimapChange,group:Ke.groups.low,shortcut:ot.NOTEBOOK.MINIMAP,order:20},{title:"Word Wrap",icon:v?Di:void 0,action:this.handleWordWrapChange,group:Ke.groups.low,shortcut:ot.NOTEBOOK.WORDWRAP,order:30}])),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.handleLinkClick=this.handleLinkClick.bind(this),this.handleLoadSuccess=this.handleLoadSuccess.bind(this),this.handleLoadError=this.handleLoadError.bind(this),this.handlePanelDropped=this.handlePanelDropped.bind(this),this.handleRenameFile=this.handleRenameFile.bind(this),this.handleResize=this.handleResize.bind(this),this.handleRunCommand=this.handleRunCommand.bind(this),this.handleRunAll=this.handleRunAll.bind(this),this.handleRunSelected=this.handleRunSelected.bind(this),this.handleSave=this.handleSave.bind(this),this.handleSaveAsCancel=this.handleSaveAsCancel.bind(this),this.handleSaveAsSubmit=this.handleSaveAsSubmit.bind(this),this.handleSaveError=this.handleSaveError.bind(this),this.handleSaveSuccess=this.handleSaveSuccess.bind(this),this.handleSessionOpened=this.handleSessionOpened.bind(this),this.handleSessionClosed=this.handleSessionClosed.bind(this),this.handleShow=this.handleShow.bind(this),this.handleShowRename=this.handleShowRename.bind(this),this.handleTab=this.handleTab.bind(this),this.handleTabBlur=this.handleTabBlur.bind(this),this.handleTabClick=this.handleTabClick.bind(this),this.handleTabFocus=this.handleTabFocus.bind(this),this.handleTransformLinkUri=this.handleTransformLinkUri.bind(this),this.handleOverwrite=this.handleOverwrite.bind(this),this.handlePreviewPromotion=this.handlePreviewPromotion.bind(this),this.getDropdownOverflowActions=this.getDropdownOverflowActions.bind(this),this.pending=new _n,this.debouncedSavePanelState=ht(this.savePanelState.bind(this),Pa),this.debouncedLoad=ht(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:""},te.debug("constructor",e,this.state)}componentDidMount(){var{glContainer:e,glEventHub:t}=this.props,{tab:r}=e;r!=null&&this.initTab(r),this.initNotebookContent(),t.on(oe.RENAME_FILE,this.handleRenameFile),t.on(Fe.DROPPED,this.handlePanelDropped),e.on(oe.PROMOTE_FROM_PREVIEW,this.handlePreviewPromotion)}componentDidUpdate(e,t){var{isPreview:r,settings:i}=this.state,{wordWrap:a}=i,{defaultNotebookSettings:l}=this.props;r!==t.isPreview&&this.setPreviewStatus(),a!==t.settings.wordWrap&&(this.updateEditorWordWrap(),this.debouncedSavePanelState()),l.isMinimapEnabled!==e.defaultNotebookSettings.isMinimapEnabled&&this.updateEditorMinimap()}componentWillUnmount(){this.debouncedSavePanelState.flush(),this.pending.cancel();var{glEventHub:e,glContainer:t}=this.props,{fileMetadata:r,isPreview:i}=this.state;e.off(oe.RENAME_FILE,this.handleRenameFile),e.off(Fe.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);N(t);var r=t.querySelector(".lm_title");this.tabTitleElement=r,r==null||r.classList.add("notebook-title"),this.setPreviewStatus()}getNotebookValue(){var{changeCount:e,savedChangeCount:t,settings:r}=this.state,{value:i}=r;if(e!==t&&this.notebook){var a=this.notebook.getValue();return a??i}return i}initNotebookContent(){var{fileMetadata:e,settings:t,isPreview:r}=this.state;if(e&&e.id){te.debug("Init content from file"),this.registerFileMetadata(e,r),this.load();return}if(t.value!=null){te.debug("Use content passed in the settings prop"),this.handleLoadSuccess();return}this.handleLoadError(new Error("Missing file metadata"))}closeFileTabById(e){var{glEventHub:t}=this.props;t.emit(oe.CLOSE_FILE,{id:e})}registerFileMetadata(e,t){var{glEventHub:r,metadata:i}=this.props,{id:a}=i;r.emit(oe.REGISTER_FILE,a,e,t)}renameTab(e,t){var{glEventHub:r}=this.props;r.emit(oe.RENAME,e,t)}load(){var{fileMetadata:e,settings:t}=this.state;N(e);var{id:r}=e,{fileStorage:i}=this.props;this.pending.add(i.loadFile(r)).then(a=>{var l;te.debug("Loaded file",a);var{filename:s}=a,{itemName:o}=this.state;if(s!==o){var{metadata:u}=this.props,{id:d}=u;this.renameTab(d,Ve.getBaseName(s))}var h=je(je({},t),{},{language:(l=Te.languageFromFileName(s))!==null&&l!==void 0?l:""});t.value==null&&(h.value=a.content),t.wordWrap===void 0&&(t.wordWrap="off"),this.setState({fileMetadata:{id:s,itemName:s},settings:h}),this.debouncedSavePanelState()}).then(this.handleLoadSuccess).catch(this.handleLoadError)}save(){var{fileMetadata:e}=this.state;if(e&&Ve.hasPath(e.itemName)){var t=this.getNotebookValue();return t!==void 0?(this.saveContent(e.itemName,t),!0):!1}return this.setState({showSaveAsModal:!0}),!1}saveContent(e,t){te.debug("saveContent",e,t),this.updateSavedChangeCount();var{fileStorage:r}=this.props;this.pending.add(r.saveFile({filename:e,content:t,basename:e})).then(this.handleSaveSuccess).catch(this.handleSaveError)}updateSavedChangeCount(){this.setState(e=>{var{changeCount:t}=e;return{savedChangeCount:t}})}setPreviewStatus(){if(this.tabTitleElement){var{isPreview:e}=this.state;te.debug("setPreviewStatus",this.tabTitleElement,e),e?this.tabTitleElement.classList.add("is-preview"):this.tabTitleElement.classList.remove("is-preview")}}handlePreviewPromotion(){this.removePreviewStatus()}savePanelState(){this.setState(e=>{var{changeCount:t,savedChangeCount:r,fileMetadata:i,isPreview:a,settings:l}=e,s=this.getNotebookValue(),o=t!==r?s:void 0,u=je(je({},l),{},{value:s}),d=je(je({},l),{},{value:o}),h={settings:d,fileMetadata:i,isPreview:a};return te.debug("Saving panel state",h),{settings:u,panelState:h}})}handleCloseDiscard(){this.setState({showCloseModal:!1});var{glContainer:e}=this.props;e.close({force:!0})}handleCloseSave(){if(this.setState({showCloseModal:!1}),this.save()){var{glContainer:e}=this.props;e.close({force:!0})}}handleCloseCancel(){this.setState({showCloseModal:!1})}handleOverwrite(e){var{glEventHub:t}=this.props;t.emit(oe.CLOSE_FILE,{id:e,itemName:e},{force:!0}),this.focus()}handleCopy(){var e=this;return wa(function*(){var{fileStorage:t,glEventHub:r,session:i}=e.props,{fileMetadata:a,settings:l}=e.state;N(a);var{language:s}=l,{itemName:o}=a,u=yield Ve.getUniqueCopyFileName(t,o);te.debug("handleCopy",a,o,u),yield t.copyFile(o,u);var d={id:u,itemName:u},h={value:null,language:s};r.emit(oe.SELECT_NOTEBOOK,i,s,h,d,!0)})()}handleDelete(){te.debug("handleDelete, pending confirmation"),this.setState({showDeleteModal:!0})}handleDeleteConfirm(){var e=this;return wa(function*(){var{fileStorage:t,glContainer:r,glEventHub:i}=e.props,{fileMetadata:a}=e.state;te.debug("handleDeleteConfirm",a==null?void 0:a.itemName),e.setState({showDeleteModal:!1}),a&&(Ve.hasPath(a.itemName)&&(yield Ve.fileExists(t,a.itemName))?(i.emit(oe.CLOSE_FILE,a,{force:!0}),t.deleteFile(a.itemName)):r.close({force:!0}))})()}handleDeleteCancel(){this.setState({showDeleteModal:!1})}handleEditorInitialized(e){this.editor=e}handleEditorWillDestroy(){this.editor=void 0}handleEditorChange(e){te.debug2("handleEditorChanged",e),this.removePreviewStatus(),this.setState(t=>{var{changeCount:r,savedChangeCount:i}=t,{isUndoing:a,isRedoing:l}=e;return a?{changeCount:r-1,savedChangeCount:i}:!l&&r<i?{changeCount:r+1,savedChangeCount:0}:{changeCount:r+1,savedChangeCount:i}}),this.debouncedSavePanelState()}handleFind(){this.notebook&&this.notebook.toggleFind()}updateEditorMinimap(){if(this.editor){var{defaultNotebookSettings:e}=this.props;this.editor.updateOptions({minimap:{enabled:e.isMinimapEnabled}})}}handleMinimapChange(){var e,{defaultNotebookSettings:t,updateSettings:r}=this.props,i={defaultNotebookSettings:{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:je(je({},t),{},{wordWrap:r})}})}handleLinkClick(e){var{notebooksUrl:t,session:r,sessionLanguage:i}=this.props,{href:a}=e.currentTarget;if(!(!a||!a.startsWith(t))){e.stopPropagation(),e.preventDefault();var l="/".concat(a.substring(t.length)).replace(/%20/g," ");if(l==="/"){te.debug("Ignoring invalid notebook link",l);return}te.debug("Notebook link clicked, opening",l);var{glEventHub:s}=this.props,o={value:null,language:i},u={id:l,itemName:l};s.emit(oe.SELECT_NOTEBOOK,r,i,o,u)}}handleLoadSuccess(){this.setState({error:void 0,isLoaded:!0,isLoading:!1})}handleLoadError(e){var t=e;Ae.isCanceled(t)||(Ae.isTimedOut(t)&&(t=new Error("File not found.")),te.error(t),this.setState({error:t,isLoading:!1}))}handleSave(){te.debug("handleSave"),this.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=je(je({},l.settings),{},{language:a});return te.debug("handleSaveSuccess",i,s,o),s&&Ve.hasPath(s.itemName)&&s.itemName!==i.itemName&&(te.debug("handleSaveSuccess deleting old file",s.itemName),r.deleteFile(s.itemName).catch(Te.handleError)),{fileMetadata:i,settings:o,isPreview:!1}}),this.debouncedSavePanelState(),this.registerFileMetadata(i,!1)}handleSaveError(e){Ae.isCanceled(e)||(this.setState({savedChangeCount:0}),te.error(e))}handleSaveAsCancel(){this.setState({showSaveAsModal:!1})}handleSaveAsSubmit(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;r&&this.handleOverwrite(e),te.debug("handleSaveAsSubmit",e);var{fileMetadata:i}=this.state;if(i){var{itemName:a}=i,l=(t=this.getNotebookValue())!==null&&t!==void 0?t:"";if(this.setState({showSaveAsModal:!1}),Ve.getBaseName(a)!==Ve.getBaseName(e)){var{metadata:s}=this.props,{id:o}=s;this.renameTab(o,Ve.getBaseName(e))}this.saveContent(e,l)}}handleRenameFile(e,t,r){var{fileMetadata:i,panelState:a}=this.state,{glContainer:l}=this.props;if((i==null?void 0:i.itemName)==="/".concat(t)&&r&&JSON.stringify(a)!==JSON.stringify(r)){l.close();return}i&&i.id===e&&(this.setState({fileMetadata:{id:t,itemName:t}}),this.debouncedSavePanelState())}handleResize(){var e;(e=this.notebook)===null||e===void 0||e.updateDimensions()}handleRunCommand(e){this.runCommand(e)}handleRunAll(){var e;if(!this.notebook){te.error("Editor is not initialized.");return}this.runCommand((e=this.notebook.getValue())!==null&&e!==void 0?e:void 0)}handleRunSelected(){if(!this.notebook){te.error("Editor is not initialized.");return}this.runCommand(this.notebook.getSelectedCommand())}handleSessionOpened(e,t){var{language:r}=t;this.setState({session:e,sessionLanguage:r})}handleSessionClosed(){this.setState({session:void 0,sessionLanguage:void 0})}handleShow(){var e;te.debug("handleShow"),(e=this.notebook)===null||e===void 0||e.updateDimensions()}handlePanelDropped(e){var{metadata:{id:t}}=this.props;e===t&&this.forceUpdate()}handleShowRename(){this.setState({showSaveAsModal:!0})}handleTab(e){te.debug("NotebookPanel tab event",e),this.initTab(e)}handleTabFocus(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];te.debug("handleTabFocus",...t);var{glContainer:i}=this.props;this.setState({isDashboardActive:!0}),this.notebook&&!i.isHidden&&this.notebook.updateDimensions()}handleTabBlur(){te.debug("handleTabBlur"),this.setState({isDashboardActive:!1})}handleTabClick(e){te.debug("handle NotebookPanel tab click"),this.focus(),e.detail===2&&this.removePreviewStatus()}handleTransformLinkUri(e){var{notebooksUrl:t}=this.props,{fileMetadata:r}=this.state;if(e.endsWith("/"))return e;if(e.startsWith("/"))return"".concat(t).concat(e.substring(1));var i=r==null?void 0:r.itemName;if(i===void 0)return e;i.charAt(0)==="/"&&(i=i.substring(1));var a=new URL(i,t);return new URL(e,a).href}focus(){requestAnimationFrame(()=>{this.notebook&&this.notebook.focus()})}createNotebook(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"",{glEventHub:i}=this.props,{session:a,sessionLanguage:l,settings:s}=this.state,o=je(je({},s),{},{language:t,value:r}),u={id:null,itemName:e};te.debug("handleCreateNotebook",a,l,o,u),i.emit(oe.CREATE_NOTEBOOK,a,l,o,u)}runCommand(e){if(e===void 0||e===""){te.debug("Ignoring empty command.");return}this.removePreviewStatus();var{glEventHub:t}=this.props;t.emit($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 e,t,{defaultNotebookSettings:r}=this.props,{settings:i}=this.state;return this.getOverflowActions((e=r.isMinimapEnabled)!==null&&e!==void 0?e:!1,this.getSettings(i,(t=r.isMinimapEnabled)!==null&&t!==void 0?t:!1).wordWrap==="on")}render(){var e,t,r,{fileStorage:i,glContainer:a,glContainer:{tab:l},glEventHub:s,defaultNotebookSettings:o}=this.props,{changeCount:u,savedChangeCount:d,error:h,isDashboardActive:c,isLoaded:v,isLoading:g,isPreview:p,fileMetadata:m,session:b,sessionLanguage:y,settings:C,showCloseModal:E,showDeleteModal:w,showSaveAsModal:P}=this.state,I=c&&!a.isHidden&&!p,F=(e=m==null?void 0:m.itemName)!==null&&e!==void 0?e:Te.DEFAULT_NAME,D=F.endsWith(".md"),M=(m==null?void 0:m.id)!=null,R=this.getSettings(C,(t=o.isMinimapEnabled)!==null&&t!==void 0?t:!1),_=b!=null,V=y===R.language,K=!v||!_||!V,q=!v,ie=[{action:this.handleSave,shortcut:Sn.SAVE},{action:this.handleMinimapChange,shortcut:ot.NOTEBOOK.MINIMAP},{action:this.handleWordWrapChange,shortcut:ot.NOTEBOOK.WORDWRAP}],ee=Pn.getDisabledRunTooltip(_,V,"Notebook extension","Run"),ge=Pn.getDisabledRunTooltip(_,V,"Notebook extension","Run Selected"),be=[{title:M?"Rename":"Save As…",order:10,group:Ke.groups.high,action:this.handleShowRename},{title:"Copy File",action:this.handleCopy,group:Ke.groups.high,order:20}],$e=l==null?void 0:l.element.find(".lm_title_before").get(0);return f.jsxs(f.Fragment,{children:[$e!=null&&ro.createPortal(f.jsx("span",{className:Ie(Te.UNSAVED_INDICATOR_CLASS_NAME,{[Te.UNSAVED_STATUS_CLASS_NAME]:u!==d})}),$e),f.jsxs(qt,{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:be,renderTabTooltip:()=>F,children:[!D&&f.jsxs(f.Fragment,{children:[f.jsxs("div",{className:"notebook-toolbar",children:[f.jsxs("span",{children:[f.jsx(Z,{kind:"ghost",className:"btn-play",onClick:this.handleRunAll,disabled:K,icon:f.jsx(Me,{icon:eu,transform:"grow-4"}),tooltip:"Run ".concat(ot.NOTEBOOK.RUN.getDisplayText()),"aria-label":"Run"}),ee!=null&&f.jsx(yn,{children:ee})]}),f.jsxs("span",{children:[f.jsx(Z,{kind:"ghost",className:"btn-play",onClick:this.handleRunSelected,disabled:K,icon:f.jsx(Me,{icon:tu,transform:"grow-4"}),tooltip:"Run Selected ".concat(ot.NOTEBOOK.RUN_SELECTED.getDisplayText()),"aria-label":"Run Selected"}),ge!=null&&f.jsx(yn,{children:ge})]}),f.jsx(Z,{kind:"ghost",className:"mr-auto",disabled:q,onClick:this.handleSave,icon:Pl,tooltip:"Save ".concat(Sn.SAVE.getDisplayText()),"aria-label":"Save"}),f.jsx(Z,{kind:"ghost",className:"btn-overflow",disabled:q,icon:ru,tooltip:"More Actions...",onClick:()=>{},children:f.jsx(fl,{actions:this.getDropdownOverflowActions,popperOptions:Te.POPPER_OPTIONS})})]}),f.jsx(Kd,{isLoaded:v,isLoading:g,error:h,onChange:this.handleEditorChange,onRunCommand:this.handleRunCommand,session:b,sessionLanguage:y,onEditorInitialized:this.handleEditorInitialized,onEditorWillDestroy:this.handleEditorWillDestroy,settings:R,focusOnMount:I,ref:L=>{this.notebook=L}})]}),D&&f.jsx(T.Suspense,{fallback:f.jsx(ct,{}),children:f.jsx(Gv,{content:(r=R.value)!==null&&r!==void 0?r:"",onLinkClick:this.handleLinkClick,onRunCode:this.handleRunCommand,transformImageUri:this.handleTransformLinkUri,transformLinkUri:this.handleTransformLinkUri})}),f.jsx(Oo,{isOpen:P,type:"file",defaultValue:F,title:M?"Rename":"Save file as",onSubmit:this.handleSaveAsSubmit,onCancel:this.handleSaveAsCancel,notifyOnExtensionChange:!0,storage:i}),f.jsx(wi,{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"}),f.jsx(wi,{isOpen:E,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"}),f.jsx(Ke,{actions:ie})]})]})}}Ne(Te,"COMPONENT","NotebookPanel");Ne(Te,"POPPER_OPTIONS",{placement:"bottom-end"});Ne(Te,"DEFAULT_NAME","Untitled");Ne(Te,"UNSAVED_INDICATOR_CLASS_NAME","editor-unsaved-indicator");Ne(Te,"UNSAVED_STATUS_CLASS_NAME","is-unsaved");Ne(Te,"defaultProps",{isDashboardActive:!0,isPreview:!1,session:null,sessionLanguage:null,defaultNotebookSettings:{isMinimapEnabled:!0}});var Uv=(n,e)=>{var t=Do(n),r=Fo(n),i=pl(n,e.localDashboardId),{session:a,config:l}=i??{},{type:s}=l??{};return{fileStorage:t,defaultNotebookSettings:r,session:a,sessionLanguage:s}},Bv=Et(Uv,{updateSettings:Po},null,{forwardRef:!0})(Te);const yt=Bv;function fs(n){var{onClick:e}=n,t=T.useRef(null),r=T.useCallback(i=>{var a;(a=t.current)===null||a===void 0||a.blur(),e(i)},[e]);return f.jsxs(Z,{ref:t,kind:"primary",className:"btn-pandas",onClick:r,tooltip:"Click to refresh pandas dataframe, updates do not occur automatically.",children:["pandas dataframe",f.jsxs("span",{children:[f.jsx(Me,{icon:Dl,transform:"shrink-1",className:"mr-1"}),"Reload"]})]})}function Oa(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Da(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Oa(Object(t),!0).forEach(function(r){an(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Oa(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function an(n,e,t){return e=Wv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Wv(n){var e=zv(n,"string");return typeof e=="symbol"?e:String(e)}function zv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class ci extends T.Component{constructor(e){super(e),an(this,"irisGridRef",void 0),this.irisGridRef=Pe.createRef(),this.handleReload=this.handleReload.bind(this),this.handleGridStateChange=this.handleGridStateChange.bind(this),this.handlePanelStateUpdate=this.handlePanelStateUpdate.bind(this);var{panelState:t}=e;this.state={shouldFocusGrid:!1,panelState:t}}handleReload(){var e;(e=this.irisGridRef.current)===null||e===void 0||e.initModel(),this.setState({shouldFocusGrid:!0})}handleGridStateChange(){var e,t,r,{shouldFocusGrid:i}=this.state;i&&(e=this.irisGridRef.current)!==null&&e!==void 0&&(t=e.irisGrid)!==null&&t!==void 0&&(r=t.current)!==null&&r!==void 0&&r.grid&&(this.irisGridRef.current.irisGrid.current.grid.focus(),this.setState({shouldFocusGrid:!1}))}handlePanelStateUpdate(e){this.setState({panelState:e})}render(){return f.jsx(oi,Da(Da({ref:this.irisGridRef,onStateChange:this.handleGridStateChange,onPanelStateUpdate:this.handlePanelStateUpdate},this.props),{},{children:f.jsx(fs,{onClick:this.handleReload})}))}}an(ci,"defaultProps",{panelState:null});an(ci,"COMPONENT","PandasPanel");const ps=ci;function Fa(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function Na(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Fa(a,r,i,l,s,"next",o)}function s(o){Fa(a,r,i,l,s,"throw",o)}l(void 0)})}}function Ma(n,e,t){return e=qv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function qv(n){var e=Kv(n,"string");return typeof e=="symbol"?e:String(e)}function Kv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Xv{constructor(e){Ma(this,"items",void 0),Ma(this,"onUpdateCallback",void 0),this.items=e}setSearch(e){}setExpanded(e,t){if(e.charAt(e.length-1)==="/")for(var r=0;r<this.items.length;r+=1){var i=this.items[r];Ti(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];Ti(t)&&(t.isExpanded=!1)}return Promise.resolve()}getViewportData(){return Promise.resolve({items:this.items,offset:0})}getSnapshot(e){return Na(function*(){throw new Error("Method not implemented.")})()}setViewport(e){var t=this;return Na(function*(){var r,i=yield t.getViewportData();(r=t.onUpdateCallback)===null||r===void 0||r.call(t,i)})()}setFilters(e){}setSorts(e){}setReversed(e){}close(){}onUpdate(e){return this.onUpdateCallback=e,jest.fn()}get size(){return this.items.length}}const Yv=Xv;function Ia(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function rr(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 Zv(n,e,t){return e=Qv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Qv(n){var e=Jv(n,"string");return typeof e=="symbol"?e:String(e)}function Jv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class ef{constructor(e){Zv(this,"items",void 0),this.items=e}getTable(){var e=this;return rr(function*(){return new Yv(e.items)})()}saveFile(e){throw new Error("Method not implemented.")}loadFile(e){throw new Error("Method not implemented.")}copyFile(e,t){return rr(function*(){throw new Error("Method not implemented.")})()}deleteFile(e){var t=this;return rr(function*(){t.items=t.items.filter(r=>r.filename!==e)})()}moveFile(e,t){var r=this;return rr(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 rr(function*(){var r=t.items.filter(a=>a.filename===e);if(r.length===0)throw new No;if(r.length>1)throw new Error("More than one matching file found");var i=r[0];return{filename:i.filename,basename:i.basename,id:i.filename,type:i.type}})()}createDirectory(e){throw new Error("Method not implemented.")}}const tf=ef;function Ra(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?Ra(Object(t),!0).forEach(function(r){rf(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ra(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function rf(n,e,t){return e=nf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function nf(n){var e=af(n,"string");return typeof e=="symbol"?e:String(e)}function af(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function La(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function lf(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 sf(n,e,t,r,i){return An.apply(this,arguments)}function An(){return An=lf(function*(n,e,t,r,i){var a,l,s,o;if(Vt(t)?(a=t.settings,l=t.table,s=void 0,o=t.tableSettings):(a={},l="",s=Qn(t)?t.figure:t.name,o={}),i!=null&&(i.tableSettings!=null&&(o=i.tableSettings),i.table!=null&&(l=i.table),i.figure!=null&&(s=i.figure),i.settings!=null&&(a=Wr(Wr({},a),i.settings))),s==null&&l==null){var u=yield r();return ur.makeModel(n,a,u)}if(s!=null){var d;if(t.type===n.VariableType.FIGURE){var h={name:s,type:n.VariableType.FIGURE};d=yield e(h)}else d=yield r();return ur.makeModel(n,a,d)}var c={name:l,type:n.VariableType.TABLE},v=yield e(c);return new Q(n).applyTableSettings(v,o,ml(Wu.getState())),ur.makeModelFromSettings(n,a,v)}),An.apply(this,arguments)}var vi=T.forwardRef((n,e)=>{var t=Xt(),r=Mo(),i=ls(n)?n.panelState:void 0,{fetch:a,metadata:l,localDashboardId:s}=n,o=T.useMemo(()=>({metadata:l,localDashboardId:s,makeModel:()=>{if(l==null)throw new Error("Metadata is required for chart panel");return sf(t,r,l,a,i)}}),[l,s,t,r,a,i]);return f.jsx(li,Wr(Wr({ref:e},n),o))});vi.displayName="ChartPanelPlugin";const of=vi;function Aa(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function uf(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 ms(n){var e=Xt(),[t,r]=T.useState(),{fetch:i}=n;return T.useEffect(()=>{var a=!1;function l(){return s.apply(this,arguments)}function s(){return s=uf(function*(){var o=yield i(),u=yield ur.makeModel(e,void 0,o);a||r(u)}),s.apply(this,arguments)}return l(),()=>{a=!0}},[e,i]),t?f.jsx(xl,{model:t}):null}var df={name:"ChartPanel",title:"Chart",type:Pt.WIDGET_PLUGIN,component:ms,panelComponent:vi,supportedTypes:"Figure",icon:au};const hf=df;function gs(n){Yt(n);var{id:e,layout:t}=n,r=Xt(),i=T.useCallback(a=>{var{metadata:l,panelId:s=Be(),table:o}=a,{settings:u}=l,d=()=>ur.makeModelFromSettings(r,u,o),h=Re.titleFromSettings(u),c={type:"react-component",component:li.COMPONENT,props:{localDashboardId:e,id:s,metadata:l,makeModel:d},title:h,id:s},{root:v}=t;$.openComponent({root:v,config:c})},[r,e,t]);return Se(t.eventHub,nt.CREATE_CHART,i),null}var cf={name:"ChartBuilderPlugin",type:Pt.DASHBOARD_PLUGIN,component:gs};const vf=cf;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 xa(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){ff(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 ff(n,e,t){return e=pf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function pf(n){var e=mf(n,"string");return typeof e=="symbol"?e:String(e)}function mf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var fe=J.module("ConsolePlugin");function _a(n){return n.notebook!==void 0}function gf(n){Yt(n)}function bf(n){gf(n);var{id:e,hydrateConsole:t,layout:r,panelManager:i,registerComponent:a,notebooksUrl:l}=n,s=T.useRef(0),[o,u]=T.useState(new Map),[d,h]=T.useState(new Map),c=sl(),v=T.useCallback(()=>i.getLastUsedPanelOfType(Ar),[i]),g=T.useCallback((L,x)=>{u(j=>new Map(j.set(L,x)))},[u]),p=T.useCallback(L=>{u(x=>(x.delete(L),new Map(x)))},[u]),m=T.useCallback((L,x)=>{h(j=>new Map(j.set(L,x)))},[h]),b=T.useCallback(L=>{h(x=>(x.delete(L),new Map(x)))},[h]),y=T.useCallback(function(L){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,j=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,G=L&&L.trim();if(!G)fe.info("Ignoring empty code");else{var z=v();if(!z||!(z instanceof Ar.WrappedComponent)){fe.error("Console panel not found");return}fe.debug("Send command: ",L,x,j),z.addCommand(L,x,j)}},[v]),C=T.useCallback(L=>{c(rs(e,L))},[c,e]),E=T.useCallback(L=>{var{language:x}=L,j=x==="python"?"py":x,G=null;return j==null?(fe.debug("No extension for language",x),G="Untitled-".concat(s.current)):G="Untitled-".concat(s.current,".").concat(j),s.current+=1,G},[]),w=T.useCallback(function(L){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,{id:j}=L;if(j!=null&&o.has(j))return o.get(j);if(j!=null&&d.has(j))return d.get(j);if(x)return Be()},[o,d]),P=T.useCallback((L,x)=>{$.renameComponent(r.root,{id:L},x)},[r.root]),I=T.useCallback((L,x)=>{fe.debug("Rename file panel",L,x);var j;if(o.has(L)&&(j=o.get(L),p(L),j!=null&&g(x,j)),d.has(L)&&(j=d.get(L),b(L),j!=null&&m(x,j)),j===void 0){fe.debug2("File ".concat(L," isn't open, no need to rename the tab"));return}P(j,Ve.getBaseName(x))},[o,d,P,g,m,p,b]),F=T.useCallback(L=>{var x=w(L,!1);if(x==null){fe.error("Could not find panel id for file metadata",L);return}$.activateTab(r.root,{id:x})},[w,r.root]),D=T.useCallback((L,x,j)=>{if(fe.debug("registerFilePanel",L,x,j),x==null||x.id==null){fe.debug("Ignore empty file id",x);return}var{id:G}=x;if(j){m(G,L);return}if(o.has(G)){var z=o.get(G);if(L===z){fe.debug("Update tab title for file ".concat(G));var{itemName:Ce}=x;I(G,Ce)}else fe.error("File ".concat(G," already associated with a different tab ").concat(z));return}g(G,L),d.has(G)&&b(G)},[o,d,I,g,m,b]),M=T.useCallback((L,x)=>{if(fe.debug("unregisterFileTab",L,x),L==null||L.id==null){fe.debug("Ignore empty file id",L);return}var{id:j}=L;if(x){b(j);return}p(j)},[p,b]),R=T.useCallback((L,x)=>{fe.debug("closeFilePanel",L);var{id:j}=L,G=null,z=!1;if(o.has(j))G=o.get(j);else if(d.has(j))G=d.get(j),z=!0;else{fe.debug("File ".concat(j," isn't open, ignore close event"));return}M(L,z),$.closeComponent(r.root,{id:G},x)},[r.root,o,d,M]),_=T.useCallback(L=>{var{itemName:x}=L;return Ve.getBaseName(x)},[]),V=T.useCallback(L=>{var{id:x}=L;return fe.debug("fileIsOpen",L,x,o),x!=null&&o.has(x)},[o]),K=T.useCallback(L=>{var{id:x}=L;return fe.debug("fileIsOpenAsPreview",L,x,d),x!=null&&d.has(x)},[d]),q=T.useCallback(L=>{if(L!=null){var x=i.getOpenedPanelById(L);x&&_a(x)&&x.focus()}},[i]),ie=T.useCallback(L=>{var{id:x,settings:j,fileMetadata:G,session:z,sessionLanguage:Ce,isPreview:ye=!1}=L,ke={settings:j,fileMetadata:G},ze=_(G);return{type:"react-component",component:yt.COMPONENT,isFocusOnShow:!1,props:{localDashboardId:e,metadata:{id:x},session:z,sessionLanguage:Ce,panelState:ke,isPreview:ye,notebooksUrl:l},title:ze,id:x}},[_,e,l]),ee=T.useCallback(function(L,x,j){var G=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{id:null,itemName:E(j)},z=w(G);if(V(G)&&z!=null){fe.debug("File is already open, focus panel"),F(G),q(z);return}var Ce=$.getStackForComponentTypes(r.root,[yt.COMPONENT]),ye=ie({id:z,settings:j,fileMetadata:G,session:L,sessionLanguage:x});fe.debug("createNotebook",ye,o),$.openComponentInStack(Ce,ye)},[V,q,E,w,r.root,ie,o,F]),ge=T.useCallback(function(L,x,j,G){var z=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;fe.debug("selectNotebook",G,z);var Ce=V(G),ye=K(G),[ke]=[...d.values()],ze=!z,qe=ze&&ke?ke:w(G);if(qe==null||qe==="")throw new Error("Unable to retrieve or create panelId for metadata",G);if(Ce||ye)F(G);else{var sn=$.getStackForComponentTypes(r.root,[yt.COMPONENT]),on=ie({id:qe,settings:j,fileMetadata:G,session:L,sessionLanguage:x,isPreview:ze});$.openComponentInStack(sn,on)}if(ye&&z){var Er=G.id,un=$.getStackForConfig(r.root,{component:yt.COMPONENT,id:qe}),Qt=$.getContentItemInStack(un,{component:yt.COMPONENT,id:qe});Qt&&Io(Qt)&&(Qt.container.emit(oe.PROMOTE_FROM_PREVIEW),b(Er),g(Er,qe))}z&&q(qe)},[F,V,K,q,w,r.root,ie,d,b,g]),be=T.useCallback(function(L,x){var j=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},G=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,z=i.getLastUsedPanelOfType(yt);z&&_a(z)?j!=null&&j.value!=null&&z.notebook!=null&&z.notebook.append(j.value):G&&ee(L,x,j)},[ee,i]),$e=T.useCallback((L,x)=>Ro.hydrate(xa(xa({},L),{},{notebooksUrl:l}),x),[l]);return er(a,Ar,t),er(a,gl),er(a,bl),er(a,Cl),er(a,yt,$e),Se(r.eventHub,$r.SEND_COMMAND,y),Se(r.eventHub,$r.SETTINGS_CHANGED,C),Se(r.eventHub,oe.CLOSE_FILE,R),Se(r.eventHub,oe.CREATE_NOTEBOOK,ee),Se(r.eventHub,oe.SELECT_NOTEBOOK,ge),Se(r.eventHub,oe.RENAME,P),Se(r.eventHub,oe.RENAME_FILE,I),Se(r.eventHub,oe.SEND_TO_NOTEBOOK,be),Se(r.eventHub,oe.REGISTER_FILE,D),Se(r.eventHub,oe.UNREGISTER_FILE,M),null}var nr=J.module("FilterPlugin");function bs(n){Yt(n);var{id:e,layout:t,registerComponent:r}=n,i=sl(),[a]=T.useState(()=>new Map),[l]=T.useState(()=>new Map),[s]=T.useState(()=>new Map),o=T.useCallback(()=>{var m=Array.from(a.values()).flat().sort((C,E)=>{var w=Xe.toLower(C.name),P=Xe.toLower(E.name);if(w!==P)return w>P?1:-1;var I=Xe.toLower(C.type),F=Xe.toLower(E.type);return I!==F?I>F?1:-1:0}).reduce((C,E)=>((C.length===0||Xe.toLower(C[C.length-1].name)!==Xe.toLower(E.name)||Xe.toLower(C[C.length-1].type)!==Xe.toLower(E.type))&&C.push(E),C),[]),b=Array.from(l.values()).flat().sort((C,E)=>C.timestamp-E.timestamp),y=new Map(s);nr.debug("sendUpdate",{columns:m,filters:b,tableMap:y}),i(wt(e,{columns:m,filters:b,tableMap:y}))},[i,e,a,l,s]),u=T.useCallback((m,b)=>{nr.debug2("handleColumnsChanged",m,b),b==null?a.delete(m):a.set(m,[].concat(b)),o()},[a,o]),d=T.useCallback((m,b)=>{nr.debug2("handleFiltersChanged",m,b),b==null?l.delete(m):l.set(m,[].concat(b??[])),o()},[l,o]),h=T.useCallback((m,b)=>{nr.debug2("handleTableChanged",m,b),b==null?s.delete(m):s.set(m,b),o()},[s,o]),c=T.useCallback(m=>{nr.debug2("handlePanelUnmount",m);var b=$.getIdFromPanel(m);b!=null&&(a.delete(b),s.delete(b),l.delete(b)),o()},[a,l,s,o]),v=T.useCallback(m=>{var{title:b="DropdownFilter",metadata:y={},panelState:C=null,id:E=Be(),focusElement:w=$.DEFAULT_FOCUS_SELECTOR,createNewStack:P=!1,dragEvent:I=null}=m,F={type:"react-component",component:$t.COMPONENT,props:{id:E,metadata:y,panelState:C,localDashboardId:e},title:b,id:E},{root:D}=t;$.openComponent({root:D,config:F,focusElement:w,createNewStack:P,dragEvent:I})},[t,e]),g=T.useCallback(m=>{var{title:b="InputFilter",metadata:y={},panelState:C=null,id:E=Be(),focusElement:w=$.DEFAULT_FOCUS_SELECTOR,createNewStack:P=!1,dragEvent:I=void 0}=m,F={type:"react-component",component:Ht.COMPONENT,props:{id:E,metadata:y,panelState:C,localDashboardId:e},title:b,id:E},{root:D}=t;$.openComponent({root:D,config:F,focusElement:w,createNewStack:P,dragEvent:I})},[t,e]),p=T.useCallback(m=>{var{title:b="FilterSets",metadata:y={},panelState:C=null,id:E=Be(),focusElement:w=$.DEFAULT_FOCUS_SELECTOR,createNewStack:P=!1,dragEvent:I=null}=m,F={type:"react-component",component:kr.COMPONENT,props:{id:E,metadata:y,panelState:C,localDashboardId:e},title:b,id:E},{root:D}=t;$.openComponent({root:D,config:F,focusElement:w,createNewStack:P,dragEvent:I})},[t,e]);return T.useEffect(function(){var b=[r($t.COMPONENT,$t),r(Ht.COMPONENT,Ht),r(kr.COMPONENT,kr)];return()=>{b.forEach(y=>y())}},[r]),kc(t.eventHub,u),_c(t.eventHub,d),xc(t.eventHub,h),Se(t.eventHub,ut.OPEN_DROPDOWN,v),Se(t.eventHub,ut.OPEN_INPUT,g),Se(t.eventHub,ut.OPEN_FILTER_SET_MANAGER,p),Se(t.eventHub,Fe.UNMOUNT,c),null}var Cf={name:"FilterPlugin",type:Pt.DASHBOARD_PLUGIN,component:bs};const Sf=Cf;var yf=J.module("@deephaven/app-utils/useTablePlugin");function Cs(){var n=Sl(),e=T.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 yf.error(i),new Error(i)},[n]);return e}function ja(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function Ef(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){ja(a,r,i,l,s,"next",o)}function s(o){ja(a,r,i,l,s,"throw",o)}l(void 0)})}}function Ss(n,e,t){var r=Xt(),i=Cs(),a=T.useMemo(()=>({loadPlugin:i,localDashboardId:e,makeModel:function(){var l=Ef(function*(){var o=yield n();return zl.makeModel(r,o)});function s(){return l.apply(this,arguments)}return s}(),metadata:t}),[r,n,e,i,t]);return a}function Va(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function $a(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Va(Object(t),!0).forEach(function(r){wf(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Va(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function wf(n,e,t){return e=Tf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Tf(n){var e=Pf(n,"string");return typeof e=="symbol"?e:String(e)}function Pf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var fi=T.forwardRef((n,e)=>{var{localDashboardId:t,fetch:r,metadata:i}=n,a=Ss(r,t,i);return f.jsx(oi,$a($a({ref:e},n),a))});fi.displayName="GridPanelPlugin";const Of=fi;function Ha(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function bn(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Ha(a,r,i,l,s,"next",o)}function s(o){Ha(a,r,i,l,s,"throw",o)}l(void 0)})}}function ys(n){var e=Xt(),[t,r]=T.useState(),[i,a]=T.useState(),[l,s]=T.useState(!0),o=T.useCallback(bn(function*(){var h=yield n();return zl.makeModel(e,h)}),[e,n]),u=T.useCallback(bn(function*(){s(!0),a(void 0);try{var h=yield o();r(h),s(!1)}catch(c){a(c),s(!1)}}),[o]);T.useEffect(()=>{var h=!1;function c(){return v.apply(this,arguments)}function v(){return v=bn(function*(){s(!0),a(void 0);try{var g=yield o();h||(r(g),s(!1))}catch(p){h||(a(p),s(!1))}}),v.apply(this,arguments)}return c(),()=>{h=!0}},[o]),T.useEffect(function(){if(!t)return;function c(){a(new Error("Table disconnected")),r(void 0),s(!1)}return t.addEventListener(W.EVENT.DISCONNECT,c),()=>{t.removeEventListener(W.EVENT.DISCONNECT,c)}},[t]);var d=T.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 Es(n,e){var{eventHub:t}=qn(),r=yl(),i=El();T.useEffect(function(){i==null||n==null||Gr(t,i,n)},[t,i,n]),T.useEffect(function(){e==null||i==null||Ur(t,i,e)},[t,i,e]),T.useEffect(function(){if(i!=null)return()=>{Gr(t,i,null),Ur(t,i,null)}},[t,i]);var a=T.useCallback(o=>gr(o,r),[r]),l=En(a),s=T.useMemo(()=>Q.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 ws(n,e){var{eventHub:t}=qn(),r=yl(),i=El(),a=ko(),l=T.useCallback(m=>Tt(m,r),[r]),s=En(l),o=T.useMemo(()=>{var m=new Set;return s.forEach(b=>{b.start.panelId===i&&m.add(b.start.columnName)}),[...m]},[s,i]),u=T.useCallback(m=>mr(m,r),[r]),d=En(u),h=T.useCallback(m=>d&&m&&i!=null?d(i,m,{type:"tableLink"}):!1,[d,i]),c=d!=null,v=T.useCallback((m,b)=>{i!=null&&os(t,i,b)},[t,i]),g=T.useCallback(m=>{var b,y,C;if(!n||!e)return null;var{gridWrapper:E}=e,w=(b=E==null?void 0:E.getBoundingClientRect())!==null&&b!==void 0?b:null;if(w==null||w.width<=0||w.height<=0)return null;var{metrics:P}=e.state;N(P);var{columnHeaderHeight:I,allColumnXs:F,allColumnWidths:D,right:M,columnHeaderMaxDepth:R}=P,_=n.getColumnIndexByName(m);N(_);var V=e.getVisibleColumn(_),K=(y=F.get(V))!==null&&y!==void 0?y:0,q=(C=D.get(V))!==null&&C!==void 0?C:0,ie=Ge(V>M?w.right:w.left+K+q*.5,w.left,w.right),ee=w.top+I*R;return[ie,ee]},[n,e]),p=T.useCallback(m=>{i!=null&&en(t,i,m,{type:"tableLink"})},[t,i]);return T.useEffect(function(){if(!(!e||a==null||i==null))return ca(t,i,{getCoordinates:g,setFilterValues:e.setFilterMap,unsetFilterValue:()=>{},panelId:a}),()=>{ca(t,i,null)}},[t,i,g,e,a]),{alwaysFetchColumns:o,columnSelectionValidator:h,isSelectingColumn:c,onColumnSelected:p,onDataSelected:v}}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 Rr(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){Df(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 Df(n,e,t){return e=Ff(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ff(n){var e=Nf(n,"string");return typeof e=="symbol"?e:String(e)}function Nf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Ts(n){var{fetch:e}=n,t=no(Xr),{eventHub:r}=qn(),i=ys(e),a=Xt(),l=T.useMemo(()=>new Q(a),[a]),[s,o]=Sd(void 0,{version:1,type:"GridWidgetPlugin"}),u=T.useRef(s),d=T.useMemo(()=>{if(!(i.status!=="success"||u.current===void 0))return Rr(Rr({},l.hydrateIrisGridState(i.model,u.current)),Q.hydrateGridState(i.model,u.current))},[i,l]),h=T.useMemo(()=>Rn.makeMemoizedCombinedGridStateDehydrator(),[]),c=T.useCallback((y,C)=>{if(!(i.status!=="success"||y==null||C==null)){var E=h(i.model,y,C);o(E)}},[i,o,h]),v=Es(i.status==="success"?i.model.columns:null,i.status==="success"&&Mt(i.model)?i.model.table:void 0),g=T.useRef(null),p=ws(i.status==="success"?i.model:null,g.current),m=T.useCallback(()=>{g.current!=null&&g.current.clearAllFilters()},[]);if(Se(r,ut.CLEAR_ALL_FILTERS,m),i.status==="loading")return f.jsx(ct,{isLoading:!0});if(i.status==="error")return f.jsx(ct,{errorMessage:wl(i.error),isLoading:!1});var{model:b}=i;return f.jsx(Kn,Rr(Rr({ref:g,model:b,settings:t,onStateChange:c,inputFilters:v},p),d))}var Mf={name:"IrisGridPanel",title:"Table",type:Pt.WIDGET_PLUGIN,component:Ts,panelComponent:fi,supportedTypes:["Table","TreeTable","HierarchicalTable","PartitionedTable"],icon:lu};const If=Mf;function Ua(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function gt(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ua(Object(t),!0).forEach(function(r){Rf(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 Rf(n,e,t){return e=Lf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Lf(n){var e=Af(n,"string");return typeof e=="symbol"?e:String(e)}function Af(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Ps(n){var e=n;return typeof e.getCoordinateForColumn=="function"}function Ba(n){var e=n;return Ps(n)&&typeof e.setFilterMap=="function"&&typeof e.unsetFilterValue=="function"}function Wa(n){return n.description==null||!n.description.startsWith("Preview of type: ")}var za=J.module("LinkerUtils");class kf{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 za.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:(za.debug2("Incompatible type",i,a),!1)}static findColumn(e,t){var{columnName:r,columnType:i}=t;return e.find(a=>{var{name:l,type:s}=a;return l===r&&s===i})}static cloneLinksForPanel(e,t,r){var i=[];return e.forEach(a=>{var l;a.start.panelId===t&&a.type!=="filterSource"?i.push(gt(gt({},a),{},{id:Be(),start:gt(gt({},a.start),{},{panelId:r})})):((l=a.end)===null||l===void 0?void 0:l.panelId)===t&&i.push(gt(gt({},a),{},{id:Be(),end:gt(gt({},a.end),{},{panelId:r})}))}),i}}const Nt=kf;function Os(n,e,t){return e=xf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function xf(n){var e=_f(n,"string");return typeof e=="symbol"?e:String(e)}function _f(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var jf=J.module("LinkerLink"),qa=.015,Ka=1.5,Ds=12,Fs=12,Xa=2,Lr=Math.sqrt((Fs*.5)**2+Ds**2),Ya=Math.asin(Fs*.5/Ds),Za=15,bt=Math.PI*.5;class Gt extends T.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 od(t);if(S.isTextType(e))return sd(t);if(S.isDateType(e))return ud(t);if(S.isBooleanType(e)){if(t===O.eq)return"is equal to";if(t===O.notEq)return"is not equal to"}throw new Error("Unrecognized column type: ".concat(e))}catch(r){return jf.warn(r),""}}constructor(e){super(e),Os(this,"getOperators",U((t,r)=>{var{onOperatorChanged:i}=this.props,a=S.getFilterTypes(r);return S.isBooleanType(r)&&(a=[O.eq,O.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:Gt.getLabelForLinkFilter(r,l),icon:f.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),p=Math.cos(v)+2,m=window.innerWidth,b=window.innerHeight,y=0,C=0,E=Math.max(y,Math.min(i+(l-i)/2+g*(c*qa)**Ka,m)),w=Math.max(C,Math.min(a+(s-a)/2+p*(c*qa)**Ka,b)),P="M ".concat(i," ").concat(a," Q ").concat(E," ").concat(w," ").concat(l," ").concat(s),I="M ".concat(y," ").concat(C," L ").concat(y," ").concat(b," L ").concat(m," ").concat(b," L ").concat(m," ").concat(C,` z
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()));const xr=It;function hr(n,e,t){return e=xv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function xv(n){var e=_v(n,"string");return typeof e=="symbol"?e:String(e)}function _v(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var jv=T.lazy(()=>zr(()=>import("./MarkdownEditor-9055fe02.js"),["./MarkdownEditor-9055fe02.js","./vendor-9e6eb436.js","./helpers-de833af9.js","./vendor-6cb4b08b.css","./LogPanel-5b98b8a3.js","./index-1e555ef0.js","./index-11271fba.css","./LogPanel-8a0231fc.css"],import.meta.url)),Ir=J.module("MarkdownPanel");class hi extends T.Component{constructor(e){super(e),hr(this,"markdownEditor",void 0),hr(this,"editor",void 0),hr(this,"getClosedMarkdowns",U(xr.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=xr.DEFAULT_CONTENT),this.state={isStartPageShown:r==null&&this.getClosedMarkdowns(e.closedPanels).length!==0,isEditing:!1,content:r,panelState:t},this.markdownEditor=null}setEditorPosition(e){F(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=$.getComponentConfigFromContainer(t);r.emit(Ne.REOPEN,e,i)}handleDeleteMarkdown(e){var{glEventHub:t}=this.props;t.emit(Ne.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 f.jsx(qt,{glContainer:e,glEventHub:t,className:"markdown-panel",componentPanel:this,onResize:this.handleEditorResize,onBlur:this.handleEditorBlur,isClonable:!0,isRenamable:!0,children:a?f.jsx(Lv,{closedMarkdowns:s,onCreate:this.handleCreateMarkdown,onOpen:this.handleOpenMarkdown,onDelete:this.handleDeleteMarkdown}):f.jsx(cs,{isEditing:i,onDoubleClick:this.handleContainerDoubleClick,children:f.jsx(T.Suspense,{fallback:f.jsx(ct,{}),children:f.jsx(jv,{ref:o=>{this.markdownEditor=o},isEditing:i,content:l??xr.DEFAULT_CONTENT,onEditorInitialized:this.handleEditorInitialized})})})})}}hr(hi,"defaultProps",{panelState:null});hr(hi,"COMPONENT","MarkdownPanel");var Vv=(n,e)=>{var{localDashboardId:t}=e;return{closedPanels:To(n,t)}},$v=Et(Vv,null,null,{forwardRef:!0})(hi);const or=$v;function Ea(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function wa(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 je(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){Fe(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 Fe(n,e,t){return e=Hv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Hv(n){var e=Gv(n,"string");return typeof e=="symbol"?e:String(e)}function Gv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Uv=T.lazy(()=>zr(()=>import("./MarkdownNotebook-5776a1bd.js"),["./MarkdownNotebook-5776a1bd.js","./vendor-9e6eb436.js","./helpers-de833af9.js","./vendor-6cb4b08b.css","./index-1e555ef0.js","./index-11271fba.css","./LogPanel-5b98b8a3.js","./LogPanel-8a0231fc.css","./MarkdownNotebook-9207e775.css"],import.meta.url)),te=J.module("NotebookPanel"),Pa=400;class Te extends T.Component{static handleError(e){Ae.isCanceled(e)||te.error(e)}static unsavedNotebookCount(){return document.querySelectorAll(".".concat(Te.UNSAVED_INDICATOR_CLASS_NAME,".").concat(Te.UNSAVED_STATUS_CLASS_NAME)).length}static languageFromFileName(e){var t=Ve.getExtension(e).toLowerCase();switch(t){case"py":case"python":return"python";case"groovy":return"groovy";case"scala":return"scala";default:return null}}constructor(e){super(e),Fe(this,"pending",void 0),Fe(this,"debouncedSavePanelState",void 0),Fe(this,"debouncedLoad",void 0),Fe(this,"notebook",void 0),Fe(this,"tabTitleElement",void 0),Fe(this,"tabInitOnce",void 0),Fe(this,"editor",void 0),Fe(this,"getSettings",U((c,v)=>je(je({},c),{},{minimap:{enabled:v}}))),Fe(this,"getOverflowActions",U((c,v)=>[{title:"Find",icon:nu,action:this.handleFind,group:Ke.groups.high,shortcut:ot.NOTEBOOK.FIND,order:10},{title:"Copy File",icon:Tl,action:this.handleCopy,group:Ke.groups.medium,order:20},{title:"Rename File",icon:iu,action:this.handleShowRename,group:Ke.groups.medium,order:30},{title:"Delete File",icon:Yr,action:this.handleDelete,group:Ke.groups.medium,order:40},{title:"Show Minimap",icon:c?Di:void 0,action:this.handleMinimapChange,group:Ke.groups.low,shortcut:ot.NOTEBOOK.MINIMAP,order:20},{title:"Word Wrap",icon:v?Di:void 0,action:this.handleWordWrapChange,group:Ke.groups.low,shortcut:ot.NOTEBOOK.WORDWRAP,order:30}])),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.handleLinkClick=this.handleLinkClick.bind(this),this.handleLoadSuccess=this.handleLoadSuccess.bind(this),this.handleLoadError=this.handleLoadError.bind(this),this.handlePanelDropped=this.handlePanelDropped.bind(this),this.handleRenameFile=this.handleRenameFile.bind(this),this.handleResize=this.handleResize.bind(this),this.handleRunCommand=this.handleRunCommand.bind(this),this.handleRunAll=this.handleRunAll.bind(this),this.handleRunSelected=this.handleRunSelected.bind(this),this.handleSave=this.handleSave.bind(this),this.handleSaveAsCancel=this.handleSaveAsCancel.bind(this),this.handleSaveAsSubmit=this.handleSaveAsSubmit.bind(this),this.handleSaveError=this.handleSaveError.bind(this),this.handleSaveSuccess=this.handleSaveSuccess.bind(this),this.handleSessionOpened=this.handleSessionOpened.bind(this),this.handleSessionClosed=this.handleSessionClosed.bind(this),this.handleShow=this.handleShow.bind(this),this.handleShowRename=this.handleShowRename.bind(this),this.handleTab=this.handleTab.bind(this),this.handleTabBlur=this.handleTabBlur.bind(this),this.handleTabClick=this.handleTabClick.bind(this),this.handleTabFocus=this.handleTabFocus.bind(this),this.handleTransformLinkUri=this.handleTransformLinkUri.bind(this),this.handleOverwrite=this.handleOverwrite.bind(this),this.handlePreviewPromotion=this.handlePreviewPromotion.bind(this),this.getDropdownOverflowActions=this.getDropdownOverflowActions.bind(this),this.pending=new _n,this.debouncedSavePanelState=ht(this.savePanelState.bind(this),Pa),this.debouncedLoad=ht(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:""},te.debug("constructor",e,this.state)}componentDidMount(){var{glContainer:e,glEventHub:t}=this.props,{tab:r}=e;r!=null&&this.initTab(r),this.initNotebookContent(),t.on(oe.RENAME_FILE,this.handleRenameFile),t.on(Ne.DROPPED,this.handlePanelDropped),e.on(oe.PROMOTE_FROM_PREVIEW,this.handlePreviewPromotion)}componentDidUpdate(e,t){var{isPreview:r,settings:i}=this.state,{wordWrap:a}=i,{defaultNotebookSettings:l}=this.props;r!==t.isPreview&&this.setPreviewStatus(),a!==t.settings.wordWrap&&(this.updateEditorWordWrap(),this.debouncedSavePanelState()),l.isMinimapEnabled!==e.defaultNotebookSettings.isMinimapEnabled&&this.updateEditorMinimap()}componentWillUnmount(){this.debouncedSavePanelState.flush(),this.pending.cancel();var{glEventHub:e,glContainer:t}=this.props,{fileMetadata:r,isPreview:i}=this.state;e.off(oe.RENAME_FILE,this.handleRenameFile),e.off(Ne.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);F(t);var r=t.querySelector(".lm_title");this.tabTitleElement=r,r==null||r.classList.add("notebook-title"),this.setPreviewStatus()}getNotebookValue(){var{changeCount:e,savedChangeCount:t,settings:r}=this.state,{value:i}=r;if(e!==t&&this.notebook){var a=this.notebook.getValue();return a??i}return i}initNotebookContent(){var{fileMetadata:e,settings:t,isPreview:r}=this.state;if(e&&e.id){te.debug("Init content from file"),this.registerFileMetadata(e,r),this.load();return}if(t.value!=null){te.debug("Use content passed in the settings prop"),this.handleLoadSuccess();return}this.handleLoadError(new Error("Missing file metadata"))}closeFileTabById(e){var{glEventHub:t}=this.props;t.emit(oe.CLOSE_FILE,{id:e})}registerFileMetadata(e,t){var{glEventHub:r,metadata:i}=this.props,{id:a}=i;r.emit(oe.REGISTER_FILE,a,e,t)}renameTab(e,t){var{glEventHub:r}=this.props;r.emit(oe.RENAME,e,t)}load(){var{fileMetadata:e,settings:t}=this.state;F(e);var{id:r}=e,{fileStorage:i}=this.props;this.pending.add(i.loadFile(r)).then(a=>{var l;te.debug("Loaded file",a);var{filename:s}=a,{itemName:o}=this.state;if(s!==o){var{metadata:u}=this.props,{id:d}=u;this.renameTab(d,Ve.getBaseName(s))}var h=je(je({},t),{},{language:(l=Te.languageFromFileName(s))!==null&&l!==void 0?l:""});t.value==null&&(h.value=a.content),t.wordWrap===void 0&&(t.wordWrap="off"),this.setState({fileMetadata:{id:s,itemName:s},settings:h}),this.debouncedSavePanelState()}).then(this.handleLoadSuccess).catch(this.handleLoadError)}save(){var{fileMetadata:e}=this.state;if(e&&Ve.hasPath(e.itemName)){var t=this.getNotebookValue();return t!==void 0?(this.saveContent(e.itemName,t),!0):!1}return this.setState({showSaveAsModal:!0}),!1}saveContent(e,t){te.debug("saveContent",e,t),this.updateSavedChangeCount();var{fileStorage:r}=this.props;this.pending.add(r.saveFile({filename:e,content:t,basename:e})).then(this.handleSaveSuccess).catch(this.handleSaveError)}updateSavedChangeCount(){this.setState(e=>{var{changeCount:t}=e;return{savedChangeCount:t}})}setPreviewStatus(){if(this.tabTitleElement){var{isPreview:e}=this.state;te.debug("setPreviewStatus",this.tabTitleElement,e),e?this.tabTitleElement.classList.add("is-preview"):this.tabTitleElement.classList.remove("is-preview")}}handlePreviewPromotion(){this.removePreviewStatus()}savePanelState(){this.setState(e=>{var{changeCount:t,savedChangeCount:r,fileMetadata:i,isPreview:a,settings:l}=e,s=this.getNotebookValue(),o=t!==r?s:void 0,u=je(je({},l),{},{value:s}),d=je(je({},l),{},{value:o}),h={settings:d,fileMetadata:i,isPreview:a};return te.debug("Saving panel state",h),{settings:u,panelState:h}})}handleCloseDiscard(){this.setState({showCloseModal:!1});var{glContainer:e}=this.props;e.close({force:!0})}handleCloseSave(){if(this.setState({showCloseModal:!1}),this.save()){var{glContainer:e}=this.props;e.close({force:!0})}}handleCloseCancel(){this.setState({showCloseModal:!1})}handleOverwrite(e){var{glEventHub:t}=this.props;t.emit(oe.CLOSE_FILE,{id:e,itemName:e},{force:!0}),this.focus()}handleCopy(){var e=this;return wa(function*(){var{fileStorage:t,glEventHub:r,session:i}=e.props,{fileMetadata:a,settings:l}=e.state;F(a);var{language:s}=l,{itemName:o}=a,u=yield Ve.getUniqueCopyFileName(t,o);te.debug("handleCopy",a,o,u),yield t.copyFile(o,u);var d={id:u,itemName:u},h={value:null,language:s};r.emit(oe.SELECT_NOTEBOOK,i,s,h,d,!0)})()}handleDelete(){te.debug("handleDelete, pending confirmation"),this.setState({showDeleteModal:!0})}handleDeleteConfirm(){var e=this;return wa(function*(){var{fileStorage:t,glContainer:r,glEventHub:i}=e.props,{fileMetadata:a}=e.state;te.debug("handleDeleteConfirm",a==null?void 0:a.itemName),e.setState({showDeleteModal:!1}),a&&(Ve.hasPath(a.itemName)&&(yield Ve.fileExists(t,a.itemName))?(i.emit(oe.CLOSE_FILE,a,{force:!0}),t.deleteFile(a.itemName)):r.close({force:!0}))})()}handleDeleteCancel(){this.setState({showDeleteModal:!1})}handleEditorInitialized(e){this.editor=e}handleEditorWillDestroy(){this.editor=void 0}handleEditorChange(e){te.debug2("handleEditorChanged",e),this.removePreviewStatus(),this.setState(t=>{var{changeCount:r,savedChangeCount:i}=t,{isUndoing:a,isRedoing:l}=e;return a?{changeCount:r-1,savedChangeCount:i}:!l&&r<i?{changeCount:r+1,savedChangeCount:0}:{changeCount:r+1,savedChangeCount:i}}),this.debouncedSavePanelState()}handleFind(){this.notebook&&this.notebook.toggleFind()}updateEditorMinimap(){if(this.editor){var{defaultNotebookSettings:e}=this.props;this.editor.updateOptions({minimap:{enabled:e.isMinimapEnabled}})}}handleMinimapChange(){var e,{defaultNotebookSettings:t,updateSettings:r}=this.props,i={defaultNotebookSettings:{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:je(je({},t),{},{wordWrap:r})}})}handleLinkClick(e){var{notebooksUrl:t,session:r,sessionLanguage:i}=this.props,{href:a}=e.currentTarget;if(!(!a||!a.startsWith(t))){e.stopPropagation(),e.preventDefault();var l="/".concat(a.substring(t.length)).replace(/%20/g," ");if(l==="/"){te.debug("Ignoring invalid notebook link",l);return}te.debug("Notebook link clicked, opening",l);var{glEventHub:s}=this.props,o={value:null,language:i},u={id:l,itemName:l};s.emit(oe.SELECT_NOTEBOOK,r,i,o,u)}}handleLoadSuccess(){this.setState({error:void 0,isLoaded:!0,isLoading:!1})}handleLoadError(e){var t=e;Ae.isCanceled(t)||(Ae.isTimedOut(t)&&(t=new Error("File not found.")),te.error(t),this.setState({error:t,isLoading:!1}))}handleSave(){te.debug("handleSave"),this.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=je(je({},l.settings),{},{language:a});return te.debug("handleSaveSuccess",i,s,o),s&&Ve.hasPath(s.itemName)&&s.itemName!==i.itemName&&(te.debug("handleSaveSuccess deleting old file",s.itemName),r.deleteFile(s.itemName).catch(Te.handleError)),{fileMetadata:i,settings:o,isPreview:!1}}),this.debouncedSavePanelState(),this.registerFileMetadata(i,!1)}handleSaveError(e){Ae.isCanceled(e)||(this.setState({savedChangeCount:0}),te.error(e))}handleSaveAsCancel(){this.setState({showSaveAsModal:!1})}handleSaveAsSubmit(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;r&&this.handleOverwrite(e),te.debug("handleSaveAsSubmit",e);var{fileMetadata:i}=this.state;if(i){var{itemName:a}=i,l=(t=this.getNotebookValue())!==null&&t!==void 0?t:"";if(this.setState({showSaveAsModal:!1}),Ve.getBaseName(a)!==Ve.getBaseName(e)){var{metadata:s}=this.props,{id:o}=s;this.renameTab(o,Ve.getBaseName(e))}this.saveContent(e,l)}}handleRenameFile(e,t,r){var{fileMetadata:i,panelState:a}=this.state,{glContainer:l}=this.props;if((i==null?void 0:i.itemName)==="/".concat(t)&&r&&JSON.stringify(a)!==JSON.stringify(r)){l.close();return}i&&i.id===e&&(this.setState({fileMetadata:{id:t,itemName:t}}),this.debouncedSavePanelState())}handleResize(){var e;(e=this.notebook)===null||e===void 0||e.updateDimensions()}handleRunCommand(e){this.runCommand(e)}handleRunAll(){var e;if(!this.notebook){te.error("Editor is not initialized.");return}this.runCommand((e=this.notebook.getValue())!==null&&e!==void 0?e:void 0)}handleRunSelected(){if(!this.notebook){te.error("Editor is not initialized.");return}this.runCommand(this.notebook.getSelectedCommand())}handleSessionOpened(e,t){var{language:r}=t;this.setState({session:e,sessionLanguage:r})}handleSessionClosed(){this.setState({session:void 0,sessionLanguage:void 0})}handleShow(){var e;te.debug("handleShow"),(e=this.notebook)===null||e===void 0||e.updateDimensions()}handlePanelDropped(e){var{metadata:{id:t}}=this.props;e===t&&this.forceUpdate()}handleShowRename(){this.setState({showSaveAsModal:!0})}handleTab(e){te.debug("NotebookPanel tab event",e),this.initTab(e)}handleTabFocus(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];te.debug("handleTabFocus",...t);var{glContainer:i}=this.props;this.setState({isDashboardActive:!0}),this.notebook&&!i.isHidden&&this.notebook.updateDimensions()}handleTabBlur(){te.debug("handleTabBlur"),this.setState({isDashboardActive:!1})}handleTabClick(e){te.debug("handle NotebookPanel tab click"),this.focus(),e.detail===2&&this.removePreviewStatus()}handleTransformLinkUri(e){var{notebooksUrl:t}=this.props,{fileMetadata:r}=this.state;if(e.endsWith("/"))return e;if(e.startsWith("/"))return"".concat(t).concat(e.substring(1));var i=r==null?void 0:r.itemName;if(i===void 0)return e;i.charAt(0)==="/"&&(i=i.substring(1));var a=new URL(i,t);return new URL(e,a).href}focus(){requestAnimationFrame(()=>{this.notebook&&this.notebook.focus()})}createNotebook(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"",{glEventHub:i}=this.props,{session:a,sessionLanguage:l,settings:s}=this.state,o=je(je({},s),{},{language:t,value:r}),u={id:null,itemName:e};te.debug("handleCreateNotebook",a,l,o,u),i.emit(oe.CREATE_NOTEBOOK,a,l,o,u)}runCommand(e){if(e===void 0||e===""){te.debug("Ignoring empty command.");return}this.removePreviewStatus();var{glEventHub:t}=this.props;t.emit($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 e,t,{defaultNotebookSettings:r}=this.props,{settings:i}=this.state;return this.getOverflowActions((e=r.isMinimapEnabled)!==null&&e!==void 0?e:!1,this.getSettings(i,(t=r.isMinimapEnabled)!==null&&t!==void 0?t:!1).wordWrap==="on")}render(){var e,t,r,{fileStorage:i,glContainer:a,glContainer:{tab:l},glEventHub:s,defaultNotebookSettings:o}=this.props,{changeCount:u,savedChangeCount:d,error:h,isDashboardActive:c,isLoaded:v,isLoading:g,isPreview:p,fileMetadata:m,session:b,sessionLanguage:S,settings:C,showCloseModal:w,showDeleteModal:E,showSaveAsModal:P}=this.state,I=c&&!a.isHidden&&!p,D=(e=m==null?void 0:m.itemName)!==null&&e!==void 0?e:Te.DEFAULT_NAME,N=D.endsWith(".md"),M=(m==null?void 0:m.id)!=null,R=this.getSettings(C,(t=o.isMinimapEnabled)!==null&&t!==void 0?t:!1),_=b!=null,V=S===R.language,K=!v||!_||!V,q=!v,ie=[{action:this.handleSave,shortcut:Sn.SAVE},{action:this.handleMinimapChange,shortcut:ot.NOTEBOOK.MINIMAP},{action:this.handleWordWrapChange,shortcut:ot.NOTEBOOK.WORDWRAP}],ee=Pn.getDisabledRunTooltip(_,V,"Notebook extension","Run"),ge=Pn.getDisabledRunTooltip(_,V,"Notebook extension","Run Selected"),be=[{title:M?"Rename":"Save As…",order:10,group:Ke.groups.high,action:this.handleShowRename},{title:"Copy File",action:this.handleCopy,group:Ke.groups.high,order:20}],$e=l==null?void 0:l.element.find(".lm_title_before").get(0);return f.jsxs(f.Fragment,{children:[$e!=null&&ro.createPortal(f.jsx("span",{className:Ie(Te.UNSAVED_INDICATOR_CLASS_NAME,{[Te.UNSAVED_STATUS_CLASS_NAME]:u!==d})}),$e),f.jsxs(qt,{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:be,renderTabTooltip:()=>D,children:[!N&&f.jsxs(f.Fragment,{children:[f.jsxs("div",{className:"notebook-toolbar",children:[f.jsxs("span",{children:[f.jsx(Z,{kind:"ghost",className:"btn-play",onClick:this.handleRunAll,disabled:K,icon:f.jsx(Me,{icon:eu,transform:"grow-4"}),tooltip:"Run ".concat(ot.NOTEBOOK.RUN.getDisplayText()),"aria-label":"Run"}),ee!=null&&f.jsx(yn,{children:ee})]}),f.jsxs("span",{children:[f.jsx(Z,{kind:"ghost",className:"btn-play",onClick:this.handleRunSelected,disabled:K,icon:f.jsx(Me,{icon:tu,transform:"grow-4"}),tooltip:"Run Selected ".concat(ot.NOTEBOOK.RUN_SELECTED.getDisplayText()),"aria-label":"Run Selected"}),ge!=null&&f.jsx(yn,{children:ge})]}),f.jsx(Z,{kind:"ghost",className:"mr-auto",disabled:q,onClick:this.handleSave,icon:Pl,tooltip:"Save ".concat(Sn.SAVE.getDisplayText()),"aria-label":"Save"}),f.jsx(Z,{kind:"ghost",className:"btn-overflow",disabled:q,icon:ru,tooltip:"More Actions...",onClick:()=>{},children:f.jsx(fl,{actions:this.getDropdownOverflowActions,popperOptions:Te.POPPER_OPTIONS})})]}),f.jsx(Xd,{isLoaded:v,isLoading:g,error:h,onChange:this.handleEditorChange,onRunCommand:this.handleRunCommand,session:b,sessionLanguage:S,onEditorInitialized:this.handleEditorInitialized,onEditorWillDestroy:this.handleEditorWillDestroy,settings:R,focusOnMount:I,ref:L=>{this.notebook=L}})]}),N&&f.jsx(T.Suspense,{fallback:f.jsx(ct,{}),children:f.jsx(Uv,{content:(r=R.value)!==null&&r!==void 0?r:"",onLinkClick:this.handleLinkClick,onRunCode:this.handleRunCommand,transformImageUri:this.handleTransformLinkUri,transformLinkUri:this.handleTransformLinkUri})}),f.jsx(Oo,{isOpen:P,type:"file",defaultValue:D,title:M?"Rename":"Save file as",onSubmit:this.handleSaveAsSubmit,onCancel:this.handleSaveAsCancel,notifyOnExtensionChange:!0,storage:i}),f.jsx(wi,{isOpen:E,headerText:'Are you sure you want to delete "'.concat(D,'"?'),bodyText:"You cannot undo this action.",onCancel:this.handleDeleteCancel,onConfirm:this.handleDeleteConfirm,confirmButtonText:"Delete"}),f.jsx(wi,{isOpen:w,headerText:"Do you want to save the changes you made to ".concat(D,"?"),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"}),f.jsx(Ke,{actions:ie})]})]})}}Fe(Te,"COMPONENT","NotebookPanel");Fe(Te,"POPPER_OPTIONS",{placement:"bottom-end"});Fe(Te,"DEFAULT_NAME","Untitled");Fe(Te,"UNSAVED_INDICATOR_CLASS_NAME","editor-unsaved-indicator");Fe(Te,"UNSAVED_STATUS_CLASS_NAME","is-unsaved");Fe(Te,"defaultProps",{isDashboardActive:!0,isPreview:!1,session:null,sessionLanguage:null,defaultNotebookSettings:{isMinimapEnabled:!0}});var Bv=(n,e)=>{var t=Do(n),r=No(n),i=pl(n,e.localDashboardId),{session:a,config:l}=i??{},{type:s}=l??{};return{fileStorage:t,defaultNotebookSettings:r,session:a,sessionLanguage:s}},Wv=Et(Bv,{updateSettings:Po},null,{forwardRef:!0})(Te);const yt=Wv;function fs(n){var{onClick:e}=n,t=T.useRef(null),r=T.useCallback(i=>{var a;(a=t.current)===null||a===void 0||a.blur(),e(i)},[e]);return f.jsxs(Z,{ref:t,kind:"primary",className:"btn-pandas",onClick:r,tooltip:"Click to refresh pandas dataframe, updates do not occur automatically.",children:["pandas dataframe",f.jsxs("span",{children:[f.jsx(Me,{icon:Dl,transform:"shrink-1",className:"mr-1"}),"Reload"]})]})}function Oa(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Da(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Oa(Object(t),!0).forEach(function(r){an(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Oa(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function an(n,e,t){return e=zv(e),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:String(e)}function qv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class ci extends T.Component{constructor(e){super(e),an(this,"irisGridRef",void 0),this.irisGridRef=Pe.createRef(),this.handleReload=this.handleReload.bind(this),this.handleGridStateChange=this.handleGridStateChange.bind(this),this.handlePanelStateUpdate=this.handlePanelStateUpdate.bind(this);var{panelState:t}=e;this.state={shouldFocusGrid:!1,panelState:t}}handleReload(){var e;(e=this.irisGridRef.current)===null||e===void 0||e.initModel(),this.setState({shouldFocusGrid:!0})}handleGridStateChange(){var e,t,r,{shouldFocusGrid:i}=this.state;i&&(e=this.irisGridRef.current)!==null&&e!==void 0&&(t=e.irisGrid)!==null&&t!==void 0&&(r=t.current)!==null&&r!==void 0&&r.grid&&(this.irisGridRef.current.irisGrid.current.grid.focus(),this.setState({shouldFocusGrid:!1}))}handlePanelStateUpdate(e){this.setState({panelState:e})}render(){return f.jsx(oi,Da(Da({ref:this.irisGridRef,onStateChange:this.handleGridStateChange,onPanelStateUpdate:this.handlePanelStateUpdate},this.props),{},{children:f.jsx(fs,{onClick:this.handleReload})}))}}an(ci,"defaultProps",{panelState:null});an(ci,"COMPONENT","PandasPanel");const ps=ci;function Na(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function Fa(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 Ma(n,e,t){return e=Kv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Kv(n){var e=Xv(n,"string");return typeof e=="symbol"?e:String(e)}function Xv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Yv{constructor(e){Ma(this,"items",void 0),Ma(this,"onUpdateCallback",void 0),this.items=e}setSearch(e){}setExpanded(e,t){if(e.charAt(e.length-1)==="/")for(var r=0;r<this.items.length;r+=1){var i=this.items[r];Ti(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];Ti(t)&&(t.isExpanded=!1)}return Promise.resolve()}getViewportData(){return Promise.resolve({items:this.items,offset:0})}getSnapshot(e){return Fa(function*(){throw new Error("Method not implemented.")})()}setViewport(e){var t=this;return Fa(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}}const Zv=Yv;function Ia(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function rr(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 Qv(n,e,t){return e=Jv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Jv(n){var e=ef(n,"string");return typeof e=="symbol"?e:String(e)}function ef(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class tf{constructor(e){Qv(this,"items",void 0),this.items=e}getTable(){var e=this;return rr(function*(){return new Zv(e.items)})()}saveFile(e){throw new Error("Method not implemented.")}loadFile(e){throw new Error("Method not implemented.")}copyFile(e,t){return rr(function*(){throw new Error("Method not implemented.")})()}deleteFile(e){var t=this;return rr(function*(){t.items=t.items.filter(r=>r.filename!==e)})()}moveFile(e,t){var r=this;return rr(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 rr(function*(){var r=t.items.filter(a=>a.filename===e);if(r.length===0)throw new Fo;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.")}}const rf=tf;function Ra(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?Ra(Object(t),!0).forEach(function(r){nf(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ra(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function nf(n,e,t){return e=af(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function af(n){var e=lf(n,"string");return typeof e=="symbol"?e:String(e)}function lf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function La(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function sf(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 of(n,e,t,r,i){return An.apply(this,arguments)}function An(){return An=sf(function*(n,e,t,r,i){var a,l,s,o;if(Vt(t)?(a=t.settings,l=t.table,s=void 0,o=t.tableSettings):(a={},l="",s=Qn(t)?t.figure:t.name,o={}),i!=null&&(i.tableSettings!=null&&(o=i.tableSettings),i.table!=null&&(l=i.table),i.figure!=null&&(s=i.figure),i.settings!=null&&(a=Wr(Wr({},a),i.settings))),s==null&&l==null){var u=yield r();return ur.makeModel(n,a,u)}if(s!=null){var d;if(t.type===n.VariableType.FIGURE){var h={name:s,type:n.VariableType.FIGURE};d=yield e(h)}else d=yield r();return ur.makeModel(n,a,d)}var c={name:l,type:n.VariableType.TABLE},v=yield e(c);return new Q(n).applyTableSettings(v,o,ml(zu.getState())),ur.makeModelFromSettings(n,a,v)}),An.apply(this,arguments)}var vi=T.forwardRef((n,e)=>{var t=Xt(),r=Mo(),i=ls(n)?n.panelState:void 0,{fetch:a,metadata:l,localDashboardId:s}=n,o=T.useMemo(()=>({metadata:l,localDashboardId:s,makeModel:()=>{if(l==null)throw new Error("Metadata is required for chart panel");return of(t,r,l,a,i)}}),[l,s,t,r,a,i]);return f.jsx(li,Wr(Wr({ref:e},n),o))});vi.displayName="ChartPanelPlugin";const uf=vi;function Aa(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function df(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 ms(n){var e=Xt(),[t,r]=T.useState(),{fetch:i}=n;return T.useEffect(()=>{var a=!1;function l(){return s.apply(this,arguments)}function s(){return s=df(function*(){var o=yield i(),u=yield ur.makeModel(e,void 0,o);a||r(u)}),s.apply(this,arguments)}return l(),()=>{a=!0}},[e,i]),t?f.jsx(xl,{model:t}):null}var hf={name:"ChartPanel",title:"Chart",type:Pt.WIDGET_PLUGIN,component:ms,panelComponent:vi,supportedTypes:"Figure",icon:au};const cf=hf;function gs(n){Yt(n);var{id:e,layout:t}=n,r=Xt(),i=T.useCallback(a=>{var{metadata:l,panelId:s=Be(),table:o}=a,{settings:u}=l,d=()=>ur.makeModelFromSettings(r,u,o),h=Re.titleFromSettings(u),c={type:"react-component",component:li.COMPONENT,props:{localDashboardId:e,id:s,metadata:l,makeModel:d},title:h,id:s},{root:v}=t;$.openComponent({root:v,config:c})},[r,e,t]);return Se(t.eventHub,nt.CREATE_CHART,i),null}var vf={name:"ChartBuilderPlugin",type:Pt.DASHBOARD_PLUGIN,component:gs};const ff=vf;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 xa(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){pf(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 pf(n,e,t){return e=mf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function mf(n){var e=gf(n,"string");return typeof e=="symbol"?e:String(e)}function gf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var fe=J.module("ConsolePlugin");function _a(n){return n.notebook!==void 0}function bf(n){Yt(n)}function Cf(n){bf(n);var{id:e,hydrateConsole:t,layout:r,panelManager:i,registerComponent:a,notebooksUrl:l}=n,s=T.useRef(0),[o,u]=T.useState(new Map),[d,h]=T.useState(new Map),c=sl(),v=T.useCallback(()=>i.getLastUsedPanelOfType(Ar),[i]),g=T.useCallback((L,x)=>{u(j=>new Map(j.set(L,x)))},[u]),p=T.useCallback(L=>{u(x=>(x.delete(L),new Map(x)))},[u]),m=T.useCallback((L,x)=>{h(j=>new Map(j.set(L,x)))},[h]),b=T.useCallback(L=>{h(x=>(x.delete(L),new Map(x)))},[h]),S=T.useCallback(function(L){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,j=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,G=L&&L.trim();if(!G)fe.info("Ignoring empty code");else{var z=v();if(!z||!(z instanceof Ar.WrappedComponent)){fe.error("Console panel not found");return}fe.debug("Send command: ",L,x,j),z.addCommand(L,x,j)}},[v]),C=T.useCallback(L=>{c(rs(e,L))},[c,e]),w=T.useCallback(L=>{var{language:x}=L,j=x==="python"?"py":x,G=null;return j==null?(fe.debug("No extension for language",x),G="Untitled-".concat(s.current)):G="Untitled-".concat(s.current,".").concat(j),s.current+=1,G},[]),E=T.useCallback(function(L){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,{id:j}=L;if(j!=null&&o.has(j))return o.get(j);if(j!=null&&d.has(j))return d.get(j);if(x)return Be()},[o,d]),P=T.useCallback((L,x)=>{$.renameComponent(r.root,{id:L},x)},[r.root]),I=T.useCallback((L,x)=>{fe.debug("Rename file panel",L,x);var j;if(o.has(L)&&(j=o.get(L),p(L),j!=null&&g(x,j)),d.has(L)&&(j=d.get(L),b(L),j!=null&&m(x,j)),j===void 0){fe.debug2("File ".concat(L," isn't open, no need to rename the tab"));return}P(j,Ve.getBaseName(x))},[o,d,P,g,m,p,b]),D=T.useCallback(L=>{var x=E(L,!1);if(x==null){fe.error("Could not find panel id for file metadata",L);return}$.activateTab(r.root,{id:x})},[E,r.root]),N=T.useCallback((L,x,j)=>{if(fe.debug("registerFilePanel",L,x,j),x==null||x.id==null){fe.debug("Ignore empty file id",x);return}var{id:G}=x;if(j){m(G,L);return}if(o.has(G)){var z=o.get(G);if(L===z){fe.debug("Update tab title for file ".concat(G));var{itemName:Ce}=x;I(G,Ce)}else fe.error("File ".concat(G," already associated with a different tab ").concat(z));return}g(G,L),d.has(G)&&b(G)},[o,d,I,g,m,b]),M=T.useCallback((L,x)=>{if(fe.debug("unregisterFileTab",L,x),L==null||L.id==null){fe.debug("Ignore empty file id",L);return}var{id:j}=L;if(x){b(j);return}p(j)},[p,b]),R=T.useCallback((L,x)=>{fe.debug("closeFilePanel",L);var{id:j}=L,G=null,z=!1;if(o.has(j))G=o.get(j);else if(d.has(j))G=d.get(j),z=!0;else{fe.debug("File ".concat(j," isn't open, ignore close event"));return}M(L,z),$.closeComponent(r.root,{id:G},x)},[r.root,o,d,M]),_=T.useCallback(L=>{var{itemName:x}=L;return Ve.getBaseName(x)},[]),V=T.useCallback(L=>{var{id:x}=L;return fe.debug("fileIsOpen",L,x,o),x!=null&&o.has(x)},[o]),K=T.useCallback(L=>{var{id:x}=L;return fe.debug("fileIsOpenAsPreview",L,x,d),x!=null&&d.has(x)},[d]),q=T.useCallback(L=>{if(L!=null){var x=i.getOpenedPanelById(L);x&&_a(x)&&x.focus()}},[i]),ie=T.useCallback(L=>{var{id:x,settings:j,fileMetadata:G,session:z,sessionLanguage:Ce,isPreview:ye=!1}=L,ke={settings:j,fileMetadata:G},ze=_(G);return{type:"react-component",component:yt.COMPONENT,isFocusOnShow:!1,props:{localDashboardId:e,metadata:{id:x},session:z,sessionLanguage:Ce,panelState:ke,isPreview:ye,notebooksUrl:l},title:ze,id:x}},[_,e,l]),ee=T.useCallback(function(L,x,j){var G=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{id:null,itemName:w(j)},z=E(G);if(V(G)&&z!=null){fe.debug("File is already open, focus panel"),D(G),q(z);return}var Ce=$.getStackForComponentTypes(r.root,[yt.COMPONENT]),ye=ie({id:z,settings:j,fileMetadata:G,session:L,sessionLanguage:x});fe.debug("createNotebook",ye,o),$.openComponentInStack(Ce,ye)},[V,q,w,E,r.root,ie,o,D]),ge=T.useCallback(function(L,x,j,G){var z=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;fe.debug("selectNotebook",G,z);var Ce=V(G),ye=K(G),[ke]=[...d.values()],ze=!z,qe=ze&&ke?ke:E(G);if(qe==null||qe==="")throw new Error("Unable to retrieve or create panelId for metadata",G);if(Ce||ye)D(G);else{var sn=$.getStackForComponentTypes(r.root,[yt.COMPONENT]),on=ie({id:qe,settings:j,fileMetadata:G,session:L,sessionLanguage:x,isPreview:ze});$.openComponentInStack(sn,on)}if(ye&&z){var Er=G.id,un=$.getStackForConfig(r.root,{component:yt.COMPONENT,id:qe}),Qt=$.getContentItemInStack(un,{component:yt.COMPONENT,id:qe});Qt&&Io(Qt)&&(Qt.container.emit(oe.PROMOTE_FROM_PREVIEW),b(Er),g(Er,qe))}z&&q(qe)},[D,V,K,q,E,r.root,ie,d,b,g]),be=T.useCallback(function(L,x){var j=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},G=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,z=i.getLastUsedPanelOfType(yt);z&&_a(z)?j!=null&&j.value!=null&&z.notebook!=null&&z.notebook.append(j.value):G&&ee(L,x,j)},[ee,i]),$e=T.useCallback((L,x)=>Ro.hydrate(xa(xa({},L),{},{notebooksUrl:l}),x),[l]);return er(a,Ar,t),er(a,gl),er(a,bl),er(a,Cl),er(a,yt,$e),Se(r.eventHub,$r.SEND_COMMAND,S),Se(r.eventHub,$r.SETTINGS_CHANGED,C),Se(r.eventHub,oe.CLOSE_FILE,R),Se(r.eventHub,oe.CREATE_NOTEBOOK,ee),Se(r.eventHub,oe.SELECT_NOTEBOOK,ge),Se(r.eventHub,oe.RENAME,P),Se(r.eventHub,oe.RENAME_FILE,I),Se(r.eventHub,oe.SEND_TO_NOTEBOOK,be),Se(r.eventHub,oe.REGISTER_FILE,N),Se(r.eventHub,oe.UNREGISTER_FILE,M),null}var nr=J.module("FilterPlugin");function bs(n){Yt(n);var{id:e,layout:t,registerComponent:r}=n,i=sl(),[a]=T.useState(()=>new Map),[l]=T.useState(()=>new Map),[s]=T.useState(()=>new Map),o=T.useCallback(()=>{var m=Array.from(a.values()).flat().sort((C,w)=>{var E=Xe.toLower(C.name),P=Xe.toLower(w.name);if(E!==P)return E>P?1:-1;var I=Xe.toLower(C.type),D=Xe.toLower(w.type);return I!==D?I>D?1:-1:0}).reduce((C,w)=>((C.length===0||Xe.toLower(C[C.length-1].name)!==Xe.toLower(w.name)||Xe.toLower(C[C.length-1].type)!==Xe.toLower(w.type))&&C.push(w),C),[]),b=Array.from(l.values()).flat().sort((C,w)=>C.timestamp-w.timestamp),S=new Map(s);nr.debug("sendUpdate",{columns:m,filters:b,tableMap:S}),i(wt(e,{columns:m,filters:b,tableMap:S}))},[i,e,a,l,s]),u=T.useCallback((m,b)=>{nr.debug2("handleColumnsChanged",m,b),b==null?a.delete(m):a.set(m,[].concat(b)),o()},[a,o]),d=T.useCallback((m,b)=>{nr.debug2("handleFiltersChanged",m,b),b==null?l.delete(m):l.set(m,[].concat(b??[])),o()},[l,o]),h=T.useCallback((m,b)=>{nr.debug2("handleTableChanged",m,b),b==null?s.delete(m):s.set(m,b),o()},[s,o]),c=T.useCallback(m=>{nr.debug2("handlePanelUnmount",m);var b=$.getIdFromPanel(m);b!=null&&(a.delete(b),s.delete(b),l.delete(b)),o()},[a,l,s,o]),v=T.useCallback(m=>{var{title:b="DropdownFilter",metadata:S={},panelState:C=null,id:w=Be(),focusElement:E=$.DEFAULT_FOCUS_SELECTOR,createNewStack:P=!1,dragEvent:I=null}=m,D={type:"react-component",component:$t.COMPONENT,props:{id:w,metadata:S,panelState:C,localDashboardId:e},title:b,id:w},{root:N}=t;$.openComponent({root:N,config:D,focusElement:E,createNewStack:P,dragEvent:I})},[t,e]),g=T.useCallback(m=>{var{title:b="InputFilter",metadata:S={},panelState:C=null,id:w=Be(),focusElement:E=$.DEFAULT_FOCUS_SELECTOR,createNewStack:P=!1,dragEvent:I=void 0}=m,D={type:"react-component",component:Ht.COMPONENT,props:{id:w,metadata:S,panelState:C,localDashboardId:e},title:b,id:w},{root:N}=t;$.openComponent({root:N,config:D,focusElement:E,createNewStack:P,dragEvent:I})},[t,e]),p=T.useCallback(m=>{var{title:b="FilterSets",metadata:S={},panelState:C=null,id:w=Be(),focusElement:E=$.DEFAULT_FOCUS_SELECTOR,createNewStack:P=!1,dragEvent:I=null}=m,D={type:"react-component",component:kr.COMPONENT,props:{id:w,metadata:S,panelState:C,localDashboardId:e},title:b,id:w},{root:N}=t;$.openComponent({root:N,config:D,focusElement:E,createNewStack:P,dragEvent:I})},[t,e]);return T.useEffect(function(){var b=[r($t.COMPONENT,$t),r(Ht.COMPONENT,Ht),r(kr.COMPONENT,kr)];return()=>{b.forEach(S=>S())}},[r]),xc(t.eventHub,u),jc(t.eventHub,d),_c(t.eventHub,h),Se(t.eventHub,ut.OPEN_DROPDOWN,v),Se(t.eventHub,ut.OPEN_INPUT,g),Se(t.eventHub,ut.OPEN_FILTER_SET_MANAGER,p),Se(t.eventHub,Ne.UNMOUNT,c),null}var Sf={name:"FilterPlugin",type:Pt.DASHBOARD_PLUGIN,component:bs};const yf=Sf;var Ef=J.module("@deephaven/app-utils/useTablePlugin");function Cs(){var n=Sl(),e=T.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 Ef.error(i),new Error(i)},[n]);return e}function ja(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function wf(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){ja(a,r,i,l,s,"next",o)}function s(o){ja(a,r,i,l,s,"throw",o)}l(void 0)})}}function Ss(n,e,t){var r=Xt(),i=Cs(),a=T.useMemo(()=>({loadPlugin:i,localDashboardId:e,makeModel:function(){var l=wf(function*(){var o=yield n();return zl.makeModel(r,o)});function s(){return l.apply(this,arguments)}return s}(),metadata:t}),[r,n,e,i,t]);return a}function Va(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function $a(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Va(Object(t),!0).forEach(function(r){Tf(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Va(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Tf(n,e,t){return e=Pf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Pf(n){var e=Of(n,"string");return typeof e=="symbol"?e:String(e)}function Of(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var fi=T.forwardRef((n,e)=>{var{localDashboardId:t,fetch:r,metadata:i}=n,a=Ss(r,t,i);return f.jsx(oi,$a($a({ref:e},n),a))});fi.displayName="GridPanelPlugin";const Df=fi;function Ha(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function bn(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Ha(a,r,i,l,s,"next",o)}function s(o){Ha(a,r,i,l,s,"throw",o)}l(void 0)})}}function ys(n){var e=Xt(),[t,r]=T.useState(),[i,a]=T.useState(),[l,s]=T.useState(!0),o=T.useCallback(bn(function*(){var h=yield n();return zl.makeModel(e,h)}),[e,n]),u=T.useCallback(bn(function*(){s(!0),a(void 0);try{var h=yield o();r(h),s(!1)}catch(c){a(c),s(!1)}}),[o]);T.useEffect(()=>{var h=!1;function c(){return v.apply(this,arguments)}function v(){return v=bn(function*(){s(!0),a(void 0);try{var g=yield o();h||(r(g),s(!1))}catch(p){h||(a(p),s(!1))}}),v.apply(this,arguments)}return c(),()=>{h=!0}},[o]),T.useEffect(function(){if(!t)return;function c(){a(new Error("Table disconnected")),r(void 0),s(!1)}return t.addEventListener(W.EVENT.DISCONNECT,c),()=>{t.removeEventListener(W.EVENT.DISCONNECT,c)}},[t]);var d=T.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 Es(n,e){var{eventHub:t}=qn(),r=yl(),i=El();T.useEffect(function(){i==null||n==null||Gr(t,i,n)},[t,i,n]),T.useEffect(function(){e==null||i==null||Ur(t,i,e)},[t,i,e]),T.useEffect(function(){if(i!=null)return()=>{Gr(t,i,null),Ur(t,i,null)}},[t,i]);var a=T.useCallback(o=>gr(o,r),[r]),l=En(a),s=T.useMemo(()=>Q.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 ws(n,e){var{eventHub:t}=qn(),r=yl(),i=El(),a=ko(),l=T.useCallback(m=>Tt(m,r),[r]),s=En(l),o=T.useMemo(()=>{var m=new Set;return s.forEach(b=>{b.start.panelId===i&&m.add(b.start.columnName)}),[...m]},[s,i]),u=T.useCallback(m=>mr(m,r),[r]),d=En(u),h=T.useCallback(m=>d&&m&&i!=null?d(i,m,{type:"tableLink"}):!1,[d,i]),c=d!=null,v=T.useCallback((m,b)=>{i!=null&&os(t,i,b)},[t,i]),g=T.useCallback(m=>{var b,S,C;if(!n||!e)return null;var{gridWrapper:w}=e,E=(b=w==null?void 0:w.getBoundingClientRect())!==null&&b!==void 0?b:null;if(E==null||E.width<=0||E.height<=0)return null;var{metrics:P}=e.state;F(P);var{columnHeaderHeight:I,allColumnXs:D,allColumnWidths:N,right:M,columnHeaderMaxDepth:R}=P,_=n.getColumnIndexByName(m);F(_);var V=e.getVisibleColumn(_),K=(S=D.get(V))!==null&&S!==void 0?S:0,q=(C=N.get(V))!==null&&C!==void 0?C:0,ie=Ge(V>M?E.right:E.left+K+q*.5,E.left,E.right),ee=E.top+I*R;return[ie,ee]},[n,e]),p=T.useCallback(m=>{i!=null&&en(t,i,m,{type:"tableLink"})},[t,i]);return T.useEffect(function(){if(!(!e||a==null||i==null))return ca(t,i,{getCoordinates:g,setFilterValues:e.setFilterMap,unsetFilterValue:()=>{},panelId:a}),()=>{ca(t,i,null)}},[t,i,g,e,a]),{alwaysFetchColumns:o,columnSelectionValidator:h,isSelectingColumn:c,onColumnSelected:p,onDataSelected:v}}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 Rr(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){Nf(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 Nf(n,e,t){return e=Ff(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ff(n){var e=Mf(n,"string");return typeof e=="symbol"?e:String(e)}function Mf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Ts(n){var{fetch:e}=n,t=no(Xr),{eventHub:r}=qn(),i=ys(e),a=Xt(),l=T.useMemo(()=>new Q(a),[a]),[s,o]=yd(void 0,{version:1,type:"GridWidgetPlugin"}),u=T.useRef(s),d=T.useMemo(()=>{if(!(i.status!=="success"||u.current===void 0))return Rr(Rr({},l.hydrateIrisGridState(i.model,u.current)),Q.hydrateGridState(i.model,u.current))},[i,l]),h=T.useMemo(()=>Rn.makeMemoizedCombinedGridStateDehydrator(),[]),c=T.useCallback((S,C)=>{if(!(i.status!=="success"||S==null||C==null)){var w=h(i.model,S,C);o(w)}},[i,o,h]),v=Es(i.status==="success"?i.model.columns:null,i.status==="success"&&Mt(i.model)?i.model.table:void 0),g=T.useRef(null),p=ws(i.status==="success"?i.model:null,g.current),m=T.useCallback(()=>{g.current!=null&&g.current.clearAllFilters()},[]);if(Se(r,ut.CLEAR_ALL_FILTERS,m),i.status==="loading")return f.jsx(ct,{isLoading:!0});if(i.status==="error")return f.jsx(ct,{errorMessage:wl(i.error),isLoading:!1});var{model:b}=i;return f.jsx(Kn,Rr(Rr({ref:g,model:b,settings:t,onStateChange:c,inputFilters:v},p),d))}var If={name:"IrisGridPanel",title:"Table",type:Pt.WIDGET_PLUGIN,component:Ts,panelComponent:fi,supportedTypes:["Table","TreeTable","HierarchicalTable","PartitionedTable"],icon:lu};const Rf=If;function Ua(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function gt(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ua(Object(t),!0).forEach(function(r){Lf(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 Lf(n,e,t){return e=Af(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Af(n){var e=kf(n,"string");return typeof e=="symbol"?e:String(e)}function kf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Ps(n){var e=n;return typeof e.getCoordinateForColumn=="function"}function Ba(n){var e=n;return Ps(n)&&typeof e.setFilterMap=="function"&&typeof e.unsetFilterValue=="function"}function Wa(n){return n.description==null||!n.description.startsWith("Preview of type: ")}var za=J.module("LinkerUtils");class xf{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 za.debug2("Incompatible panel ids",e,t,r),!1;var{columnType:i}=e,{columnType:a}=t,l=a===null||y.isCompatibleType(i,a);return l?!0:(za.debug2("Incompatible type",i,a),!1)}static findColumn(e,t){var{columnName:r,columnType:i}=t;return e.find(a=>{var{name:l,type:s}=a;return l===r&&s===i})}static cloneLinksForPanel(e,t,r){var i=[];return e.forEach(a=>{var l;a.start.panelId===t&&a.type!=="filterSource"?i.push(gt(gt({},a),{},{id:Be(),start:gt(gt({},a.start),{},{panelId:r})})):((l=a.end)===null||l===void 0?void 0:l.panelId)===t&&i.push(gt(gt({},a),{},{id:Be(),end:gt(gt({},a.end),{},{panelId:r})}))}),i}}const Ft=xf;function Os(n,e,t){return e=_f(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function _f(n){var e=jf(n,"string");return typeof e=="symbol"?e:String(e)}function jf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Vf=J.module("LinkerLink"),qa=.015,Ka=1.5,Ds=12,Ns=12,Xa=2,Lr=Math.sqrt((Ns*.5)**2+Ds**2),Ya=Math.asin(Ns*.5/Ds),Za=15,bt=Math.PI*.5;class Gt extends T.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(y.isNumberType(e)||y.isCharType(e))return ud(t);if(y.isTextType(e))return od(t);if(y.isDateType(e))return dd(t);if(y.isBooleanType(e)){if(t===O.eq)return"is equal to";if(t===O.notEq)return"is not equal to"}throw new Error("Unrecognized column type: ".concat(e))}catch(r){return Vf.warn(r),""}}constructor(e){super(e),Os(this,"getOperators",U((t,r)=>{var{onOperatorChanged:i}=this.props,a=y.getFilterTypes(r);return y.isBooleanType(r)&&(a=[O.eq,O.notEq]),a.flatMap((l,s)=>{if(l==="eqIgnoreCase"||l==="notEqIgnoreCase")return[];var o="";return l==="startsWith"?o="a*":l==="endsWith"?o="*z":o=y.getFilterOperatorString(l),[{title:Gt.getLabelForLinkFilter(r,l),icon:f.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),p=Math.cos(v)+2,m=window.innerWidth,b=window.innerHeight,S=0,C=0,w=Math.max(S,Math.min(i+(l-i)/2+g*(c*qa)**Ka,m)),E=Math.max(C,Math.min(a+(s-a)/2+p*(c*qa)**Ka,b)),P="M ".concat(i," ").concat(a," Q ").concat(w," ").concat(E," ").concat(l," ").concat(s),I="M ".concat(S," ").concat(C," L ").concat(S," ").concat(b," L ").concat(m," ").concat(b," L ").concat(m," ").concat(C,` z
11
11
  `).concat(Gt.makeCirclePath(i,a,Za),`
12
- `).concat(Gt.makeCirclePath(l,s,Za)),F="link-select-clip-".concat(o),D=Math.atan2(s-w,l-E),M=D-Ya+Math.PI,R=D+Ya+Math.PI,_=l+Math.cos(D)*Xa,V=s+Math.sin(D)*Xa,K=_+Math.cos(M)*Lr,q=V+Math.sin(M)*Lr,ie=_+Math.cos(R)*Lr,ee=V+Math.sin(R)*Lr,ge="".concat(_,",").concat(V," ").concat(K,",").concat(q," ").concat(ie,",").concat(ee),be=.25*i+.5*E+.25*l,$e=.25*a+.5*w+.25*s,L=E-i+(l-E),x=w-a+(s-w),j=x/L,G=20,z=G/Math.sqrt(1+j**2),Ce=z*j,ye=z*-1,ke=Ce*-1;Number.isFinite(j)?j>0?(z*=-1,Ce*=-1,ye*=-1,ke*=-1,ye-=50-10*(Math.abs(v)%bt),ke+=10*(Math.abs(v)%bt),z-=50-10*(Math.abs(v)%bt),Ce+=10*(Math.abs(v)%bt)):j<0?(ye+=10*(Math.abs(v)%bt),ke+=10*(Math.abs(v)%bt),z+=10*(Math.abs(v)%bt),Ce+=10*(Math.abs(v)%bt)):(ye=15,ke=10,z=-25,Ce=10):(ye=10,ke=5,z=10,Ce=-35);var ze="";t!==void 0&&(t==="startsWith"?ze="a*":t==="endsWith"?ze="*z":ze=S.getFilterOperatorString(t));var qe=d!=="chartLink"&&d!=="filterSource";return f.jsxs(f.Fragment,{children:[f.jsxs("svg",{className:Ie(e,{hovering:h}),children:[f.jsx("clipPath",{id:F,children:f.jsx("path",{d:I,clipRule:"evenodd"})}),f.jsx("path",{className:"link-select",d:P,onClick:this.handleClick,onMouseEnter:this.handleMouseEnter,onMouseLeave:this.handleMouseLeave,clipPath:"url(#".concat(F,")"),"data-testid":"link-select"}),f.jsx("path",{className:"link-background",d:P}),f.jsx("path",{className:"link-foreground",d:P}),f.jsx("circle",{className:"link-dot",cx:i,cy:a,r:"5"}),f.jsx("polygon",{className:"link-triangle",points:ge})]}),u!=null&&r&&f.jsxs(f.Fragment,{children:[qe&&f.jsx(Z,{kind:"primary",className:"btn-fab btn-operator",style:{top:$e+(j>=0?Ce:ke),left:be+(j>=0?z:ye)},onClick:()=>{},icon:f.jsxs("div",{className:"fa-md fa-layers",children:[f.jsx("b",{children:ze}),f.jsx(Me,{icon:su,transform:"right-8 down-9 shrink-5"})]}),tooltip:"Change comparison operator",children:f.jsx(fl,{actions:this.getDropdownActions,popperOptions:{placement:"bottom-start"}})}),f.jsx(Z,{kind:"primary",className:"btn-fab btn-delete",style:{top:$e+(j<0?Ce:ke),left:be+(j<0?z:ye)},onClick:this.handleDelete,icon:Yr,tooltip:"Delete"})]})]})}}Os(Gt,"defaultProps",{className:"",isSelected:!1,onClick(){},onDelete(){}});const Vf=Gt;function Qa(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Ja(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Qa(Object(t),!0).forEach(function(r){pi(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Qa(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function pi(n,e,t){return e=$f(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function $f(n){var e=Hf(n,"string");return typeof e=="symbol"?e:String(e)}function Hf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Cn=J.module("LinkerOverlayContent");class Ns extends T.Component{constructor(e){super(e),pi(this,"dialogRef",void 0),this.handleBlur=this.handleBlur.bind(this),this.handleResize=this.handleResize.bind(this),this.handleMouseMove=this.handleMouseMove.bind(this),this.handleMouseDown=this.handleMouseDown.bind(this),this.handleMouseUp=this.handleMouseUp.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleKeyUp=this.handleKeyUp.bind(this),this.handleEscapePressed=this.handleEscapePressed.bind(this),this.handleOperatorChanged=this.handleOperatorChanged.bind(this),this.dialogRef=Pe.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){Cn.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(!Ps(u))throw new Error("Panel does not have getCoordinateForColumn method: ".concat(l));try{var d=u.getCoordinateForColumn(a);if(d!=null)return d}catch{Cn.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 $.getTabPoint(h)}handleOperatorChanged(e,t){var{links:r,onLinksUpdated:i}=this.props,a=r.map(l=>l.id===e?Ja(Ja({},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 p,m,{id:b,type:y,isReversed:C,start:E,end:w,operator:P}=g,I=E.columnType,[F,D]=this.getPointFromLinkPoint(E),M=(p=u==null?void 0:u.x)!==null&&p!==void 0?p:F,R=(m=u==null?void 0:u.y)!==null&&m!==void 0?m:D;if(w!=null&&([M,R]=this.getPointFromLinkPoint(w)),C!=null&&C){var[_,V]=[F,D];[F,D]=[M,R],[M,R]=[_,V]}var K=Ie("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:D,x2:M,y2:R,id:b,className:K,operator:P,startColumnType:I,type:y}}catch(q){return Cn.warn("Unable to get point for link",g,q),null}}).filter(g=>g!=null);return f.jsxs("div",{className:Ie("linker-overlay",{"danger-delete":c==="delete"}),children:[v.map(g=>{var{x1:p,y1:m,x2:b,y2:y,id:C,className:E,operator:w,startColumnType:P,type:I}=g;return f.jsx(Vf,{className:E,id:C,x1:p,y1:m,x2:b,y2:y,onClick:a,onDelete:l,isSelected:r.has(C),operator:w??O.eq,startColumnType:P,type:I,onOperatorChanged:this.handleOperatorChanged},C)}),f.jsxs("div",{className:Ie("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:[f.jsx(Z,{draggable:!0,kind:"inline",className:"btn-drag-handle",icon:ou,onClick:()=>{},onMouseDown:this.handleMouseDown,children:!h&&f.jsx(yn,{children:"Drag to reposition"})}),f.jsx("div",{className:"toast-body",children:i}),f.jsxs("div",{className:"toast-footer",children:[f.jsx(Z,{kind:"secondary",onClick:s,children:"Clear All"}),f.jsx(Z,{kind:"primary",onClick:o,children:"Done"})]})]}),f.jsx(Ke,{actions:[{action:this.handleEscapePressed,shortcut:Sn.LINKER_CLOSE,isGlobal:!0}]})]})}}pi(Ns,"defaultProps",{disabled:"false"});const Gf=Ns;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){_r(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 _r(n,e,t){return e=Uf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Uf(n){var e=Bf(n,"string");return typeof e=="symbol"?e:String(e)}function Bf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var we=J.module("Linker"),Wf=(n,e)=>({activeTool:jn(n),dh:cl(n),isolatedLinkerPanelId:Kr(n,e.localDashboardId),links:Tt(n,e.localDashboardId),timeZone:ml(n)}),zf=Et(Wf,{setActiveTool:dl,setDashboardLinks:Jr,addDashboardLinks:Jl,deleteDashboardLinks:es,setDashboardIsolatedLinkerPanelId:Zn,setDashboardColumnSelectionValidator:ts});class qf extends T.Component{constructor(e){super(e),_r(this,"linkTargetPropMap",new Map),_r(this,"removerFns",[]),_r(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===Qe.DEFAULT&&this.reset())}componentDidCatch(e,t){we.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(nt.COLUMN_SELECTED,this.handleGridColumnSelect),t.on(nt.DATA_SELECTED,this.handleUpdateValues),t.on(nt.STATE_CHANGED,this.handleStateChange),t.on(Ln.COLUMN_SELECTED,this.handleChartColumnSelect),t.on(Fe.CLONED,this.handlePanelCloned),this.removerFns=[Ac(t,this.handleColumnsChanged),jc(t,this.handleLinkPointSelected),Vc(t,this.handleUpdateValues),$c(t,this.handleTargetRegistered)],t.on(Fe.CLOSE,this.handlePanelClosed),t.on(Fe.CLOSED,this.handlePanelClosed),t.on(Fe.DRAGGING,this.handlePanelDragging),t.on(Fe.DROPPED,this.handlePanelDropped)}stopListening(e){e.off("stateChanged",this.handleLayoutStateChanged);var{eventHub:t}=e;t.off(nt.COLUMN_SELECTED,this.handleGridColumnSelect),t.off(nt.DATA_SELECTED,this.handleUpdateValues),t.off(nt.STATE_CHANGED,this.handleStateChange),t.off(Ln.COLUMN_SELECTED,this.handleChartColumnSelect),t.off(Fe.CLONED,this.handlePanelCloned),t.off(Fe.CLOSE,this.handlePanelClosed),t.off(Fe.CLOSED,this.handlePanelClosed),t.off(Fe.DRAGGING,this.handlePanelDragging),t.off(Fe.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(Qe.DEFAULT)}this.setState({linkInProgress:void 0})}handleDone(){var{setActiveTool:e}=this.props;e(Qe.DEFAULT)}handleChartColumnSelect(e,t){var r=$.getIdFromPanel(e);N(r),this.columnSelected(r,t,"chartLink",!0)}handleColumnsChanged(e,t){we.debug("handleColumnsChanged",e,t);var{links:r}=this.props;if(e==null){we.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&&Nt.findColumn(t,l)==null||s!=null&&s.panelId===e&&Nt.findColumn(t,s)==null});this.deleteLinks(i)}handleGridColumnSelect(e,t){if(!Wa(t)){we.debug2("Column is not filterable");return}var r=$.getIdFromPanel(e);N(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(Qe.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:Be(),start:{panelId:e,columnName:o,columnType:u},type:"invalid",isReversed:i};i&&(d.endType=r),we.debug("starting link",d),this.setState({linkInProgress:d})}else{var h,{links:c}=this.props,{start:v,id:g,isReversed:p=!1}=s,m={panelId:e,columnName:o,columnType:u},b=!(p&&i)&&Nt.isLinkValid(p?m:v,p?v:m,a??l);if(!b){we.debug("Ignore invalid link connection",s,m);return}var y=(h=s.endType)!==null&&h!==void 0?h:r;switch(y){case"invalid":we.debug("Ignore invalid link connection",s,m);return;case"filterSource":{var C=p!==void 0&&p?v.panelId:m.panelId,E=c.filter(D=>{var{end:M}=D;return(M==null?void 0:M.panelId)===C});this.deleteLinks(E);break}case"chartLink":{var w=p===!0?v:m,P=p===!0?m:v;we.debug("creating chartlink",{existingLinkEnd:w,start:v,end:m});var I=c.filter(D=>{var{end:M,start:R}=D;return(R==null?void 0:R.panelId)===P.panelId&&(M==null?void 0:M.panelId)===w.panelId&&(M==null?void 0:M.columnName)===w.columnName&&(M==null?void 0:M.columnType)===w.columnType});this.deleteLinks(I);break}}var F={start:p?m:v,end:p?v:m,id:g,type:y,operator:O.eq};we.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?Ba(d)?d.unsetFilterValue(l,s):we.debug("endPanel.unsetFilterValue not implemented",d):we.debug("endPanel no longer exists or target is not a panel. Ignoring unsetFilterValue",a)}}setPanelFilterMap(e,t){var r;we.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?Ba(s)?s.setFilterMap(t):we.debug("panel.setFilterMap not implemented",e,s):we.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]):we.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:p}=u,m=l.get(v),b=m??new Map,y=(h=(c=b.get(g))===null||c===void 0?void 0:c.filterList)!==null&&h!==void 0?h:[],{visibleIndex:C,isExpandable:E,isGrouped:w}=t[o.columnName],{value:P}=t[o.columnName],I="".concat(P);if(P===null&&E&&w&&(P=void 0),p!=null&&S.isDateType(p)){var F=new Vr(r,{timeZone:a,showTimeZone:!1,showTSeparator:!0,defaultDateTimeFormatString:se.FULL_DATE_FORMAT});I=F.format(P)}y.push({operator:d,text:I,value:P,startColumnIndex:C}),b.set(g,{columnType:p,filterList:y}),l.set(v,b)}}l.forEach((D,M)=>{this.setPanelFilterMap(M,D)})}handlePanelCloned(e,t){var{links:r}=this.props,i=$.getIdFromPanel(e),a=t.id;if(i!=null){var l=Nt.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){we.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===Qe.LINKER}updateSelectionValidators(){var{activeTool:e,setDashboardColumnSelectionValidator:t,localDashboardId:r}=this.props;switch(e){case Qe.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:tl(tl({},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":$.getComponentNameFromPanel(e)!=="IrisGridPanel";if(t==null)return(a==null?void 0:a.start)!=null&&this.updateLinkInProgressType("invalid"),!1;if(!Wa(t))return we.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:$.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?Nt.isLinkValid(h,u,l):Nt.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:f.jsx(wn,{in:s,mountOnEnter:!0,unmountOnExit:!0,onExited:this.handleExited,children:f.jsx(Gf,{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 Kf=zf(qf);const Xf=Kf;function Ms(n){Yt(n);var{id:e,layout:t,panelManager:r}=n;return f.jsx(Xf,{layout:t,localDashboardId:e,panelManager:r})}var Yf={name:"LinkerPlugin",type:Pt.DASHBOARD_PLUGIN,component:Ms};const Zf=Yf;function Is(n){Yt(n);var{id:e,layout:t,panelManager:r,registerComponent:i}=n,a=T.useCallback(function(){var{title:l="",metadata:s={},id:o=Be(),focusElement:u=$.DEFAULT_FOCUS_SELECTOR,createNewStack:d=!1,dragEvent:h=null}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},c=r.getOpenedPanelConfigsOfType(or.COMPONENT),v=c.map(y=>{var C;return(C=y.title)!==null&&C!==void 0?C:""}),g=l!=null&&l!==""?l:xr.getNewMarkdownTitle(v),p=null,m={type:"react-component",component:or.COMPONENT,props:{id:o,metadata:s,panelState:{content:p},localDashboardId:e},title:g,id:o},{root:b}=t;$.openComponent({root:b,config:m,focusElement:u,createNewStack:d,dragEvent:h})},[e,t,r]);return T.useEffect(function(){var s=[i(or.COMPONENT,or)];return()=>{s.forEach(o=>o())}},[i]),Se(t.eventHub,Xl.OPEN,a),null}var Qf={name:"MarkdownPlugin",type:Pt.DASHBOARD_PLUGIN,component:Is};const Jf=Qf;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){ep(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 ep(n,e,t){return e=tp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function tp(n){var e=rp(n,"string");return typeof e=="symbol"?e:String(e)}function rp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var mi=T.forwardRef((n,e)=>{var{localDashboardId:t,fetch:r,metadata:i}=n,a=Ss(r,t,i);return f.jsx(ps,nl(nl({ref:e},n),a))});mi.displayName="PandasPanelPlugin";const np=mi;function Rs(n){var{fetch:e}=n,t=ys(e);if(t.status==="loading")return f.jsx(ct,{isLoading:!0});if(t.status==="error")return f.jsx(ct,{errorMessage:wl(t.error),isLoading:!1});var{model:r,reload:i}=t;return f.jsx(Kn,{model:r,children:f.jsx(fs,{onClick:i})})}var ip={name:"PandasPanel",title:"Pandas",type:Pt.WIDGET_PLUGIN,component:Rs,panelComponent:mi,supportedTypes:"pandas.DataFrame",icon:uu};const ap=ip;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 ir(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){lp(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 lp(n,e,t){return e=sp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function sp(n){var e=op(n,"string");return typeof e=="symbol"?e:String(e)}function op(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var up=J.module("WidgetLoaderPlugin");function dp(n){var e;function t(r,i){var a,l=n.component,{metadata:s}=r,o=_o(l);return f.jsx(Sr,ir(ir({widgetName:(a=s==null?void 0:s.name)!==null&&a!==void 0?a:void 0,widgetType:n.title},r),{},{children:o?f.jsx(l,ir(ir({},r),{},{ref:i})):f.jsx(l,ir({},r))}))}return t.displayName="WidgetLoaderPlugin(".concat((e=n.component.displayName)!==null&&e!==void 0?e:n.name,")"),T.forwardRef(t)}function Ls(n){var e=Sl(),t=T.useMemo(()=>{var s=new Map;return e.forEach(o=>{xo(o)&&[o.supportedTypes].flat().forEach(u=>{if(u!=null&&u!==""){if(s.has(u)){var d;up.warn("Multiple WidgetPlugins handling type ".concat(u,". Replacing ").concat((d=s.get(u))===null||d===void 0?void 0:d.name," with ").concat(o.name," to handle ").concat(u))}s.set(u,o)}})}),s},[e]);Yt(n);var{id:r,layout:i,registerComponent:a}=n,l=T.useCallback(s=>{var o,{dragEvent:u,panelId:d=Be(),fetch:h,widget:c}=s,{type:v}=c,g=v!=null?t.get(v):null;if(g!=null){var p=(o=c.name)!==null&&o!==void 0?o:v,m={localDashboardId:r,metadata:c,fetch:h},b={type:"react-component",component:g.name,props:m,title:p,id:d},{root:y}=i;$.openComponent({root:y,config:b,dragEvent:u})}},[r,i,t]);return T.useEffect(()=>{var s=[...new Set(t.values())].map(o=>{var{panelComponent:u}=o;return u==null?a(o.name,dp(o)):a(o.name,u)});return()=>{s.forEach(o=>o())}},[a,t]),Se(i.eventHub,Fe.OPEN,l),null}var hp={name:"WidgetLoaderPlugin",type:Pt.DASHBOARD_PLUGIN,component:Ls};const cp=hp;function ln(n,e,t){return e=vp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function vp(n){var e=fp(n,"string");return typeof e=="symbol"?e:String(e)}function fp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class yr{}ln(yr,"DROPDOWN_FILTER","ControlType.DROPDOWN_FILTER");ln(yr,"INPUT_FILTER","ControlType.INPUT_FILTER");ln(yr,"MARKDOWN","ControlType.MARKDOWN");ln(yr,"FILTER_SET_MANAGER","ControlType.FILTER_SET_MANAGER");const pp=yr;var mp=B.shape({state:B.shape({panelState:B.shape({})})}),gp=B.shape({panelId:B.string.isRequired,columnName:B.string.isRequired,columnType:B.string.isRequired}),al=B.shape({panelId:B.string.isRequired,columnName:B.string.isRequired}),As=B.shape({start:al,end:al,id:B.string,isReversed:B.bool}),bp=B.arrayOf(As),Cp=B.shape({name:B.string.isRequired,operateAs:B.string.isRequired,groups:B.arrayOf(B.string).isRequired,permissions:B.shape({canUsePanels:B.bool.isRequired,canCopy:B.bool.isRequired,canDownloadCsv:B.bool.isRequired,canLogout:B.bool.isRequired}).isRequired}),Sp=Object.freeze({LinkPoint:gp,Link:As,Links:bp,Panel:mp,User:Cp});const yp=Sp;var Ep=(n,e)=>n[e]===null?null:B.bool,wp=(n,e)=>n[e]===null?null:B.string,Tp=Object.freeze({nullableBoolean:Ep,nullableString:wp});const Pp=Tp,zp=Object.freeze(Object.defineProperty({__proto__:null,ChartBuilderPlugin:gs,ChartBuilderPluginConfig:vf,ChartEvent:Ln,ChartPanel:li,ChartPanelPlugin:of,ChartPluginConfig:hf,ChartWidgetPlugin:ms,CommandHistoryPanel:gl,CommonPropTypes:Pp,ConsoleEvent:$r,ConsolePanel:Ar,ConsolePlugin:bf,ControlType:pp,DropdownFilterPanel:$t,FileExplorerPanel:bl,FilterPlugin:bs,FilterPluginConfig:Sf,FilterSetManager:us,FilterSetManagerPanel:kr,GridPanelPlugin:Of,GridPluginConfig:If,GridWidgetPlugin:Ts,InputFilterEvent:ut,InputFilterPanel:Ht,IrisGridEvent:nt,IrisGridPanel:oi,LinkerPlugin:Ms,LinkerPluginConfig:Zf,LinkerUtils:Nt,LogPanel:Cl,MarkdownEvent:Xl,MarkdownPanel:or,MarkdownPlugin:Is,MarkdownPluginConfig:Jf,MockFileStorage:tf,NotebookEvent:oe,NotebookPanel:yt,PandasEvent:Nc,PandasPanel:ps,PandasPanelPlugin:np,PandasPluginConfig:ap,PandasWidgetPlugin:Rs,Panel:qt,TabEvent:jo,ToolType:Qe,UIPropTypes:yp,WidgetLoaderPlugin:Ls,WidgetLoaderPluginConfig:cp,WidgetPanel:Sr,WidgetPanelTooltip:Cr,addDashboardLinks:Jl,deleteDashboardLinks:es,getColumnSelectionValidatorForDashboard:mr,getColumnsForDashboard:Vn,getDashboardConnection:Vo,getDashboardConsoleSettings:$o,getDashboardSessionWrapper:pl,getFilterSetsForDashboard:vl,getInputFiltersForDashboard:gr,getIsolatedLinkerPanelIdForDashboard:Kr,getLinksForDashboard:Tt,getTableMapForDashboard:qr,isChartPanelDehydratedProps:ls,isChartPanelFigureMetadata:Qn,isChartPanelTableMetadata:Vt,isGLChartPanelState:as,isIrisGridPanelMetadata:hs,isLegacyIrisGridPanelMetadata:ds,setDashboardColumnSelectionValidator:ts,setDashboardConnection:Rc,setDashboardConsoleSettings:rs,setDashboardFilterSets:ns,setDashboardIsolatedLinkerPanelId:Zn,setDashboardLinks:Jr,setDashboardSessionWrapper:Lc,useDashboardColumnFilters:Es,useGridLinker:ws,useLoadTablePlugin:Cs},Symbol.toStringTag,{value:"Module"}));export{br as $,Hp as A,qu as B,fu as C,se as D,Sd as E,wn as F,_d as G,Re as H,dd as I,ur as J,Hi as K,xl as L,Ui as M,Ud as N,Kd as O,kl as P,Pn as Q,er as R,Fl as S,S as T,qn as U,fc as V,Kn as W,$l as X,zi as Y,Y as Z,fn as _,Gn as a,Rn as a0,W as a1,zl as a2,nc as a3,qh as a4,Wl as a5,dc as a6,Q as a7,mn as a8,Mt as a9,Wp as aa,Ji as ab,Bp as ac,rt as ad,oa as ae,zp as af,Wu as ag,Hn as ah,Gp as ai,Gl as aj,ih as ak,Ki as al,Nn as am,k as an,H as ao,Up as ap,Fn as aq,od as ar,sd as as,ud as at,kp as au,vr as av,Ap as aw,O as ax,Uh as ay,Xu as b,Zu as c,We as d,Tn as e,Qu as f,Np as g,Il as h,gd as i,Rl as j,Rp as k,xp as l,Mp as m,Ip as n,Lp as o,rd as p,_p as q,jp as r,Ll as s,Al as t,vu as u,hd as v,cd as w,bd as x,$p as y,Vp as z};
13
- //# sourceMappingURL=index-8c1f783f.js.map
12
+ `).concat(Gt.makeCirclePath(l,s,Za)),D="link-select-clip-".concat(o),N=Math.atan2(s-E,l-w),M=N-Ya+Math.PI,R=N+Ya+Math.PI,_=l+Math.cos(N)*Xa,V=s+Math.sin(N)*Xa,K=_+Math.cos(M)*Lr,q=V+Math.sin(M)*Lr,ie=_+Math.cos(R)*Lr,ee=V+Math.sin(R)*Lr,ge="".concat(_,",").concat(V," ").concat(K,",").concat(q," ").concat(ie,",").concat(ee),be=.25*i+.5*w+.25*l,$e=.25*a+.5*E+.25*s,L=w-i+(l-w),x=E-a+(s-E),j=x/L,G=20,z=G/Math.sqrt(1+j**2),Ce=z*j,ye=z*-1,ke=Ce*-1;Number.isFinite(j)?j>0?(z*=-1,Ce*=-1,ye*=-1,ke*=-1,ye-=50-10*(Math.abs(v)%bt),ke+=10*(Math.abs(v)%bt),z-=50-10*(Math.abs(v)%bt),Ce+=10*(Math.abs(v)%bt)):j<0?(ye+=10*(Math.abs(v)%bt),ke+=10*(Math.abs(v)%bt),z+=10*(Math.abs(v)%bt),Ce+=10*(Math.abs(v)%bt)):(ye=15,ke=10,z=-25,Ce=10):(ye=10,ke=5,z=10,Ce=-35);var ze="";t!==void 0&&(t==="startsWith"?ze="a*":t==="endsWith"?ze="*z":ze=y.getFilterOperatorString(t));var qe=d!=="chartLink"&&d!=="filterSource";return f.jsxs(f.Fragment,{children:[f.jsxs("svg",{className:Ie(e,{hovering:h}),children:[f.jsx("clipPath",{id:D,children:f.jsx("path",{d:I,clipRule:"evenodd"})}),f.jsx("path",{className:"link-select",d:P,onClick:this.handleClick,onMouseEnter:this.handleMouseEnter,onMouseLeave:this.handleMouseLeave,clipPath:"url(#".concat(D,")"),"data-testid":"link-select"}),f.jsx("path",{className:"link-background",d:P}),f.jsx("path",{className:"link-foreground",d:P}),f.jsx("circle",{className:"link-dot",cx:i,cy:a,r:"5"}),f.jsx("polygon",{className:"link-triangle",points:ge})]}),u!=null&&r&&f.jsxs(f.Fragment,{children:[qe&&f.jsx(Z,{kind:"primary",className:"btn-fab btn-operator",style:{top:$e+(j>=0?Ce:ke),left:be+(j>=0?z:ye)},onClick:()=>{},icon:f.jsxs("div",{className:"fa-md fa-layers",children:[f.jsx("b",{children:ze}),f.jsx(Me,{icon:su,transform:"right-8 down-9 shrink-5"})]}),tooltip:"Change comparison operator",children:f.jsx(fl,{actions:this.getDropdownActions,popperOptions:{placement:"bottom-start"}})}),f.jsx(Z,{kind:"primary",className:"btn-fab btn-delete",style:{top:$e+(j<0?Ce:ke),left:be+(j<0?z:ye)},onClick:this.handleDelete,icon:Yr,tooltip:"Delete"})]})]})}}Os(Gt,"defaultProps",{className:"",isSelected:!1,onClick(){},onDelete(){}});const $f=Gt;function Qa(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Ja(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Qa(Object(t),!0).forEach(function(r){pi(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Qa(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function pi(n,e,t){return e=Hf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Hf(n){var e=Gf(n,"string");return typeof e=="symbol"?e:String(e)}function Gf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Cn=J.module("LinkerOverlayContent");class Fs extends T.Component{constructor(e){super(e),pi(this,"dialogRef",void 0),this.handleBlur=this.handleBlur.bind(this),this.handleResize=this.handleResize.bind(this),this.handleMouseMove=this.handleMouseMove.bind(this),this.handleMouseDown=this.handleMouseDown.bind(this),this.handleMouseUp=this.handleMouseUp.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleKeyUp=this.handleKeyUp.bind(this),this.handleEscapePressed=this.handleEscapePressed.bind(this),this.handleOperatorChanged=this.handleOperatorChanged.bind(this),this.dialogRef=Pe.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){Cn.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(!Ps(u))throw new Error("Panel does not have getCoordinateForColumn method: ".concat(l));try{var d=u.getCoordinateForColumn(a);if(d!=null)return d}catch{Cn.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 $.getTabPoint(h)}handleOperatorChanged(e,t){var{links:r,onLinksUpdated:i}=this.props,a=r.map(l=>l.id===e?Ja(Ja({},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 p,m,{id:b,type:S,isReversed:C,start:w,end:E,operator:P}=g,I=w.columnType,[D,N]=this.getPointFromLinkPoint(w),M=(p=u==null?void 0:u.x)!==null&&p!==void 0?p:D,R=(m=u==null?void 0:u.y)!==null&&m!==void 0?m:N;if(E!=null&&([M,R]=this.getPointFromLinkPoint(E)),C!=null&&C){var[_,V]=[D,N];[D,N]=[M,R],[M,R]=[_,V]}var K=Ie("linker-link",{disabled:e},{"link-filter-source":S==="filterSource"},{"link-invalid":S==="invalid"},{interactive:g.end==null},{"link-is-selected":r.has(b)},{"danger-delete":c==="delete"});return{x1:D,y1:N,x2:M,y2:R,id:b,className:K,operator:P,startColumnType:I,type:S}}catch(q){return Cn.warn("Unable to get point for link",g,q),null}}).filter(g=>g!=null);return f.jsxs("div",{className:Ie("linker-overlay",{"danger-delete":c==="delete"}),children:[v.map(g=>{var{x1:p,y1:m,x2:b,y2:S,id:C,className:w,operator:E,startColumnType:P,type:I}=g;return f.jsx($f,{className:w,id:C,x1:p,y1:m,x2:b,y2:S,onClick:a,onDelete:l,isSelected:r.has(C),operator:E??O.eq,startColumnType:P,type:I,onOperatorChanged:this.handleOperatorChanged},C)}),f.jsxs("div",{className:Ie("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:[f.jsx(Z,{draggable:!0,kind:"inline",className:"btn-drag-handle",icon:ou,onClick:()=>{},onMouseDown:this.handleMouseDown,children:!h&&f.jsx(yn,{children:"Drag to reposition"})}),f.jsx("div",{className:"toast-body",children:i}),f.jsxs("div",{className:"toast-footer",children:[f.jsx(Z,{kind:"secondary",onClick:s,children:"Clear All"}),f.jsx(Z,{kind:"primary",onClick:o,children:"Done"})]})]}),f.jsx(Ke,{actions:[{action:this.handleEscapePressed,shortcut:Sn.LINKER_CLOSE,isGlobal:!0}]})]})}}pi(Fs,"defaultProps",{disabled:"false"});const Uf=Fs;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){_r(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 _r(n,e,t){return e=Bf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Bf(n){var e=Wf(n,"string");return typeof e=="symbol"?e:String(e)}function Wf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var we=J.module("Linker"),zf=(n,e)=>({activeTool:jn(n),dh:cl(n),isolatedLinkerPanelId:Kr(n,e.localDashboardId),links:Tt(n,e.localDashboardId),timeZone:ml(n)}),qf=Et(zf,{setActiveTool:dl,setDashboardLinks:Jr,addDashboardLinks:Jl,deleteDashboardLinks:es,setDashboardIsolatedLinkerPanelId:Zn,setDashboardColumnSelectionValidator:ts});class Kf extends T.Component{constructor(e){super(e),_r(this,"linkTargetPropMap",new Map),_r(this,"removerFns",[]),_r(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===Qe.DEFAULT&&this.reset())}componentDidCatch(e,t){we.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(nt.COLUMN_SELECTED,this.handleGridColumnSelect),t.on(nt.DATA_SELECTED,this.handleUpdateValues),t.on(nt.STATE_CHANGED,this.handleStateChange),t.on(Ln.COLUMN_SELECTED,this.handleChartColumnSelect),t.on(Ne.CLONED,this.handlePanelCloned),this.removerFns=[kc(t,this.handleColumnsChanged),Vc(t,this.handleLinkPointSelected),$c(t,this.handleUpdateValues),Hc(t,this.handleTargetRegistered)],t.on(Ne.CLOSE,this.handlePanelClosed),t.on(Ne.CLOSED,this.handlePanelClosed),t.on(Ne.DRAGGING,this.handlePanelDragging),t.on(Ne.DROPPED,this.handlePanelDropped)}stopListening(e){e.off("stateChanged",this.handleLayoutStateChanged);var{eventHub:t}=e;t.off(nt.COLUMN_SELECTED,this.handleGridColumnSelect),t.off(nt.DATA_SELECTED,this.handleUpdateValues),t.off(nt.STATE_CHANGED,this.handleStateChange),t.off(Ln.COLUMN_SELECTED,this.handleChartColumnSelect),t.off(Ne.CLONED,this.handlePanelCloned),t.off(Ne.CLOSE,this.handlePanelClosed),t.off(Ne.CLOSED,this.handlePanelClosed),t.off(Ne.DRAGGING,this.handlePanelDragging),t.off(Ne.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(Qe.DEFAULT)}this.setState({linkInProgress:void 0})}handleDone(){var{setActiveTool:e}=this.props;e(Qe.DEFAULT)}handleChartColumnSelect(e,t){var r=$.getIdFromPanel(e);F(r),this.columnSelected(r,t,"chartLink",!0)}handleColumnsChanged(e,t){we.debug("handleColumnsChanged",e,t);var{links:r}=this.props;if(e==null){we.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&&Ft.findColumn(t,l)==null||s!=null&&s.panelId===e&&Ft.findColumn(t,s)==null});this.deleteLinks(i)}handleGridColumnSelect(e,t){if(!Wa(t)){we.debug2("Column is not filterable");return}var r=$.getIdFromPanel(e);F(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(Qe.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:Be(),start:{panelId:e,columnName:o,columnType:u},type:"invalid",isReversed:i};i&&(d.endType=r),we.debug("starting link",d),this.setState({linkInProgress:d})}else{var h,{links:c}=this.props,{start:v,id:g,isReversed:p=!1}=s,m={panelId:e,columnName:o,columnType:u},b=!(p&&i)&&Ft.isLinkValid(p?m:v,p?v:m,a??l);if(!b){we.debug("Ignore invalid link connection",s,m);return}var S=(h=s.endType)!==null&&h!==void 0?h:r;switch(S){case"invalid":we.debug("Ignore invalid link connection",s,m);return;case"filterSource":{var C=p!==void 0&&p?v.panelId:m.panelId,w=c.filter(N=>{var{end:M}=N;return(M==null?void 0:M.panelId)===C});this.deleteLinks(w);break}case"chartLink":{var E=p===!0?v:m,P=p===!0?m:v;we.debug("creating chartlink",{existingLinkEnd:E,start:v,end:m});var I=c.filter(N=>{var{end:M,start:R}=N;return(R==null?void 0:R.panelId)===P.panelId&&(M==null?void 0:M.panelId)===E.panelId&&(M==null?void 0:M.columnName)===E.columnName&&(M==null?void 0:M.columnType)===E.columnType});this.deleteLinks(I);break}}var D={start:p?m:v,end:p?v:m,id:g,type:S,operator:O.eq};we.info("creating link",D),this.setState({linkInProgress:void 0,selectedIds:new Set([g])},()=>{this.addLinks([D])})}}}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?Ba(d)?d.unsetFilterValue(l,s):we.debug("endPanel.unsetFilterValue not implemented",d):we.debug("endPanel no longer exists or target is not a panel. Ignoring unsetFilterValue",a)}}setPanelFilterMap(e,t){var r;we.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?Ba(s)?s.setFilterMap(t):we.debug("panel.setFilterMap not implemented",e,s):we.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]):we.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:p}=u,m=l.get(v),b=m??new Map,S=(h=(c=b.get(g))===null||c===void 0?void 0:c.filterList)!==null&&h!==void 0?h:[],{visibleIndex:C,isExpandable:w,isGrouped:E}=t[o.columnName],{value:P}=t[o.columnName],I="".concat(P);if(P===null&&w&&E&&(P=void 0),p!=null&&y.isDateType(p)){var D=new Vr(r,{timeZone:a,showTimeZone:!1,showTSeparator:!0,defaultDateTimeFormatString:se.FULL_DATE_FORMAT});I=D.format(P)}S.push({operator:d,text:I,value:P,startColumnIndex:C}),b.set(g,{columnType:p,filterList:S}),l.set(v,b)}}l.forEach((N,M)=>{this.setPanelFilterMap(M,N)})}handlePanelCloned(e,t){var{links:r}=this.props,i=$.getIdFromPanel(e),a=t.id;if(i!=null){var l=Ft.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){we.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===Qe.LINKER}updateSelectionValidators(){var{activeTool:e,setDashboardColumnSelectionValidator:t,localDashboardId:r}=this.props;switch(e){case Qe.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:tl(tl({},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":$.getComponentNameFromPanel(e)!=="IrisGridPanel";if(t==null)return(a==null?void 0:a.start)!=null&&this.updateLinkInProgressType("invalid"),!1;if(!Wa(t))return we.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:$.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?Ft.isLinkValid(h,u,l):Ft.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:f.jsx(wn,{in:s,mountOnEnter:!0,unmountOnExit:!0,onExited:this.handleExited,children:f.jsx(Uf,{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 Xf=qf(Kf);const Yf=Xf;function Ms(n){Yt(n);var{id:e,layout:t,panelManager:r}=n;return f.jsx(Yf,{layout:t,localDashboardId:e,panelManager:r})}var Zf={name:"LinkerPlugin",type:Pt.DASHBOARD_PLUGIN,component:Ms};const Qf=Zf;function Is(n){Yt(n);var{id:e,layout:t,panelManager:r,registerComponent:i}=n,a=T.useCallback(function(){var{title:l="",metadata:s={},id:o=Be(),focusElement:u=$.DEFAULT_FOCUS_SELECTOR,createNewStack:d=!1,dragEvent:h=null}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},c=r.getOpenedPanelConfigsOfType(or.COMPONENT),v=c.map(S=>{var C;return(C=S.title)!==null&&C!==void 0?C:""}),g=l!=null&&l!==""?l:xr.getNewMarkdownTitle(v),p=null,m={type:"react-component",component:or.COMPONENT,props:{id:o,metadata:s,panelState:{content:p},localDashboardId:e},title:g,id:o},{root:b}=t;$.openComponent({root:b,config:m,focusElement:u,createNewStack:d,dragEvent:h})},[e,t,r]);return T.useEffect(function(){var s=[i(or.COMPONENT,or)];return()=>{s.forEach(o=>o())}},[i]),Se(t.eventHub,Xl.OPEN,a),null}var Jf={name:"MarkdownPlugin",type:Pt.DASHBOARD_PLUGIN,component:Is};const ep=Jf;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){tp(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 tp(n,e,t){return e=rp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function rp(n){var e=np(n,"string");return typeof e=="symbol"?e:String(e)}function np(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var mi=T.forwardRef((n,e)=>{var{localDashboardId:t,fetch:r,metadata:i}=n,a=Ss(r,t,i);return f.jsx(ps,nl(nl({ref:e},n),a))});mi.displayName="PandasPanelPlugin";const ip=mi;function Rs(n){var{fetch:e}=n,t=ys(e);if(t.status==="loading")return f.jsx(ct,{isLoading:!0});if(t.status==="error")return f.jsx(ct,{errorMessage:wl(t.error),isLoading:!1});var{model:r,reload:i}=t;return f.jsx(Kn,{model:r,children:f.jsx(fs,{onClick:i})})}var ap={name:"PandasPanel",title:"Pandas",type:Pt.WIDGET_PLUGIN,component:Rs,panelComponent:mi,supportedTypes:"pandas.DataFrame",icon:uu};const lp=ap;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 ir(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){sp(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 sp(n,e,t){return e=op(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function op(n){var e=up(n,"string");return typeof e=="symbol"?e:String(e)}function up(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var dp=J.module("WidgetLoaderPlugin");function hp(n){var e;function t(r,i){var a,l=n.component,{metadata:s}=r,o=_o(l);return f.jsx(Sr,ir(ir({widgetName:(a=s==null?void 0:s.name)!==null&&a!==void 0?a:void 0,widgetType:n.title},r),{},{children:o?f.jsx(l,ir(ir({},r),{},{ref:i})):f.jsx(l,ir({},r))}))}return t.displayName="WidgetLoaderPlugin(".concat((e=n.component.displayName)!==null&&e!==void 0?e:n.name,")"),T.forwardRef(t)}function Ls(n){var e=Sl(),t=T.useMemo(()=>{var s=new Map;return e.forEach(o=>{xo(o)&&[o.supportedTypes].flat().forEach(u=>{if(u!=null&&u!==""){if(s.has(u)){var d;dp.warn("Multiple WidgetPlugins handling type ".concat(u,". Replacing ").concat((d=s.get(u))===null||d===void 0?void 0:d.name," with ").concat(o.name," to handle ").concat(u))}s.set(u,o)}})}),s},[e]);Yt(n);var{id:r,layout:i,registerComponent:a}=n,l=T.useCallback(s=>{var o,{dragEvent:u,panelId:d=Be(),fetch:h,widget:c}=s,{type:v}=c,g=v!=null?t.get(v):null;if(g!=null){var p=(o=c.name)!==null&&o!==void 0?o:v,m={localDashboardId:r,metadata:c,fetch:h},b={type:"react-component",component:g.name,props:m,title:p,id:d},{root:S}=i;$.openComponent({root:S,config:b,dragEvent:u})}},[r,i,t]);return T.useEffect(()=>{var s=[...new Set(t.values())].map(o=>{var{panelComponent:u}=o;return u==null?a(o.name,hp(o)):a(o.name,u)});return()=>{s.forEach(o=>o())}},[a,t]),Se(i.eventHub,Ne.OPEN,l),null}var cp={name:"WidgetLoaderPlugin",type:Pt.DASHBOARD_PLUGIN,component:Ls};const vp=cp;function ln(n,e,t){return e=fp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function fp(n){var e=pp(n,"string");return typeof e=="symbol"?e:String(e)}function pp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class yr{}ln(yr,"DROPDOWN_FILTER","ControlType.DROPDOWN_FILTER");ln(yr,"INPUT_FILTER","ControlType.INPUT_FILTER");ln(yr,"MARKDOWN","ControlType.MARKDOWN");ln(yr,"FILTER_SET_MANAGER","ControlType.FILTER_SET_MANAGER");const mp=yr;var gp=B.shape({state:B.shape({panelState:B.shape({})})}),bp=B.shape({panelId:B.string.isRequired,columnName:B.string.isRequired,columnType:B.string.isRequired}),al=B.shape({panelId:B.string.isRequired,columnName:B.string.isRequired}),As=B.shape({start:al,end:al,id:B.string,isReversed:B.bool}),Cp=B.arrayOf(As),Sp=B.shape({name:B.string.isRequired,operateAs:B.string.isRequired,groups:B.arrayOf(B.string).isRequired,permissions:B.shape({canUsePanels:B.bool.isRequired,canCopy:B.bool.isRequired,canDownloadCsv:B.bool.isRequired,canLogout:B.bool.isRequired}).isRequired}),yp=Object.freeze({LinkPoint:bp,Link:As,Links:Cp,Panel:gp,User:Sp});const Ep=yp;var wp=(n,e)=>n[e]===null?null:B.bool,Tp=(n,e)=>n[e]===null?null:B.string,Pp=Object.freeze({nullableBoolean:wp,nullableString:Tp});const Op=Pp,qp=Object.freeze(Object.defineProperty({__proto__:null,ChartBuilderPlugin:gs,ChartBuilderPluginConfig:ff,ChartEvent:Ln,ChartPanel:li,ChartPanelPlugin:uf,ChartPluginConfig:cf,ChartWidgetPlugin:ms,CommandHistoryPanel:gl,CommonPropTypes:Op,ConsoleEvent:$r,ConsolePanel:Ar,ConsolePlugin:Cf,ControlType:mp,DropdownFilterPanel:$t,FileExplorerPanel:bl,FilterPlugin:bs,FilterPluginConfig:yf,FilterSetManager:us,FilterSetManagerPanel:kr,GridPanelPlugin:Df,GridPluginConfig:Rf,GridWidgetPlugin:Ts,InputFilterEvent:ut,InputFilterPanel:Ht,IrisGridEvent:nt,IrisGridPanel:oi,LinkerPlugin:Ms,LinkerPluginConfig:Qf,LinkerUtils:Ft,LogPanel:Cl,MarkdownEvent:Xl,MarkdownPanel:or,MarkdownPlugin:Is,MarkdownPluginConfig:ep,MockFileStorage:rf,NotebookEvent:oe,NotebookPanel:yt,PandasEvent:Mc,PandasPanel:ps,PandasPanelPlugin:ip,PandasPluginConfig:lp,PandasWidgetPlugin:Rs,Panel:qt,TabEvent:jo,ToolType:Qe,UIPropTypes:Ep,WidgetLoaderPlugin:Ls,WidgetLoaderPluginConfig:vp,WidgetPanel:Sr,WidgetPanelTooltip:Cr,addDashboardLinks:Jl,deleteDashboardLinks:es,getColumnSelectionValidatorForDashboard:mr,getColumnsForDashboard:Vn,getDashboardConnection:Vo,getDashboardConsoleSettings:$o,getDashboardSessionWrapper:pl,getFilterSetsForDashboard:vl,getInputFiltersForDashboard:gr,getIsolatedLinkerPanelIdForDashboard:Kr,getLinksForDashboard:Tt,getTableMapForDashboard:qr,isChartPanelDehydratedProps:ls,isChartPanelFigureMetadata:Qn,isChartPanelTableMetadata:Vt,isGLChartPanelState:as,isIrisGridPanelMetadata:hs,isLegacyIrisGridPanelMetadata:ds,setDashboardColumnSelectionValidator:ts,setDashboardConnection:Lc,setDashboardConsoleSettings:rs,setDashboardFilterSets:ns,setDashboardIsolatedLinkerPanelId:Zn,setDashboardLinks:Jr,setDashboardSessionWrapper:Ac,useDashboardColumnFilters:Es,useGridLinker:ws,useLoadTablePlugin:Cs},Symbol.toStringTag,{value:"Module"}));export{fn as $,Gp as A,Ku as B,pu as C,se as D,yd as E,wn as F,jd as G,Re as H,hd as I,ur as J,Hi as K,xl as L,Ui as M,Bd as N,Xd as O,kl as P,Pn as Q,er as R,Nl as S,y as T,qn as U,Q as V,pc as W,Kn as X,$l as Y,zi as Z,Y as _,Gn as a,br as a0,Rn as a1,W as a2,zl as a3,ic as a4,Kh as a5,Wl as a6,hc as a7,mn as a8,Mt as a9,zp as aa,Ji as ab,Wp as ac,rt as ad,oa as ae,qp as af,zu as ag,Hn as ah,Up as ai,Gl as aj,ah as ak,Ki as al,Fn as am,k as an,H as ao,Bp as ap,Nn as aq,ud as ar,od as as,dd as at,xp as au,vr as av,kp as aw,O as ax,Bh as ay,Yu as b,Qu as c,We as d,Tn as e,Ju as f,Mp as g,Il as h,bd as i,Rl as j,Lp as k,_p as l,Ip as m,Rp as n,Ap as o,nd as p,jp as q,Vp as r,Ll as s,Al as t,fu as u,cd as v,vd as w,Cd as x,Hp as y,$p as z};
13
+ //# sourceMappingURL=index-5b5c6beb.js.map