@deephaven/embed-widget 1.3.1-beta.2 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. package/build/assets/{App-QRpOahaA.js → App-luH5lupu.js} +2 -2
  2. package/build/assets/{App-QRpOahaA.js.map → App-luH5lupu.js.map} +1 -1
  3. package/build/assets/{Chart-B8NlE5Vd.js → Chart-Bgbl1SPX.js} +2 -2
  4. package/build/assets/{Chart-B8NlE5Vd.js.map → Chart-Bgbl1SPX.js.map} +1 -1
  5. package/build/assets/{IrisGrid-CnZvCvhd.js → IrisGrid-C-NLcI7a.js} +2 -2
  6. package/build/assets/{IrisGrid-CnZvCvhd.js.map → IrisGrid-C-NLcI7a.js.map} +1 -1
  7. package/build/assets/{IrisGridThemeProvider-x-op2wee.js → IrisGridThemeProvider-b97frP14.js} +4 -4
  8. package/build/assets/IrisGridThemeProvider-b97frP14.js.map +1 -0
  9. package/build/assets/{LocalWorkspaceStorage-BuZps5jd.js → LocalWorkspaceStorage-CPNlzHLY.js} +2 -2
  10. package/build/assets/{LocalWorkspaceStorage-BuZps5jd.js.map → LocalWorkspaceStorage-CPNlzHLY.js.map} +1 -1
  11. package/build/assets/{LogPanel-kWSvSVse.js → LogPanel-BJrG586D.js} +2 -2
  12. package/build/assets/{LogPanel-kWSvSVse.js.map → LogPanel-BJrG586D.js.map} +1 -1
  13. package/build/assets/{MarkdownEditor-BF5VmD2e.js → MarkdownEditor-_r2cZw3y.js} +2 -2
  14. package/build/assets/{MarkdownEditor-BF5VmD2e.js.map → MarkdownEditor-_r2cZw3y.js.map} +1 -1
  15. package/build/assets/{MarkdownNotebook-CbewMN5_.js → MarkdownNotebook-GLdDEfXz.js} +2 -2
  16. package/build/assets/{MarkdownNotebook-CbewMN5_.js.map → MarkdownNotebook-GLdDEfXz.js.map} +1 -1
  17. package/build/assets/index-Czax2Lgv.js +14 -0
  18. package/build/assets/index-Czax2Lgv.js.map +1 -0
  19. package/build/assets/index-DGrMdOnw.js +84 -0
  20. package/build/assets/index-DGrMdOnw.js.map +1 -0
  21. package/build/assets/{index-VNhQMF1y.js → index-DtNYTbGu.js} +3 -3
  22. package/build/assets/{index-VNhQMF1y.js.map → index-DtNYTbGu.js.map} +1 -1
  23. package/build/index.html +2 -2
  24. package/package.json +17 -17
  25. package/build/assets/IrisGridThemeProvider-x-op2wee.js.map +0 -1
  26. package/build/assets/index-Dd4WQAxC.js +0 -84
  27. package/build/assets/index-Dd4WQAxC.js.map +0 -1
  28. package/build/assets/index-gCMAlk8m.js +0 -14
  29. package/build/assets/index-gCMAlk8m.js.map +0 -1
@@ -0,0 +1,14 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./Chart-Bgbl1SPX.js","./vendor-Bp3qklGK.js","./helpers-BosuxZz1.js","./vendor-CGsCwcB0.css","./index-DtNYTbGu.js","./index-BC6ovEE9.css","./Plotly-AbR82OTZ.js","./plotly-DPMKRrOg.js","./LogPanel-BJrG586D.js","./LogPanel-D38KszRh.css","./DownsamplingError-CG8EVVqo.js","./useMergeRef-Byf05lvL.js","./Chart-CTDcF-lR.css","./IrisGrid-C-NLcI7a.js","./IrisGridThemeProvider-b97frP14.js","./IrisGridThemeProvider-DGMgjGoi.css","./IrisGrid-dIbtpX9f.css","./MarkdownEditor-_r2cZw3y.js","./MarkdownNotebook-GLdDEfXz.js","./MarkdownNotebook-CmpkKxys.css"])))=>i.map(i=>d[i]);
2
+ import{r as E,D as p,H as Me,G as _s,J as Te,bo as Vs,I as Ne,bp as _r,bq as $s,br as Hs,bs as Gs,bt as Bs,ag as Ge,C as Ue,_ as zn,bu as nl,ad as vt,ac as Be,bv as Us,E as Ws,bw as U,bm as mi,bb as gi,bx as zs,by as qs,bd as Ks,bz as _n,ae as Q,bA as wt,aR as Xs,aQ as bi,R as Ys,K as rl,L as Zs}from"./vendor-Bp3qklGK.js";import{c1 as il,B as Z,c2 as Qs,c3 as Js,c4 as eo,c5 as to,c6 as no,c7 as ro,c8 as io,c9 as ao,ca as lo,cb as so,cc as Vr,af as Gt,y as ke,cd as Ze,ce as cr,ab as Vn,ac as oo,ad as uo,bV as ho,aV as co,aR as vo,E as ee,cf as jt,cg as ie,bu as dt,r as Ci,bQ as ut,bw as wr,aX as po,a0 as al,ch as It,G as He,bh as Tt,ci as Pt,cj as Xt,ck as ht,cl as ll,cm as $r,aF as H,cn as qn,b5 as sl,co as Hr,cp as Kn,cq as gn,cr as bn,bR as Xn,U as cn,cs as Gr,ct as ol,cu as fo,aL as mo,cv as ul,Q as go,aT as Ie,b3 as bo,cw as Co,bS as _e,cx as se,cy as $n,J as Tr,T as Pr,D as dl,cz as yo,L as yi,cA as So,cB as hl,cC as cl,cD as Si,bT as Eo,cE as vl,u as Yn,ak as Ot,bs as Ee,bj as Hn,bZ as An,cF as wo,aP as To,b$ as pl,c0 as fl,b_ as ml,ah as gl,av as Po,at as Oo,bq as bl,br as Cl,bt as yl,ay as Sl,ai as Do,aG as Fo,$ as No,cG as Mo,cH as Ro}from"./LogPanel-BJrG586D.js";import{L as J,ap as Io,aq as El,T as ko,ar as Lo,as as Ao,ac as xo,ao as jo,u as N,at as _o,a as pt,au as Lt,k as Vo,av as $o,aw as Br,ax as wl,ay as Ho,az as Tl,v as Zn,aA as Pl,aB as Ei,aC as wi,aD as Go,aE as Bo,d as Uo,G as Wo,e as zo,aF as qo,aG as Ko,aH as Xo,aI as Yo,aJ as Zo,h as vr,aK as Qo,aL as Jo,aM as eu,aN as tu,aO as nu}from"./index-DtNYTbGu.js";function Ur(r){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,t=ru(r,e);t.forEach(n=>{r[n]=r[n].bind(r)})}function ru(r,e){for(var t=new Set,n=r,i=0;n!=null&&n!==Object.prototype&&(i<=1||e);){for(var a of Object.getOwnPropertyNames(n)){var l;a!=="constructor"&&typeof((l=Object.getOwnPropertyDescriptor(n,a))===null||l===void 0?void 0:l.value)=="function"&&t.add(a)}n=Object.getPrototypeOf(n),i+=1}return[...t.keys()]}var iu=3500,au=J.module("useCopyToClipboard");function lu(){var[r,e]=E.useState(!1),t=E.useRef(null),n=E.useCallback(i=>{il(i).then(()=>{e(!0)}).catch(a=>au.error("Unable to copy ".concat(i),`
3
+ `,a))},[]);return E.useEffect(()=>(t.current&&clearTimeout(t.current),r&&(t.current=setTimeout(()=>{e(!1)},iu)),()=>{t.current&&clearTimeout(t.current)}),[r]),[r,n]}function Wr(r){var{className:e,isFlipped:t,children:n,"data-testid":i}=r,a=u=>{if(n.length!==2)throw new Error("CardFlip requires 2 children to function");return n[u]},l=E.useRef(null),s=E.useCallback(u=>{u.target===u.currentTarget&&document.body.classList.add("card-flip--is-flipping")},[]),o=E.useCallback(u=>{u.target===u.currentTarget&&document.body.classList.remove("card-flip--is-flipping")},[]);return E.useEffect(function(){if(!l.current)throw Error("ref undefined");l.current.addEventListener("transitionstart",s);var d=l.current;return function(){if(d!=null)return d.removeEventListener("transitionstart",s)}},[s]),p.jsxs("div",{className:Me(e,{"card-flip--show-front":t,"card-flip--show-back":!t}),"data-testid":i,children:[p.jsx("div",{className:"card-flip--back",children:a(0)}),p.jsx("div",{ref:l,className:"card-flip--front",onTransitionEnd:o,children:a(1)})]})}function su(r){var{copy:e,kind:t="ghost",tooltip:n="Copy",className:i,style:a,"data-testid":l,children:s}=r,[o,u]=lu();return p.jsx(Z,{kind:t,className:i,style:a,"data-testid":l,icon:o?Io:El,tooltip:o?"Copied":n,onClick:()=>{u(typeof e=="function"?e():e)},children:s})}var ou=["className","timeout"];function Ti(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function uu(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ti(Object(t),!0).forEach(function(n){du(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Ti(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function du(r,e,t){return(e=hu(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function hu(r){var e=cu(r,"string");return typeof e=="symbol"?e:e+""}function cu(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}function vu(r,e){if(r==null)return{};var t,n,i=pu(r,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(r);for(n=0;n<a.length;n++)t=a[n],e.indexOf(t)===-1&&{}.propertyIsEnumerable.call(r,t)&&(i[t]=r[t])}return i}function pu(r,e){if(r==null)return{};var t={};for(var n in r)if({}.hasOwnProperty.call(r,n)){if(e.indexOf(n)!==-1)continue;t[n]=r[n]}return t}function Or(r){var{className:e,timeout:t=ko.transitionMs}=r,n=vu(r,ou);return p.jsx(_s,uu({timeout:t,classNames:Me("fade",e)},n))}var Qn=Te.forwardRef((r,e)=>{var{children:t,className:n,disabled:i,id:a,isLinked:l,isLinkedSource:s,isInvalid:o,onClick:u,onMouseEnter:d,onMouseLeave:h,style:c,"data-testid":v}=r,{UNSAFE_className:g}=Vs({},"button");return p.jsxs("button",{ref:e,type:"button",className:Me("btn-socketed",{"btn-socketed-linked":l!==void 0&&l||s},{"btn-socketed-linked-source":s},{"is-invalid":o},n,g),id:a,onClick:u,onMouseEnter:d,onMouseLeave:h,style:c,disabled:i,"data-testid":v,children:[t,p.jsx(Ne,{icon:Lo,className:"linked btn-socketed-icon",transform:"down-1"}),p.jsx(Ne,{icon:Ao,className:"is-invalid btn-socketed-icon"})]})});Qn.displayName="SocketedButton";Qn.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};function Pi(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(n,i)}function fu(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){Pi(a,n,i,l,s,"next",o)}function s(o){Pi(a,n,i,l,s,"throw",o)}l(void 0)})}}var mu=E.createContext(null);function gu(r){var[e,t]=E.useState(null),[n,i]=E.useState(null),a=E.useContext(mu),l=E.useContext(xo);return E.useEffect(()=>{if(a==null){if(l!=null){t(l),i(null);return}t(null),i(new Error("No API available in useDeferredApi. Was code wrapped in ApiBootstrap or DeferredApiContext.Provider?"));return}var s=!1;function o(){return u.apply(this,arguments)}function u(){return u=fu(function*(){if(r==null)s||(t(null),i(new Error("No widget provided to useDeferredApi")));else if(typeof a=="function")try{var d=yield a(r);s||(t(d),i(null))}catch(h){s||(t(null),i(h??new Error("Null error")))}else t(a)}),u.apply(this,arguments)}return o(),()=>{s=!0}},[l,a,r]),[e,n]}function Oi(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function pr(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Oi(Object(t),!0).forEach(function(n){bu(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Oi(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function bu(r,e,t){return(e=Cu(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Cu(r){var e=yu(r,"string");return typeof e=="symbol"?e:e+""}function yu(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}function Ol(r,e){return function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:e,n=arguments.length>1?arguments[1]:void 0;switch(n==null?void 0:n.type){case r:{var i=n.payload;return i==null?null:t!=null?pr(pr({},t),i):pr({},i)}default:return t}}}function Dt(r,e){return function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:e,n=arguments.length>1?arguments[1]:void 0;switch(n==null?void 0:n.type){case r:return n.payload;default:return t}}}const Su=Dt(Qs,null),Eu=Dt(Js,null),wu=Dt(eo,null),Tu=Dt(to,null),Pu=Dt(no,null),Ou=Dt(ro,null),Du=_r({commandHistoryStorage:Tu,fileStorage:Pu,workspaceStorage:Ou}),Fu=Ol(io,null),Nu=Ol(ao,null),Mu=Dt(lo,null),Ru=Dt(so,null);var Iu={activeTool:Eu,api:Su,plugins:wu,storage:Du,user:Fu,workspace:Nu,defaultWorkspaceSettings:Mu,serverConfigValues:Ru},Di=J.module("redux-logger"),ku=r=>e=>t=>{Di.debug("dispatching",t);var n=e(t);return Di.debug("next state",r.getState()),n},Lu=J.module("redux-crashReporter"),Au=r=>e=>t=>{try{return e(t)}catch(n){throw Lu.error("Error executing",t," with state ",r.getState(),":",n),n}};const xu=[ku,Au,$s];var fr;Object.entries(Iu).map(r=>{var[e,t]=r;return Vr.register(e,t)});var ju=(fr=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__)!==null&&fr!==void 0?fr:Bs,Dl=Hs(_r(Vr.reducers),ju(Gs(...xu)));Vr.setListener(r=>{Dl.replaceReducer(_r(r))});class _u extends Gt{format(e){switch(e){case 1:case!0:return"true";case 0:case!1:return"false";default:return""}}}class Vu extends Gt{format(e){return String.fromCharCode(e)}}class $u extends Gt{format(e){return"".concat(e)}}class Hu extends Gt{format(e){return e}}function Fi(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function Ni(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Fi(Object(t),!0).forEach(function(n){zr(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Fi(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function zr(r,e,t){return(e=Gu(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Gu(r){var e=Bu(r,"string");return typeof e=="symbol"?e:e+""}function Bu(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var Uu=/\s*(\d{4})([-./](\d{1,2}|[a-z]+))?([-./](\d{1,2}))?([tT\s](\d{2})([:](\d{2}))?([:](\d{2}))?([.](\d{1,9}))?)?(.*)/;class ae{static makeDateWrapper(e,t,n){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(n).padStart(4,"0"),h="".concat(i+1).padStart(2,"0"),c="".concat(a).padStart(2,"0"),v="".concat(l).padStart(2,"0"),g="".concat(s).padStart(2,"0"),m="".concat(o).padStart(2,"0"),f="".concat(u).padStart(9,"0"),b="".concat(d,"-").concat(h,"-").concat(c," ").concat(v,":").concat(g,":").concat(m,".").concat(f);return e.i18n.DateTimeFormat.parse(ae.FULL_DATE_FORMAT,b,e.i18n.TimeZone.getTimeZone(t))}static getNextNanos(e){var t=parseInt(e,10),n="0".repeat(9-e.length),i="".concat(t+1).concat(n);return parseInt(i,10)}static getNextDate(e,t,n,i){var{year:a,month:l,date:s,hours:o,minutes:u,seconds:d,nanos:h}=n;if(t.nanos!=null){if(t.nanos.length===9)return null;h=ae.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 ae.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 n=e.trim().toLowerCase();if(n.length>=3){for(var i=0;i<ae.months.length;i+=1)if(ae.months[i].startsWith(n))return i}return NaN}static parseDateValues(e,t,n,i,a,l,s){var o=parseInt(e,10),u=t!=null?this.parseMonth(t):0,d=n!=null?parseInt(n,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,n=Uu.exec(e);if(n==null)throw new Error("Unexpected date string: ".concat(e));var[,i,,a,,l,,s,,o,,u,,d,h]=n;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?Ni(Ni({},c),{},{overflow:h}):c}static parseDateRange(e,t,n){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=ae.makeDateWrapper(e,n,a.getFullYear(),a.getMonth(),a.getDate()),s=new Date(a.getFullYear(),a.getMonth(),a.getDate()+1),o=ae.makeDateWrapper(e,n,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=ae.makeDateWrapper(e,n,d.getFullYear(),d.getMonth(),d.getDate()),c=ae.makeDateWrapper(e,n,u.getFullYear(),u.getMonth(),u.getDate());return[h,c]}if(i==="now"){var v=new Date(Date.now()),g=e.DateWrapper.ofJsDate(v);return[g,null]}var m=ae.parseDateTimeString(i);if(m.year==null&&m.month==null&&m.date==null)throw new Error("Unable to extract year, month, or day ".concat(i));var f=ae.parseDateValues(m.year,m.month,m.date,m.hours,m.minutes,m.seconds,m.nanos);if(f==null)throw new Error("Unable to extract date values from ".concat(m));var b=ae.makeDateWrapper(e,n,f.year,f.month,f.date,f.hours,f.minutes,f.seconds,f.nanos),y=ae.getNextDate(e,m,f,n);return[b,y]}static getJsDate(e){return typeof e=="number"?new Date(e):e.asDate()}static trimDateTimeStringTimeZone(e){var{overflow:t=""}=ae.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)}}zr(ae,"FULL_DATE_FORMAT","yyyy-MM-dd HH:mm:ss.SSSSSSSSS");zr(ae,"months",["january","february","march","april","may","june","july","august","september","october","november","december"]);function Hp(r,e){return r===e?{operator:"notEq",value:""}:{operator:"eq",value:r}}function Gp(r,e,t,n){return function(a){var l=t.trim();if(l==="")return null;var s=Fl(e,o=>r.makeSearchTextFilter(o,l,n),"or");return s(a)}}function Fl(r,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 r=="string"?[r]:r);if(a==null||a.length===0)return null;var l=a.map(e);return l.reduce((s,o)=>s[t](o))}}function Wu(r,e,t,n){return Fl(e,i=>i.filter()[n](r.makeFilterValue(i.type,t)),"or")}function Bp(r,e,t,n,i){return function(l){var s=l==null?void 0:l.findColumn(e),o=t==="all"||n&&t.size===0;return s==null||o?null:r.makeSelectValueFilter(s,[...t.keys()],i)}}function Up(r){return function(t){return t.filter().isNull().not().and(t.filter().notEq(r.makeFilterValue(t.type,"")))}}function Wp(r,e){return function(n){var i=n.filter(),a=r.makeFilterValue(n.type,""),l=i.eq(a);return e?i.isNull().or(l):l.or(i.notEq(a))}}function qr(r,e,t){return(e=zu(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function zu(r){var e=qu(r,"string");return typeof e=="symbol"?e:e+""}function qu(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class vn{}qr(vn,"not","not");qr(vn,"and","and");qr(vn,"or","or");function zp(r){if(!(r==="not"||r==="and"||r==="or"))throw new Error("operator is not a valid FilterOperatorValue")}function de(r,e,t){return(e=Ku(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Ku(r){var e=Xu(r,"string");return typeof e=="symbol"?e:e+""}function Xu(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class O{}de(O,"eq","eq");de(O,"eqIgnoreCase","eqIgnoreCase");de(O,"notEq","notEq");de(O,"notEqIgnoreCase","notEqIgnoreCase");de(O,"greaterThan","greaterThan");de(O,"greaterThanOrEqualTo","greaterThanOrEqualTo");de(O,"lessThan","lessThan");de(O,"lessThanOrEqualTo","lessThanOrEqualTo");de(O,"in","in");de(O,"inIgnoreCase","inIgnoreCase");de(O,"notIn","notIn");de(O,"notInIgnoreCase","notInIgnoreCase");de(O,"isTrue","isTrue");de(O,"isFalse","isFalse");de(O,"isNull","isNull");de(O,"invoke","invoke");de(O,"contains","contains");de(O,"notContains","notContains");de(O,"containsIgnoreCase","containsIgnoreCase");de(O,"startsWith","startsWith");de(O,"endsWith","endsWith");de(O,"containsAny","containsAny");function Yu(r){switch(r){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(r))}}function Zu(r){switch(r){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(r))}}function Qu(r){switch(r){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(r))}}function qp(r){switch(r){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(r))}}var Ju="DH_ITEM_KEY",Mi=J.module("ViewportDataUtils");function Nl(r){return"".concat(Ju,"_").concat(r)}function Kp(r,e){var{bulkUpdate:t}=r;return function(i){var{columns:a,offset:l,rows:s}=i.detail;Mi.debug("table updated",i.detail);var o=new Map;s.forEach((u,d)=>{var h=e(u,a),c=Nl(l+d);o.set(c,{key:c,item:h})}),Mi.debug("update keys",o),t(o)}}function Xp(r,e){return e.reduce((t,n)=>(t[n.name]=r.get(n),t),{})}function*Yp(r,e){for(var t=r;t<=e;++t)yield{key:Nl(t)}}function ed(r){return r==null||td(r)?0:r.size}function td(r){return r!=null&&typeof r=="object"&&"isClosed"in r&&typeof r.isClosed=="boolean"?r.isClosed:!1}function Zp(r,e,t,n){var i=r+e-1,[a,l]=[0,n-1],s=Ge(r-t,a,l),o=Ge(i+t,a,l);return[s,o]}function Ri(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(n,i)}function yt(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){Ri(a,n,i,l,s,"next",o)}function s(o){Ri(a,n,i,l,s,"throw",o)}l(void 0)})}}function kt(r,e,t){return(e=nd(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function nd(r){var e=rd(r,"string");return typeof e=="symbol"?e:e+""}function rd(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var at=J.module("TableUtils");function Qp(r){return r===S.sortDirection.ascending||r===S.sortDirection.descending||r===S.sortDirection.reverse||r===S.sortDirection.none}class S{static copyTableAndApplyFilters(e){var t=arguments;return yt(function*(){if(e==null)return null;for(var n=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 n.applyFilter(cr(...a.map(s=>s(n)))),n})()}static getSortIndex(e,t){for(var n=0;n<e.length;n+=1){var i,a=e[n];if(((i=a.column)===null||i===void 0?void 0:i.name)===t)return n}return null}static getSortForColumn(e,t){var n=S.getSortIndex(e,t);return n!=null?e[n]: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,n){if(n<0||n>=e.length)return null;var i=S.getSortForColumn(t,e[n].name);return i===null?e[n].sort().asc():i.direction===S.sortDirection.ascending?i.desc():null}static makeColumnSort(e,t,n,i){if(t<0||t>=e.length||n===S.sortDirection.none)return null;var a=e[t].sort();switch(n){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,n){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(n<0||n>=t.length)return[];var a=S.getNextSort(t,e,n);return S.setSortForColumn(e,t[n].name,a,i)}static sortColumn(e,t,n,i,a,l){if(n<0||n>=t.length)return[];var s=S.makeColumnSort(t,n,i,a);return S.setSortForColumn(e,t[n].name,s,l)}static setSortForColumn(e,t,n){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)),n!==null&&l.push(n),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,n){switch(t){case"=":return e.eq(n);case"<":return e.lessThan(n);case"<=":case"=<":return e.lessThanOrEqualTo(n);case">":return e.greaterThan(n);case">=":case"=>":return e.greaterThanOrEqualTo(n);case"!=":case"!":return e.notEq(n);default:return null}}static makeCancelableTablePromise(e){return ke.makeCancelable(e,t=>{t.close()})}static makeCancelableTableEventPromise(e,t){var n=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 jo('Event "'.concat(t,'" timed out.')))},n),a=e.addEventListener(t,h=>{if(i!=null&&!i(h)){at.debug2("Event triggered, but matcher returned false.");return}at.debug2("Event triggered, resolving."),a(),clearTimeout(l),s=!1,u(h)})});return o.cancel=()=>{if(s){at.debug2("Pending promise cleanup."),a(),clearTimeout(l),s=!1;return}at.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 n=S.removeCommas(t);if(S.NUMBER_REGEX.test(n))return parseFloat(n);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((n,i)=>{var a=n.name.toUpperCase(),l=i.name.toUpperCase();return Ze.sort(a,l,t)})}constructor(e){kt(this,"dh",void 0),this.dh=e,Ur(this)}createDistinctSortedColumnTable(e,t,n){var i=arguments,a=this;return yt(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(cr(...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()[n]();return a.applySort(h,[c])})()}doesColumnValueExist(e,t,n,i){var a=this;return yt(function*(){if(e==null)return null;var l=Wu(a,t,n,i?"eq":"eqIgnoreCase"),s=yield e.copy();yield a.applyFilter(s,cr(l(s)));var o=ed(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,n){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,n);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,n){var{type:i}=e;return S.isNumberType(i)?this.makeQuickNumberFilter(e,t):S.isBooleanType(i)?this.makeQuickBooleanFilter(e,t):n!=null&&S.isDateType(i)?this.makeQuickDateFilter(e,t,n):S.isCharType(i)?this.makeQuickCharFilter(e,t):this.makeQuickTextFilter(e,t)}makeQuickNumberFilter(e,t){var n=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=n.isNull();break;case"nan":a=i.FilterCondition.invoke("isNaN",n);break;case"infinity":case"inf":case"∞":u!=null?a=i.FilterCondition.invoke("isInf",n).and(n.lessThan(i.FilterValue.ofNumber(0))):a=i.FilterCondition.invoke("isInf",n).and(n.greaterThan(i.FilterValue.ofNumber(0)));break}return a!==null&&(o==="!"||o==="!=")&&(a=a.not()),a}if(d==null)return null;if(d=S.removeCommas(d),S.isLongType(e.type))try{d=i.FilterValue.ofNumber(i.LongWrapper.ofString("".concat(u!=null?"-":"").concat(d)))}catch(v){return at.warn("Unable to create long filter",v),null}else{if(d=parseFloat(d),d==null||Number.isNaN(d))return null;d=i.FilterValue.ofNumber(u!=null?0-d:d)}return a=e.filter(),S.makeRangeFilterWithOperation(a,o,d)}static escapeQuickTextFilter(e){var t,n;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((n=o)!==null&&n!==void 0?n:"")}static unescapeQuickTextFilter(e){var t,n,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((n=o)!==null&&n!==void 0?n:"")}makeQuickTextFilter(e,t){var{dh:n}=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",n.FilterValue.ofString("(?s)(?i).*\\Q".concat(o,"\\E.*"))));case"!~":return u.isNull().or(u.invoke("matches",n.FilterValue.ofString("(?s)(?i).*\\Q".concat(o,"\\E.*"))).not());case"!=":return d==="*"?u.isNull().or(u.invoke("matches",n.FilterValue.ofString("(?s)(?i).*\\Q".concat(o,"\\E$"))).not()):h==="*"?u.isNull().or(u.invoke("matches",n.FilterValue.ofString("(?s)(?i)^\\Q".concat(o,"\\E.*"))).not()):u.notEqIgnoreCase(n.FilterValue.ofString(o.toLowerCase()));case"=":return d==="*"?u.isNull().not().and(u.invoke("matches",n.FilterValue.ofString("(?s)(?i).*\\Q".concat(o,"\\E$")))):h==="*"?u.isNull().not().and(u.invoke("matches",n.FilterValue.ofString("(?s)(?i)^\\Q".concat(o,"\\E.*")))):u.eqIgnoreCase(n.FilterValue.ofString(o.toLowerCase()))}return null}makeQuickBooleanFilter(e,t){var n=/^(!=|=|!)?(.*)/,i=n.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,n){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,n)}makeQuickDateFilterWithOperation(e,t,n,i){var{dh:a}=this,[l,s]=ae.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 n===O.notEq?d.isNull().not():d.isNull();switch(n){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(n))}}makeQuickCharFilter(e,t){var{dh:n}=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=n.FilterValue.ofString(S.isRangeOperation(s)?S.quoteValue(o):o);return S.makeRangeFilterWithOperation(d,s,h)}makeAdvancedFilter(e,t,n){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,n);if(v!=null){if(u===0)o=v;else if(o!==null&&u-1<a.length){var g=a[u-1];if(g===vn.and)o=o.and(v);else if(g===vn.or)o=o.or(v);else{at.error("Unexpected filter operator",g,v),o=null;break}}}else at.debug2("Empty filter ignored for",h,c)}catch(f){at.error("Unable to create filter",f),o=null;break}}var m=this.makeSelectValueFilter(e,s,l);return m!=null&&(o!=null?o=o.and(m):o=m),o}makeAdvancedValueFilter(e,t,n,i){var{dh:a}=this;if(S.isDateType(e.type))return this.makeQuickDateFilterWithOperation(e,n,t,i);if(S.isNumberType(e.type)||S.isCharType(e.type))return this.makeQuickFilter(e,"".concat(S.getFilterOperatorString(t)).concat(n));var l=this.makeFilterValue(e.type,n),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(n,"\\E.*"))));case O.notContains:return s.isNull().or(s.invoke("matches",a.FilterValue.ofString("(?s)(?i).*\\Q".concat(n,"\\E.*"))).not());case O.startsWith:return s.isNull().not().and(s.invoke("matches",a.FilterValue.ofString("(?s)(?i)^\\Q".concat(n,"\\E.*"))));case O.endsWith:return s.isNull().not().and(s.invoke("matches",a.FilterValue.ofString("(?s)(?i).*\\Q".concat(n,"\\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,n){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,ae.trimDateTimeStringTimeZone(t),"eq",n);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 n=arguments,i=this;return yt(function*(){var a=n.length>2&&n[2]!==void 0?n[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 n=arguments,i=this;return yt(function*(){var a=n.length>2&&n[2]!==void 0?n[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 n=arguments,i=this;return yt(function*(){var a=n.length>2&&n[2]!==void 0?n[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 n=arguments,i=this;return yt(function*(){var a=n.length>2&&n[2]!==void 0?n[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,n=null;S.isTextType(e.type)?n=t.FilterValue.ofString("a"):S.isBooleanType(e.type)?n=t.FilterValue.ofBoolean(!0):S.isDateType(e.type)?n=t.FilterValue.ofNumber(t.DateWrapper.ofJsDate(new Date)):n=t.FilterValue.ofNumber(0);var i=e.filter().eq(n),a=e.filter().notEq(n);return i.and(a)}makeFilterValue(e,t){var{dh:n}=this,i=S.getBaseType(e);return S.isTextType(i)?n.FilterValue.ofString(t):S.isLongType(i)?n.FilterValue.ofNumber(n.LongWrapper.ofString(S.removeCommas(t))):n.FilterValue.ofNumber(S.removeCommas(t))}makeFilterRawValue(e,t){var{dh:n}=this;return S.isCharType(e)?n.FilterValue.ofString(typeof t=="number"?String.fromCharCode(t):t):S.isTextType(e)?n.FilterValue.ofString(t):S.isBooleanType(e)?n.FilterValue.ofBoolean(t):n.FilterValue.ofNumber(t)}makeNullableEqFilter(e,t){return t==null?e.filter().isNull():e.filter().eq(this.makeFilterRawValue(e.type,t))}makeValue(e,t,n){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]=ae.parseDateRange(i,t,n);return a}return S.isNumberType(e)?S.makeNumberValue(t):(at.error("Unexpected column type",e),null)}makeSelectValueFilter(e,t,n){var{dh:i}=this;if(t.length===0)return n?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?n?e.filter().isNull().not().and(e.filter().notIn(a)):e.filter().isNull().or(e.filter().in(a)):n?e.filter().isNull().not():e.filter().isNull():n?e.filter().notIn(a):e.filter().in(a)}}kt(S,"dataType",{BOOLEAN:"boolean",CHAR:"char",DATETIME:"datetime",DECIMAL:"decimal",INT:"int",STRING:"string",UNKNOWN:"unknown"});kt(S,"sortDirection",{ascending:"ASC",descending:"DESC",reverse:"REVERSE",none:null});kt(S,"APPLY_TABLE_CHANGE_TIMEOUT_MS",3e4);kt(S,"REVERSE_TYPE",Object.freeze({NONE:"none",PRE_SORT:"pre-sort",POST_SORT:"post-sort"}));kt(S,"NUMBER_REGEX",/^-?\d+(\.\d+)?$/);kt(S,"executeAndWaitForEvent",function(){var r=yt(function*(e,t,n){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,n,i);return e(t),yield a,t});return function(e,t,n){return r.apply(this,arguments)}}());function At(r,e,t){return(e=id(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function id(r){var e=ad(r,"string");return typeof e=="symbol"?e:e+""}function ad(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class qe{static makeColumnFormatMap(e){return e==null?new Map:e.reduce((t,n)=>{var i=S.getNormalizedType(n.columnType);if(i===null)return t;t.has(i)||t.set(i,new Map);var a=t.get(i);return a==null||a.set(n.columnName,n.format),t},new Map)}static makeColumnFormattingRule(e,t,n){return{columnType:e,columnName:t,format:n}}constructor(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],n=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;At(this,"defaultColumnFormatter",void 0),At(this,"typeFormatterMap",void 0),At(this,"columnFormatMap",void 0),At(this,"truncateNumbersWithPound",void 0),At(this,"showEmptyStrings",void 0),At(this,"showNullStrings",void 0),this.defaultColumnFormatter=new $u,this.typeFormatterMap=new Map([[S.dataType.BOOLEAN,new _u],[S.dataType.CHAR,new Vu],[S.dataType.DATETIME,new Vn(e,n)],[S.dataType.DECIMAL,new oo(e,i)],[S.dataType.INT,new uo(e,a)],[S.dataType.STRING,new Hu]]),this.columnFormatMap=qe.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,n=S.getNormalizedType(e);if(n!==null)return t&&!this.columnFormatMap.has(n)&&this.columnFormatMap.set(n,new Map),this.columnFormatMap.get(n)}getColumnFormat(e,t){var n,i=this.getColumnFormatMapForType(e);return(n=i==null?void 0:i.get(t))!==null&&n!==void 0?n:null}getColumnTypeFormatter(e){var t=S.getNormalizedType(e),n=this.defaultColumnFormatter;if(t){var i;n=(i=this.typeFormatterMap.get(t))!==null&&i!==void 0?i:n}return n}getFormattedString(e,t){var n=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,n);return a.format(e,l??void 0)}get timeZone(){var e=this.typeFormatterMap.get(S.dataType.DATETIME);return _o(e,Vn),e.dhTimeZone.id}}function ld(r,e){var t=Ml(e),n=Rl(e),{defaultDecimalFormatOptions:i,defaultIntegerFormatOptions:a,truncateNumbersWithPound:l,showEmptyStrings:s,showNullStrings:o}=e??{};return new qe(r,t,n,i,a,l,s,o)}function Ml(r){if(r&&r.formatter){var{formatter:e}=r;return e}}function Rl(r){return{timeZone:r==null?void 0:r.timeZone,defaultDateTimeFormatString:r==null?void 0:r.defaultDateTimeFormat,showTimeZone:r==null?void 0:r.showTimeZone,showTSeparator:r==null?void 0:r.showTSeparator}}function sd(r,e,t){var n=r.getColumnFormat(t,e);return n!=null&&(n.type===Gt.TYPE_CONTEXT_PRESET||n.type===Gt.TYPE_CONTEXT_CUSTOM)}const Dr={createFormatterFromSettings:ld,getColumnFormats:Ml,getDateTimeFormatterOptions:Rl,isCustomColumnFormatDefined:sd};var Il=E.createContext(null);function Jp(r){var{initialState:e,onChange:t,children:n}=r,[i,a]=Te.useState(0),l=E.useRef({initial:e,initialStateMap:new Map,state:new Map,isTracking:!0}),s=E.useCallback((c,v)=>{l.current.isTracking&&l.current.state.set(c,v)},[]),o=E.useCallback(()=>{l.current.isTracking||(l.current.isTracking=!0,l.current.state=new Map,a(c=>c+1))},[]),u=E.useRef(l.current.initial[Symbol.iterator]()),d=E.useCallback(function(v){var g=l.current.initialStateMap.get(v);if(g)return g;var{value:m,done:f}=u.current.next(),b={value:m,done:f??!1};return l.current.initialStateMap.set(v,b),b},[]);E.useEffect(function(){l.current.isTracking&&(t([...l.current.state.values()]),l.current.isTracking=!1)},[i,t]);var h=E.useMemo(()=>({addState:s,scheduleStateUpdate:o,getInitialState:d,updateId:i}),[s,d,o,i]);return p.jsx(Il.Provider,{value:h,children:n})}function od(r,e,t,n,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=r,l=e;l<t;){var s=n.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 kl(r,e){var t,[n]=E.useState(()=>Ue()),i=E.useContext(Il),{value:a,done:l}=(t=i==null?void 0:i.getInitialState(n))!==null&&t!==void 0?t:{value:void 0,done:!0},[s,o]=E.useState(()=>{if(a==null||l)return typeof r=="function"?r():r;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 od(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 E.useDebugValue(u),i==null||i.addState(n,u),E.useEffect(function(){i==null||i.scheduleStateUpdate()},[i,s]),E.useEffect(function(){return()=>{i==null||i.scheduleStateUpdate()}},[i]),[s,o]}function Ii(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function ud(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ii(Object(t),!0).forEach(function(n){dd(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Ii(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function dd(r,e,t){return(e=hd(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function hd(r){var e=cd(r,"string");return typeof e=="symbol"?e:e+""}function cd(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var vd=E.lazy(()=>zn(()=>import("./Chart-Bgbl1SPX.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12]),import.meta.url));function Ll(r){return p.jsx(E.Suspense,{fallback:p.jsx(pt,{}),children:p.jsx(vd,ud({},r))})}function ki(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function wn(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ki(Object(t),!0).forEach(function(n){Pe(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):ki(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function Pe(r,e,t){return(e=pd(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function pd(r){var e=fd(r,"string");return typeof e=="symbol"?e:e+""}function fd(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var Jt=J.module("ChartUtils"),Li="io.deephaven.time.DateTime",md=36e5,gd=1e6;function bd(r){return r.asDate!==void 0}function Cd(r){return r.asNumber!==void 0}function Ai(r){return r.dhTimeZone!==void 0}function yd(r){return r!=null&&r.range!=null&&(r.autorange===!1||r.autorange===void 0)}function Sd(){try{var r=document.createElement("canvas"),e=r.getContext("webgl")||r.getContext("experimental-webgl");return e!=null&&e instanceof WebGLRenderingContext}catch{return!1}}var Ed=Sd();class k{static getPlotlyErrorBars(e,t,n){var i=n.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,n){if(n==null||n==="")return null;var i=n.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,m=s.indexOf(",")>=0||o.indexOf(",")>=0,f=m?",":"",b=h!=null&&h!==""?"e":"f",y=c!==""?c:b,C=u.length+d.length,T="",w="0".concat(g).concat(f,".").concat(C).concat(T).concat(y),P=k.convertNumberPrefix(l),R=k.convertNumberPrefix(v);return{tickformat:w,tickprefix:P,ticksuffix:R,automargin:!0}}static addTickSpacing(e,t,n){var{gapBetweenMajorTicks:i}=t;if(i!=null&&i>0){var a=e||{},l=i;return n&&(l=i/gd),t.log&&(l=Math.log(l)),a.tickmode="linear",a.dtick=l,a}return e}static getSourceForAxis(e,t){for(var n=0;n<e.series.length;n+=1)for(var i=e.series[n],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,n,i){var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:k.ORIENTATION.VERTICAL;return{type:e,mode:t,name:n,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,n)=>[...t,...n.axes],[])}static getAxisTypeMap(e){var t=k.getAllAxes(e);return k.groupArray(t,"type")}static getChartForSeries(e,t){for(var{charts:n}=e,i=0;i<n.length;i+=1)for(var a=n[i],l=0;l<a.series.length;l+=1)if(t===a.series[l])return a;return null}static getLayoutRanges(e){for(var t={},n=Object.keys(e).filter(s=>s.indexOf("axis")>=0),i=0;i<n.length;i+=1){var a=n[i],l=e[a];yd(l)&&(t[a]=[...l.range])}return t}static getAxisLayoutProperty(e,t){var n=t>0?"".concat(t+1):"";return"".concat(e??"","axis").concat(n)}static periodToDecimal(e){var t=e.split(":");return Number(t[0])+Number(t[1])/60}static decimalToPeriod(e){var t=Math.floor(e),n=Math.round((e-t)*60);return"".concat(t.toString().padStart(2,"0"),":").concat(n.toString().padStart(2,"0"))}static groupArray(e,t){return e.reduce((n,i)=>{var a,l=i[t],s=(a=n.get(l))!==null&&a!==void 0?a:[];return s.push(i),n.set(l,s),n},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:n,title:i="".concat((t??[]).join(", ")," by ").concat(n)}=e;return i}static getTimeZoneDiff(e,t){return t?(e.standardOffset-t.standardOffset)/60:0}static createClosedRangesForPartialHoliday(e,t){var n=t.map(h=>[k.periodToDecimal(h.open),k.periodToDecimal(h.close)]);n.sort((h,c)=>h[0]-c[0]),n.length===0&&n.push([0,24]);var i=e.map(h=>[k.periodToDecimal(h.open),k.periodToDecimal(h.close)]);i.sort((h,c)=>h[0]-c[0]);for(var a=[],l=0;l<n.length;l+=1){for(var s=n[l],o=s[0],u=0;u<i.length;u+=1){var d=i[u];d[1]>o&&d[0]<s[1]&&(d[0]>o&&a.push([o,d[0]]),o=d[1])}o<s[1]&&a.push([o,s[1]])}return a}constructor(e){Pe(this,"dh",void 0),Pe(this,"daysOfWeek",void 0),this.dh=e,this.daysOfWeek=Object.freeze(e.calendar.DayOfWeek.values()),Ur(this)}getAxisFormats(e,t){for(var n=new Map,i={tickformat:null,ticksuffix:null},a=k.getAllAxes(e),l=k.groupArray(a,"type"),{charts:s}=e,o=0;o<s.length;o+=1)for(var u=s[o],d=0;d<u.series.length;d+=1)for(var h=u.series[d],{sources:c}=h,v=c.filter(F=>F.axis),g=0;g<v.length;g+=1){var m=v[g],{axis:f}=m,{type:b}=f,y=l.get(b);N(y);var C=y.indexOf(f),T=this.getAxisPropertyName(b);if(T!=null){var w=k.getAxisLayoutProperty(T,C);if(n.has(w))Jt.debug("".concat(w," already added."));else{Jt.debug("Adding ".concat(w," to axisFormats."));var P=this.getPlotlyAxisFormat(m,t);if(P===null)n.set(w,i);else{n.set(w,P);var{businessCalendar:R}=f;if(R!=null&&(P.rangebreaks=this.createRangeBreaksFromBusinessCalendar(R,t)),n.size===u.axes.length)return n}}}}return n}getPlotlyChartType(e,t){var n=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&&Ed&&n?"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,n){var{dh:i}=this,a=new Set;switch(e){case i.plot.SeriesPlotStyle.SCATTER:(t??!1)&&a.add(k.MODE_LINES),(n??!0)&&a.add(k.MODE_MARKERS);break;case i.plot.SeriesPlotStyle.LINE:(t??!0)&&a.add(k.MODE_LINES),(n??!1)&&a.add(k.MODE_MARKERS);break}return a.size>0?[...a].join("+"):void 0}getPlotlyProperty(e,t){var{dh:n}=this;switch(e){case n.plot.SeriesPlotStyle.PIE:switch(t){case n.plot.SourceType.X:return"labels";case n.plot.SourceType.Y:return"values"}break;case n.plot.SeriesPlotStyle.OHLC:switch(t){case n.plot.SourceType.TIME:return"x"}break;case n.plot.SeriesPlotStyle.TREEMAP:switch(t){case n.plot.SourceType.X:return"ids";case n.plot.SourceType.Y:return"values";case n.plot.SourceType.LABEL:return"labels";case n.plot.SourceType.PARENT:return"parents";case n.plot.SourceType.COLOR:return"marker.colors"}break}switch(t){case n.plot.SourceType.X:return"x";case n.plot.SourceType.Y:return"y";case n.plot.SourceType.Z:return"z";case n.plot.SourceType.X_LOW:return"xLow";case n.plot.SourceType.X_HIGH:return"xHigh";case n.plot.SourceType.Y_LOW:return"yLow";case n.plot.SourceType.Y_HIGH:return"yHigh";case n.plot.SourceType.TIME:return"time";case n.plot.SourceType.OPEN:return"open";case n.plot.SourceType.HIGH:return"high";case n.plot.SourceType.LOW:return"low";case n.plot.SourceType.CLOSE:return"close";case n.plot.SourceType.SHAPE:return"shape";case n.plot.SourceType.SIZE:return"size";case n.plot.SourceType.LABEL:return"label";case n.plot.SourceType.COLOR:return"color";case n.plot.SourceType.PARENT:return"parent";case n.plot.SourceType.HOVER_TEXT:return"hovertext";case n.plot.SourceType.TEXT:return"text";default:throw new Error("Unrecognized source type: ".concat(t))}}getPlotlySeriesOrientation(e){var t,n,{dh:i}=this,{sources:a}=e;return a.length===2&&((t=a[0])===null||t===void 0||(n=t.axis)===null||n===void 0?void 0:n.type)===i.plot.AxisType.Y?k.ORIENTATION.HORIZONTAL:k.ORIENTATION.VERTICAL}makeSeriesDataFromSeries(e,t,n){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,{name:l,isLinesVisible:s,isShapesVisible:o,plotStyle:u,lineColor:d,shapeColor:h,sources:c,shape:v,shapeSize:g}=e,m=c.some(T=>{var w;return(w=T.axis)===null||w===void 0?void 0:w.businessCalendar}),f=this.getChartType(u,m,a),b=this.getPlotlyChartMode(u,s??void 0,o??void 0),y=this.getPlotlySeriesOrientation(e),C=k.makeSeriesData(f,b,l,i,y);return this.addSourcesToSeriesData(C,u,c,t),this.addStylingToSeriesData(C,u,d,h,v,g,n),C}addSourcesToSeriesData(e,t,n,i){for(var a=e,l=0;l<n.length;l+=1){var s=n[l],{axis:o,type:u}=s,d=this.getPlotlyProperty(t,u);nl(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 n=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"),n!=null&&(t===o.plot.SeriesPlotStyle.BAR?u.marker.color=n:u.line.color=n),i!=null&&(u.marker.color=i),a!=null&&a.length>0)try{u.marker.symbol=k.getMarkerSymbol(a)}catch(d){Jt.warn("Unable to handle shape",a,":",d)}l!=null&&(u.marker.size=l*k.DEFAULT_MARKER_SIZE),s!=null&&t!==o.plot.SeriesPlotStyle.PIE&&(u.visible=s)}getChartType(e,t){var n=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,n)}}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,n){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=k.getAllAxes(t),o=0;o<t.charts.length;o+=1){var u=t.charts[o],d=n==null?void 0:n(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,n,i){var a,{dh:l}=this,{cols:s,rows:o}=e,{column:u,colspan:d,row:h,rowspan:c}=t,v=u+d,g=h+c,m=1/s,f=1/o,b=k.AXIS_SIZE_PX/n,y=k.AXIS_SIZE_PX/i,C={bottom:(o-g)*f+(g<o?y/2:0),top:(o-h)*f-(h>0?y/2:0),left:u*m+(u>0?b/2:0),right:v*m-(v<s?b/2:0)},T=k.groupArray(t.axes,"position"),w=(a=T.get(l.plot.AxisPosition.RIGHT))!==null&&a!==void 0?a:[];return w.length>0&&(n>0?C.right-=(C.right-C.left)*Math.max(0,Math.min(k.LEGEND_WIDTH_PX/n,k.MAX_LEGEND_SIZE)):C.right-=(C.right-C.left)*k.DEFAULT_AXIS_SIZE),C}getPlotlyDateFormat(e,t,n){var{dh:i}=this,a=n==null?void 0:n.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&&Ai(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:n}=this,{axis:i,columnType:a}=e,{formatPattern:l}=i,s=null;return S.isDateType(a)?(s=this.getPlotlyDateFormat(t,a,l),s=k.addTickSpacing(s,i,!0)):S.isNumberType(a)&&(s=k.getPlotlyNumberFormat(t,a,l),s=k.addTickSpacing(s,i,!1)),i.formatType===n.plot.AxisFormatType.CATEGORY&&(s?s.type="category":s={type:"category",tickformat:void 0,ticksuffix:void 0}),s}updateLayoutAxes(e,t,n){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(k.MIN_AXIS_SIZE,Math.min(k.AXIS_SIZE_PX/a,k.MAX_AXIS_SIZE)):k.DEFAULT_AXIS_SIZE,d=a>0?Math.max(k.MIN_AXIS_SIZE,Math.min(k.AXIS_SIZE_PX/i,k.MAX_AXIS_SIZE)):k.DEFAULT_AXIS_SIZE,h=e,c=k.groupArray(t,"position"),v=k.groupArray(t,"type"),g=[...v.keys()],m=k.groupArray(n,"type"),f=0;f<g.length;f+=1){var b=g[f],y=this.getAxisPropertyName(b);if(y!=null){var C=v.get(b),T=m.get(b),w=b===o.plot.AxisType.Y,P=w?a:i;N(C),N(T);for(var R=0;R<C.length;R+=1){var F=C[R],D=T.indexOf(F),M=k.getAxisLayoutProperty(y,D);h[M]==null&&(h[M]={});var I=h[M];if(I!=null){this.updateLayoutAxis(I,F,R,c,u,d,l);var{range:j,autorange:V}=I;if(s!=null&&j!==void 0&&(V===void 0||V===!1)){var B=s(F),[K,re]=B(j);Jt.debug("Setting downsample range",P,K,re),F.range(P,K,re)}else F.range(P)}}}}}removeStaleAxes(e,t){for(var n=e,i=k.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=k.getAxisLayoutProperty(d,u);n[h]!=null;)delete n[h],u+=1,h=k.getAxisLayoutProperty(d,u)}}updateLayoutAxis(e,t,n,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),n>0){var g,m;c.overlaying=(g=this.getAxisPropertyName(t.type))!==null&&g!==void 0?g:void 0;var f=(m=i.get(t.position))!==null&&m!==void 0?m:[],b=f.indexOf(t);b>0&&(c.anchor="free",t.position===u.plot.AxisPosition.RIGHT?c.position=s.right+(b-f.length+1)*h:t.position===u.plot.AxisPosition.TOP?c.position=s.top+(b-f.length+1)*h:t.position===u.plot.AxisPosition.BOTTOM?c.position=s.bottom+(f.length-b+1)*h:t.position===u.plot.AxisPosition.LEFT&&(c.position=s.left+(f.length-b+1)*h))}else if(t.type===u.plot.AxisType.X){var y=i.get(u.plot.AxisPosition.LEFT)||[],C=i.get(u.plot.AxisPosition.RIGHT)||[],T=Math.max(s.left,s.left+(y.length-1)*l),w=Math.min(s.right-(C.length-1)*l,s.right);c.domain=[T,w]}else if(t.type===u.plot.AxisType.Y){var P=i.get(u.plot.AxisPosition.BOTTOM)||[],R=i.get(u.plot.AxisPosition.TOP)||[],F=Math.max(s.bottom,s.bottom+(P.length-1)*a),D=Math.min(s.top-(R.length-1)*a,s.top);c.domain=[F,D]}var{minRange:M,maxRange:I,log:j}=t;(!Number.isNaN(M)||!Number.isNaN(I))&&(c.autorangeoptions={},Number.isNaN(M)||(c.autorangeoptions.minallowed=j?Math.log10(M):M),Number.isNaN(I)||(c.autorangeoptions.maxallowed=j?Math.log10(I):I))}createBoundsFromPeriods(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;if(e.length===0)return[];for(var n=e.map(o=>[(k.periodToDecimal(o.open)+t)%24,(k.periodToDecimal(o.close)+t)%24]).sort((o,u)=>o[0]-u[0]),i=[],a=0;a<n.length;a+=1){var l=n[a],s=n[(a+1)%n.length];i.push([l[1],s[0]])}return i}createBreaksFromPeriods(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n=this.createBoundsFromPeriods(e,t);return n.map(i=>({pattern:"hour",bounds:i}))}createBoundsFromDays(e){var t=this.daysOfWeek.length;if(e.length===t)return[];for(var n=e.map(o=>this.daysOfWeek.indexOf(o)),i=new Set(n),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(n=>({pattern:"day of week",bounds:n}))}createRangeBreaksFromBusinessCalendar(e,t){var n=[],{businessPeriods:i,businessDays:a,holidays:l,timeZone:s}=e,o=t==null?void 0:t.getColumnTypeFormatter(Li),u;Ai(o)&&(u=o.dhTimeZone);var d=k.getTimeZoneDiff(s,u);return l.length>0&&n.push(...this.createRangeBreakValuesFromHolidays(l,s,u,e)),n.push(...this.createBreaksFromPeriods(i,d)),n.push(...this.createBreaksFromDays(a)),n}createRangeBreakValuesFromHolidays(e,t,n,i){var a=[],l=[];return e.forEach(s=>{s.businessPeriods.length>0?l.push(...this.createPartialHoliday(s,t,n,i)):a.push(this.createFullHoliday(s,t,n))}),[{values:a},...l]}createFullHoliday(e,t,n){return this.adjustDateForTimeZone("".concat(e.date.toString()," 00:00:00.000000"),t,n)}createPartialHoliday(e,t,n,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=k.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(k.decimalToPeriod(c),":00.000000"),t,n)],m=md*(v-c);d.push({values:g,dvalue:m})}}return d}adjustDateForTimeZone(e,t,n){return n&&n.standardOffset!==t.standardOffset?this.unwrapValue(this.wrapValue(e,Li,t),n):e}makeFigureSettings(e,t){var{dh:n}=this,{series:i,xAxis:a,type:l}=e,s=k.titleFromSettings(e),o={formatType:"".concat(n.plot.AxisFormatType.NUMBER),type:"".concat(n.plot.AxisType.X),position:"".concat(n.plot.AxisPosition.BOTTOM)},u={formatType:"".concat(n.plot.AxisFormatType.NUMBER),type:"".concat(n.plot.AxisType.Y),position:"".concat(n.plot.AxisPosition.LEFT)};return{charts:[{chartType:"".concat(n.plot.ChartType.XY),axes:[o,u],series:(i??[]).map(d=>({plotStyle:"".concat(l),name:d,dataSources:[{type:"".concat(n.plot.SourceType.X),columnName:a??"",axis:o,table:t},{type:"".concat(n.plot.SourceType.Y),columnName:d,axis:u,table:t}]}))}],title:s}}unwrapValue(e,t){var{dh:n}=this;if(e!=null){if(bd(e))return n.i18n.DateTimeFormat.format(k.DATE_FORMAT,e,t);if(Cd(e))return e.asNumber()}return e}wrapValue(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null,{dh:i}=this;if(S.isDateType(t)&&typeof e=="string"){var a=e,l=k.DATE_FORMAT.substr(0,e.length),s=i.i18n.DateTimeFormat.parse(l,a);if(!n)return s;var o="".concat(l," Z"),u=i.i18n.DateTimeFormat.format("Z",s,n),d=i.i18n.DateTimeFormat.parse(o,"".concat(a," ").concat(u)),h=i.i18n.DateTimeFormat.format("Z",d,n);return i.i18n.DateTimeFormat.parse(o,"".concat(a," ").concat(h))}return e}makeLayoutAxis(e,t){var{dh:n}=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===n.plot.AxisType.X?Object.assign(i,{showgrid:!0}):e===n.plot.AxisType.Y&&Object.assign(i,{zerolinecolor:t.zerolinecolor,zerolinewidth:2}),i}makeDefaultTemplate(e){var{error_band_line_color:t,ohlc_increasing:n,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:n}},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:n,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:n,plot_bgcolor:i,autosize:!0,colorway:k.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:wn({},k.DEFAULT_TITLE_PADDING),y:1},legend:{font:{color:a}},margin:wn({},k.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:n,coastlinecolor:l,landcolor:s,oceancolor:o,lakecolor:u,rivercolor:d}};return h.datarevision=0,h}hydrateSettings(e){var{dh:t}=this;return wn(wn({},e),{},{type:e.type!=null?t.plot.SeriesPlotStyle[e.type]:void 0})}}Pe(k,"DEFAULT_AXIS_SIZE",.15);Pe(k,"MIN_AXIS_SIZE",.025);Pe(k,"MAX_AXIS_SIZE",.2);Pe(k,"AXIS_SIZE_PX",75);Pe(k,"LEGEND_WIDTH_PX",50);Pe(k,"MAX_LEGEND_SIZE",.25);Pe(k,"ORIENTATION",Object.freeze({HORIZONTAL:"h",VERTICAL:"v"}));Pe(k,"DATE_FORMAT","yyyy-MM-dd HH:mm:ss.SSSSSS");Pe(k,"DEFAULT_MARGIN",Object.freeze({l:60,r:50,t:30,b:60,pad:0}));Pe(k,"DEFAULT_TITLE_PADDING",Object.freeze({t:8}));Pe(k,"SUBTITLE_LINE_HEIGHT",25);Pe(k,"DEFAULT_MARKER_SIZE",6);Pe(k,"MODE_MARKERS","markers");Pe(k,"MODE_LINES","lines");function fe(r,e,t){return(e=wd(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function wd(r){var e=Td(r,"string");return typeof e=="symbol"?e:e+""}function Td(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class ne{constructor(e){fe(this,"dh",void 0),fe(this,"listeners",void 0),fe(this,"formatter",void 0),fe(this,"renderOptions",void 0),fe(this,"rect",void 0),fe(this,"isDownsamplingDisabled",void 0),fe(this,"title",void 0),this.dh=e,this.listeners=[],this.isDownsamplingDisabled=!1}getData(){return[]}getDefaultTitle(){return""}getLayout(){return{}}getFilterColumnMap(){return new Map}isFilterRequired(){return!1}setFilter(e){}close(){}setFormatter(e){this.formatter=e}setRenderOptions(e){this.renderOptions=e}setDownsamplingDisabled(e){this.isDownsamplingDisabled=e}setDimensions(e){this.rect=e}setTitle(e){this.title=e}subscribe(e){this.listeners.push(e)}unsubscribe(e){this.listeners=this.listeners.filter(t=>t!==e)}fireEvent(e){for(var t=0;t<this.listeners.length;t+=1)this.listeners[t](e)}fireUpdate(e){this.fireEvent(new CustomEvent(ne.EVENT_UPDATED,{detail:e}))}fireDisconnect(){this.fireEvent(new CustomEvent(ne.EVENT_DISCONNECT))}fireReconnect(){this.fireEvent(new CustomEvent(ne.EVENT_RECONNECT))}fireDownsampleStart(e){this.fireEvent(new CustomEvent(ne.EVENT_DOWNSAMPLESTARTED,{detail:e}))}fireDownsampleFinish(e){this.fireEvent(new CustomEvent(ne.EVENT_DOWNSAMPLEFINISHED,{detail:e}))}fireDownsampleFail(e){this.fireEvent(new CustomEvent(ne.EVENT_DOWNSAMPLEFAILED,{detail:e}))}fireDownsampleNeeded(e){this.fireEvent(new CustomEvent(ne.EVENT_DOWNSAMPLENEEDED,{detail:e}))}fireLoadFinished(){this.fireEvent(new CustomEvent(ne.EVENT_LOADFINISHED))}fireError(e){this.fireEvent(new CustomEvent(ne.EVENT_ERROR,{detail:e}))}fireBlocker(e){this.fireEvent(new CustomEvent(ne.EVENT_BLOCKER,{detail:e}))}fireBlockerClear(){this.fireEvent(new CustomEvent(ne.EVENT_BLOCKER_CLEAR))}fireLayoutUpdated(e){this.fireEvent(new CustomEvent(ne.EVENT_LAYOUT_UPDATED,{detail:e}))}}fe(ne,"EVENT_UPDATED","ChartModel.EVENT_UPDATED");fe(ne,"EVENT_DISCONNECT","ChartModel.EVENT_DISCONNECT");fe(ne,"EVENT_RECONNECT","ChartModel.EVENT_RECONNECT");fe(ne,"EVENT_DOWNSAMPLESTARTED","ChartModel.EVENT_DOWNSAMPLESTARTED");fe(ne,"EVENT_DOWNSAMPLEFINISHED","ChartModel.EVENT_DOWNSAMPLEFINISHED");fe(ne,"EVENT_DOWNSAMPLEFAILED","ChartModel.EVENT_DOWNSAMPLEFAILED");fe(ne,"EVENT_DOWNSAMPLENEEDED","ChartModel.EVENT_DOWNSAMPLENEEDED");fe(ne,"EVENT_LOADFINISHED","ChartModel.EVENT_LOADFINISHED");fe(ne,"EVENT_ERROR","ChartModel.EVENT_ERROR");fe(ne,"EVENT_BLOCKER","ChartModel.EVENT_BLOCKER");fe(ne,"EVENT_BLOCKER_CLEAR","ChartModel.EVENT_BLOCKER_CLEAR");fe(ne,"EVENT_LAYOUT_UPDATED","ChartModel.EVENT_LAYOUT_UPDATED");function xi(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function ji(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?xi(Object(t),!0).forEach(function(n){ce(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):xi(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function ce(r,e,t){return(e=Pd(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Pd(r){var e=Od(r,"string");return typeof e=="symbol"?e:e+""}function Od(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var ye=J.module("FigureChartModel");class pn extends ne{constructor(e,t){var n,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};super(e),n=this,ce(this,"chartUtils",void 0),ce(this,"dh",void 0),ce(this,"figure",void 0),ce(this,"settings",void 0),ce(this,"data",void 0),ce(this,"layout",void 0),ce(this,"seriesDataMap",void 0),ce(this,"pendingSeries",void 0),ce(this,"oneClicks",void 0),ce(this,"filterColumnMap",void 0),ce(this,"lastFilter",void 0),ce(this,"isConnected",void 0),ce(this,"seriesToProcess",void 0),ce(this,"addPendingSeries",vt(()=>{for(var a=k.getAxisTypeMap(this.figure),{pendingSeries:l}=this,s=function(){var d,h=l[o],c=n.figure.charts.find(v=>v.series.includes(h));n.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=[]},pn.ADD_SERIES_DEBOUNCE)),ce(this,"getTimeZone",Be((a,l)=>{if(l!=null){var s=l.getColumnTypeFormatter(a);if(s!=null)return s.dhTimeZone}},{max:100})),ce(this,"getValueTranslator",Be((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.unwrapValue(o,s)},{max:100})),ce(this,"getValueParser",Be((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.wrapValue(o,a,s)},{max:100})),ce(this,"getRangeParser",Be((a,l)=>s=>{var[o,u]=s,d=this.getValueParser(a,l);return o=d(o),u=d(u),[o,u]},{max:100})),ce(this,"getAxisRangeParser",Be((a,l)=>s=>{var o=k.getSourceForAxis(a,s);return o!=null?this.getRangeParser(o.columnType,l):u=>u},{max:100})),this.handleFigureUpdated=this.handleFigureUpdated.bind(this),this.handleFigureDisconnected=this.handleFigureDisconnected.bind(this),this.handleFigureReconnected=this.handleFigureReconnected.bind(this),this.handleFigureSeriesAdded=this.handleFigureSeriesAdded.bind(this),this.handleDownsampleStart=this.handleDownsampleStart.bind(this),this.handleDownsampleFinish=this.handleDownsampleFinish.bind(this),this.handleDownsampleFail=this.handleDownsampleFail.bind(this),this.handleDownsampleNeeded=this.handleDownsampleNeeded.bind(this),this.handleRequestFailed=this.handleRequestFailed.bind(this),this.dh=e,this.chartUtils=new k(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,n=k.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,n,c.showLegend)}var{axes:m,title:f}=c;if(f!=null&&f.length>0&&(t.length>1||e.figure.title!=null)){var b=m.find(M=>M.type===e.dh.plot.AxisType.X),y=m.find(M=>M.type===e.dh.plot.AxisType.Y);if(b==null||y==null)ye.warn("Chart title provided, but unknown how to map to the correct axes for this chart type",c);else{var C,T,w,P,R=((C=(T=n.get(b.type))===null||T===void 0?void 0:T.findIndex(M=>M===b))!==null&&C!==void 0?C:0)+1,F=((w=(P=n.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:f,showarrow:!1,xref:"x".concat(R," 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,n){var i,a,{dh:l}=this,s=this.chartUtils.makeSeriesDataFromSeries(e,t,k.getSeriesVisibility(e.name,this.settings),n,(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=k.getHiddenLabels(this.settings)),this.layout.showlegend=this.data.length>1||e.plotStyle===l.plot.SeriesPlotStyle.PIE?n??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){ye.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&&(ye.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){ye.debug("Downsample started",e),this.fireDownsampleStart(e.detail)}handleDownsampleFinish(e){ye.debug("Downsample finished",e),this.fireDownsampleFinish(e.detail)}handleDownsampleFail(e){ye.error("Downsample failed",e),this.fireDownsampleFail(e.detail)}handleDownsampleNeeded(e){ye.info("Downsample needed",e),this.fireDownsampleNeeded(e.detail)}handleFigureUpdated(e){var{detail:t}=e,{series:n}=t;ye.debug2("handleFigureUpdated",n);for(var i=0;i<n.length;i+=1){var a=n[i];ye.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){ye.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){ye.debug("Figure disconnected",e),this.isConnected=!1,this.listeners.length>0&&this.unsubscribeFigure(),this.fireDisconnect()}handleFigureReconnected(e){ye.debug("Figure reconnected",e),this.isConnected=!0,this.initAllSeries(),this.fireReconnect(),this.listeners.length>0&&this.subscribeFigure()}handleFigureSeriesAdded(e){var{detail:t}=e;ye.debug("handleFigureSeriesAdded",t),this.pendingSeries.push(t),this.addPendingSeries()}setDimensions(e){super.setDimensions(e),this.updateAxisPositions()}setTitle(e){var t,n;super.setTitle(e);var i=(t=(n=(e??"").match(/<br>/g))===null||n===void 0?void 0:n.length)!==null&&t!==void 0?t:0,a=k.DEFAULT_MARGIN.t+i*k.SUBTITLE_LINE_HEIGHT;this.layout.margin?this.layout.margin.t=a:this.layout.margin={t:a},typeof this.layout.title=="string"?this.layout.title={text:e}:(this.layout.title=ji({},this.layout.title),this.layout.title.text=e,this.layout.title.pad=ji({},this.layout.title.pad),this.layout.title.pad.t=k.DEFAULT_TITLE_PADDING.t+i*k.SUBTITLE_LINE_HEIGHT*.5),this.fireLayoutUpdated({title:this.layout.title})}getPlotWidth(){var e,t,n,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)-((n=(i=this.layout.margin)===null||i===void 0?void 0:i.r)!==null&&n!==void 0?n:0),0)}getPlotHeight(){var e,t,n,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)-((n=(i=this.layout.margin)===null||i===void 0?void 0:i.b)!==null&&n!==void 0?n:0),0)}updateAxisPositions(){var e=this.getPlotWidth(),t=this.getPlotHeight();this.chartUtils.updateFigureAxes(this.layout,this.figure,n=>this.getAxisRangeParser(n,this.formatter),e,t)}updateLayoutFormats(){if(this.formatter){var e=this.chartUtils.getAxisFormats(this.figure,this.formatter);e.forEach((t,n)=>{ye.debug("Assigning ".concat(n),this.layout[n],t);var i=this.layout[n];i!=null?Object.assign(i,t):ye.debug("Ignoring null layout.".concat(n))})}}setDataArrayForSeries(e,t,n){var{name:i,plotStyle:a}=e,l=this.seriesDataMap.get(i),s=this.chartUtils.getPlotlyProperty(a,t);l&&nl(l,s,n)}cleanSeries(e){var{dh:t}=this,{name:n,plotStyle:i}=e,a=this.seriesDataMap.get(n);if(a!=null){if(i===t.plot.SeriesPlotStyle.HISTOGRAM){var{xLow:l,xHigh:s}=a;if(l&&s&&l.length===s.length){for(var o=[],u=0;u<l.length;u+=1)o.push(s[u]-l[u]);a.width=o}}else if(i===t.plot.SeriesPlotStyle.LINE||i===t.plot.SeriesPlotStyle.ERROR_BAR||i===t.plot.SeriesPlotStyle.BAR){var{x:d,xLow:h,xHigh:c,y:v,yLow:g,yHigh:m}=a;h&&c&&h!==d&&(a.error_x=k.getPlotlyErrorBars(d,h,c)),g&&m&&g!==v&&(a.error_y=k.getPlotlyErrorBars(v,g,m))}else if(i===t.plot.SeriesPlotStyle.TREEMAP){var{ids:f,labels:b}=a;f!==void 0&&b===void 0&&(a.labels=f)}}}getData(){return this.data}getLayout(){return this.layout}getFilterColumnMap(){return new Map(this.filterColumnMap)}isFilterRequired(){return this.oneClicks.find(e=>e.requireAllFiltersToDisplay)!=null}setFilter(e){var t=this;if(this.oneClicks.length===0){ye.warn("Trying to set a filter, but no one click!");return}ye.debug("setFilter",e);for(var n=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)n();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}}ce(pn,"ADD_SERIES_DEBOUNCE",50);function _i(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(n,i)}function mr(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){_i(a,n,i,l,s,"next",o)}function s(o){_i(a,n,i,l,s,"throw",o)}l(void 0)})}}class Bt{static makeModelFromSettings(e,t,n){return mr(function*(){var i=yield Bt.makeFigureFromSettings(e,t,n);return new pn(e,i,t)})()}static makeFigureFromSettings(e,t,n){return mr(function*(){var i=yield n.copy();return i.applyCustomColumns(n.customColumns),i.applyFilter(n.filter),i.applySort(n.sort),e.plot.Figure.create(new k(e).makeFigureSettings(t,i))})()}static makeModel(e,t,n){return mr(function*(){return new pn(e,n,t)})()}}function Vi(r){return r.setFigure!==void 0}function Dd(r){return typeof r.id=="string"&&r.layout instanceof ho&&r.panelManager instanceof co&&typeof r.registerComponent=="function"}function Yt(r){if(!Dd(r))throw new Error("Expected dashboard plugin props, but instead received ".concat(r))}function en(r,e,t,n){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.");Te.useEffect(()=>{var l=r(a,e,t,n);return()=>{l()}},[e,n,t,a,r])}function Jn(){var r=E.useContext(vo);if(r==null)throw new Error("LayoutManager not available, did you add a LayoutManagerContext.Provider to the tree?");return r}function $i(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function Fd(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?$i(Object(t),!0).forEach(function(n){Nd(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):$i(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function Nd(r,e,t){return(e=Md(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Md(r){var e=Rd(r,"string");return typeof e=="symbol"?e:e+""}function Rd(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var Id=E.lazy(()=>zn(()=>import("./IrisGrid-C-NLcI7a.js"),__vite__mapDeps([13,1,2,3,4,5,8,9,14,11,15,16]),import.meta.url)),er=E.forwardRef((r,e)=>p.jsx(E.Suspense,{fallback:p.jsx(pt,{}),children:p.jsx(Id,Fd({ref:e},r))}));er.displayName="LazyIrisGrid";var Fr;(function(r){r.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS="filter-control-change-clears-all-filters",r.LINK_CHANGE_CLEARS_ALL_FILTERS="link-change-clears-all-filters"})(Fr||(Fr={}));const Hi=Fr;var kd=Object.freeze([[Hi.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS,!1],[Hi.LINK_CHANGE_CLEARS_ALL_FILTERS,!1]]);const Al={DEFAULTS:kd};var Nr;(function(r){r.COUNT="Count",r.MIN="Min",r.MAX="Max",r.SUM="Sum",r.ABS_SUM="AbsSum",r.VAR="Var",r.AVG="Avg",r.MEDIAN="Median",r.STD="Std",r.FIRST="First",r.LAST="Last",r.SKIP="Skip",r.COUNT_DISTINCT="CountDistinct",r.DISTINCT="Distinct",r.UNIQUE="Unique"})(Nr||(Nr={}));const Y=Nr;var ef=[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],Ld=r=>{switch(r){default:return!1}},Ad=r=>{switch(r){case Y.MEDIAN:return!0;default:return!1}},xl=(r,e)=>{switch(r){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}},jl=(r,e)=>r.filter(t=>t.isProxy!==!0&&xl(e,t.type)),xd=(r,e,t,n)=>jl(r,e).map(i=>{var{name:a}=i;return a}).filter(i=>t.includes(i)?!n:n);const gr={isValidOperation:xl,isRollupOperation:Ld,isRollupProhibited:Ad,filterValidColumns:jl,getOperationColumnNames:xd};function jd(r){return(r==null?void 0:r.hasExpandableRows)!==void 0}function ln(r,e,t){return(e=_d(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function _d(r){var e=Vd(r,"string");return typeof e=="symbol"?e:e+""}function Vd(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var Mr;(function(r){r.DOWN="DOWN",r.UP="UP",r.LEFT="LEFT",r.RIGHT="RIGHT"})(Mr||(Mr={}));class A{static normalize(e,t,n,i){var a=e,l=t,s=n,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,n,i){return new A(...A.normalize(e,t,n,i))}static makeCell(e,t){return new A(e,t,e,t)}static makeColumn(e){return new A(e,null,e,null)}static makeRow(e){return new A(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(),n=!0;n;){n=!1;for(var i=0;i<t.length&&!n;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)){n=!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=A.minOrNull(a.startColumn,s.startColumn),h=A.maxOrNull(a.endColumn,s.endColumn);n=!0,t[i]=new A(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=A.minOrNull(a.startRow,s.startRow),m=A.maxOrNull(a.endRow,s.endRow);n=!0,t[i]=new A(c,g,v,m),t.splice(l,1);break}}}return t}static isAxisRangeTouching(e,t,n,i){return e==null?t==null||n==null?!0:n<=t+1:t==null?i==null?!0:i>=e-1:n==null?i==null?!0:e<=i+1:i==null?t>=n-1:n>=e-1?n<=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 n=0;n<e.length;n+=1)if(!e[n].equals(t[n]))return!1;return!0}static intersection(e,t){var n,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):(n=u)!==null&&n!==void 0?n: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 A(u,d,h,c)}static subtractFromRange(e,t){var n=[],i=A.intersection(e,t);return i==null?[e]:(i.startRow!=null&&(e.startRow==null||e.startRow<i.startRow)&&n.push(new A(e.startColumn,e.startRow,e.endColumn,i.startRow-1)),i.startColumn!=null&&(e.startColumn==null||e.startColumn<i.startColumn)&&n.push(new A(e.startColumn,i.startRow,i.startColumn-1,i.endRow)),i.endColumn!=null&&(e.endColumn==null||e.endColumn>i.endColumn)&&n.push(new A(i.endColumn+1,i.startRow,e.endColumn,i.endRow)),i.endRow!=null&&(e.endRow==null||e.endRow>i.endRow)&&n.push(new A(e.startColumn,i.endRow+1,e.endColumn,e.endRow)),n)}static subtractFromRanges(e,t){for(var n=[],i=0;i<e.length;i+=1)n.push(...A.subtractFromRange(e[i],t));return n}static subtractRangesFromRanges(e,t){for(var n=[...e],i=0;i<t.length;i+=1)n=A.subtractFromRanges(n,t[i]);return n}static isBounded(e){return e.startRow!=null&&e.startColumn!=null&&e.endRow!=null&&e.endColumn!=null}static boundedRange(e,t,n){var i,a,l,s;return A.isBounded(e)?e:new A((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:n-1)}static boundedRanges(e,t,n){return e.map(i=>A.boundedRange(i,t,n))}static offset(e,t,n){return new A(e.startColumn!=null?e.startColumn+t:null,e.startRow!=null?e.startRow+n:null,e.endColumn!=null?e.endColumn+t:null,e.endRow!=null?e.endRow+n:null)}static nextCell(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:A.SELECTION_DIRECTION.DOWN;if(e.length===0)return null;var a=-1;if(t!=null&&n!=null&&(a=e.findIndex(c=>c.containsCell(t,n)),a>=0)){var l=e[a],s=l.nextCell(t,n,i);if(s!=null)return s}switch(i){case A.SELECTION_DIRECTION.DOWN:case A.SELECTION_DIRECTION.RIGHT:{var o=a<e.length-1?a+1:0,u=e[o];return u.startCell(i)}case A.SELECTION_DIRECTION.LEFT:case A.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,n)=>{var i,a,l,s;return t+(((i=n.endRow)!==null&&i!==void 0?i:NaN)-((a=n.startRow)!==null&&a!==void 0?a:NaN)+1)*(((l=n.endColumn)!==null&&l!==void 0?l:NaN)-((s=n.startColumn)!==null&&s!==void 0?s:NaN)+1)},0)}static rowCount(e){return e.reduce((t,n)=>{var i,a;return t+((i=n.endRow)!==null&&i!==void 0?i:NaN)-((a=n.startRow)!==null&&a!==void 0?a:NaN)+1},0)}static columnCount(e){return e.reduce((t,n)=>{var i,a;return t+((i=n.endColumn)!==null&&i!==void 0?i:NaN)-((a=n.startColumn)!==null&&a!==void 0?a:NaN)+1},0)}static containsCell(e,t,n){for(var i=0;i<e.length;i+=1){var a=e[i];if(a.containsCell(t,n))return!0}return!1}static forEachCell(e,t){for(var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:A.SELECTION_DIRECTION.RIGHT,i=0;i<e.length;i+=1)e[i].forEach(t,n)}constructor(e,t,n,i){ln(this,"startColumn",void 0),ln(this,"startRow",void 0),ln(this,"endColumn",void 0),ln(this,"endRow",void 0),this.startColumn=e,this.startRow=t,this.endColumn=n,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 A.isAxisRangeTouching(this.startRow,this.endRow,e.startRow,e.endRow)&&A.isAxisRangeTouching(this.startColumn,this.endColumn,e.startColumn,e.endColumn)}subtract(e){return A.subtractFromRange(this,e)}startCell(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:A.SELECTION_DIRECTION.DOWN;if(!A.isBounded(this))throw new Error("Cannot get the startCell of an unbounded range");switch(e){case A.SELECTION_DIRECTION.DOWN:case A.SELECTION_DIRECTION.RIGHT:return{column:this.startColumn,row:this.startRow};case A.SELECTION_DIRECTION.LEFT:case A.SELECTION_DIRECTION.UP:return{column:this.endColumn,row:this.endRow};default:throw new Error("Invalid direction: ".concat(e))}}nextCell(e,t,n){if(!A.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(n){case A.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 A.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 A.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 A.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(n))}return null}forEach(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:A.SELECTION_DIRECTION.RIGHT,n=0,{column:i,row:a}=this.startCell(t);i!=null&&a!=null;){var l;e(i,a,n),n+=1,{column:i,row:a}=(l=this.nextCell(i,a,t))!==null&&l!==void 0?l:{}}}}ln(A,"SELECTION_DIRECTION",Mr);function $d(r){return Array.isArray(r)&&r.length===2&&(r[0]===null||typeof r[0]=="number")&&(r[1]===null||typeof r[1]=="number")}function Tn(r){return $d(r)&&r[0]!=null&&r[1]!=null}function Gi(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function Pn(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Gi(Object(t),!0).forEach(function(n){_l(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Gi(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function _l(r,e,t){return(e=Hd(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Hd(r){var e=Gd(r,"string");return typeof e=="symbol"?e:e+""}function Gd(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}function tf(r){return(r==null?void 0:r.href)!==void 0}class G{static getGridPointFromXY(e,t,n){var i=G.getColumnAtX(e,n),a=G.getRowAtY(t,n),l=G.getColumnHeaderDepthAtY(t,n);return{x:e,y:t,row:a,column:i,columnHeaderDepth:l}}static getCellInfoFromXY(e,t,n){var{row:i,column:a}=G.getGridPointFromXY(e,t,n),{allColumnWidths:l,allRowHeights:s,allColumnXs:o,allRowYs:u,modelColumns:d,modelRows:h}=n,c=i!==null?h.get(i):null,v=a!==null?d.get(a):null,g=a!==null?o.get(a):null,m=i!==null?u.get(i):null,f=a!==null?l.get(a):null,b=i!==null?s.get(i):null;return{row:i,column:a,modelRow:c??null,modelColumn:v??null,left:g??null,top:m??null,columnWidth:f??null,rowHeight:b??null}}static getColumnHeaderDepthAtY(e,t){var n=G.getRowAtY(e,t),{columnHeaderHeight:i,columnHeaderMaxDepth:a}=t;if(n===null&&e<=i*a)return Ge(a-Math.ceil(e/i),0,a-1)}static iterateFloatingStart(e,t,n){for(var i=0;i<e&&i<t;i+=1){var a=n(i);if(a!==void 0)return a}}static iterateFloatingEnd(e,t,n){for(var i=0;i<e&&t-(e-i)>=0;i+=1){var a=n(t-(e-i));if(a!==void 0)return a}}static iterateFloating(e,t,n,i){var a=G.iterateFloatingStart(e,n,i);return a!==void 0?a:G.iterateFloatingEnd(t,n,i)}static iterateAllItems(e,t,n,i,a,l){var s=Math.max(e,n),o=Math.min(t,a-i-1),u=G.iterateFloating(n,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,n,i){var a,l,s=(a=t.get(e))!==null&&a!==void 0?a:0,o=(l=n.get(e))!==null&&l!==void 0?l:0;return s<=i&&i<=s+o}static getItemAtOffset(e,t,n,i,a,l,s){var o=arguments.length>7&&arguments[7]!==void 0?arguments[7]:!1,u=o?void 0:G.iterateFloating(n,i,t,c=>{if(G.isInItem(c,l,s,e))return c});if(!o&&u!==void 0)return u;for(var d=0;d<a.length;d+=1){var h=a[d];if(G.isInItem(h,l,s,e))return h}return null}static getColumnAtX(e,t){var n=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,n)}static getRowAtY(e,t){var{floatingTopRowCount:n,floatingBottomRowCount:i,rowCount:a,visibleRows:l,allRowYs:s,allRowHeights:o,gridY:u}=t;return e<u?null:this.getItemAtOffset(e-u,a,n,i,l,s,o)}static getNextShownItem(e,t,n,i){var a=n.findIndex(o=>o===e)||0;for(a-=1;a!=null&&a>=0;){var l=n[a],s=t.get(l);if(s!=null&&i.get(s)!==0)return l;a-=1}return null}static getNextShownColumn(e,t){var{modelColumns:n,visibleColumns:i,userColumnWidths:a}=t;return G.getNextShownItem(e,n,i,a)}static getNextShownRow(e,t){var{modelRows:n,visibleRows:i,userRowHeights:a}=t;return G.getNextShownItem(e,n,i,a)}static getColumnSeparatorIndex(e,t,n,i){var{rowHeaderWidth:a,columnHeaderHeight:l,floatingColumns:s,floatingLeftWidth:o,visibleColumns:u,allColumnXs:d,allColumnWidths:h,columnHeaderMaxDepth:c}=n,{allowColumnResize:v,headerSeparatorHandleSize:g}=i;if(c*l<t||!v||g<=0)return null;for(var m=e-a,f=g*.5,b=!1,y=s.length-1;y>=0;y-=1){var C,T,w=s[y],P=(C=d.get(w))!==null&&C!==void 0?C:0,R=(T=h.get(w))!==null&&T!==void 0?T:0,F=R===0;if(!b||!F){var D=P+R;F?D+=f:b&&(D-=f);var M=D-f,I=D+f;if(M<=m&&m<=I)return w;b=F}}b=!1;for(var j=u.length-1;j>=0;j-=1){var V,B,K=u[j],re=(V=d.get(K))!==null&&V!==void 0?V:0,le=(B=h.get(K))!==null&&B!==void 0?B:0,me=le===0;if(re<o-le)return null;if(!b||!me){var ge=re+le;me?ge+=f:b&&(ge-=f);var Ve=ge-f,L=ge+f;if(Ve<=m&&m<=L)return K;b=me}}return null}static isItemHidden(e,t){return t.get(e)===0}static isColumnHidden(e,t){var{allColumnWidths:n}=t;return G.isItemHidden(e,n)}static isFloatingRow(e,t){if(e==null)return!1;var{floatingTopRowCount:n,floatingBottomRowCount:i,rowCount:a}=t;return e<n||e>=a-i}static isFloatingColumn(e,t){if(e==null)return!1;var{floatingLeftColumnCount:n,floatingRightColumnCount:i,columnCount:a}=t;return e<n||e>=a-i}static getHiddenItems(e,t,n){if(!G.isItemHidden(e,t))return[];for(var i=[e],a=n.findIndex(o=>o===e),l=a-1;l>=0;l-=1){var s=n[l];if(!G.isItemHidden(s,t))break;i.push(s)}return i}static getHiddenColumns(e,t){var{visibleColumns:n,allColumnWidths:i}=t;return G.getHiddenItems(e,i,n)}static getRowSeparatorIndex(e,t,n,i){var{rowHeaderWidth:a,columnHeaderHeight:l,visibleRows:s,allRowYs:o,allRowHeights:u}=n,{allowRowResize:d,headerSeparatorHandleSize:h}=i;if(a<e||!d||h<=0)return null;for(var c=t-l,v=h*.5,g=!1,m=s.length-1;m>=0;m-=1){var f,b,y=s[m],C=(f=o.get(y))!==null&&f!==void 0?f:0,T=(b=u.get(y))!==null&&b!==void 0?b:0,w=T===0;if(!g||!w){var P=C+T;w?P+=v:g&&(P-=v);var R=P-v,F=P+v;if(R<=c&&c<=F)return y;g=w}}return null}static isRowHidden(e,t){var{allRowHeights:n}=t;return G.isItemHidden(e,n)}static getHiddenRows(e,t){var{visibleRows:n,allRowHeights:i}=t;return G.getHiddenItems(e,i,n)}static moveItem(e,t,n){if(e===t)return[...n];var i=[...n],a=i[i.length-1];return a!=null&&!Tn(a.from)&&a.to===e?a.from===t?i.pop():i[i.length-1]=Pn(Pn({},a),{},{to:t}):i.push({from:e,to:t}),i}static moveRange(e,t,n){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(e[0]===e[1])return G.moveItem(e[0],t,n);var a=t;if(i&&e[0]<t&&(a-=e[1]-e[0]),e[0]===a)return[...n];var l=[...n],s=l[l.length-1];s!=null&&Tn(s.from)&&s.from[1]-s.from[0]===e[1]-e[0]&&s.to===e[0]?l[l.length-1]=Pn(Pn({},s),{},{to:a}):l.push({from:e,to:a});var o=l[l.length-1];return Tn(o.from)&&o.from[0]===o.to&&l.pop(),l}static moveItemOrRange(e,t,n){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;return Array.isArray(e)?G.moveRange(e,t,n,i):G.moveItem(e,t,n)}static applyItemMoves(e,t,n){for(var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,a=[[e,t]],l=function(){var{from:u,to:d}=n[s],h=1,c;Tn(u)?(h=u[1]-u[0]+1,[c]=u):c=u;for(var v=i?d:c,g=v+h-1,m=i?c:d,f=m-v,b=[],y=function(){var w,P,R=(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=[[R,v-1],[v,g],[g+1,F]].map(I=>{var[j,V]=I;return[Math.max(j,R),Math.min(V,F)]}).filter(I=>{var[j,V]=I;return j<=V}).map(I=>{var[j,V]=I;return v<=j&&g>=V?(D=[j+f,V+f],D):g<j?[j-h,V-h]:I}).map(I=>{var[j,V]=I;return m>j&&m<=V?[[j,m-1],[m+h,V+h]]:I===D?[I]:m<=j?[[j+h,V+h]]:[I]}).flat();b.push(...M)},C=0;C<a.length;C+=1)y();a=b.map(T=>{var[w,P]=T;return[Number.isFinite(w)?w:null,Number.isFinite(P)?P:null]})},s=i?n.length-1:0;i?s>=0:s<n.length;i?s-=1:s+=1)l();return a}static translateRange(e,t,n,i){for(var a=G.applyItemMoves(e.startColumn,e.endColumn,t,i),l=G.applyItemMoves(e.startRow,e.endRow,n,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 A(u[0],h[0],u[1],h[1]))}return s}static getModelIndex(e,t){var n=G.applyItemMoves(e,e,t,!0)[0][0];return n}static getModelIndexes(e,t){return e.map(n=>G.getModelIndex(n,t))}static getModelRangeIndexes(e,t,n){return G.applyItemMoves(e,t,n,!0)}static getModelRange(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:ee,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:ee;return G.translateRange(e,t,n,!0)}static getModelRanges(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:ee,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:ee,i=[],a=0;a<e.length;a+=1)i.push(...G.getModelRange(e[a],t,n));return i}static getVisibleRangeIndexes(e,t,n){return G.applyItemMoves(e,t,n,!1)}static getVisibleRange(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:ee,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:ee;return this.translateRange(e,t,n,!1)}static getVisibleRanges(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:ee,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:ee,i=[],a=0;a<e.length;a+=1)i.push(...G.getVisibleRange(e[a],t,n));return i}static getVisibleIndex(e,t){var n=G.applyItemMoves(e,e,t)[0][0];return n}static getVisibleIndexes(e,t){return e.map(n=>G.getVisibleIndex(n,t))}static isMacPlatform(){var{platform:e}=window.navigator;return e.startsWith("Mac")}static getModifierKey(){return G.isMacPlatform()?"metaKey":"ctrlKey"}static isModifierKeyDown(e){var t=G.getModifierKey();return e[t]}static checkColumnHidden(e,t){return t.get(e)===0}static checkAllColumnsHidden(e,t){return t.size===0?!1:e.every(n=>t.get(n)===0)}static getScrollDragBounds(e,t,n){var{gridX:i,gridY:a,width:l,height:s,floatingTopRowCount:o,floatingBottomRowCount:u,floatingLeftColumnCount:d,floatingRightColumnCount:h,floatingLeftWidth:c,floatingRightWidth:v,floatingTopHeight:g,floatingBottomHeight:m,columnCount:f,rowCount:b}=e,y=i,C=a,T=l,w=s;return n!=null&&(n>d&&(y+=c),n<f-h&&(T-=v)),t!=null&&(t>o&&(C+=g),t<b-u&&(w-=m)),{x1:y,y1:C,x2:T,y2:w}}static getScrollDelta(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1024,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:768,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:20,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:20,{deltaX:l,deltaY:s}=e;return!G.isMacPlatform()&&e.shiftKey&&e.deltaX===0&&e.deltaY!==0&&(l=e.deltaY,s=e.deltaX),(e==null?void 0:e.deltaMode)===WheelEvent.DOM_DELTA_PAGE?(l*=t,s*=n):(e==null?void 0:e.deltaMode)===WheelEvent.DOM_DELTA_LINE&&(G.isMacPlatform()?(l=Math.round(l*i),s=Math.round(s*a)):(l=Math.round(l*this.PIXELS_PER_LINE),s=Math.round(s*this.PIXELS_PER_LINE))),{deltaX:l,deltaY:s}}static compareRanges(e,t){return e[0]==null||e[1]==null||t[0]==null||t[1]==null?0:e[0]!==t[0]?e[0]-t[0]:e[1]-t[1]}static mergeSortedRanges(e){for(var t=[],n=0;n<e.length;n+=1){var i=e[n],a=i[0],l=i[1];n===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:n,y1:i,x2:a,y2:l}=e,{gridX:s,gridY:o,width:u,height:d,verticalBarWidth:h,horizontalBarHeight:c}=t,v=Ge(s+n,s,u-h),g=Ge(s+a,s,u-h),m=Ge(o+i,o,d-c),f=Ge(o+l,o,d-c);return{x1:v,y1:m,x2:g,y2:f,token:e.token}}static getTextRenderMetrics(e,t,n){var{metrics:i,model:a,theme:l}=e,{firstColumn:s,allColumnXs:o,allColumnWidths:u,allRowYs:d,allRowHeights:h,modelRows:c,modelColumns:v}=i,{cellHorizontalPadding:g,treeDepthIndent:m,treeHorizontalPadding:f}=l,b=Lt(c,n),y=Lt(v,t),C=a.textAlignForCell(y,b),T=Lt(o,t),w=Lt(d,n),P=Lt(u,t),R=Lt(h,n),F=t===s,D=0;jd(a)&&a.hasExpandableRows&&F&&(D=m*(a.depthForRow(n)+1)+f);var M=P-D,I=T+g,j=w+R*.5;return C==="right"?I=T+M-g:C==="center"&&(I=T+M*.5),I+=D,{width:M-g*2,x:I,y:j}}static findTokensWithProtocolInText(e){var t=Us(e);return t.filter(n=>n.type==="url"?/^https?:\/\//.test(n.value):!0)}}_l(G,"PIXELS_PER_LINE",100/3);function Bi(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function Ui(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Bi(Object(t),!0).forEach(function(n){Bd(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Bi(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function Bd(r,e,t){return(e=Ud(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Ud(r){var e=Wd(r,"string");return typeof e=="symbol"?e:e+""}function Wd(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}function Rr(r,e){var t=!1,n=Be(r,Ui(Ui({},e),{},{dispose:()=>{t||(t=!0,n.clear(),t=!1)}}));return n}function zd(r,e,t){return(e=qd(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function qd(r){var e=Kd(r,"string");return typeof e=="symbol"?e:e+""}function Kd(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var br=5e3;class Xd extends Ws{constructor(){super(...arguments),zd(this,"getCachedTokensInText",Rr((e,t)=>{if(t>=e.length)return G.findTokensWithProtocolInText(e);var n=e.slice(t-1,br).search(/\s/),i=t+n;n===-1&&(i=Math.min(br,e.length));var a=e.substring(0,i);return G.findTokensWithProtocolInText(a)},{max:1e4}))}get floatingTopRowCount(){return 0}get floatingBottomRowCount(){return 0}get floatingLeftColumnCount(){return 0}get floatingRightColumnCount(){return 0}get columnHeaderMaxDepth(){return 1}truncationCharForCell(e,t){}textAlignForCell(e,t){return"left"}colorForCell(e,t,n){return n.textColor}backgroundColorForCell(e,t,n){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 n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:br,i=this.textForCell(e,t);return this.getCachedTokensInText(i,n)}renderTypeForCell(e,t){return"text"}}function Ir(r,e,t){return(e=Yd(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Yd(r){var e=Zd(r,"string");return typeof e=="symbol"?e:e+""}function Zd(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var ft=[],Qd=new Set;class z extends Xd{constructor(e){super(),Ir(this,"dh",void 0),Ir(this,"listenerCount",void 0),this.dh=e,this.listenerCount=0}addEventListener(e,t,n){super.addEventListener(e,t,n),this.listenerCount+=1,this.listenerCount===1&&this.startListening()}removeEventListener(e,t,n){super.removeEventListener(e,t,n),this.listenerCount-=1,this.listenerCount===0&&this.stopListening()}startListening(){}stopListening(){}get aggregatedColumns(){return ft}get groupedColumns(){return ft}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 ft}get initialMovedRows(){return ft}get initialColumnHeaderGroups(){return ft}get layoutHints(){return null}get frontColumns(){return ft}get backColumns(){return ft}get keyColumnSet(){return Qd}get frozenColumns(){return ft}isColumnFrozen(e){return!1}isColumnSortable(e){return!1}get isFilterRequired(){return!1}get isReversible(){return!0}get isColumnStatisticsAvailable(){return!1}get description(){return""}get isAggregatedColumnsAvailable(){return!1}get isCustomColumnsAvailable(){return!1}get isFormatColumnsAvailable(){return!1}get isExportAvailable(){return!1}get isValuesTableAvailable(){return!1}get isChartBuilderAvailable(){return!1}get isOrganizeColumnsAvailable(){return!1}get isRollupAvailable(){return!1}get isSelectDistinctAvailable(){return!1}get isTotalsAvailable(){return!1}get isViewportPending(){return!1}isFilterable(e){return!1}close(){}isRowMovable(){return!1}get isSeekRowAvailable(){return!1}dataBarOptionsForCell(e,t,n){throw new Error("Method not implemented.")}tooltipForCell(e,t){return null}}Ir(z,"EVENT",Object.freeze({UPDATED:"UPDATED",FORMATTER_UPDATED:"FORMATTER_UPDATED",REQUEST_FAILED:"REQUEST_FAILED",COLUMNS_CHANGED:"COLUMNS_CHANGED",TABLE_CHANGED:"TABLE_CHANGED",FILTERS_CHANGED:"FILTERS_CHANGED",SORTS_CHANGED:"SORTS_CHANGED",DISCONNECT:"DISCONNECT",RECONNECT:"RECONNECT",TOTALS_UPDATED:"TOTALS_UPDATED",PENDING_DATA_UPDATED:"PENDING_DATA_UPDATED",VIEWPORT_UPDATED:"VIEWPORT_UPDATED"}));function St(r,e,t){return(e=Jd(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Jd(r){var e=eh(r,"string");return typeof e=="symbol"?e:e+""}function eh(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var th=J.module("ColumnHeaderGroup");function Cr(r){return r instanceof Cn}class Cn{constructor(e){var{name:t,children:n,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=G.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=n,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(n=>t.delete(n)),this.children=[...t]}get isNew(){return this.name.startsWith(Cn.NEW_GROUP_PREFIX)}}St(Cn,"NEW_GROUP_PREFIX",":newGroup");function Qe(r){return(r==null?void 0:r.isPartitionRequired)!==void 0&&(r==null?void 0:r.partitionColumns)!==void 0&&(r==null?void 0:r.partitionKeysTable)!==void 0&&(r==null?void 0:r.partitionMergedTable)!==void 0&&(r==null?void 0:r.partitionTable)!==void 0}function nh(r){return Qe(r)&&r.partitionConfig!==void 0}var rh=["selectedValues"],ih=["selectedValues"];function Wi(r,e){if(r==null)return{};var t,n,i=ah(r,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(r);for(n=0;n<a.length;n++)t=a[n],e.indexOf(t)===-1&&{}.propertyIsEnumerable.call(r,t)&&(i[t]=r[t])}return i}function ah(r,e){if(r==null)return{};var t={};for(var n in r)if({}.hasOwnProperty.call(r,n)){if(e.indexOf(n)!==-1)continue;t[n]=r[n]}return t}function zi(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function $e(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?zi(Object(t),!0).forEach(function(n){kr(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):zi(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function kr(r,e,t){return(e=lh(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function lh(r){var e=sh(r,"string");return typeof e=="symbol"?e:e+""}function sh(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var tn=J.module("IrisGridUtils");function nf(r){return r.partition!==void 0}function qi(r){return Array.isArray(r.partitions)}function mt(r,e){return r>=0&&r<e.length}function oh(r){return(r==null?void 0:r.asDate)!=null}class ${static dehydrateGridState(e,t){var{isStuckToBottom:n,isStuckToRight:i,movedColumns:a,movedRows:l}=t,{columns:s}=e;return{isStuckToBottom:n,isStuckToRight:i,movedColumns:[...a].filter(o=>{var{to:u,from:d}=o;return mt(u,s)&&(typeof d=="number"&&mt(d,s)||Array.isArray(d)&&mt(d[0],s)&&mt(d[1],s))}).map(o=>{var{to:u,from:d}=o;return{to:s[u].name,from:Array.isArray(d)?[s[d[0]].name,s[d[1]].name]:s[d].name}}),movedRows:[...l]}}static hydrateGridState(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[],{isStuckToBottom:i,isStuckToRight:a,movedColumns:l,movedRows:s}=t,{columns:o}=e,u=$.parseCustomColumnNames(n),d=o.map(h=>{var{name:c}=h;return c}).concat(u);return{isStuckToBottom:i,isStuckToRight:a,movedColumns:[...l].map(h=>{var{to:c,from:v}=h,g=m=>typeof m=="string"?d.findIndex(f=>f===m):m;return{to:g(c),from:Array.isArray(v)?[g(v[0]),g(v[1])]:g(v)}}).filter(h=>{var{to:c,from:v}=h;return mt(c,d)&&(typeof v=="number"&&mt(v,d)||Array.isArray(v)&&mt(v[0],d)&&mt(v[1],d))}),movedRows:[...s]}}static dehydrateIrisGridPanelState(e,t){var{isSelectingPartition:n,partitions:i,advancedSettings:a}=t;return{isSelectingPartition:n,partitions:i,advancedSettings:[...a]}}static hydrateIrisGridPanelState(e,t){var{isSelectingPartition:n,advancedSettings:i}=t,a=[];return qi(t)?a=t.partitions:t.partition!=null&&(a=[t.partition]),{isSelectingPartition:n,partitions:a,advancedSettings:new Map([...Al.DEFAULTS,...i])}}static dehydrateQuickFilters(e){return[...e].map(t=>{var[n,i]=t,{text:a}=i;return[n,{text:a}]})}static dehydrateLong(e){return e!=null?"".concat(e):null}static dehydrateSort(e){return e.map(t=>{var{column:n,isAbs:i,direction:a}=t;return{column:n.name,isAbs:i,direction:a}})}static extractTableSettings(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],{irisGridPanelState:n,irisGridState:i}=e,a=qi(n)?n.partitions:[n.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(n=>{var{name:i,type:a}=n;return e.find(l=>{var{name:s,type:o}=l;return s===i&&o===a})})}static getFiltersFromFilterMap(e){for(var t=[],n=Array.from(e.keys()),i=0;i<n.length;i+=1){var a=n[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[,n]=t;return n===0}).map(t=>{var[n]=t;return n})}static parseCustomColumnNames(e){return e.map(t=>t.split("=")[0])}static getRemovedCustomColumnNames(e,t){var n=$.parseCustomColumnNames(e),i=$.parseCustomColumnNames(t);return n.filter(a=>!i.includes(a))}static removeSortsInColumns(e,t){return e.filter(n=>!t.includes(n.column.name))}static removeFiltersInColumns(e,t,n){var i=e.map(l=>{var{name:s}=l;return s}),a=new Map(t);return n.forEach(l=>a.delete(i.indexOf(l))),a}static removeColumnFromMovedColumns(e,t,n){for(var i=e.map(o=>{var{name:u}=o;return u}),a=[...t],l=function(){for(var u=n[s],d=i.findIndex(b=>b===u),h=[],c=0;c<a.length;c+=1){var v=a[c],g=$e({},v),[m,f]=Array.isArray(v.from)?v.from:[v.from,v.from];d<=v.to&&(g.to-=1),d<m&&(m-=1),d<=f&&(f-=1),m<=f&&m!==g.to&&(m===f?h.push($e($e({},g),{},{from:m})):h.push($e($e({},g),{},{from:[m,f]}))),d=G.applyItemMoves(d,d,[v])[0][0]}a=h,i.splice(i.findIndex(b=>b===u),1)},s=0;s<n.length;s+=1)l();return a}static removeColumnsFromSelectDistinctColumns(e,t){return e.filter(n=>!t.includes(n))}static getVisibleColumnsInRange(e,t,n,i,a){for(var l=[],s=t;s<=n;s+=1){var o=G.getModelIndex(s,i);o>=0&&o<e.length&&!a.includes(o)&&l.push(e[o])}return l}static getPrevVisibleColumns(e,t,n,i,a){for(var l=[],s=t;s>=0&&l.length<n;){var o=G.getModelIndex(s,i);o>=0&&o<e.length&&!a.includes(o)&&l.unshift(e[o]),s-=1}return l}static getNextVisibleColumns(e,t,n,i,a){for(var l=[],s=t;s<e.length&&l.length<n;){var o=G.getModelIndex(s,i);o>=0&&o<e.length&&!a.includes(o)&&l.push(e[o]),s+=1}return l}static getColumnsToFetch(e,t,n){var i=[...t];return n.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,n,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||n==null)){var o=$.getVisibleColumnsInRange(e,t,n,i,a),u=o.length*s,d=$.getPrevVisibleColumns(e,t-1,u,i,a),h=$.getNextVisibleColumns(e,n+1,u,i,a),c=[...d,...o,...h];return $.getColumnsToFetch(e,c,l)}}static isValidSnapshotRanges(e){if(e==null||e.length===0)return!1;for(var t=new Map,n=0;n<e.length;n+=1){var i=e[n],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 n=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;n.add(l)}}return[...n].map(u=>t[u])}static snapshotDataToMatrix(e){for(var{columns:t,rows:n}=e,i=[],a=0;a<n.length;a+=1){for(var l=n[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,n){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=[]}=n??{},h=d.filter(y=>{var{operation:C}=y;return!gr.isRollupProhibited(C)}),c=h.map(y=>{var{operation:C,selected:T,invert:w}=y;return gr.isRollupOperation(C)?[]:gr.getOperationColumnNames(e,C,T,w)}),v={},g=0;g<h.length;g+=1)v[h[g].operation]=c[g];if(o){var m=new Set(e.map(y=>y.name).filter(y=>!l.includes(y)));if(c.forEach(y=>{y.forEach(C=>m.delete(C))}),m.size>0){var f,b=(f=v[Y.FIRST])!==null&&f!==void 0?f:[];v[Y.FIRST]=[...b,...m]}}return{groupingColumns:l,includeConstituents:s,includeDescriptions:u,aggregations:v}}static getPendingErrors(e){e.forEach((t,n)=>{if(!$.isValidIndex(n))throw new Error("Invalid rowIndex ".concat(n));var{data:i}=t;i.forEach((a,l)=>{if(!$.isValidIndex(l))throw new Error("Invalid columnIndex ".concat(l))})})}static getColumn(e,t){return t<e.length?e[t]:(tn.error("Unable to retrieve column",t,">=",e.length),null)}static getColumnByName(e,t){var n=e.find(i=>{var{name:a}=i;return a===t});return n==null&&tn.error("Unable to retrieve column by name",t,e.map(i=>{var{name:a}=i;return a})),n}static changeFilterColumnNamesToIndexes(e,t){return t.map(n=>{var{name:i,filter:a}=n,l=e.findIndex(s=>s.name===i);return l<0?null:[l,a]}).filter(n=>n!=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 n="",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&&(n+=s==="eq"?" || ":" && "),n+=u}}return n}static parseColumnHeaderGroups(e,t){var n=1,i=new Map,a=new Map,l=t==null?void 0:t.filter(h=>{var{children:c}=h;return c!=null&&c.length>0});if(l.length===0)return{groups:[],maxDepth:n,parentMap:i,groupMap:a};var s=new Map(l.map(h=>[h.name,h])),o=new Set,u=h=>{var c,{name:v}=h;if(N(v,"Column header group has no name"),e.getColumnIndexByName(v)!=null)throw new Error("Column header group has same name as column: ".concat(v));var g=a.get(v);if(g)return g;var m=[],f=1;if(h.children==null)throw new Error("Column header group ".concat(v," has no children"));h.children.forEach(y=>{if(o.has(y))throw new Error("Column group child ".concat(y," specified in multiple groups"));o.add(y);var C=s.get(y),T=e.getColumnIndexByName(y);if(C){var w=u(C);m.push(...w.childIndexes),f=Math.max(f,w.depth+1)}else if(T!=null)m.push(T),f=Math.max(f,1);else throw new Error("Unknown child ".concat(y," in group ").concat(v))});var b=new Cn($e($e({},h),{},{name:v,children:h.children,depth:f,childIndexes:m.flat()}));return a.set(v,b),(c=h.children)===null||c===void 0||c.forEach(y=>i.set(y,b)),n=Math.max(n,b.depth+1),b},d=new Set;return l.forEach(h=>{var{name:c}=h;if(d.has(c))throw new Error("Duplicate column group name: ".concat(c));d.add(c),u(h)}),a.forEach(h=>{var c;h.setParent((c=i.get(h.name))===null||c===void 0?void 0:c.name)}),{groups:[...a.values()],maxDepth:n,groupMap:a,parentMap:i}}static convertValueToText(e,t){if(t!=null&&S.isCharType(t)&&e!=null&&typeof e=="number")return String.fromCharCode(e);if(S.isDateType(t)&&oh(e)){var n=new Date(e.asDate()),i=n.getTimezoneOffset(),a=new Date(n.getTime()-i*60*1e3),l=a.toISOString(),s=l.replace("T"," ").substring(0,23);return s}return e==null?"":"".concat(e)}constructor(e){kr(this,"dh",void 0),kr(this,"tableUtils",void 0),this.dh=e,this.tableUtils=new S(e),Ur(this)}dehydrateIrisGridState(e,t){var{aggregationSettings:n={aggregations:ee,showOnTop:!1},advancedFilters:i,customColumnFormatMap:a,isFilterBarShown:l,metrics:{userColumnWidths:s,userRowHeights:o}={userColumnWidths:jt,userRowHeights:jt},quickFilters:u,customColumns:d,conditionalFormats:h=ee,reverse:c,rollupConfig:v,showSearchBar:g,searchValue:m,selectDistinctColumns:f=ee,selectedSearchColumns:b,sorts:y,invertSearchColumns:C,pendingDataMap:T=jt,frozenColumns:w,columnHeaderGroups:P,partitionConfig:R}=t,{columns:F}=e,D=Qe(e)?e.partitionColumns:[];return{advancedFilters:this.dehydrateAdvancedFilters(F,i),aggregationSettings:n,customColumnFormatMap:[...a],isFilterBarShown:l,quickFilters:$.dehydrateQuickFilters(u),sorts:$.dehydrateSort(y),userColumnWidths:[...s].filter(M=>{var[I]=M;return I!=null&&I>=0&&I<F.length}).map(M=>{var[I,j]=M;return[F[I].name,j]}),userRowHeights:[...o],customColumns:[...d],conditionalFormats:[...h],reverse:c,rollupConfig:v,showSearchBar:g,searchValue:m,selectDistinctColumns:[...f],selectedSearchColumns:b,invertSearchColumns:C,pendingDataMap:this.dehydratePendingDataMap(F,T),frozenColumns:w,columnHeaderGroups:P==null?void 0:P.map(M=>{var I;return{name:M.name,children:M.children,color:(I=M.color)!==null&&I!==void 0?I:null}}),partitionConfig:this.dehydratePartitionConfig(D,R)}}hydrateIrisGridState(e,t){var n,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:m,reverse:f,rollupConfig:b=void 0,showSearchBar:y,searchValue:C,selectDistinctColumns:T,selectedSearchColumns:w,invertSearchColumns:P=!0,pendingDataMap:R=[],frozenColumns:F,columnHeaderGroups:D,partitionConfig:M}=t,{columns:I,formatter:j}=e,V=Qe(e)?e.partitionColumns:[];return{advancedFilters:this.hydrateAdvancedFilters(I,a,j.timeZone),aggregationSettings:l,customColumnFormatMap:new Map(s),isFilterBarShown:o,quickFilters:this.hydrateQuickFilters(I,u,j.timeZone),sorts:this.hydrateSort(I,d),userColumnWidths:new Map(v.map(B=>{var[K,re]=B;return typeof K=="string"||K instanceof String?[I.findIndex(le=>{var{name:me}=le;return me===K}),re]:[K,re]}).filter(B=>{var[K]=B;return K!=null&&K>=0&&K<I.length})),customColumns:h,conditionalFormats:c,userRowHeights:new Map(g),reverse:m===S.REVERSE_TYPE.POST_SORT||f,rollupConfig:b,showSearchBar:y,searchValue:C,selectDistinctColumns:T,selectedSearchColumns:w,invertSearchColumns:P,pendingDataMap:this.hydratePendingDataMap(I,R),frozenColumns:F,columnHeaderGroups:$.parseColumnHeaderGroups(e,(n=D??((i=e.layoutHints)===null||i===void 0?void 0:i.columnGroups))!==null&&n!==void 0?n:[]).groups,partitionConfig:this.hydratePartitionConfig(V,M)}}hydrateQuickFilters(e,t,n){var i=t.map(a=>{var[l,s]=a,{text:o}=s,u=null;try{var d=$.getColumn(e,l);d!=null&&(u=this.tableUtils.makeQuickFilter(d,o,n))}catch(h){tn.error("hydrateQuickFilters error with",o,h)}return[l,{text:o,filter:u}]});return new Map(i)}dehydrateAdvancedFilters(e,t){return[...t].map(n=>{var[i,a]=n,l=$.getColumn(e,i);N(l);var s=this.dehydrateAdvancedFilterOptions(l,a.options);return[i,{options:s}]})}hydrateAdvancedFilters(e,t,n){var i=t.map(a=>{var[l,s]=a,o=$.getColumn(e,l);N(o);var u=this.hydrateAdvancedFilterOptions(o,s.options),d=null;try{var h=$.getColumn(e,l);h!=null&&(d=this.tableUtils.makeAdvancedFilter(o,u,n))}catch(c){tn.error("hydrateAdvancedFilters error with",u,c)}return[l,{options:u,filter:d}]});return new Map(i)}dehydrateAdvancedFilterOptions(e,t){var{selectedValues:n}=t,i=Wi(t,rh);return $e({selectedValues:n==null?void 0:n.map(a=>this.dehydrateValue(a,e==null?void 0:e.type))},i)}hydrateAdvancedFilterOptions(e,t){var{selectedValues:n}=t,i=Wi(t,ih);return $e({selectedValues:n==null?void 0:n.map(a=>this.hydrateValue(a,e==null?void 0:e.type))},i)}dehydratePendingDataMap(e,t){return[...t].map(n=>{var[i,{data:a}]=n;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 n=new Map,i=a=>(n.has(a)||n.set(a,e.findIndex(l=>{var{name:s}=l;return s===a})),n.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:$e($e({},t),{},{partitions:t.partitions.map((n,i)=>this.dehydrateValue(n,e[i].type))})}hydratePartitionConfig(e,t){return t==null?t:$e($e({},t),{},{partitions:t.partitions.map((n,i)=>this.hydrateValue(n,e[i].type))})}dehydrateValue(e,t){return S.isDateType(t)?this.dehydrateDateTime(e):S.isLongType(t)?$.dehydrateLong(e):e}hydrateValue(e,t){return S.isDateType(t)?this.hydrateDateTime(e):S.isLongType(t)?this.hydrateLong(e):e}dehydrateDateTime(e){return e!=null?this.dh.i18n.DateTimeFormat.format(ae.FULL_DATE_FORMAT,e):null}hydrateDateTime(e){return e!=null?this.dh.i18n.DateTimeFormat.parse(ae.FULL_DATE_FORMAT,e):null}hydrateLong(e){return e!=null?this.dh.LongWrapper.ofString(e):null}hydrateSort(e,t){var{dh:n}=this;return t.map(i=>{var{column:a,isAbs:l,direction:s}=i;if(s===S.sortDirection.reverse)return n.Table.reverse();var o=typeof a=="string"?$.getColumnByName(e,a):$.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,n){var{columns:i}=e,a=[];t.quickFilters&&(a=$.getFiltersFromFilterMap(this.hydrateQuickFilters(i,t.quickFilters,n)));var l=[];t.advancedFilters&&(l=$.getFiltersFromFilterMap(this.hydrateAdvancedFilters(i,t.advancedFilters,n)));var s=this.getFiltersFromInputFilters(i,t.inputFilters,n),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(m=>$.getColumnByName(i,m)),v=0;v<c.length;v+=1)if(c[v]!==void 0&&d[v]!=null){var g=c[v].filter().eq(this.dh.FilterValue.ofString(d[v]));u=[g,...u]}}u=[...s,...u],e.applyFilter(u),e.applySort(o)}getFiltersFromInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],n=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,n)}catch(u){tn.debug("Unable to create input filter",u)}return null}).filter(i=>i!=null)}rangeSetFromRanges(e){var{dh:t}=this,n=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(n)}static colorForValue(e,t,n,i){return S.isDateType(t)||n==="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"}}function yr(r,e,t){return(e=uh(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function uh(r){var e=dh(r,"string");return typeof e=="symbol"?e:e+""}function dh(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class hh extends Error{constructor(e,t){super("".concat(t," can't be empty (on pending row ").concat(e+1,")")),yr(this,"isMissingKey",!0),yr(this,"rowIndex",void 0),yr(this,"columnName",void 0),this.rowIndex=e,this.columnName=t}}function Ki(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function On(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ki(Object(t),!0).forEach(function(n){X(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Ki(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function Xi(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(n,i)}function gt(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){Xi(a,n,i,l,s,"next",o)}function s(o){Xi(a,n,i,l,s,"throw",o)}l(void 0)})}}function X(r,e,t){return(e=ch(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function ch(r){var e=vh(r,"string");return typeof e=="symbol"?e:e+""}function vh(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var oe=J.module("IrisGridTableModelTemplate"),ph=150,fh=0;function ct(r){return r.table!==void 0}class Ut extends z{seekRow(e,t,n,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 n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new qe(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}=$.parseColumnHeaderGroups(this,(l=a==null?void 0:a.columnGroups)!==null&&l!==void 0?l:[]),c=(P,R)=>{var F=this.getColumnIndexByName(P);if(F==null)throw new Error("Unknown layout hint column: ".concat(P));var D=G.getVisibleIndex(F,d);d=G.moveItem(D,R,d)},v=(P,R)=>{var F=h.get(P);if(F==null)throw new Error("Unknown layout hint group: ".concat(P));var D=F.getVisibleRange(d);d=G.moveRange(D,R,d)},g=(s=a.frontColumns)!==null&&s!==void 0?s:[],m=(o=a.backColumns)!==null&&o!==void 0?o:[],f=(u=a.frozenColumns)!==null&&u!==void 0?u:[];if(g.length>0||m.length>0||f.length>0){var b=new Set,y=0;f==null||f.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;m==null||m.forEach(P=>{if(b.has(P))throw new Error("Column specified in multiple layout hints: ".concat(P));c(P,C),C-=1})}var T=a==null?void 0:a.columnGroups;if(T){var w=[...h.values()];w.sort((P,R)=>P.depth-R.depth),w.forEach(P=>{var R=P.children[0],F=this.getColumnIndexByName(R),D;if(F!=null)D=G.getVisibleIndex(F,d);else{var M=h.get(R);if(!M)throw new Error("Unknown column ".concat(R," in group ").concat(P.name));var I=M.getVisibleRange(d);[,D]=I}for(var j=1;j<P.children.length;j+=1){var V=P.children[j],B=h.get(V),K=this.getColumnIndexByName(V);if(B){var re=B.getVisibleRange(d)[0]<D,le=re?D-B.childIndexes.length+1:D+1;v(V,le),D=le+B.childIndexes.length-1}else if(K!=null){var me=G.getVisibleIndex(K,d)<D,ge=me?D:D+1;c(V,ge),D=ge}}})}return this._movedColumns=d,d})),X(this,"getMemoizedInitialColumnHeaderGroups",U(a=>{var l;return $.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",mi((a,l,s)=>{if(l<a){oe.error("Invalid viewport",a,l);return}var{viewport:o}=this;if(o!=null&&o.top===a&&o.bottom===l&&o.columns===s){oe.debug2("Ignoring duplicate viewport",o);return}this.viewport={top:a,bottom:l,columns:s},oe.debug2("setViewport",this.viewport),this.applyViewport()},ph)),X(this,"applyViewport",mi(()=>{if(this.viewport){oe.debug2("applyViewport",this.viewport);var{top:a,bottom:l,columns:s}=this.viewport,[o,u]=this.getCachedViewportRowRange(a,l);this.applyBufferedViewport(o,u,s)}},fh,{leading:!1})),X(this,"getCachedFormattedString",Rr((a,l,s,o,u)=>a.getFormattedString(l,s,o,u),{max:1e4})),X(this,"getCachedCustomColumnFormatFlag",Rr(Dr.isCustomColumnFormatDefined,{max:1e4})),X(this,"getCachedViewportRowRange",U((a,l)=>{var s=l-a,o=Math.max(0,a-s*Ut.ROW_BUFFER_PAGES),u=l+s*Ut.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 hh(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=n,this.irisGridUtils=new $(e),this.inputTable=i,this.subscription=null,this.table=t,this.tableUtils=new S(e),this.viewport=null,this.viewportData=null,this.formattedStringData=[],this.pendingStringData=[],this.isSaveInProgress=!1,this.totalsTable=null,this.totalsTablePromise=null,this.totals=null,this.totalsDataMap=null,this.pendingNewDataMap=new Map,this.pendingNewRowCount=0}close(){this.table.close(),this.totalsTable!==null&&this.totalsTable.close(),this.totalsTablePromise!==null&&this.totalsTablePromise.cancel()}startListening(){super.startListening();var{dh:e}=this;this.table.addEventListener(e.Table.EVENT_DISCONNECT,this.handleTableDisconnect),this.table.addEventListener(e.Table.EVENT_RECONNECT,this.handleTableReconnect),this.table.addEventListener(e.Table.EVENT_UPDATED,this.handleTableUpdate),this.table.addEventListener(e.Client.EVENT_REQUEST_FAILED,this.handleRequestFailed),this.table.addEventListener(e.Table.EVENT_CUSTOMCOLUMNSCHANGED,this.handleCustomColumnsChanged),this.totalsTable!=null&&this.addTotalsListeners(this.totalsTable),this.applyViewport()}stopListening(){super.stopListening();var{dh:e}=this;this.table.removeEventListener(e.Table.EVENT_DISCONNECT,this.handleTableDisconnect),this.table.removeEventListener(e.Table.EVENT_RECONNECT,this.handleTableReconnect),this.table.removeEventListener(e.Table.EVENT_UPDATED,this.handleTableUpdate),this.table.removeEventListener(e.Client.EVENT_REQUEST_FAILED,this.handleRequestFailed),this.table.removeEventListener(e.Table.EVENT_CUSTOMCOLUMNSCHANGED,this.handleCustomColumnsChanged),this.totalsTable!=null&&this.removeTotalsListeners(this.totalsTable),this.closeSubscription()}addTotalsListeners(e){var{dh:t}=this;e.addEventListener(t.Table.EVENT_UPDATED,this.handleTotalsUpdate),e.setViewport(0,0)}removeTotalsListeners(e){var{dh:t}=this;e.removeEventListener(t.Table.EVENT_UPDATED,this.handleTotalsUpdate)}handleTableDisconnect(){this.dispatchEvent(new ie(z.EVENT.DISCONNECT))}handleTableReconnect(){this.dispatchEvent(new ie(z.EVENT.RECONNECT))}handleTableUpdate(e){this.copyViewportData(e.detail),this.dispatchEvent(new ie(z.EVENT.UPDATED))}handleTotalsUpdate(e){this.copyTotalsData(e.detail),this.dispatchEvent(new ie(z.EVENT.UPDATED))}handleRequestFailed(e){this.dispatchEvent(new ie(z.EVENT.REQUEST_FAILED,e))}handleCustomColumnsChanged(){this.dispatchEvent(new ie(z.EVENT.COLUMNS_CHANGED,{detail:this.columns}))}get rowCount(){var e,t,n;return Math.max(this.table.size,0)+this.pendingNewRowCount+((e=(t=this.totals)===null||t===void 0||(n=t.operationOrder)===null||n===void 0?void 0:n.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,n)=>{if(!$.isValidIndex(n))throw new Error("Invalid rowIndex ".concat(n));var{data:i}=t;i.forEach((a,l)=>{if(!$.isValidIndex(l))throw new Error("Invalid columnIndex ".concat(l))})}),this.pendingNewDataMap=e,this.pendingNewRowCount=Math.max(this.pendingNewRowCount,this.maxPendingDataRow),this.formattedStringData=[],this.dispatchEvent(new ie(z.EVENT.PENDING_DATA_UPDATED)))}get pendingRowCount(){return this.pendingNewRowCount}set pendingRowCount(e){e!==this.pendingNewRowCount&&(this.pendingNewRowCount=Math.max(0,e,this.maxPendingDataRow),this.dispatchEvent(new ie(z.EVENT.UPDATED)))}get maxPendingDataRow(){return this.pendingNewDataMap.size>0?Math.max(...this.pendingNewDataMap.keys())+1:0}get columnCount(){return this.columns.length}get floatingBottomRowCount(){var e,t,n;return this.totals!=null&&this.totals.showOnTop?0:(e=(t=this.totals)===null||t===void 0||(n=t.operationOrder)===null||n===void 0?void 0:n.length)!==null&&e!==void 0?e:0}get floatingTopRowCount(){var e,t,n;return this.totals!=null&&this.totals.showOnTop&&(e=(t=this.totals)===null||t===void 0||(n=t.operationOrder)===null||n===void 0?void 0:n.length)!==null&&e!==void 0?e:0}get isValuesTableAvailable(){return this.table.selectDistinct!=null&&this.table.copy!=null}get isChartBuilderAvailable(){return!0}get isOrganizeColumnsAvailable(){return!0}get isTotalsAvailable(){return this.table.getTotalsTable!=null}get isEditable(){return!this.isSaveInProgress&&this.inputTable!=null}get isDeletable(){return this.keyColumnSet.size>0}get isViewportPending(){if(this.viewport==null||this.viewport.columns===void 0||this.viewportData==null)return!0;if(this.viewport.columns.length===0||this.viewportData.rows.length===0)return!1;var e=this.viewport.top<this.viewportData.offset,t=this.viewportData.offset+this.viewportData.rows.length<this.viewport.bottom,n=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||n||i}cacheFormattedValue(e,t,n){this.formattedStringData[e]==null&&(this.formattedStringData[e]=[]),this.formattedStringData[e][t]=n}cachePendingValue(e,t,n){this.pendingStringData[e]==null&&(this.pendingStringData[e]=[]),this.pendingStringData[e][t]=n}clearPendingValue(e,t){var n=this.pendingStringData[e];n!=null&&delete n[t]}textValueForCell(e,t){var n,i;if(((n=this.pendingStringData[e])===null||n===void 0?void 0:n[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 n,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((n=this.columns[e])===null||n===void 0?void 0:n.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:n}=t;if(S.isNumberType(n)&&this.formatter.truncateNumbersWithPound)return"#"}colorForCell(e,t,n){var i=this.dataForCell(e,t);if(i){var{format:a,value:l}=i;if(l==null||l==="")return N(n.nullStringColor),n.nullStringColor;if((a==null?void 0:a.color)!=null&&a.color!=="")return a.color;if(this.isPendingRow(t))return N(n.pendingTextColor),n.pendingTextColor;if(l!=null){var s=this.sourceColumn(e,t);return $.colorForValue(n,s.type,s.name,l)}}else if(this.isPendingRow(t)&&this.isKeyColumn(e))return N(n.errorTextColor),n.errorTextColor;return n.textColor}backgroundColorForCell(e,t,n){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 n=this.sourceColumn(e,t);return $.textAlignForValue(n.type,n.name)}textForColumnHeader(e){var t,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,i=this.columnAtDepth(e,n);return Cr(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,n=this.columnAtDepth(e,t);if(Cr(n)){var i;return(i=n.color)!==null&&i!==void 0?i:null}return null}tooltipForCell(e,t){return e===null||t===null?null:S.isDateType(this.columns[e].type)?this.displayString(this.valueForCell(e,t),this.columns[e].type,this.columns[e].name,{formatString:ae.FULL_DATE_FORMAT}):null}getColumnHeaderGroup(e,t){var n=this.columnAtDepth(e,t);if(Cr(n))return n}getColumnHeaderParentGroup(e,t){var n,i;return this.columnHeaderParentMap.get((n=(i=this.columnAtDepth(e,t))===null||i===void 0?void 0:i.name)!==null&&n!==void 0?n:"")}columnAtDepth(e){var t,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;if(n===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<n;){if(a=this.columnHeaderParentMap.get(a.name),!a)return;l=a.depth}if(a.depth===n)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:n,parentMap:i,groupMap:a}=$.parseColumnHeaderGroups(this,e??this.initialColumnHeaderGroups);this._columnHeaderGroups=t,this.columnHeaderMaxDepth=n,this.columnHeaderParentMap=i,this._columnHeaderGroupMap=a,this._isColumnHeaderGroupsInitialized=!0}}initializeColumnHeaderGroups(){if(!this._isColumnHeaderGroupsInitialized){var e,t;this.columnHeaderGroups=$.parseColumnHeaderGroups(this,(e=(t=this.layoutHints)===null||t===void 0?void 0:t.columnGroups)!==null&&e!==void 0?e:[]).groups}}row(e){var t,n,i,a,l,s,o,u,d,h,c=(t=(n=this.totals)===null||n===void 0||(i=n.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 m,f,b,y=(m=this.totals)===null||m===void 0?void 0:m.operationOrder[g];return N(y),(f=(b=this.totalsDataMap)===null||b===void 0?void 0:b.get(y))!==null&&f!==void 0?f:null}var C=this.pendingRow(e);if(C!=null){var T;return(T=this.pendingNewDataMap.get(C))!==null&&T!==void 0?T: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 n=this.totalsRow(t);if(n!=null){var i,a,l,s,o=(i=this.totals)===null||i===void 0?void 0:i.operationOrder[n],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,n,i,a,l,s=(t=(n=this.totals)===null||n===void 0||(i=n.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 n;return(n=this.row(t))===null||n===void 0?void 0:n.data.get(e)}formatForCell(e,t){var n;return(n=this.dataForCell(e,t))===null||n===void 0?void 0:n.format}valueForCell(e,t){var n=this.dataForCell(e,t);if(n){var i;return(i=n.value)!==null&&i!==void 0?i:null}}copyViewportData(e){if(e==null){oe.warn("invalid data!");return}this.viewportData=this.extractViewportData(e),this.formattedStringData=[]}copyTotalsData(e){var t,n,i,a=this;if(e==null){oe.warn("invalid data!");return}var{columns:l,rows:s}=e;if(s.length!==1){oe.error("Unexpected number of rows received for totals table, ignoring update");return}for(var o=new Map,u=s[0],d=(t=(n=this.totals)===null||n===void 0?void 0:n.defaultOperation)!==null&&t!==void 0?t:Y.SUM,h=(i=this.totals)===null||i===void 0?void 0:i.operationMap,c=function(){var m,f,b=l[v],[y,C=(m=h==null||(f=h[y])===null||f===void 0?void 0:f[0])!==null&&m!==void 0?m:d]=b.name.split("__");o.has(C)||o.set(C,{data:new Map});var{data:T}=o.get(C),w=a.columns.findIndex(P=>P.name===y);T.set(w,{value:u.get(b),format:u.getFormat(b)})},v=0;v<l.length;v+=1)c();oe.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:n}=e,i=0;i<e.rows.length;i+=1){var a=e.rows[i],l=this.extractViewportRow(a,n);t.rows.push(l)}return t}extractViewportRow(e,t){for(var n=new Map,i=0;i<t.length;i+=1){var a=t[i],l=this.getColumnIndexByName(a.name);n.set(l??a.name,{value:e.get(a),format:e.getFormat(a)})}return{data:n}}closeSubscription(){oe.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 ie(z.EVENT.FORMATTER_UPDATED))}displayString(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"",i=arguments.length>3?arguments[3]:void 0;return this.getCachedFormattedString(this.formatter,e,t,n,i)}get sort(){return this.table.sort}set sort(e){this.closeSubscription(),this.table.applySort(e),this.applyViewport()}set totalsConfig(e){if(oe.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 ie(z.EVENT.UPDATED));return}this.totalsTablePromise=ke.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{ke.isCanceled(t)||(oe.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new ie(z.EVENT.REQUEST_FAILED,{detail:t})))})}}setTotalsTable(e){oe.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,n){if(this.dispatchEvent(new ie(z.EVENT.VIEWPORT_UPDATED)),oe.debug2("applyBufferedViewport",e,t,n),this.subscription==null){var i;oe.debug2("applyBufferedViewport creating new subscription"),this.subscription=(i=this.table.setViewport(e,t,n))!==null&&i!==void 0?i:null}else oe.debug2("applyBufferedViewport using existing subscription"),this.subscription.setViewport(e,t,n)}snapshot(e){var t=arguments,n=this;return gt(function*(){var i=t.length>1&&t[1]!==void 0?t[1]:!1,a=t.length>2&&t[2]!==void 0?t[2]:D=>D,l=t.length>3&&t[3]!==void 0?t[3]:!0;if(n.subscription==null)throw new Error("No subscription available");var s=l?A.consolidate(e):e;if(!$.isValidSnapshotRanges(s))throw new Error("Invalid snapshot ranges ".concat(e));for(var o=new Set,u=[],d=new Set,h=0;h<s.length;h+=1){var c=s[h];N(c.endRow),N(c.startRow);for(var v=c.startRow;v<=c.endRow&&v<n.floatingTopRowCount;v+=1)o.add(v);c.endRow>=n.floatingTopRowCount&&c.startRow<=n.floatingTopRowCount+n.table.size&&u.push(new A(c.startColumn,Math.min(Math.max(0,c.startRow-n.floatingTopRowCount)),c.endColumn,Math.min(Math.max(0,c.endRow-n.floatingTopRowCount),n.table.size-n.floatingTopRowCount)));for(var g=Math.max(c.startRow,n.floatingTopRowCount+n.table.size);g<=c.endRow&&g<n.floatingTopRowCount+n.table.size+n.floatingBottomRowCount;g+=1)d.add(g)}var m=$.columnsFromRanges(s,n.columns),f=[];i&&f.push(m.map(D=>D.name));for(var b=[...o].sort(),y=function*(){var M=b[C],I=m.map(j=>{var V=n.getColumnIndexByName(j.name);return N(V),a(n.valueForCell(V,M),j)});i&&I.push(n.textForRowFooter(M)),f.push(I)},C=0;C<b.length;C+=1)yield*y();if(u.length>0){var T=n.irisGridUtils.rangeSetFromRanges(u),w=yield n.subscription.snapshot(T,m);f.push(...w.rows.map(D=>m.map(M=>a(D.get(M),M))))}for(var P=[...d].sort(),R=function*(){var M=P[F],I=m.map(j=>{var V=n.getColumnIndexByName(j.name);return N(V),a(n.valueForCell(V,M),j)});i&&I.push(n.textForRowFooter(M)),f.push(I)},F=0;F<P.length;F+=1)yield*R();return f})()}textSnapshot(e){var t=arguments,n=this;return gt(function*(){var i=t.length>1&&t[1]!==void 0?t[1]:!1,a=t.length>2&&t[2]!==void 0?t[2]:s=>"".concat(s);oe.debug2("textSnapshot",e,i);var l=yield n.snapshot(e,i,a,!1);return l.map(s=>s.join(" ")).join(`
4
+ `)})()}valuesTable(e){var t=this;return gt(function*(){var n=null;try{return n=yield t.table.copy(),n.applyFilter([]),n.applySort([]),yield n.selectDistinct(Array.isArray(e)?e:[e])}finally{n!=null&&n.close()}})()}isColumnMovable(e,t){if(e<0||e>=this.columnCount)return!1;if(t>0)return!0;var n=this.columns[e].name;return this.frontColumns.includes(n)||this.backColumns.includes(n)||this.frozenColumns.includes(n)||!n?!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 n=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!!(n||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 A(null,this.floatingTopRowCount,null,this.floatingTopRowCount+this.table.size-1)}getPendingAreaRange(){return new A(null,this.floatingTopRowCount+this.table.size,null,this.floatingTopRowCount+this.table.size+this.pendingNewRowCount-1)}setValueForCell(e,t,n){var i=this;return gt(function*(){return i.setValueForRanges([new A(e,t,e,t)],n)})()}setValueForRanges(e,t){var n=this;return gt(function*(){if(!n.isEditableRanges(e))throw new Error("Uneditable ranges ".concat(e));try{var i=new Set,a=[];A.forEachCell(e,(m,f)=>{var b=n.columns[m];if(i.add(b),a[m]===void 0){var y=n.tableUtils.makeValue(b.type,t,n.formatter.timeZone);a[m]=y!=null?n.displayString(y,b.type,b.name):null}n.cachePendingValue(m,f,a[m])});var l=n.getPendingAreaRange(),s=e.map(m=>A.intersection(l,m)).filter(m=>m!=null).map(m=>(N(m),A.offset(m,0,-(n.floatingTopRowCount+n.table.size))));if(s.length>0){var o=new Map(n.pendingNewDataMap);A.forEachCell(s,(m,f)=>{o.has(f)||o.set(f,{data:new Map});var b=n.columns[m],y=o.get(f);N(y);var{data:C}=y,T=new Map(C),w=n.tableUtils.makeValue(b.type,t,n.formatter.timeZone);w!=null?T.set(m,{value:w}):T.delete(m),T.size>0?o.set(f,On(On({},y),{},{data:T})):o.delete(f)}),n.pendingDataMap=o}n.dispatchEvent(new ie(z.EVENT.UPDATED));var u=n.getTableAreaRange(),d=e.map(m=>A.intersection(u,m)).filter(m=>m!=null);if(d.length>0){var h,c=yield n.snapshot(d.map(m=>{var f,b;return new A(null,(f=m==null?void 0:m.startRow)!==null&&f!==void 0?f:null,null,(b=m==null?void 0:m.endRow)!==null&&b!==void 0?b:null)})),v=c.map(m=>{for(var f={},b=0;b<n.columns.length;b+=1)f[n.columns[b].name]=m[b];return i.forEach(y=>{f[y.name]=n.tableUtils.makeValue(y.type,t,n.formatter.timeZone)}),f}),g=yield(h=n.inputTable)===null||h===void 0?void 0:h.addRows(v);oe.debug("setValueForRanges(",e,",",t,") set tableRanges",d,"result",g)}A.forEachCell(e,(m,f)=>{var b=a[m];N(b),n.cacheFormattedValue(m,f,b)})}catch(m){oe.error("Unable to set ranges",e,t,m)}finally{A.forEachCell(e,(m,f)=>{n.clearPendingValue(m,f)})}})()}setValues(){var e=arguments,t=this;return gt(function*(){var n=e.length>0&&e[0]!==void 0?e[0]:[];if(oe.debug("setValues(",n,")"),!n.every(v=>{var g,m;return t.isEditableRange(A.makeCell((g=v.column)!==null&&g!==void 0?g:v.x,(m=v.row)!==null&&m!==void 0?m:v.y))}))throw new Error("Uneditable ranges ".concat(n));try{var i=new Map(t.pendingNewDataMap);n.forEach(v=>{var g,m,{text:f}=v,b=(g=v.column)!==null&&g!==void 0?g:v.x,y=(m=v.row)!==null&&m!==void 0?m:v.y,C=t.columns[b],T=t.tableUtils.makeValue(C.type,f,t.formatter.timeZone),w=T!=null?t.displayString(T,C.type,C.name):null;t.cachePendingValue(b,y,w);var P=t.pendingRow(y);if(P!=null){i.has(P)||i.set(P,{data:new Map});var R=i.get(P);N(R);var{data:F}=R,D=new Map(F);T!=null?D.set(b,{value:T}):D.delete(b),D.size>0?i.set(P,On(On({},R),{},{data:D})):i.delete(P)}}),t.pendingDataMap=i,t.dispatchEvent(new ie(z.EVENT.UPDATED));var a=n.reduce((v,g)=>{var m,f,b=(m=g.row)!==null&&m!==void 0?m:g.y;return v.has(b)||v.set(b,[]),(f=v.get(b))===null||f===void 0||f.push(g),v},new Map),l=A.consolidate(n.map(v=>{var g,m;return A.makeCell((g=v.column)!==null&&g!==void 0?g:v.x,(m=v.row)!==null&&m!==void 0?m:v.y)})),s=t.getTableAreaRange(),o=l.map(v=>A.intersection(s,v)).filter(v=>v!=null);if(o.length>0){var u,d=yield t.snapshot(o.map(v=>(N(v),new A(null,v.startRow,null,v.endRow)))),h=d.map((v,g)=>{for(var m=null,f=g,b=0;b<o.length;b+=1){var y=o[b];N(y);var C=A.rowCount([y]);if(f<C){N(y.startRow),m=y.startRow+f;break}f-=C}for(var T={},w=0;w<t.columns.length;w+=1)T[t.columns[w].name]=v[w];N(m);var P=a.get(m);return P!=null&&P.forEach(R=>{var F,D=t.columns[(F=R.column)!==null&&F!==void 0?F:R.x];T[D.name]=t.tableUtils.makeValue(D.type,R.text,t.formatter.timeZone)}),T});oe.info("setValues setting tableRanges",o);var c=yield(u=t.inputTable)===null||u===void 0?void 0:u.addRows(h);oe.info("setValues set tableRanges",o,"SUCCESS",c)}n.forEach(v=>{var g,m,{text:f}=v,b=(g=v.column)!==null&&g!==void 0?g:v.x,y=(m=v.row)!==null&&m!==void 0?m:v.y,C=t.columns[b],T=t.tableUtils.makeValue(C.type,f,t.formatter.timeZone),w=T!=null?t.displayString(T,C.type,C.name):null;t.cacheFormattedValue(b,y,w)})}finally{n.forEach(v=>{t.clearPendingValue(v.column,v.row)})}})()}commitPending(){var e=this;return gt(function*(){if(e.pendingNewDataMap.size<=0)throw new Error("No pending changes to commit");try{var t,n,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);oe.debug("commitPending()",e.pendingNewDataMap,"result",l),e.pendingNewDataMap=new Map,e.pendingNewRowCount=Math.max(0,((n=(i=e.viewport)===null||i===void 0?void 0:i.bottom)!==null&&n!==void 0?n:0)-e.table.size),e.formattedStringData=[],e.dispatchEvent(new ie(z.EVENT.PENDING_DATA_UPDATED))}finally{e.isSaveInProgress=!1}})()}editValueForCell(e,t){var n;return(n=this.textValueForCell(e,t))!==null&&n!==void 0?n:""}delete(e){return gt(function*(){throw new Error("Delete not implemented")})()}isValidForCell(e,t,n){try{var i=this.columns[e];return this.tableUtils.makeValue(i.type,n,this.formatter.timeZone),!0}catch{return!1}}}X(Ut,"ROW_BUFFER_PAGES",1);function Yi(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(n,i)}function mh(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){Yi(a,n,i,l,s,"next",o)}function s(o){Yi(a,n,i,l,s,"throw",o)}l(void 0)})}}function Zi(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function Qi(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Zi(Object(t),!0).forEach(function(n){Mt(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Zi(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function Mt(r,e,t){return(e=gh(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function gh(r){var e=bh(r,"string");return typeof e=="symbol"?e:e+""}function bh(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var Ch=J.module("IrisGridTreeTableModel"),Ji=Object.freeze({name:"__DH_UI_GROUP__",displayName:"Group",type:S.dataType.STRING,constituentType:S.dataType.STRING,isPartitionColumn:!1,isSortable:!1,isProxy:!0,description:"Key column",index:-1,filter:()=>{throw new Error("Filter not implemented for virtual column")},sort:()=>{throw new Error("Sort not implemented for virtual column")},formatColor:()=>{throw new Error("Color not implemented for virtual column")},get:()=>{throw new Error("get not implemented for virtual column")},getFormat:()=>{throw new Error("getFormat not implemented for virtual column")},formatNumber:()=>{throw new Error("formatNumber not implemented for virtual column")},formatDate:()=>{throw new Error("formatDate not implemented for virtual column")}});function ea(r){return r!=null&&typeof r=="object"&&"hasChildren"in r&&"isExpanded"in r&&"depth"in r&&typeof r.hasChildren=="boolean"&&typeof r.isExpanded=="boolean"&&typeof r.depth=="number"}function yh(r){return r.layoutHints!==void 0}function rf(r){return r.showExtraGroupColumn!=null}class Sh extends Ut{constructor(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new qe(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e,t,n,i),Mt(this,"virtualColumns",void 0),Mt(this,"showExtraGroupCol",!0),Mt(this,"getCachedColumns",U((a,l)=>[...a,...l])),Mt(this,"getCachedGroupColumns",U((a,l)=>[...a,...l])),Mt(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))))),Mt(this,"getCachedGroupedColumnSet",U(a=>new Set(a.map(l=>this.columns.findIndex(s=>l.name===s.name))))),this.virtualColumns=this.showExtraGroupColumn&&t.groupedColumns.length>1?[Ji]:[]}get showExtraGroupColumn(){return this.showExtraGroupCol}set showExtraGroupColumn(e){this.showExtraGroupCol!==e&&(this.showExtraGroupCol=e,this.updateVirtualColumns())}updateVirtualColumns(){this.virtualColumns=this.showExtraGroupColumn&&this.table.groupedColumns.length>1?[Ji]:[],this.dispatchEvent(new ie(z.EVENT.COLUMNS_CHANGED,{detail:this.columns}))}applyBufferedViewport(e,t,n){var i=[...this.table.groupedColumns,...n.filter(a=>!this.virtualColumns.includes(a)&&!this.groupedColumns.includes(a))];this.table.setViewport(e,t,i)}textForCell(e,t){var n=this.sourceColumn(e,t),i=this.row(t);if(i!=null&&n!=null){if(!i.hasChildren&&n.constituentType!=null){var a,l=this.valueForCell(e,t),s=this.displayString(l,n.constituentType,n.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,n){var i=this.dataForCell(e,t);if(i){var{format:a,value:l}=i;if(l==null||l==="")return N(n.nullStringColor),n.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 ea(o)&&o.hasChildren===!1&&s.constituentType!=null&&(u=s.constituentType),$.colorForValue(n,u,s.name,l)}}return n.textColor}textAlignForCell(e,t){var n=this.sourceColumn(e,t),i=this.row(t);N(i);var a=n.type;return ea(i)&&i.hasChildren===!1&&n.constituentType!=null&&(a=n.constituentType),$.textAlignForValue(a,n.name)}extractViewportRow(e,t){var{isExpanded:n,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?Ch.warn("Missing key data for virtual column",o,a,u,e):s.set(o,d)}return Qi(Qi({},l),{},{data:s,isExpanded:n,hasChildren:i,depth:a})}snapshot(e,t){var n=arguments,i=this;return mh(function*(){var a,l=n.length>2&&n[2]!==void 0?n[2]:b=>b;N(i.viewport),N(i.viewportData);var s=(a=i.viewport.columns)!==null&&a!==void 0?a:i.columns,o=[];t!=null&&t&&o.push(s.map(b=>b.name));for(var u=new A(0,i.viewportData.offset,s.length,i.viewportData.offset+i.viewportData.rows.length-1),d=0;d<e.length;d+=1){var h=A.intersection(u,e[d]);N(h),N(h.startRow),N(h.endRow);for(var c=h.startRow;c<=h.endRow;c+=1){var v=[],g=i.viewportData.rows[c-i.viewportData.offset];N(h.startColumn),N(h.endColumn);for(var m=h.startColumn;m<=h.endColumn;m+=1){var f;v.push(l((f=g.data.get(m))===null||f===void 0?void 0:f.value,i.columns[m]))}o.push(v)}}return o})()}get columns(){return this.getCachedColumns(this.virtualColumns,super.columns)}get aggregatedColumns(){return this.isAggregatedColumnsAvailable?this.table.aggregatedColumns:ee}get groupedColumns(){return this.getCachedGroupColumns(this.virtualColumns,this.table.groupedColumns)}sourceForCell(e,t){if(e>=this.virtualColumns.length)return{column:e,row:t};var n=this.depthForRow(t);return{column:e+n,row:t}}sourceColumn(e,t){if(e>=this.virtualColumns.length)return super.sourceColumn(e,t);var n=this.depthForRow(t);return this.columns[e+n]}getClearFilterRange(e){return e>=this.virtualColumns.length?super.getClearFilterRange(e):[this.virtualColumns.length,this.groupedColumns.length]}get layoutHints(){if(yh(this.table))return this.table.layoutHints}get hasExpandableRows(){return!0}get isAggregatedColumnsAvailable(){return this.table.aggregatedColumns!==void 0}get isExpandAllAvailable(){return this.table.expandAll!==void 0}get isChartBuilderAvailable(){return!1}get isOrganizeColumnsAvailable(){return!0}get isSelectDistinctAvailable(){return!1}get isReversible(){return!1}isFilterable(e){return this.getCachedFilterableColumnSet(this.columns,this.isAggregatedColumnsAvailable,this.aggregatedColumns,this.groupedColumns,this.virtualColumns).has(e)}isColumnMovable(e){return e>=this.groupedColumns.length}isRowExpandable(e){var t,n=this.row(e);return(t=n==null?void 0:n.hasChildren)!==null&&t!==void 0?t:!1}isRowExpanded(e){var t,n=this.row(e);return(t=n==null?void 0:n.isExpanded)!==null&&t!==void 0?t:!1}setRowExpanded(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;this.isExpandAllAvailable?this.table.setExpanded(e,t,n):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,n=this.row(e);return((t=n==null?void 0:n.depth)!==null&&t!==void 0?t:1)-1}updateFrozenColumns(e){if(e.length>0)throw new Error("Cannot freeze columns on a tree table")}}function ta(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function Eh(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ta(Object(t),!0).forEach(function(n){Gn(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):ta(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function Gn(r,e,t){return(e=wh(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function wh(r){var e=Th(r,"string");return typeof e=="symbol"?e:e+""}function Th(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class Vl extends E.Component{constructor(e){super(e),Gn(this,"container",void 0),Gn(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),gi.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=Eh({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=gi.create(this.container,t),this.editor.addAction({id:"find",label:"Find",keybindings:[zs.CtrlCmd|qs.KeyF],precondition:void 0,keybindingContext:void 0,contextMenuGroupId:"navigation",contextMenuOrder:1,run:()=>{this.toggleFind()}}),this.editor.layout(),Ks.registerLinkProvider("plaintext",{provideLinks:dt.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 p.jsx("div",{className:Me("editor-container",e),ref:t=>{this.container=t}})}}Gn(Vl,"defaultProps",{className:"fill-parent-absolute",onEditorInitialized:()=>{},onEditorWillDestroy:()=>{},settings:{}});var Ph={groovy:"Groovy",python:"Python",scala:"Scala"};class Lr{static normalizeScriptLanguage(e){return Ph[e]||null}static getDisabledRunTooltip(e,t,n,i){return e?t?null:"".concat(n," doesn't match the session language – ").concat(i," disabled"):"Console session not connected – ".concat(i," disabled")}static outdentCode(e){var t=e.split(`
5
+ `),n=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(n)).join(`
6
+ `)}}function sn(r,e,t){return(e=Oh(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Oh(r){var e=Dh(r,"string");return typeof e=="symbol"?e:e+""}function Dh(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var Ae=J.module("ScriptEditor");class $l extends E.Component{constructor(e){super(e),sn(this,"contextActionCleanups",void 0),sn(this,"completionCleanup",void 0),sn(this,"editor",void 0),sn(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=Te.createRef(),this.state={model:null}}componentDidMount(){Ci.addEventListener("onUpdate",this.updateShortcuts)}componentDidUpdate(e){var t,n,{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&&(Ae.debug("Set language",l),this.setLanguage(l));var o=i==null&&e.sessionLanguage!=null,u=l===i,d=((n=e.settings)===null||n===void 0?void 0:n.language)===e.sessionLanguage;(o||i!==void 0&&d&&!u)&&(Ae.debug("De-init completion"),this.deInitCodeCompletion());var h=i!=null&&e.sessionLanguage==null;(h&&u||i!==void 0&&!d&&u)&&(Ae.debug("Init completion"),this.initCodeCompletion())}componentWillUnmount(){Ci.removeEventListener("onUpdate",this.updateShortcuts)}getValue(){return this.editor?this.editor.getValue():(Ae.error("Editor not initialized"),null)}getSelectedCommand(){var e,t,n=(e=this.editor)===null||e===void 0?void 0:e.getSelection();N(n);var i=(t=this.editor)===null||t===void 0?void 0:t.getModel();N(i);var{startLineNumber:a,endColumn:l}=n,{endLineNumber:s}=n;l===1&&s>a&&(s-=1);var o=i.getLineMinColumn(a),u=i.getLineMaxColumn(s),d=n.setStartPosition(a,o).setEndPosition(s,u);return Lr.outdentCode(i.getValueInRange(d))}handleEditorInitialized(e){var{focusOnMount:t,onChange:n,onEditorInitialized:i,settings:a,session:l,sessionLanguage:s}=this.props;Ae.debug("handleEditorInitialized",s,l,a),this.editor=e,this.setState({model:this.editor.getModel()}),dt.setEOL(e),dt.registerPasteHandler(e),this.initContextActions(),l!=null&&a&&s===a.language&&this.initCodeCompletion(),e.onDidChangeModelContent(n),t!=null&&t&&e.focus(),i(this.editor)}handleEditorWillDestroy(e){Ae.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:n,settings:i}=this.props,a=this.getValue(),l=i==null?void 0:i.language,s=l===n;if(t==null||!s){Ae.info("Run disabled - ".concat(t==null?"session disconnected":"language mismatch"));return}a!=null&&e(a)}handleRunSelected(){var{onRunCommand:e,session:t,sessionLanguage:n,settings:i}=this.props,a=this.getSelectedCommand(),l=i==null?void 0:i.language,s=l===n;if(t==null||!s){Ae.info("Run selected disabled - ".concat(t==null?"session disconnected":"language mismatch"));return}e(a)}initContextActions(){if(this.contextActionCleanups.length>0){Ae.error("Context actions already initialized.");return}if(this.editor){var e=[];e.push(this.editor.addAction({id:"run-code",label:"Run",keybindings:[dt.getMonacoKeyCodeFromShortcut(ut.NOTEBOOK.RUN)],contextMenuGroupId:"navigation",contextMenuOrder:1.5,run:()=>{this.handleRun()}})),e.push(this.editor.addAction({id:"run-selected-code",label:"Run Selected",keybindings:[dt.getMonacoKeyCodeFromShortcut(ut.NOTEBOOK.RUN_SELECTED)],contextMenuGroupId:"navigation",contextMenuOrder:1.5,run:()=>{this.handleRunSelected()}})),this.contextActionCleanups=e}}deInitContextActions(){this.contextActionCleanups.length>0&&(this.contextActionCleanups.forEach(e=>e.dispose()),this.contextActionCleanups=[])}updateShortcuts(){this.deInitContextActions(),this.initContextActions()}initCodeCompletion(){if(this.completionCleanup!=null){Ae.error("Code completion already initialized.");return}var{session:e}=this.props;Ae.debug("initCodeCompletion",this.editor,e),this.editor&&e!=null&&(this.completionCleanup=dt.openDocument(this.editor,e))}deInitCodeCompletion(){var{session:e}=this.props;Ae.debug("deInitCodeCompletion",this.editor,e),this.completionCleanup&&(this.completionCleanup.dispose(),this.completionCleanup=void 0,this.editor&&e!=null&&dt.closeDocument(this.editor,e))}append(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;N(this.editor);var n=this.editor.getModel();N(n);var i=n.getValue();i?n.setValue("".concat(i,`
7
+ `).concat(e)):n.setValue("".concat(e));var a=n.getLineCount(),l=n.getLineLength(a)+1;this.editor.setPosition({lineNumber:a,column:l}),t&&this.editor.focus()}updateDimensions(){Ae.debug("updateDimensions"),this.editor&&this.editor.layout()}focus(){Ae.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:n,isLoading:i,session:a,sessionLanguage:l,settings:s}=this.props,{model:o}=this.state,u=t?"Unable to open document. ".concat(t):null,d=s&&(e=s.language)!==null&&e!==void 0?e:null,h=o&&a&&d===l;return p.jsxs(p.Fragment,{children:[(t||i)&&p.jsx("div",{className:"h-100 w-100 position-relative",children:p.jsx(pt,{errorMessage:u,isLoading:i,isLoaded:n})}),n&&p.jsx("div",{className:"h-100 w-100 script-editor",children:s&&p.jsxs(p.Fragment,{children:[p.jsx(Vl,{ref:this.editorComponent,settings:s,onEditorInitialized:this.handleEditorInitialized,onEditorWillDestroy:this.handleEditorWillDestroy}),h!=null&&h&&p.jsx(wr,{model:o,language:d,session:a})]})})]})}}sn($l,"defaultProps",{error:null,isLoading:!1,isLoaded:!1,focusOnMount:!0,onChange:()=>{},onEditorInitialized:()=>{},onEditorWillDestroy:()=>{},session:null});function Fh(r,e,t){return(e=Nh(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Nh(r){var e=Mh(r,"string");return typeof e=="symbol"?e:e+""}function Mh(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class na extends Error{constructor(){super(...arguments),Fh(this,"isMissingPartitionError",!0)}}function Rh(r){return(r==null?void 0:r.isMissingPartitionError)===!0}function ra(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(n,i)}function Ft(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){ra(a,n,i,l,s,"next",o)}function s(o){ra(a,n,i,l,s,"throw",o)}l(void 0)})}}function Ye(r,e,t){return(e=Ih(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Ih(r){var e=kh(r,"string");return typeof e=="symbol"?e:e+""}function kh(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var lt=J.module("IrisGridTableModel");class Lh extends Ut{constructor(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new qe(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e,t,n,i),Ye(this,"userFrozenColumns",void 0),Ye(this,"customColumnList",void 0),Ye(this,"formatColumnList",void 0),Ye(this,"initialFilters",[]),Ye(this,"wasUncoalesced",void 0),Ye(this,"getMemoizedKeyColumnSet",U(a=>new Set(a??ee))),Ye(this,"getMemoizedFrontColumns",U(a=>a??ee)),Ye(this,"getMemoizedBackColumns",U(a=>a??ee)),Ye(this,"getMemoizedFrozenColumns",U((a,l)=>{var s;return(s=l??a)!==null&&s!==void 0?s:ee})),Ye(this,"getCachedFilterableColumnSet",U(a=>new Set(a.map((l,s)=>s)))),Ye(this,"getCachedPartitionColumns",U(a=>a.filter(l=>l.isPartitionColumn))),this.customColumnList=[],this.formatColumnList=[],this.initialFilters=t.filter,this.wasUncoalesced=this.isPartitionRequired}get isExportAvailable(){return this.table.freeze!=null}get isColumnStatisticsAvailable(){return this.table.getColumnStatistics!=null}get isRollupAvailable(){return this.table.rollup!=null}get isSelectDistinctAvailable(){return this.table.selectDistinct!=null}get 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(lt.debug2("set customColumns",e,this.customColumnList,e===this.customColumnList),this.customColumnList.length===0&&e.length===0){lt.debug("Ignore empty initial customColumns"),this.customColumnList=e;return}if(this.customColumnList===e){lt.debug("Ignore same customColumns");return}this.closeSubscription(),this.customColumnList=e,this.table.applyCustomColumns([...e,...this.formatColumns]),this.applyViewport()}get formatColumns(){return this.formatColumnList}set formatColumns(e){if(lt.debug2("set formatColumns",e,this.formatColumnList,e===this.formatColumnList),this.formatColumnList.length===0&&e.length===0){lt.debug("Ignore empty initial formatColumns"),this.formatColumnList=e;return}if(this.formatColumnList===e){lt.debug("Ignore same formatColumns");return}this.closeSubscription(),this.formatColumnList=e,this.table.applyCustomColumns([...this.customColumns,...e]),this.applyViewport()}updateFrozenColumns(e){this.userFrozenColumns=e,this.dispatchEvent(new ie(z.EVENT.COLUMNS_CHANGED,{detail:this.columns}))}get partitionColumns(){return this.getCachedPartitionColumns(this.columns)}partitionKeysTable(){var e=this;return Ft(function*(){return e.valuesTable(e.partitionColumns)})()}partitionMergedTable(){var e=this;return Ft(function*(){var t=yield e.table.copy();return t.applyFilter([]),t})()}partitionBaseTable(){var e=this;return Ft(function*(){return e.partitionKeysTable()})()}partitionTable(e){var t=this;return Ft(function*(){lt.debug("getting partition table for partitions",e);for(var n=[],i=0;i<t.partitionColumns.length;i+=1){var a=e[i],l=t.partitionColumns[i],s=t.tableUtils.makeNullableEqFilter(l,a);n.push(s)}var o=yield t.table.copy();return o.applyFilter([...t.initialFilters,...n]),o})()}set filter(e){this.closeSubscription(),this.table.applyFilter([...this.initialFilters,...e]),this.applyViewport()}set totalsConfig(e){if(lt.debug("set totalsConfig",e),e!==this.totals){if(this.totals=e,this.formattedStringData=[],this.totalsTablePromise!=null&&this.totalsTablePromise.cancel(),this.setTotalsTable(null),e==null){this.dispatchEvent(new ie(z.EVENT.UPDATED));return}this.totalsTablePromise=ke.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{ke.isCanceled(t)||(lt.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new ie(z.EVENT.REQUEST_FAILED,{detail:t})))})}}get isFilterRequired(){return this.table.isUncoalesced}get isPartitionRequired(){return this.table.isUncoalesced&&this.isValuesTableAvailable&&this.partitionColumns.length>0}get isPartitionAwareSourceTable(){return this.wasUncoalesced}isFilterable(e){return this.getCachedFilterableColumnSet(this.columns).has(e)}export(){var e=this;return Ft(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,n=a=>super.pendingDataMap=a,i=this;return Ft(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=>A.intersection(s,C)).filter(C=>C!=null).map(C=>(N(C),A.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)}n(u),i.formattedStringData=[],i.dispatchEvent(new ie(z.EVENT.PENDING_DATA_UPDATED)),i.dispatchEvent(new ie(z.EVENT.UPDATED))}var v=i.getTableAreaRange(),g=e.map(C=>A.intersection(v,C)).filter(C=>C!=null);if(!(g.length<=0)){var[m,f]=yield Promise.all([i.snapshot(g.map(C=>(N(C),l.map(T=>{var w=i.getColumnIndexByName(T.name);if(w==null)throw new Error("Key column ".concat(T.name," not found"));return new A(w,C.startRow,w,C.endRow)}))).flat()),i.table.copy()]),b=m.map(C=>{for(var T=[],w=0;w<l.length;w+=1){var P=l[w],R=C[w],F=i.tableUtils.makeNullableEqFilter(P,R);T.push(F)}return T.reduce((D,M)=>{var I;return(I=D==null?void 0:D.and(M))!==null&&I!==void 0?I:M})}),y=b.reduce((C,T)=>{var w;return(w=C==null?void 0:C.or(T))!==null&&w!==void 0?w:T});f.applyFilter([y]),yield(a=i.inputTable)===null||a===void 0?void 0:a.deleteTable(f),f.close()}})()}seekRow(e,t,n,i,a,l,s){var o=this;return Ft(function*(){return o.table.seekRow(e,t,n,i,a,l,s)})()}get isSeekRowAvailable(){return this.table.seekRow!=null}}function Ah(r,e,t){return(e=xh(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function xh(r){var e=jh(r,"string");return typeof e=="symbol"?e:e+""}function jh(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class _h extends z{constructor(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:new qe(e);super(e),Ah(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 ee}getColumnIndexByName(e){}get initialMovedColumns(){return ee}get initialMovedRows(){return ee}get initialColumnHeaderGroups(){return ee}get groupedColumns(){return ee}formatForCell(e,t){}valueForCell(e,t){}get filter(){return ee}set filter(e){}get partition(){return ee}set partition(e){}get partitionColumns(){return ee}get formatter(){return this.modelFormatter}set formatter(e){this.modelFormatter=e}displayString(e,t,n){return""}get sort(){return ee}set sort(e){}get customColumns(){return ee}set customColumns(e){}get formatColumns(){return ee}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 ee}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,n){}snapshot(e){return Promise.resolve([])}textSnapshot(e,t,n){return Promise.resolve("")}valuesTable(e){throw new Error("Method not implemented.")}delete(e){return Promise.resolve()}seekRow(e,t,n,i,a,l,s){return Promise.resolve(0)}get columnHeaderGroups(){return ee}set columnHeaderGroups(e){}get columnHeaderGroupMap(){return jt}getColumnHeaderParentGroup(e,t){}}function ia(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(n,i)}function Dn(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){ia(a,n,i,l,s,"next",o)}function s(o){ia(a,n,i,l,s,"throw",o)}l(void 0)})}}function Vh(r,e,t){return(e=$h(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function $h(r){var e=Hh(r,"string");return typeof e=="symbol"?e:e+""}function Hh(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}function Gh(r){return"getBaseTable"in r&&typeof r.getBaseTable=="function"}class Bh extends _h{constructor(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new qe(e);super(e,n),Vh(this,"partitionedTable",void 0),this.partitionedTable=t}get isPartitionRequired(){return!0}get isPartitionAwareSourceTable(){return!1}get isReversible(){return!1}displayString(e,t,n){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 n;return(n=this.columns[e].name)!==null&&n!==void 0?n:""}partitionKeysTable(){var e=this;return Dn(function*(){return e.partitionedTable.getKeyTable()})()}partitionBaseTable(){var e=this;return Dn(function*(){return Gh(e.partitionedTable)?e.partitionedTable.getBaseTable():e.partitionedTable.getKeyTable()})()}partitionMergedTable(){var e=this;return Dn(function*(){return e.partitionedTable.getMergedTable()})()}partitionTable(e){var t=this;return Dn(function*(){try{var n=yield t.partitionedTable.getTable(e);if(n==null)throw new na("Partition not found");return n}catch(i){throw Rh(i)?i:new na("Unable to retrieve partition")}})()}}function st(r,e,t){return(e=Uh(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Uh(r){var e=Wh(r,"string");return typeof e=="symbol"?e:e+""}function Wh(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var ot=J.module("IrisGridProxyModel");function xt(r,e,t,n){return S.isTreeTable(e)?new Sh(r,e,t):S.isPartitionedTable(e)?new Bh(r,e,t):new Lh(r,e,t,n)}class zh extends z{constructor(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new qe(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e),st(this,"model",void 0),st(this,"dh",void 0),st(this,"originalModel",void 0),st(this,"modelPromise",void 0),st(this,"rollup",void 0),st(this,"partition",void 0),st(this,"selectDistinct",void 0),st(this,"currentViewport",void 0),st(this,"setViewport",(l,s,o)=>{this.currentViewport={top:l,bottom:s,columns:o},this.model.setViewport(l,s,o)}),this.addEventListener=this.addEventListener.bind(this),this.removeEventListener=this.removeEventListener.bind(this),this.dispatchEvent=this.dispatchEvent.bind(this),this.handleModelEvent=this.handleModelEvent.bind(this);var a=xt(e,t,n,i);return this.dh=e,this.originalModel=a,this.model=a,this.modelPromise=null,this.rollup=null,this.partition=null,this.selectDistinct=[],new Proxy(this,{get(l,s,o){var u,d=((u=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(l),s))===null||u===void 0?void 0:u.get)!=null;if(d)return Reflect.get(l,s,o);var h=Object.prototype.hasOwnProperty.call(l,s),c=Object.prototype.hasOwnProperty.call(Object.getPrototypeOf(l),s),v=h||c?l:l.model;return Reflect.get(v,s)},set(l,s,o){var u,d=((u=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(l),s))===null||u===void 0?void 0:u.set)!=null,h=Object.prototype.hasOwnProperty.call(l,s);return d||h?Reflect.set(l,s,o,l):Reflect.set(l.model,s,o,l.model)}})}close(){this.originalModel.close(),this.model!==this.originalModel&&this.model.close(),this.modelPromise!=null&&this.modelPromise.cancel()}handleModelEvent(e){ot.debug2("handleModelEvent",e);var{detail:t,type:n}=e;this.dispatchEvent(new ie(n,{detail:t}))}setModel(e){ot.debug("setModel",e);var t=this.model,{columns:n}=t;if(t!==this.originalModel&&t.close(),this.model=e,this.listenerCount>0&&this.addListeners(e),n!==e.columns)this.dispatchEvent(new ie(z.EVENT.COLUMNS_CHANGED,{detail:e.columns}));else if(this.currentViewport!=null){var{top:i,bottom:a,columns:l}=this.currentViewport;e.setViewport(i,a,l)}ct(e)&&this.dispatchEvent(new ie(z.EVENT.TABLE_CHANGED,{detail:e.table}))}setNextModel(e){ot.debug2("setNextModel"),this.modelPromise&&this.modelPromise.cancel(),this.listenerCount>0&&this.removeListeners(this.model),this.modelPromise=ke.makeCancelable(e,t=>t.close()),this.modelPromise.then(t=>{this.modelPromise=null,this.setModel(t)}).catch(t=>{if(ke.isCanceled(t)){ot.debug2("setNextModel cancelled");return}ot.error("Unable to set next model",t),this.modelPromise=null,this.dispatchEvent(new ie(z.EVENT.REQUEST_FAILED,{detail:t}))})}startListening(){super.startListening(),this.addListeners(this.model)}stopListening(){super.stopListening(),this.removeListeners(this.model)}addListeners(e){for(var t=Object.keys(z.EVENT),n=0;n<t.length;n+=1)e.addEventListener(t[n],this.handleModelEvent)}removeListeners(e){for(var t=Object.keys(z.EVENT),n=0;n<t.length;n+=1)e.removeEventListener(t[n],this.handleModelEvent)}get isCustomColumnsAvailable(){return this.model.isCustomColumnsAvailable&&!(this.isSelectDistinctAvailable&&this.selectDistinctColumns.length>0)}get isRollupAvailable(){return(this.originalModel.isRollupAvailable||this.rollup!=null)&&this.selectDistinct.length===0}get isSelectDistinctAvailable(){return(this.originalModel.isSelectDistinctAvailable||this.selectDistinct.length>0)&&this.rollup==null}get originalColumns(){return this.originalModel.columns}get partitionColumns(){return Qe(this.originalModel)?this.originalModel.partitionColumns:[]}get partitionConfig(){return!Qe(this.originalModel)||!this.originalModel.isPartitionRequired?nh(this.originalModel)?null:void 0:this.partition}set partitionConfig(e){if(!this.isPartitionRequired)throw new Error("Partitions are not available");ot.debug("set partitionConfig",e),this.partition=e;var t=Promise.resolve(this.originalModel);e!=null&&Qe(this.originalModel)&&(e.mode==="keys"?t=this.originalModel.partitionBaseTable().then(n=>xt(this.dh,n,this.formatter)):e.mode==="merged"?t=this.originalModel.partitionMergedTable().then(n=>xt(this.dh,n,this.formatter)):t=this.originalModel.partitionTable(e.partitions).then(n=>xt(this.dh,n,this.formatter))),this.setNextModel(t)}partitionKeysTable(){if(!Qe(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionKeysTable()}partitionMergedTable(){if(!Qe(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionMergedTable()}partitionTable(e){if(!Qe(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionTable(e)}get rollupConfig(){return this.rollup}set rollupConfig(e){if(ot.debug("set rollupConfig",e),!this.isRollupAvailable)throw new Error("Rollup Rows are not available");if(!_n(e,this.rollup)){this.rollup=e;var t=Promise.resolve(this.originalModel);ct(this.originalModel)&&e!=null&&(t=this.originalModel.table.rollup(e).then(n=>xt(this.dh,n,this.formatter))),this.setNextModel(t)}}get selectDistinctColumns(){return this.selectDistinct}set selectDistinctColumns(e){if(ot.debug("set selectDistinctColumns",e),!this.isSelectDistinctAvailable)throw new Error("Select distinct is not available");if(e===this.selectDistinctColumns||e.length===0&&this.selectDistinctColumns.length===0){ot.debug("Ignore same selectDistinctColumns",e);return}this.selectDistinct=e;var t=e.map(i=>this.originalColumns.find(a=>a.name===i)).filter(i=>i!=null),n=Promise.resolve(this.originalModel);ct(this.originalModel)&&t.length>0&&(n=this.originalModel.table.selectDistinct(t).then(i=>xt(this.dh,i,this.formatter))),this.setNextModel(n)}get isFilterRequired(){return this.originalModel.isFilterRequired}get isPartitionRequired(){return Qe(this.originalModel)?this.originalModel.isPartitionRequired:void 0}get isPartitionAwareSourceTable(){return Qe(this.originalModel)&&this.originalModel.isPartitionAwareSourceTable}get formatter(){return this.originalModel.formatter}set formatter(e){this.originalModel.formatter=e}}function aa(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(n,i)}function qh(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){aa(a,n,i,l,s,"next",o)}function s(o){aa(a,n,i,l,s,"throw",o)}l(void 0)})}}class Hl{static makeModel(e,t){var n=arguments;return qh(function*(){var i=n.length>2&&n[2]!==void 0?n[2]:new qe(e),a=null;return!S.isTreeTable(t)&&!S.isPartitionedTable(t)&&t.hasInputTable&&(a=yield t.inputTable()),new zh(e,t,i,a)})()}}function la(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function sa(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?la(Object(t),!0).forEach(function(n){Kh(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):la(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function Kh(r,e,t){return(e=Xh(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Xh(r){var e=Yh(r,"string");return typeof e=="symbol"?e:e+""}function Yh(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}function Gl(r,e){var t=["isStuckToBottom","isStuckToRight","movedColumns","movedRows"];return r===e||t.every(n=>r[n]===e[n])}function Bl(r,e){var t=["advancedFilters","aggregationSettings","customColumnFormatMap","isFilterBarShown","quickFilters","customColumns","reverse","rollupConfig","showSearchBar","searchValue","selectDistinctColumns","selectedSearchColumns","sorts","invertSearchColumns","pendingDataMap","frozenColumns","conditionalFormats","columnHeaderGroups","partitionConfig"];return r===e||r.metrics!=null&&e.metrics!=null&&r.metrics.userColumnWidths===e.metrics.userColumnWidths&&r.metrics.userRowHeights===e.metrics.userRowHeights&&t.every(n=>r[n]===e[n])}function Zh(){return U((r,e)=>$.dehydrateGridState(r,e),(r,e)=>{var[t,n]=r,[i,a]=e;return t===i&&Gl(n,a)})}function Qh(){return U((r,e)=>{var t=new $(r.dh);return t.dehydrateIrisGridState(r,e)},(r,e)=>{var[t,n]=r,[i,a]=e;return t===i&&Bl(n,a)})}function Jh(){return U((r,e,t)=>{var n=new $(r.dh);return sa(sa({},n.dehydrateIrisGridState(r,e)),$.dehydrateGridState(r,t))},(r,e)=>{var[t,n,i]=r,[a,l,s]=e;return t===a&&Bl(n,l)&&Gl(i,s)})}var Ar={makeMemoizedGridStateDehydrator:Zh,makeMemoizedIrisGridStateDehydrator:Qh,makeMemoizedCombinedGridStateDehydrator:Jh};function Kr(r,e,t){return(e=ec(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function ec(r){var e=tc(r,"string");return typeof e=="symbol"?e:e+""}function tc(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class Wt{}Kr(Wt,"OPEN","ChartEvent.OPEN");Kr(Wt,"CLOSE","ChartEvent.CLOSE");Kr(Wt,"COLUMN_SELECTED","ChartEvent.COLUMN_SELECTED");function Zt(r,e,t){return(e=nc(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function nc(r){var e=rc(r,"string");return typeof e=="symbol"?e:e+""}function rc(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class Fe{}Zt(Fe,"OPEN_GRID","IrisGridEvent.OPEN_GRID");Zt(Fe,"CLOSE_GRID","IrisGridEvent.CLOSE_GRID");Zt(Fe,"DATA_SELECTED","IrisGridEvent.DATA_SELECTED");Zt(Fe,"COLUMN_SELECTED","IrisGridEvent.COLUMN_SELECTED");Zt(Fe,"STATE_CHANGED","IrisGridEvent.STATE_CHANGED");Zt(Fe,"CREATE_CHART","IrisGridevent.CREATE_CHART");const Ul=Object.freeze({OPEN:"MarkdownEvent.OPEN"});function Wl(r,e,t){return(e=ic(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function ic(r){var e=ac(r,"string");return typeof e=="symbol"?e:e+""}function ac(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class Xr{}Wl(Xr,"OPEN","PandasEvent.OPEN");Wl(Xr,"CLOSE","PandasEvent.CLOSE");var lc=po;function sc(r){var{children:e,descriptor:t}=r,{name:n,type:i,description:a,displayName:l}=t,s=i.replace(/([a-z])([A-Z])/g,"$1 $2");return p.jsxs("div",{className:"tab-tooltip-grid-container",children:[p.jsxs("span",{className:"tab-tooltip-title",children:[s," Name"]}),p.jsxs("div",{className:"tab-tooltip-name-wrapper",children:[p.jsx("span",{className:"tab-tooltip-name",children:n}),p.jsx(su,{className:"tab-tooltip-copy",tooltip:"Copy name",copy:n})]}),n!==l&&!!l&&p.jsxs(p.Fragment,{children:[p.jsx("span",{className:"tab-tooltip-title",children:"Display Name"}),p.jsx("span",{className:"tab-tooltip-name",children:l})]}),!!a&&p.jsx("div",{className:"tab-tooltip-description",children:a}),e]})}var Yr=al(sc);function xr(r,e,t){return(e=oc(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function oc(r){var e=uc(r,"string");return typeof e=="symbol"?e:e+""}function uc(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class zl extends E.PureComponent{constructor(e){var t;super(e),t=this,xr(this,"getCachedRenderTabTooltip",U((n,i)=>n?()=>p.jsx(Yr,{descriptor:i}):void 0)),xr(this,"getCachedActions",U(function(n){var i,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:ee;return[...a,{title:"Copy ".concat((i=n.displayType)!==null&&i!==void 0?i:n.type," Name"),group:He.groups.medium,order:20,action:t.handleCopyName}]})),this.handleSessionClosed=this.handleSessionClosed.bind(this),this.handleCopyName=this.handleCopyName.bind(this),this.state={isClientDisconnected:!1,isPanelDisconnected:!1,isWidgetDisconnected:!1,isWaitingForReconnect:!1,isPanelInactive:!1}}handleCopyName(){var{descriptor:e}=this.props;il(e.name)}getErrorMessage(){var{descriptor:e,errorMessage:t}=this.props,{isClientDisconnected:n,isPanelDisconnected:i,isWidgetDisconnected:a,isWaitingForReconnect:l}=this.state;if(t!=null&&t!=="")return"".concat(t);if(n&&i&&l)return`Disconnected from server.
8
+ Check your internet connection.`;if(n&&i)return"Disconnected from server.";if(i){var{name:s,type:o}=e;return'Variable "'.concat(s,`" not set.
9
+ `).concat(o," does not exist yet.")}if(a)return"".concat(e.name," is unavailable.")}handleSessionClosed(e){var{onSessionClose:t}=this.props;this.setState({isPanelDisconnected:!0,isWaitingForReconnect:!1}),t==null||t(e)}render(){var{children:e,className:t,componentPanel:n,descriptor:i,isLoaded:a,isLoading:l,glContainer:s,glEventHub:o,isDisconnected:u,isClonable:d,isRenamable:h,showTabTooltip:c=!1,renderTabTooltip:v,onClearAllFilters:g,onHide:m,onFocus:f,onBlur:b,onResize:y,onSessionOpen:C,onShow:T,onTabBlur:w,onTabFocus:P,onTabClicked:R,additionalActions:F}=this.props,{isPanelDisconnected:D,isWidgetDisconnected:M,isPanelInactive:I}=this.state,j=this.getErrorMessage(),V=v??this.getCachedRenderTabTooltip(c,i),B=this.getCachedActions(i,F);return p.jsxs(It,{className:Me(t,{disconnected:D||M||u,inactive:I}),componentPanel:n,glContainer:s,glEventHub:o,onClearAllFilters:g,onHide:m,onFocus:f,onBlur:b,onResize:y,onShow:T,onSessionClose:this.handleSessionClosed,onSessionOpen:C,onTabBlur:w,onTabFocus:P,onTabClicked:R,renderTabTooltip:V,errorMessage:j,isLoaded:a,isLoading:l,isClonable:d,isRenamable:h,additionalActions:B,children:[e,I&&p.jsx("div",{className:"fill-parent-absolute"})]})}}xr(zl,"defaultProps",{className:"",isClonable:!0,isDisconnected:!1,isLoading:!1,isLoaded:!0,isRenamable:!0,showTabTooltip:!0});var yn=al(zl);const et=Object.freeze({DEFAULT:"DEFAULT",LINKER:"LINKER"});var dc=(r,e)=>t=>t(Tt(r,{connection:e})),hc=(r,e)=>t=>t(Tt(r,{sessionWrapper:e})),tr=(r,e)=>t=>t(Tt(r,{links:e})),ql=(r,e)=>(t,n)=>{var i=Pt(n(),r),a=e.filter(l=>i.findIndex(s=>_n(s.start,l.start)&&_n(s.end,l.end))<0);return t(tr(r,i.concat(a)))},Kl=(r,e)=>(t,n)=>{var i=Pt(n(),r),a=i.filter(l=>!e.includes(l.id));return t(tr(r,a))},Zr=(r,e)=>t=>t(Tt(r,{isolatedLinkerPanelId:e})),Xl=(r,e)=>t=>t(Tt(r,{columnSelectionValidator:e})),Yl=(r,e)=>t=>t(Tt(r,{consoleSettings:e})),Zl=(r,e)=>t=>t(Tt(r,{filterSets:e}));function Ql(r){var{columnMap:e,inputFilterMap:t,linkedColumnMap:n,onAdd:i,onOpenLinker:a,waitingFilterMap:l,waitingInputMap:s}=r,o=E.useMemo(()=>{var g=Array.from(s.keys()),m=g.find(y=>t.get(y)!=null),f=g.find(y=>n.get(y)!=null),b=Ze.join(g.map(y=>'"'.concat(y,'"')));return m!=null&&m&&f!=null&&f?"Use a filter control or linked table to set a value for ".concat(b):m!=null&&m?"Set a filter control value for ".concat(b):"Double click a row in a linked table to set a value for ".concat(b)},[t,n,s]),u=E.useMemo(()=>Array.from(e.values()),[e]),d=E.useCallback(g=>{g.stopPropagation(),g.preventDefault(),i(Array.from(l.values()))},[i,l]),h=E.useCallback(g=>{g.stopPropagation(),g.preventDefault(),a()},[a]),c=l.size>0,v=!c&&s.size>0;return p.jsx("div",{className:"chart-panel-overlay chart-filter-overlay",children:p.jsxs("div",{className:Me("chart-panel-overlay-content chart-filter-overlay-content",{"chart-filter-waiting-filter":c},{"chart-filter-waiting-input":v}),children:[c&&p.jsxs(p.Fragment,{children:[p.jsx("div",{className:"info-message",children:"This plot requires a filter control to be added to the layout or a table link to be created on the following columns:"}),p.jsx("div",{className:"waiting-filter-list",children:u.map(g=>{var m=l.has(g.name),f=m?Vo:$o;return p.jsxs("div",{className:Me("waiting-filter-item",{"is-invalid":m}),children:[p.jsx(Ne,{icon:f}),g.name]},g.name)})}),p.jsxs("div",{children:[p.jsx(Z,{kind:"primary",onClick:d,children:"Add Input Filters"}),p.jsx(Z,{kind:"primary",onClick:h,children:"Open Linker Tool"})]})]}),v&&p.jsxs(p.Fragment,{children:[p.jsx("div",{className:"info-message",children:"Waiting for User Input"}),p.jsx("div",{className:"",children:o})]})]})})}Ql.propTypes={columnMap:Q.instanceOf(Map).isRequired,inputFilterMap:Q.instanceOf(Map).isRequired,linkedColumnMap:Q.instanceOf(Map).isRequired,onAdd:Q.func.isRequired,onOpenLinker:Q.func.isRequired,waitingFilterMap:Q.instanceOf(Map).isRequired,waitingInputMap:Q.instanceOf(Map).isRequired};function fn(r){var{columns:e,onColumnSelected:t,onMouseEnter:n,onMouseLeave:i}=r;return p.jsx("div",{className:"chart-panel-overlay chart-column-selector-overlay",children:p.jsxs("div",{className:Me("chart-panel-overlay-content"),children:[p.jsx("div",{className:"info-message",children:"This plot requires a filter control to be added to the layout or a table link to be created on the following columns:"}),p.jsx("div",{className:"waiting-column-select-list",children:e.map(a=>p.jsx(Qn,{className:Me("btn-chart-column-selector",fn.makeButtonClassName(a.name)),onClick:()=>t(a.name),onMouseEnter:()=>{n&&n(a)},onMouseLeave:i,disabled:!a.isValid,isLinked:a.isActive,children:a.name},a.name))})]})})}fn.makeButtonClassName=r=>"btn-chart-column-selector-".concat(r);fn.defaultProps={onMouseEnter:()=>{},onMouseLeave:()=>{}};function _t(r){return r.settings!==void 0}function Jl(r){return r.figure!==void 0}function es(r){if(r==null)return!1;var{settings:e,tableSettings:t}=r;return typeof e=="object"&&typeof t=="object"}function ts(r){return r!=null&&es(r.panelState)}var Qr=Xt(ht.COLUMNS_CHANGED),cc=Qr.listen,Bn=Qr.emit,vc=Qr.useListener,Jr=Xt(ht.TABLE_CHANGED);Jr.listen;var Un=Jr.emit,pc=Jr.useListener,ei=Xt(ht.FILTERS_CHANGED);ei.listen;var ns=ei.emit,fc=ei.useListener,ti=Object.freeze({LINK_POINT_SELECTED:"LinkerEvent.LINK_POINT_SELECTED",SOURCE_DATA_SELECTED:"LinkerEvent.SOURCE_DATA_SELECTED",REGISTER_TARGET:"LinkerEvent.REGISTER_TARGET"}),ni=Xt(ti.LINK_POINT_SELECTED),mc=ni.listen,nr=ni.emit;ni.useListener;var ri=Xt(ti.SOURCE_DATA_SELECTED),gc=ri.listen,rs=ri.emit;ri.useListener;var ii=Xt(ti.REGISTER_TARGET),bc=ii.listen,oa=ii.emit;ii.useListener;function ua(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function Fn(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ua(Object(t),!0).forEach(function(n){ze(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):ua(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function ze(r,e,t){return(e=Cc(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Cc(r){var e=yc(r,"string");return typeof e=="symbol"?e:e+""}function yc(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var xe=J.module("ChartPanel"),Sc=150;function Ec(r){return r.inputFilters!=null}function wc(r){return r.panelState!=null}class rr extends E.Component{constructor(e){super(e),ze(this,"panelContainer",void 0),ze(this,"pending",void 0),ze(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})),ze(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})),ze(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})),ze(this,"getLinkedColumnMap",U((l,s)=>{for(var o=new Map,u=H.getIdFromPanel(this),d=0;d<s.length;d+=1){var h=s[d],c=null;if(h.start!=null&&h.start.panelId===u&&l.has(h.start.columnName)?c=h.start.columnName:h.end&&h.end.panelId===u&&l.has(h.end.columnName)&&(c=h.end.columnName),c!=null&&l.has(c)){var v=l.get(c);N(v),o.set(c,v)}}return o})),ze(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)})))),ze(this,"getWidgetPanelDescriptor",U(l=>{var s="Chart";if(_t(l))s=l.table;else if(Jl(l)){var o;s=(o=l.figure)!==null&&o!==void 0?o:s}else{var u;s=(u=l.name)!==null&&u!==void 0?u:s}return Fn(Fn({},l),{},{type:"Chart",name:s})})),this.handleColumnSelected=this.handleColumnSelected.bind(this),this.handleColumnMouseEnter=this.handleColumnMouseEnter.bind(this),this.handleColumnMouseLeave=this.handleColumnMouseLeave.bind(this),this.handleDisconnect=this.handleDisconnect.bind(this),this.handleReconnect=this.handleReconnect.bind(this),this.handleFilterAdd=this.handleFilterAdd.bind(this),this.handleHide=this.handleHide.bind(this),this.handleError=this.handleError.bind(this),this.handleLoadError=this.handleLoadError.bind(this),this.handleLoadSuccess=this.handleLoadSuccess.bind(this),this.handleSettingsChanged=this.handleSettingsChanged.bind(this),this.handleOpenLinker=this.handleOpenLinker.bind(this),this.handleShow=this.handleShow.bind(this),this.handleSourceColumnChange=this.handleSourceColumnChange.bind(this),this.handleSourceFilterChange=this.handleSourceFilterChange.bind(this),this.handleSourceSortChange=this.handleSourceSortChange.bind(this),this.handleTabBlur=this.handleTabBlur.bind(this),this.handleTabFocus=this.handleTabFocus.bind(this),this.handleUpdate=this.handleUpdate.bind(this),this.updateModelFromSource=vt(this.updateModelFromSource.bind(this),Sc),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.panelContainer=Te.createRef(),this.pending=new $r;var{metadata:t,panelState:n}=e,{filterValueMap:i=[],settings:a={}}=n??{};this.state={settings:a,error:void 0,isActive:!1,isDisconnected:!1,isLoading:!1,isLoaded:!1,isLinked:t!=null&&_t(t)&&t.settings.isLinked,filterMap:new Map(i),filterValueMap:new Map(i),model:void 0,columnMap:new Map,panelState:n}}componentDidMount(){this.isHidden()||(this.setState({isActive:!0}),this.initModel())}componentDidUpdate(e,t){var{inputFilters:n,source:i,makeModel:a}=this.props,{columnMap:l,model:s,filterMap:o,filterValueMap:u,isLinked:d,settings:h}=this.state;a!==e.makeModel&&this.initModel(),s!=null&&(l!==t.columnMap&&this.pruneFilterMaps(),n!==e.inputFilters&&this.updateChangedInputFilters(n,e.inputFilters),o!==t.filterMap?this.updateFilters():u!==t.filterValueMap&&this.updatePanelState(),h!==t.settings&&Vi(s)&&(s.updateSettings(h),this.updatePanelState()),d!==t.isLinked?i&&(d?(this.startListeningToSource(i),this.updateModelFromSource()):this.stopListeningToSource(i)):d&&i!==e.source&&(e.source&&this.stopListeningToSource(e.source),i&&(this.startListeningToSource(i),this.updateModelFromSource())))}componentWillUnmount(){this.pending.cancel();var{model:e}=this.state,{source:t}=this.props;e!=null&&t&&this.stopListeningToSource(t)}initModel(){this.setState({isLoading:!0,isLoaded:!1,error:void 0,isDisconnected:!1});var{makeModel:e}=this.props;this.pending.cancel(),this.pending.add(e(),t=>{t.close()}).then(this.handleLoadSuccess,this.handleLoadError)}startListeningToSource(e){xe.debug("startListeningToSource",e);var{model:t}=this.state;N(t);var{dh:n}=t;e.addEventListener(n.Table.EVENT_CUSTOMCOLUMNSCHANGED,this.handleSourceColumnChange),e.addEventListener(n.Table.EVENT_FILTERCHANGED,this.handleSourceFilterChange),e.addEventListener(n.Table.EVENT_SORTCHANGED,this.handleSourceSortChange)}stopListeningToSource(e){xe.debug("stopListeningToSource",e);var{model:t}=this.state;N(t);var{dh:n}=t;e.removeEventListener(n.Table.EVENT_CUSTOMCOLUMNSCHANGED,this.handleSourceColumnChange),e.removeEventListener(n.Table.EVENT_FILTERCHANGED,this.handleSourceFilterChange),e.removeEventListener(n.Table.EVENT_SORTCHANGED,this.handleSourceSortChange)}loadModelIfNecessary(){var{isActive:e,isLoaded:t,isLoading:n}=this.state;e&&!t&&!n&&this.initModel()}isHidden(){var{glContainer:e}=this.props,{isHidden:t}=e;return t}handleColumnSelected(e){var{glEventHub:t}=this.props,{columnMap:n}=this.state,i=H.getIdFromPanel(this);N(i);var a=n.get(e);a!=null&&nr(t,i,a,{type:"chartLink"})}handleColumnMouseEnter(e){var{type:t,name:n}=e,{columnSelectionValidator:i}=this.props;xe.debug("handleColumnMouseEnter",i,t,n),i&&i(this,{type:t,name:n},{type:"chartLink"})}handleColumnMouseLeave(){var{columnSelectionValidator:e}=this.props;xe.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:n}=this.props;n(e,void 0),t(et.LINKER)}handleReconnect(){this.setState({isDisconnected:!1,error:void 0}),this.sendColumnChange(),this.updateColumnFilters()}handleLoadSuccess(e){xe.debug("handleLoadSuccess");var{model:t}=this.state;this.setState({model:e,isLoaded:!0},()=>{var{inputFilters:n,source:i}=this.props,{filterMap:a,isLinked:l}=this.state;e!==t&&(this.sendColumnChange(),this.updateColumnFilters(),this.updateInputFilters(n,a.size>0||e.isFilterRequired()),i&&l&&(this.startListeningToSource(i),this.updateModelFromSource()))})}handleLoadError(e){ke.isCanceled(e)||(xe.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:n,model:i}=this.state;if(!n||!i||!t){xe.debug2("updateModelFromSource ignoring",n,i,t);return}var{dh:a}=i;if(this.pending.cancel(),_t(e)){var{settings:l}=e;this.pending.add(Bt.makeFigureFromSettings(a,l,t),s=>s.close()).then(s=>{Vi(i)&&i.setFigure(s)}).catch(this.handleLoadError)}this.updatePanelState()}updatePanelState(){var{sourcePanel:e}=this.props,{panelState:t,filterValueMap:n,settings:i}=this.state,{tableSettings:a}=t??{};if(e&&Ec(e.props)&&wc(e.state)){var{inputFilters:l}=e.props,{panelState:s}=e.state;s!=null&&(a=$.extractTableSettings(s,l))}this.setState({panelState:{settings:i,tableSettings:a,filterValueMap:Array.from(n)}})}handleError(){this.setState({isLoading:!1})}handleSettingsChanged(e){this.setState(t=>{var{settings:n}=t,i=Fn(Fn({},n),e);return xe.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:n,type:i}=e;t.emit(ht.OPEN_INPUT,{title:"".concat(n," Filter"),panelState:{name:n,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,n=H.getIdFromPanel(this);N(n),Bn(t,n,Array.from(e.getFilterColumnMap().values()))}}getCoordinateForColumn(e){var t,n=fn.makeButtonClassName(e);if(!this.panelContainer.current)return null;var i=this.panelContainer.current.querySelector(".".concat(n)),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){xe.debug("setFilterMap",e),this.setState(t=>{var n,{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){xe.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:(n=l)!==null&&n!==void 0?n:a}})}unsetFilterValue(e){this.setState(t=>{var{inputFilters:n}=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,n);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 n=t.filter(a=>e.find(l=>l.name===a.name&&l.type===a.type)===void 0);n.length>0&&this.deleteInputFilters(n);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(n=>{for(var{columnMap:i}=n,a=new Map(n.filterValueMap),l=new Map(n.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 xe.debug("updateInputFilters",s),s})}deleteInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;this.setState(n=>{for(var{columnMap:i,filterValueMap:a}=n,l=new Map(n.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 xe.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:n}=this.state;N(n);var i=this.getWaitingInputMap(n.isFilterRequired(),e,t);if(n.setFilter(t),t.size>0&&i.size===0){var a=n.getDefaultTitle(),l=Ze.join(Array.from(t.entries()).map(s=>{var[o,u]=s;return"".concat(o,": ").concat(u)}));a?n.setTitle("".concat(a,'<br><span style="font-size: smaller">').concat(l,"</span>")):n.setTitle(l),xe.debug2("updateFilters filters set",t),this.setState({isLoading:!0})}else xe.debug2("updateFilters waiting on inputs",i),n.setTitle(n.getDefaultTitle()),this.setState({isLoading:!1});this.updatePanelState()}pruneFilterMaps(){this.setState(e=>{var{columnMap:t}=e,n=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)||(n.delete(s),a.filterMap=n)}),a})}render(){var{columnSelectionValidator:e,glContainer:t,glEventHub:n,inputFilters:i,isLinkerActive:a,links:l,metadata:s,settings:o,Plotly:u,containerRef:d}=this.props,{columnMap:h,filterMap:c,error:v,model:g,isActive:m,isDisconnected:f,isLoaded:b,isLoading:y}=this.state,C=this.getInputFilterColumnMap(h,i),T=this.getLinkedColumnMap(h,l),w=g!=null?this.getWaitingInputMap(g.isFilterRequired(),h,c):new Map,P=g!=null?this.getWaitingFilterMap(g.isFilterRequired(),h,c,T,C):new Map,R=v!=null?"Unable to open chart. ".concat(v):void 0,F=w.size>0,D=h.size>0&&a,M=this.getWidgetPanelDescriptor(s);return p.jsx(yn,{className:Me("iris-chart-panel",{"input-required":F}),componentPanel:this,glContainer:t,glEventHub:n,onHide:this.handleHide,onClearAllFilters:this.handleClearAllFilters,onShow:this.handleShow,onTabBlur:this.handleTabBlur,onTabFocus:this.handleTabFocus,errorMessage:R,isDisconnected:f,isLoading:y,isLoaded:b,descriptor:M,children:p.jsxs("div",{ref:this.panelContainer,className:"chart-panel-container h-100 w-100",children:[p.jsx("div",{className:"chart-container h-100 w-100",children:b&&g&&p.jsx(Ll,{isActive:m,model:g,settings:o,onDisconnect:this.handleDisconnect,onReconnect:this.handleReconnect,onUpdate:this.handleUpdate,onError:this.handleError,onSettingsChanged:this.handleSettingsChanged,Plotly:u,containerRef:d})}),p.jsx(Or,{in:F&&!D&&!y,mountOnEnter:!0,unmountOnExit:!0,children:p.jsx(Ql,{inputFilterMap:C,linkedColumnMap:T,onAdd:this.handleFilterAdd,onOpenLinker:this.handleOpenLinker,columnMap:h,waitingFilterMap:P,waitingInputMap:w})}),p.jsx(Or,{in:D,mountOnEnter:!0,unmountOnExit:!0,children:p.jsx(fn,{columns:this.getSelectorColumns(h,T,e),onColumnSelected:this.handleColumnSelected,onMouseEnter:this.handleColumnMouseEnter,onMouseLeave:this.handleColumnMouseLeave})})]})})}}ze(rr,"defaultProps",{columnSelectionValidator:null,isLinkerActive:!1,source:null,sourcePanel:null,panelState:null,settings:{},containerRef:null});ze(rr,"displayName","ChartPanel");ze(rr,"COMPONENT","ChartPanel");var Tc=(r,e)=>{var{localDashboardId:t,metadata:n}=e,i;n!=null&&_t(n)&&(i=n.sourcePanelId);var a=qn(r,t),l=sl(r,t),s=Hr(r),o=Kn(r,t),u=s===et.LINKER&&o===void 0;return{columnSelectionValidator:gn(r,t),isLinkerActive:u,inputFilters:bn(r,t),links:Pt(r,t),source:i!=null?a.get(i):void 0,sourcePanel:i!=null?l.get(i):void 0,settings:Xn(r)}},ai=wt(Tc,{setActiveTool:ll,setDashboardIsolatedLinkerPanelId:Zr},null,{forwardRef:!0})(rr);function Je(r,e,t){return(e=Pc(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Pc(r){var e=Oc(r,"string");return typeof e=="symbol"?e:e+""}function Oc(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var Nn=J.module("DropdownFilter"),Dc=150;class rt extends E.Component{constructor(e){super(e),Je(this,"dropdownRef",void 0),Je(this,"getCompatibleColumns",U((a,l)=>a!=null?l.filter(s=>{var{type:o}=s;return o!==void 0&&S.isCompatibleType(o,a.columnType)}):[])),Je(this,"getColumnOptions",U((a,l)=>{var s=-1,o=[];return o.push(p.jsx("option",{value:"-1",children:"Select a column"},"placeholder")),a.forEach((u,d)=>{o.push(p.jsx("option",{value:d,children:this.getItemLabel(a,d)},"".concat(u.name,"/").concat(u.type))),l!==null&&u.name===l.name&&u.type===l.type&&(s=d)}),[o,s]})),Je(this,"getSelectedOptionIndex",U((a,l)=>a.indexOf(l))),Je(this,"getValueOptions",U(a=>[p.jsx("option",{value:"-1",children:rt.PLACEHOLDER},"-1"),...a.map((l,s)=>p.jsx("option",{value:s,children:l??"(null)"},"".concat(s,"/").concat(l)))])),Je(this,"getItemLabel",Be((a,l)=>{var{name:s,type:o}=a[l];if(l>0&&a[l-1].name===s||l<a.length-1&&a[l+1].name===s){var u=o.substring(o.lastIndexOf(".")+1);return"".concat(s," (").concat(u,")")}return s},{max:1e3})),Je(this,"sendUpdate",vt(()=>{var{onChange:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a({column:l,isValueShown:o,value:s??void 0})},Dc)),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=Te.createRef();var{column:t,isValueShown:n,value:i}=e;this.state={column:t,id:Ue(),selectedColumn:t,disableCancel:!n,isValueShown:n,value:i}}componentDidUpdate(e,t){var{source:n,values:i,isLoaded:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a&&(n!==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(Nn.debug2("handleColumnChange",t),t!=null&&parseInt(t,10)<0){this.setState({selectedColumn:null});return}var{columns:n,source:i}=this.props,a=this.getCompatibleColumns(i,n);this.setState({selectedColumn:a[parseInt(t,10)]})}handleDropdownKeyPress(e){e.key==="Enter"&&(e.preventDefault(),e.stopPropagation(),Nn.debug2("handleDropdownKeyPress"),this.sendUpdate(),this.sendUpdate.flush())}handleValueChange(e){var t=e,n=parseInt(t,10),i="",{values:a}=this.props;n>=0&&n<a.length?i=a[n]:Nn.debug2("Selected default item"),Nn.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:n,value:i}=e;return{column:n,value:t===n?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:n,value:i,isValueShown:a}=e,l=t!=null&&n!=null?{name:t,type:n}: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:n,isLinkerActive:i,isLoaded:a,source:l,onColumnSelected:s,onSourceMouseEnter:o,onSourceMouseLeave:u,values:d,settingsError:h}=this.props,{column:c,disableCancel:v,id:g,isValueShown:m,selectedColumn:f,value:b}=this.state,y=l===null,C=this.getCompatibleColumns(l,t),T=l!=null,w=(e=l==null?void 0:l.columnName)!==null&&e!==void 0?e:rt.SOURCE_BUTTON_PLACEHOLDER,P=c!=null?"".concat(c.name," Filter"):null,[R,F]=this.getColumnOptions(C,f),D=this.getValueOptions(d),M=this.getSelectedOptionIndex(d,b),I=!T||f==null,j=m&&!i,V="source-column-btn-".concat(g),B="filter-column-select-".concat(g);return p.jsxs(Wr,{className:"dropdown-filter fill-parent-absolute",isFlipped:j,children:[p.jsx("div",{className:"dropdown-filter-settings-card",children:p.jsxs("div",{className:"dropdown-filter-card-content",children:[p.jsxs("div",{className:"dropdown-filter-settings-grid",children:[p.jsx("label",{htmlFor:V,children:"Source Column"}),p.jsx(Qn,{id:V,isLinked:T,onClick:s,onMouseEnter:o,onMouseLeave:u,className:rt.SOURCE_BUTTON_CLASS_NAME,disabled:n,children:w}),p.jsx("div",{className:"text-muted small",children:"Select a source column for the list by linking to a table."}),p.jsx("label",{htmlFor:B,children:"Filter Column"}),p.jsx(cn,{id:B,value:String(F),className:"custom-select",onChange:this.handleColumnChange,disabled:y,children:R}),p.jsx("div",{className:"text-muted small",children:"Dropdown filter control will apply its filter to all columns matching this name in this dashboard."})]}),h&&p.jsx("div",{className:"error-message text-center",children:h}),T&&p.jsxs("div",{className:"dropdown-filter-settings-buttons",children:[p.jsx(Z,{kind:"secondary",type:"button",onClick:this.handleSettingsCancel,disabled:v||m||i,tooltip:i?"Cancel disabled while linker open":void 0,children:"Cancel"}),p.jsx(Z,{kind:"primary",type:"button",className:"ml-2",onClick:this.handleSettingsSave,disabled:I||m||i,tooltip:i?"Save disabled while linker open":void 0,children:"Save"})]})]})}),p.jsx("div",{className:"dropdown-filter-value-card",onClick:this.handleBackgroundClick,"data-testid":"dropdown-filter-value-background",children:a&&p.jsxs(p.Fragment,{children:[p.jsx("div",{className:"dropdown-filter-column",children:p.jsx("div",{className:"dropdown-filter-column-title",children:P})}),p.jsxs("div",{className:"dropdown-filter-card-content",children:[p.jsx("div",{className:"dropdown-filter-value-input d-flex flex-column justify-content-center",children:p.jsx(cn,{className:"custom-select",value:String(M),ref:this.dropdownRef,onChange:this.handleValueChange,onKeyDown:this.handleDropdownKeyPress,title:"Select Value",children:D})}),h&&p.jsx("div",{className:"error-message mt-3 text-center",children:h})]}),p.jsx("div",{className:"dropdown-filter-menu",children:p.jsx(Z,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:p.jsx(Ne,{icon:Br,transform:"grow-4"}),tooltip:"Dropdown Filter Settings"})})]})})]})}}Je(rt,"defaultProps",{column:null,disableLinking:!1,isLinkerActive:!1,isLoaded:!1,isValueShown:!1,settingsError:null,source:null,value:"",values:[],onColumnSelected:()=>{},onSourceMouseEnter:()=>{},onSourceMouseLeave:()=>{}});Je(rt,"PLACEHOLDER","Select a value...");Je(rt,"SOURCE_BUTTON_CLASS_NAME","btn-dropdown-filter-selector");Je(rt,"SOURCE_BUTTON_PLACEHOLDER","Select a column");function Re(r,e,t){return(e=Fc(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Fc(r){var e=Nc(r,"string");return typeof e=="symbol"?e:e+""}function Nc(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var ue=J.module("DropdownFilterPanel"),Mc=250,Rc=Object.freeze({name:"Dropdown Filter",type:"DropdownFilter"}),Ic=(r,e)=>{var{localDashboardId:t}=e,n=H.getIdFromPanel({props:e}),i=qn(r,t),a=Pt(r,t),l=Hr(r),s=Kn(r,t),o=l===et.LINKER&&(s===void 0||s===n),u=l===et.LINKER&&s!==void 0&&s!==n;return{columns:Gr(r,t),columnSelectionValidator:gn(r,t),dh:ol(r),isLinkerActive:o,disableLinking:u,settings:Xn(r),panelTableMap:i,dashboardLinks:a}},kc=wt(Ic,null,null,{forwardRef:!0});class tt extends E.Component{constructor(e){super(e),Re(this,"dateTimeFormatter",void 0),Re(this,"dropdownFilterRef",void 0),Re(this,"panelContainer",void 0),Re(this,"pending",void 0),Re(this,"cleanup",void 0),Re(this,"columnFormats",void 0),Re(this,"getCachedValues",Be((h,c,v)=>{var{type:g,name:m}=c;return g!==void 0&&S.isDateType(g)?h.map(f=>this.dateTimeFormatter.format(f)):h.map(f=>f!=null&&g!=null?v.getFormattedString(f,g,m):null)},{max:1e3})),Re(this,"getCachedPanelLinks",Be((h,c)=>{var v=H.getIdFromPanel(c);return ue.debug("getCachedPanelLinks",h,v),h.filter(g=>{var m;return((m=g.end)===null||m===void 0?void 0:m.panelId)===v})},{max:1e3})),Re(this,"getCachedSource",Be(h=>{ue.debug("getCachedSource",h);var c;if(h.length>0){var[v]=h;c=v.start,h.length>1&&ue.error("Filter has more that one link",h)}return c},{max:1e3})),Re(this,"getCachedSourceTable",Be((h,c)=>{var v;if(ue.debug("getCachedSourceTable",h,c),c==null)return null;var{panelId:g}=c;return(v=h.get(g))!==null&&v!==void 0?v:null},{max:1e3})),Re(this,"getCachedSourceColumn",Be((h,c)=>{var v;return ue.debug("getCachedSourceColumn",h,c),h==null||c==null?null:(v=h.columns.find(g=>{var{name:m,type:f}=g;return m===c.columnName&&f===c.columnType}))!==null&&v!==void 0?v:null},{max:1e3})),this.handleChange=vt(this.handleChange.bind(this),Mc),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=Te.createRef(),this.panelContainer=Te.createRef(),this.pending=new $r;var{dh:t,panelState:n,settings:i}=e;this.columnFormats=Dr.getColumnFormats(i),this.dateTimeFormatter=new Vn(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}=n??{},d=s!=null&&o!=null?{name:s,type:o}:void 0;this.state={column:d,formatter:new qe(t,this.columnFormats),valuesTable:void 0,valuesColumn:void 0,sourceSize:0,value:a,timestamp:u,values:[],isValueShown:l,wasFlipped:!1,skipUpdate:!1,panelState:n,isDisconnected:!1,isLoading:!1,isLoaded:!1,error:null}}componentDidMount(){this.updateValuesTable();var{dashboardLinks:e,panelTableMap:t}=this.props,{column:n,value:i,timestamp:a}=this.state,l=this.getSourceTable(t,e);if(l!==null&&this.startListeningToSource(l),n!=null){var{name:s,type:o}=n;this.sendUpdate(s,o,i,a)}}componentDidUpdate(e,t){var{dashboardLinks:n,panelTableMap:i,settings:a}=this.props,{valuesTable:l}=this.state,s=this.getSource(n),o=this.getSourceTable(i,n),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&&(ue.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:n}=this.state,i=this.getSourceTable(t,e);this.pending.cancel(),i!==null&&this.stopListeningToSource(i),this.cleanup&&this.cleanup(),n!=null&&n.close()}getCoordinateForColumn(){var e;if(this.panelContainer.current==null)return null;var t=this.panelContainer.current.querySelector(".".concat(rt.SOURCE_BUTTON_CLASS_NAME)),n=(e=t==null?void 0:t.getBoundingClientRect())!==null&&e!==void 0?e:null;if(n==null||n.width<=0||n.height<=0)return null;var i=n.left+n.width/2,a=n.bottom;return[i,a]}getSettingsErrorMessage(){var{sourceSize:e}=this.state;if(e>tt.MAX_TABLE_SIZE)return"Table too large, must have fewer than ".concat(tt.MAX_TABLE_SIZE," options.")}getPanelErrorMessage(){var{error:e}=this.state;return e!=null?"".concat(e):void 0}getSource(e){var t=this.getCachedPanelLinks(e,this);return this.getCachedSource(t)}getSourceTable(e,t){var n=this.getSource(t);return this.getCachedSourceTable(e,n)}getValuesColumn(e,t){var n=this.getSource(t);return this.getCachedSourceColumn(e,n)}startListeningToSource(e){var{dh:t}=this.props;ue.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;ue.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:n=!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:m}=u,f=c!=null&&n!==c.isValueShown&&a===c.name&&l===c.type&&i===c.value;return s=(d=!m&&n&&(!f||!g))!==null&&d!==void 0?d:!1,s||(o=v),{panelState:{isValueShown:n,name:a,type:l,value:i,timestamp:(h=o)!==null&&h!==void 0?h:void 0},timestamp:o,wasFlipped:f,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(){ue.debug("handleColumnSelected");var{glEventHub:e}=this.props,t=H.getIdFromPanel(this);N(t),nr(e,t,tt.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,n,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,{dashboardLinks:a}=this.props;if(this.getSource(a)==null){ue.debug("Ignore state update for unlinked filter",e);return}this.setState({skipUpdate:!i}),(t=this.dropdownFilterRef)===null||t===void 0||(n=t.current)===null||n===void 0||n.setFilterState(e)}sendUpdate(e,t,n,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];ue.debug("sendUpdate",{name:e,type:t,value:n,timestamp:i,excludePanelIds:u});var d=H.getIdFromPanel(this);N(d),ns(s,d,e!=null&&t!=null&&i!=null?{name:e,type:t,value:n??"=null",timestamp:i,excludePanelIds:u}:null)}updateValuesTable(){var{dashboardLinks:e,panelTableMap:t}=this.props,n=this.getSource(e),i=this.getSourceTable(t,e);if(ue.debug("updateValuesTable",n,i),this.setState({values:[],valuesTable:void 0,error:null}),n==null){ue.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=>{ke.isCanceled(a)||(ue.error(a),this.setState({isLoading:!1,error:a}))}))}applySourceSorts(){var{dashboardLinks:e,panelTableMap:t}=this.props,{valuesTable:n}=this.state,i=this.getSourceTable(t,e);if(ue.debug("applySourceSorts",i==null?void 0:i.sort),n==null||i==null){ue.debug("Table not initialized");return}var a=[...i.sort];n.applySort(a),this.setViewport(n)}applySourceFilters(){var{dashboardLinks:e,panelTableMap:t}=this.props,{valuesTable:n}=this.state,i=this.getSourceTable(t,e);if(ue.debug("applySourceFilters",i==null?void 0:i.filter),n==null||i==null){ue.debug("Table not initialized");return}var a=[...i.filter];n.applyFilter(a),this.setViewport(n)}updateViewportListener(e){var{dh:t}=this.props;if(ue.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,n=this.getValuesColumn(e,t);if(!n){ue.error("values column is null");return}e.setViewport(0,tt.MAX_TABLE_SIZE-1,[n])}updateFormatterSettings(e){var{dh:t}=this.props,n=Dr.getColumnFormats(e);_n(this.columnFormats,n)||(this.columnFormats=n,this.setState({formatter:new qe(t,n)}))}handleValuesTableUpdate(e){var{detail:t}=e,{rows:n}=t,{dashboardLinks:i}=this.props,{valuesTable:a}=this.state;if(!a){ue.error("valuesTable is null");return}var l=this.getValuesColumn(a,i);if(!l){ue.error("Values column not found");return}var s=n.map(o=>o.get(l));this.setState({values:s,isLoading:!1,isLoaded:!0,valuesColumn:l})}handleSourceMouseEnter(){var{columnSelectionValidator:e}=this.props;e&&e(this,tt.SOURCE_COLUMN,{type:"filterSource"})}handleSourceMouseLeave(){var{columnSelectionValidator:e}=this.props;e&&e(this,void 0,{type:"filterSource"})}render(){var{columns:e,dashboardLinks:t,disableLinking:n,glContainer:i,glEventHub:a,isLinkerActive:l}=this.props,{column:s,formatter:o,isDisconnected:u,isValueShown:d,value:h,values:c,valuesColumn:v,isLoading:g,isLoaded:m}=this.state,f=this.getSource(t),b=this.getSettingsErrorMessage(),y=this.getPanelErrorMessage(),C=m&&v!=null?this.getCachedValues(c,v,o):ee;return p.jsx(yn,{errorMessage:y,isLoading:g,isLoaded:m,isDisconnected:u,className:"iris-dropdown-filter-panel",componentPanel:this,glContainer:i,glEventHub:a,onClearAllFilters:this.handleClearAllFilters,descriptor:Rc,children:p.jsx("div",{ref:this.panelContainer,className:"dropdown-filter-container h-100 w-100 container",children:p.jsx(rt,{ref:this.dropdownFilterRef,column:s,columns:e,isValueShown:d,isLinkerActive:l,disableLinking:n,isLoaded:m,settingsError:b,source:f,value:h,values:C,onChange:this.handleChange,onColumnSelected:this.handleColumnSelected,onSourceMouseEnter:this.handleSourceMouseEnter,onSourceMouseLeave:this.handleSourceMouseLeave})})})}}Re(tt,"displayName","DropdownFilterPanel");Re(tt,"COMPONENT","DropdownFilterPanel");Re(tt,"MAX_TABLE_SIZE",256);Re(tt,"SOURCE_COLUMN",Object.freeze({name:"FilterSource",type:null}));var Vt=kc(tt);function da(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function Mn(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?da(Object(t),!0).forEach(function(n){on(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):da(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function on(r,e,t){return(e=Lc(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Lc(r){var e=Ac(r,"string");return typeof e=="symbol"?e:e+""}function Ac(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var he=J.module("FilterSetManager"),xc="Enter name...",ha="No Available Filter Sets";class mn extends E.Component{static animateScreenFlash(){var e,t=document.createElement("div");t.classList.add("screen-flash-overlay"),t.addEventListener("animationend",()=>{t.remove()}),(e=document.querySelector("body"))===null||e===void 0||e.appendChild(t)}constructor(e){super(e),on(this,"renameInputRef",Te.createRef()),on(this,"dropdownRef",Te.createRef()),on(this,"editDropdownRef",Te.createRef()),on(this,"isRenamingExistingSet",U((t,n)=>n!==void 0&&t.some(i=>{var{id:a}=i;return a===n.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:n,filterSets:i}=this.props,{modifiedFilterSets:a}=this.state;if(e.isValueShown&&!n&&this.initSettingsScreen(),this.isNameInputScreen()&&!this.isNameInputScreen(t)&&this.focusRenameInput(),i!==e.filterSets)if(!n&&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;he.debug("initSettingsScreen",e,t),this.setState({modifiedFilterSets:[...e],editId:t})}updateSelectedId(){var{isValueShown:e,filterSets:t,selectedId:n,onChange:i}=this.props;if(he.debug("updateSelectedId",t,n),!!e&&!t.some(l=>{var{id:s}=l;return s===n})){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:n,onChange:i}=this.props;this.applyFilterSet(t),i({isValueShown:n,selectedId:t})}handleFilterApply(){var{selectedId:e}=this.props;this.applyFilterSet(e)}handleSettingsCancel(){var{onChange:e,selectedId:t,filterSets:n}=this.props;this.setState({modifiedFilterSets:[]}),n.length>0&&e({isValueShown:!0,selectedId:t})}handleSettingsSave(){var{onChange:e,onUpdateSets:t}=this.props,{modifiedFilterSets:n,editId:i}=this.state;this.setState({modifiedFilterSets:[]}),he.debug("Update sets",n,i),t(n),n.length>0&&e({isValueShown:!0,selectedId:i})}handleCaptureNewSet(){var{getFilterState:e}=this.props;mn.animateScreenFlash();var t=Ue(),n=e(),i={id:t,title:"",panels:n};he.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:n,modifiedFilterSets:i}=this.state,a=(t=e==null?void 0:e.trim())!==null&&t!==void 0?t:"";if(a.length===0)return he.debug("Name cannot be empty",a),"Name cannot be empty";if(n!==void 0&&i.some(l=>{var{title:s,id:o}=l;return s===a&&o!==n.id}))return he.debug("Set with this name already exists",a),"Set with this name already exists"}handleRenameConfirm(){var e,{nameInputValue:t,renameSet:n,modifiedFilterSets:i,restoreFullState:a}=this.state;if(n===void 0){he.error("Renamed set undefined.");return}var l=this.getNameError(t);if(he.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=Mn(Mn({},n),{},{title:s,restoreFullState:a}),u=i.findIndex(h=>{var{id:c}=h;return c===n.id}),d=[...i];u>=0?(d[u]=o,he.debug("Renamed existing set",d)):(d.push(o),he.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:n}=e,i=n.findIndex(o=>{var{id:u}=o;return u===t});if(i<0)return he.error("Unable to find selected filterSet index",n,t),null;var a=n.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 he.debug("Deleted selected set",t,n,a),he.debug("New selection",l,s),{modifiedFilterSets:a,editId:s}})}handleSetUpdate(){var{getFilterState:e}=this.props;mn.animateScreenFlash();var t=e();this.setState(n=>{var{modifiedFilterSets:i,editId:a}=n;if(a===void 0)return he.error("Filter for update not selected."),null;var l=[...i],s=l.findIndex(o=>{var{id:u}=o;return u===a});return s<0?(he.error("Selected set for update not found."),null):(l[s]=Mn(Mn({},l[s]),{},{panels:t}),he.debug("Update set",l,t),{modifiedFilterSets:l})})}handleSetEdit(){this.setState(e=>{var{editId:t,modifiedFilterSets:n}=e,i=n.find(s=>{var{id:o}=s;return o===t});if(i===void 0)return he.error("Could not find selected set",t,n),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:n}=this.props;t({isValueShown:!1,selectedId:n})}handleBackgroundClick(e){he.debug("handleBackgroundClick"),e.target!==this.dropdownRef.current&&this.focusInput()}handleNameInputChange(e){var{value:t}=e.target,n=this.getNameError(t);this.setState({nameInputValue:t,nameInputError:n})}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:n}=this.props;if(e===void 0){he.debug("No filter selected");return}var i=n.find(a=>{var{id:l}=a;return l===e});if(i===void 0){he.debug("Selected id not found in filterSets",e,n);return}he.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:n,renameSet:i,modifiedFilterSets:a,restoreFullState:l}=this.state,{isValueShown:s,filterSets:o,selectedId:u}=this.props,d=this.isNameInputScreen(),h=this.isRenamingExistingSet(a,i),c=a.length===0,v=!d&&c&&o.length===0,g=!d&&!v,m=p.jsxs("div",{className:"fa-layers mr-3",children:[p.jsx(Ne,{icon:Ei,mask:wi,transform:"shrink-1 down-5 right-7"}),p.jsx(Ne,{icon:Go,className:"text-primary",transform:"shrink-6 down-5 right-7"})]}),f=p.jsxs("div",{className:"fa-layers",children:[p.jsx(Ne,{icon:Ei,mask:wi,transform:"shrink-1 down-5 right-7"}),p.jsx(Ne,{icon:Bo,transform:"shrink-1 down-5 right-7"})]});return p.jsx("div",{className:"filter-set-manager fill-parent-absolute",children:p.jsxs(Wr,{className:"w-100 h-100",isFlipped:s,children:[p.jsx("div",{className:"filter-set-manager-settings-card fill-parent-absolute",children:p.jsxs("div",{className:"filter-set-manager-card-content",children:[v&&p.jsxs("div",{children:[p.jsx(Z,{kind:"ghost",className:"btn btn-link no-underline",onClick:this.handleCaptureNewSet,icon:m,children:"Capture filter set"}),p.jsx("div",{className:"py-3 text-muted small",children:"Takes a snapshot of the currently applied filters on all panels, allowing you to restore saved filter sets later."})]}),d&&p.jsxs("div",{className:"d-flex flex-column justify-content-center","data-testid":"edit-filter-set-container",children:[p.jsxs("div",{className:"form-group",children:[p.jsx("label",{children:h?"Edit set":"Name captured set"}),p.jsxs("div",{className:"name-input-container",children:[p.jsx("input",{type:"text",className:"input-set-name form-control",placeholder:xc,value:e,ref:this.renameInputRef,onChange:this.handleNameInputChange,onKeyPress:this.handleNameInputKeyPress,spellCheck:"false"}),p.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:wl}),p.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:Ho})]}),t!==void 0&&p.jsx("div",{className:"error-message",children:t})]}),p.jsx("div",{className:"form-group",children:p.jsxs(Xs,{"aria-label":"Restoration options",onChange:this.handleRestoreFullStateChange,value:"".concat(l),children:[p.jsx(bi,{value:"false",children:"Restore only filters"}),p.jsx(bi,{value:"true",children:"Restore full table state"})]})})]}),g&&p.jsxs("div",{className:"filter-set-manager-settings-grid-1",children:[p.jsxs("div",{className:"form-group",children:[p.jsx("label",{children:"Edit filter sets"}),p.jsxs("div",{className:"filter-select-container",children:[p.jsxs(cn,{"data-testid":"settings-card-filter-select",ref:this.editDropdownRef,value:n??"-1",className:"custom-select filter-value-select",onChange:this.handleEditDropdownChange,disabled:c,children:[c&&p.jsx("option",{value:"-1",disabled:!0,children:ha}),a.map(b=>{var{id:y,title:C}=b;return p.jsx("option",{value:y,children:C},y)})]}),p.jsx(Z,{kind:"ghost",onClick:this.handleSetUpdate,disabled:c,icon:f,tooltip:"Update"}),p.jsx(Z,{kind:"ghost",onClick:this.handleSetEdit,disabled:c,icon:Tl,tooltip:"Edit"}),p.jsx(Z,{kind:"ghost",onClick:this.handleSetDelete,disabled:c,icon:Zn,tooltip:"Delete"})]})]}),p.jsx("div",{children:p.jsx(Z,{kind:"ghost",className:"btn btn-link no-underline",onClick:this.handleCaptureNewSet,icon:m,children:"Capture new filter set"})}),p.jsxs("div",{className:"py-3 text-right",children:[p.jsx(Z,{kind:"secondary",onClick:this.handleSettingsCancel,children:"Cancel"})," ",p.jsx(Z,{kind:"primary",onClick:this.handleSettingsSave,children:"Save"})]})]})]})},"front"),p.jsxs("div",{className:"filter-set-manager-value-card fill-parent-absolute",onClick:this.handleBackgroundClick,children:[p.jsx("div",{className:"filter-set-manager-column",children:p.jsx("div",{className:"filter-set-manager-column-title",children:"Filter sets"})}),p.jsx("div",{className:"filter-set-manager-card-content",children:p.jsx("div",{className:"filter-set-manager-value-input",children:p.jsxs("div",{className:"filter-select-container",children:[p.jsxs(cn,{"data-testid":"value-card-filter-select",ref:this.dropdownRef,value:u??"-1",className:"custom-select filter-value-select",onChange:this.handleFilterChange,children:[o.length===0&&p.jsx("option",{value:"-1",disabled:!0,children:ha}),o.map(b=>{var{id:y,title:C}=b;return p.jsx("option",{value:y,children:C},y)})]}),p.jsx(Z,{"data-testid":"filter-apply-button",kind:"ghost",onClick:this.handleFilterApply,icon:Pl,tooltip:"Apply Filter Set"})]})})}),p.jsx("div",{className:"filter-set-manager-menu",children:p.jsx(Z,{kind:"ghost",className:"btn btn-link btn-link-icon m-2 px-2",onClick:this.handleSettingsClick,tooltip:"Settings",icon:p.jsx(Ne,{icon:Br,transform:"grow-4"})})})]},"back")]})})}}function ca(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function va(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ca(Object(t),!0).forEach(function(n){jc(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):ca(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function jc(r,e,t){return(e=_c(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function _c(r){var e=Vc(r,"string");return typeof e=="symbol"?e:e+""}function Vc(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}function $c(r){var e,t,n,i,a,{model:l}=r,s=((e=l==null?void 0:l.rowCount)!==null&&e!==void 0?e:0)-((t=l==null?void 0:l.pendingRowCount)!==null&&t!==void 0?t:0)-((n=l==null?void 0:l.floatingBottomRowCount)!==null&&n!==void 0?n:0)-((i=l==null?void 0:l.floatingTopRowCount)!==null&&i!==void 0?i:0),o=l==null?void 0:l.displayString(s,"long"),u=(a=l==null?void 0:l.columnCount)!==null&&a!==void 0?a:0,d=l==null?void 0:l.displayString(u,"long");return p.jsxs(Yr,va(va({},r),{},{children:[p.jsx("hr",{className:"tab-tooltip-divider"}),p.jsx("span",{children:"Number of Columns"}),p.jsx("span",{className:"tab-tooltip-statistic-value",children:d}),p.jsx("span",{children:"Number of Rows"}),p.jsx("span",{className:"tab-tooltip-statistic-value",children:o})]}))}function is(r){if(r==null)return!1;var e=r;return typeof e.table=="string"}function as(r){if(r==null)return!1;var e=r;return typeof e.name=="string"}function pa(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function We(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?pa(Object(t),!0).forEach(function(n){pe(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):pa(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function pe(r,e,t){return(e=Hc(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Hc(r){var e=Gc(r,"string");return typeof e=="symbol"?e:e+""}function Gc(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var nt=J.module("IrisGridPanel"),Bc=500;function fa(r){if(r==null)throw new Error("No metadata provided");if(as(r))return r.name;if(is(r))return r.table;throw new Error("Unable to determine table name from metadata: ".concat(JSON.stringify(r)))}class zt extends E.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",Ar.makeMemoizedGridStateDehydrator()),pe(this,"irisGridStateDehydrator",Ar.makeMemoizedIrisGridStateDehydrator()),pe(this,"getGridInputFilters",U((n,i)=>$.getInputFiltersForColumns(n,i.filter(a=>{var{value:l,excludePanelIds:s}=a,o=H.getIdFromPanel(this);return l!=null&&(s==null||o!=null&&!s.includes(o))})))),pe(this,"getAlwaysFetchColumns",U((n,i)=>{for(var a=H.getIdFromPanel(this),l=new Set(i),s=0;s<n.length;s+=1){var{start:o}=n[s];o!=null&&o.panelId===a&&l.add(o.columnName)}return[...l]})),pe(this,"getPluginContent",U((n,i,a)=>{var l;if(!i||!ct(i)||n==null||i.table==null)return null;var s={panel:this};return p.jsx("div",{className:"iris-grid-plugin",children:p.jsx(n,We({ref:this.pluginRef,filter:this.handlePluginFilter,fetchColumns:this.handlePluginFetchColumns,model:i,table:i.table,tableName:this.getTableName(),selectedRanges:(l=this.irisGrid.current)===null||l===void 0?void 0:l.state.selectedRanges,onStateChange:this.handlePluginStateChange,pluginState:a},s))})})),pe(this,"getDehydratedIrisGridPanelState",U((n,i,a,l)=>$.dehydrateIrisGridPanelState(n,{isSelectingPartition:i,partitions:a,advancedSettings:l}))),pe(this,"getCachedPanelState",U((n,i,a,l)=>({irisGridPanelState:n,irisGridState:i,gridState:a,pluginState:l}))),pe(this,"getWidgetPanelDescriptor",U((n,i)=>{var a=fa(n);return We(We({type:"Table",displayType:"Table"},n),{},{name:a,description:i})})),pe(this,"savePanelState",vt(()=>{var{irisGridState:n,gridState:i,pluginState:a}=this;N(n);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,n),this.gridStateDehydrator(s,i),a);c!==o&&(nt.debug("Saving panel state",this,c),this.setState({panelState:c}),l==null||l(c))},Bc)),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=Te.createRef(),this.pluginRef=Te.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(Al.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:n}=this.state,{makeModel:i}=this.props;n!==t.model&&(t.model!=null&&(this.stopModelListening(t.model),t.model.close()),n!=null&&this.startModelListening(n)),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 fa(e)}initModel(){this.setState({isModelReady:!1,isLoading:!0,error:null,isDisconnected:!1});var{makeModel:e}=this.props;this.modelPromise!=null&&this.modelPromise.cancel(),this.modelPromise=ke.makeCancelable(e(),t=>t.close()),this.modelPromise.then(this.handleLoadSuccess).catch(this.handleLoadError)}handleLoadSuccess(e){var t=e,{panelState:n,irisGridStateOverrides:i}=this.state,a=[];if(this.irisGridUtils=new $(t.dh),n!=null){var{irisGridState:l}=n,{aggregationSettings:s,customColumns:o,selectDistinctColumns:u=[],rollupConfig:d}=We(We({},l),i);o.length>0&&a.push(h=>{h.customColumns=o}),d!=null&&d.columns.length>0&&a.push(h=>{h.rollupConfig=$.getModelRollupConfig(h.originalColumns,d,s)}),u.length>0&&a.push(h=>{h.selectDistinctColumns=u})}this.setState({model:t,modelQueue:a}),this.initModelQueue(t,a)}initModelQueue(e,t){var n=e;if(t.length===0){this.modelInitialized(n);return}var i=t.shift();nt.debug("initModelQueue",i),i&&i(n),this.setState({modelQueue:t})}handleAdvancedSettingsChange(e,t){nt.debug("handleAdvancedSettingsChange",e,t),this.setState(n=>{var{advancedSettings:i}=n;return i.get(e)===t?null:{advancedSettings:new Map(i).set(e,t)}})}handlePluginFilter(e){var t,n,{model:i}=this.state;N(i);var{columns:a,formatter:l}=i,s=(t=(n=this.irisGridUtils)===null||n===void 0?void 0:n.getFiltersFromInputFilters(a,e,l.timeZone))!==null&&t!==void 0?t:[];this.setState({pluginFilters:s})}handlePluginFetchColumns(e){this.setState({pluginFetchColumns:e})}handleContextMenu(e){var t,n,i;return(t=(n=this.pluginRef.current)===null||n===void 0||(i=n.getMenu)===null||i===void 0?void 0:i.call(n,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:n,onStateChange:i}=this.props;n.emit(Fe.STATE_CHANGED,this),i==null||i(e,t)}handlePluginStateChange(e){var{irisGridState:t,gridState:n}=this;this.pluginState=e,t!==null&&n!==null&&this.savePanelState()}handleColumnsChanged(e){var{isModelReady:t,model:n,modelQueue:i}=this.state;t?this.sendColumnsChange(e.detail):(N(n),this.initModelQueue(n,i))}handleTableChanged(e){nt.debug("handleTableChanged",e);var{glEventHub:t}=this.props,{detail:n}=e,i=H.getIdFromPanel(this);N(i),Un(t,i,n)}handleCreateChart(e,t){this.savePanelState.flush(),this.setState(()=>null,()=>{var{glEventHub:n,inputFilters:i,metadata:a}=this.props,l=this.getTableName(),{panelState:s}=this.state,o=H.getIdFromPanel(this),u;s&&(u=$.extractTableSettings(s,i)),n.emit(Fe.CREATE_CHART,{metadata:We(We({},a),{},{settings:e,sourcePanelId:o,table:l,tableSettings:u}),table:ct(t)?t.table:void 0})})}handleColumnSelected(e){var{glEventHub:t}=this.props,n=H.getIdFromPanel(this);N(n),nr(t,n,e,{type:"tableLink"})}handleDataSelected(e,t){var{glEventHub:n}=this.props,i=H.getIdFromPanel(this);N(i),rs(n,i,t)}handleShow(){this.updateGrid()}handleTabClicked(){this.irisGrid.current&&this.irisGrid.current.focus()}handleError(e){nt.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){ke.isCanceled(e)||this.handleError(e)}modelInitialized(e){var{glEventHub:t,loadPlugin:n}=this.props;if(this.modelPromise=void 0,this.loadPanelState(e),this.setState({isModelReady:!0}),ct(e)){var{table:i}=e,{pluginName:a}=i;if(a!==""&&n!=null&&a!=null){var l=n(a);this.setState({Plugin:l})}var s=H.getIdFromPanel(this);N(s),Un(t,s,i)}this.sendColumnsChange(e.columns)}handleClearAllFilters(){var e=this.irisGrid.current,{isDisconnected:t}=this.state;e!=null&&!t&&e.clearAllFilters()}sendColumnsChange(e){nt.debug2("sendColumnsChange",e);var{glEventHub:t}=this.props,n=H.getIdFromPanel(this);N(n),Bn(t,n,e)}startModelListening(e){e.addEventListener(z.EVENT.DISCONNECT,this.handleDisconnect),e.addEventListener(z.EVENT.RECONNECT,this.handleReconnect),e.addEventListener(z.EVENT.COLUMNS_CHANGED,this.handleColumnsChanged),e.addEventListener(z.EVENT.TABLE_CHANGED,this.handleTableChanged)}stopModelListening(e){e.removeEventListener(z.EVENT.DISCONNECT,this.handleDisconnect),e.removeEventListener(z.EVENT.RECONNECT,this.handleReconnect),e.removeEventListener(z.EVENT.COLUMNS_CHANGED,this.handleColumnsChanged),e.removeEventListener(z.EVENT.TABLE_CHANGED,this.handleTableChanged)}getCoordinateForColumn(e){var t,n,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,m=a.getColumnIndexByName(e);N(m);var f=l.getVisibleColumn(m),b=(n=h.get(f))!==null&&n!==void 0?n:0,y=(i=c.get(f))!==null&&i!==void 0?i:0,C=Ge(f>v?o.right:o.left+b+y*.5,o.left,o.right),T=o.top+d*g;return[C,T]}setFilterMap(e){var t=this.irisGrid.current;t!=null&&t.setFilterMap(e)}setAdvancedFilterMap(e){var t=this.irisGrid.current;t!=null&&t.setAdvancedFilterMap(e)}setFilters(e){var{quickFilters:t,advancedFilters:n}=e;nt.debug("setFilters",t,n);var{model:i,isDisconnected:a}=this.state,l=this.irisGrid.current;if(l==null||a){nt.debug("Ignore setFilters, model disconnected");return}N(i);var{columns:s,formatter:o}=i,u=$.changeFilterColumnNamesToIndexes(i.columns,t).filter(h=>{var[c]=h;return i.isFilterable(c)}),d=$.changeFilterColumnNamesToIndexes(i.columns,n).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){nt.debug("setStateOverrides",e);var{irisGridState:t,gridState:n}=e;this.setState({irisGridStateOverrides:t,gridStateOverrides:n},()=>{this.initModel()})}unsetFilterValue(){}loadPanelState(e){var{panelState:t,irisGridStateOverrides:n,gridStateOverrides:i}=this.state;if(t!=null)try{var{gridState:a,irisGridState:l,irisGridPanelState:s}=t,o=We({},n),{quickFilters:u,advancedFilters:d}=o;u&&(o.quickFilters=$.changeFilterColumnNamesToIndexes(e.columns,u)),d&&(o.advancedFilters=$.changeFilterColumnNamesToIndexes(e.columns,d));var{isSelectingPartition:h,partitions:c,advancedSettings:v}=$.hydrateIrisGridPanelState(e,s);N(this.irisGridUtils);var{advancedFilters:g,customColumns:m,customColumnFormatMap:f,isFilterBarShown:b,quickFilters:y,reverse:C,rollupConfig:T,aggregationSettings:w,sorts:P,userColumnWidths:R,userRowHeights:F,showSearchBar:D,searchValue:M,selectDistinctColumns:I,selectedSearchColumns:j,invertSearchColumns:V,pendingDataMap:B,frozenColumns:K,conditionalFormats:re,columnHeaderGroups:le,partitionConfig:me}=this.irisGridUtils.hydrateIrisGridState(e,We(We({},l),o)),{isStuckToBottom:ge,isStuckToRight:Ve,movedColumns:L,movedRows:x}=$.hydrateGridState(e,We(We({},a),i),l.customColumns);this.setState({advancedFilters:g,advancedSettings:v,conditionalFormats:re,customColumns:m,customColumnFormatMap:f,isFilterBarShown:b,isSelectingPartition:h,movedColumns:L,movedRows:x,partitions:c,quickFilters:y,reverse:C,rollupConfig:T,aggregationSettings:w,sorts:P,userColumnWidths:R,userRowHeights:F,showSearchBar:D,searchValue:M,selectDistinctColumns:I,selectedSearchColumns:j,invertSearchColumns:V,pendingDataMap:B,frozenColumns:K,isStuckToBottom:ge,isStuckToRight:Ve,columnHeaderGroups:le,partitionConfig:me})}catch(_){nt.error("loadPanelState failed to load panelState",t,_)}}updateGrid(){var e,t,n=(e=(t=this.irisGrid.current)===null||t===void 0?void 0:t.grid)!==null&&e!==void 0?e:null;n&&n.handleResize()}render(){var e,t,{children:n,glContainer:i,glEventHub:a,columnSelectionValidator:l,getDownloadWorker:s,inputFilters:o,links:u,metadata:d,panelState:h,user:c,settings:v,theme:g}=this.props,{advancedFilters:m,aggregationSettings:f,advancedSettings:b,conditionalFormats:y,customColumns:C,customColumnFormatMap:T,error:w,isDisconnected:P,isFilterBarShown:R,isSelectingPartition:F,isStuckToBottom:D,isStuckToRight:M,isLoaded:I,isLoading:j,isModelReady:V,model:B,movedColumns:K,movedRows:re,partitions:le,partitionConfig:me,quickFilters:ge,reverse:Ve,rollupConfig:L,sorts:x,userColumnWidths:_,userRowHeights:W,showSearchBar:q,searchValue:be,selectDistinctColumns:Ce,selectedSearchColumns:Le,invertSearchColumns:Ke,Plugin:Xe,pluginFilters:ur,pluginFetchColumns:dr,pendingDataMap:En,frozenColumns:hr,columnHeaderGroups:Qt}=this.state,Rs=w!=null?"Unable to open table. ".concat(w):void 0,Is=(e=B==null?void 0:B.description)!==null&&e!==void 0?e:void 0,ks=(t=h==null?void 0:h.pluginState)!==null&&t!==void 0?t:null,Ls=n??this.getPluginContent(Xe,B,ks),{permissions:As}=c,{canCopy:xs,canDownloadCsv:js}=As,fi=this.getWidgetPanelDescriptor(d,Is);return p.jsx(yn,{errorMessage:Rs,isDisconnected:P,isLoading:j,isLoaded:I,className:"iris-grid-panel",glContainer:i,glEventHub:a,onClearAllFilters:this.handleClearAllFilters,onShow:this.handleShow,onTabFocus:this.handleShow,onTabClicked:this.handleTabClicked,componentPanel:this,descriptor:fi,renderTabTooltip:()=>p.jsx($c,{descriptor:fi,model:B}),children:V&&B&&p.jsx(er,{advancedFilters:m,aggregationSettings:f,advancedSettings:b,alwaysFetchColumns:this.getAlwaysFetchColumns(u,dr),columnAllowedCursor:"linker",columnNotAllowedCursor:"linker-not-allowed",copyCursor:"copy",customColumns:C,customColumnFormatMap:T,columnSelectionValidator:this.isColumnSelectionValid,conditionalFormats:y,inputFilters:this.getGridInputFilters(B.columns,o),applyInputFiltersOnInit:h==null,isFilterBarShown:R,isSelectingColumn:l!=null,isSelectingPartition:F,isStuckToBottom:D,isStuckToRight:M,movedColumns:K,movedRows:re,partitions:le,partitionConfig:me,quickFilters:ge,reverse:Ve,rollupConfig:L,settings:v,sorts:x,userColumnWidths:_,userRowHeights:W,model:B,showSearchBar:q,searchValue:be,selectedSearchColumns:Le,selectDistinctColumns:Ce,invertSearchColumns:Ke,onColumnSelected:this.handleColumnSelected,onCreateChart:this.handleCreateChart,onDataSelected:this.handleDataSelected,onError:this.handleError,onStateChange:this.handleGridStateChange,onContextMenu:this.handleContextMenu,onAdvancedSettingsChange:this.handleAdvancedSettingsChange,customFilters:ur,pendingDataMap:En,canCopy:xs,canDownloadCsv:js,ref:this.irisGrid,getDownloadWorker:s,frozenColumns:hr,theme:g,columnHeaderGroups:Qt,children:Ls})})}}pe(zt,"defaultProps",{onStateChange:()=>{},onPanelStateUpdate:()=>{}});pe(zt,"displayName","IrisGridPanel");pe(zt,"COMPONENT","IrisGridPanel");var Uc=(r,e)=>{var{localDashboardId:t=mo,glContainer:n}=e;return{inputFilters:bn(r,t),links:Pt(r,t),columnSelectionValidator:gn(r,t),user:fo(r),settings:Xn(r)}},li=wt(Uc,null,null,{forwardRef:!0})(zt);function dn(r,e,t){return(e=Wc(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Wc(r){var e=zc(r,"string");return typeof e=="symbol"?e:e+""}function zc(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var ma=J.module("InputFilter"),qc=150;class qt extends E.Component{constructor(e){super(e),dn(this,"inputRef",void 0),dn(this,"getItemLabel",Be((a,l)=>{var{name:s,type:o}=a[l];if(l>0&&a[l-1].name===s||l<a.length-1&&a[l+1].name===s){var u=o.substring(o.lastIndexOf(".")+1);return"".concat(s," (").concat(u,")")}return s},{max:1e3})),dn(this,"sendUpdate",vt(()=>{var{onChange:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a({column:l,isValueShown:o,value:s})},qc)),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=Te.createRef();var{column:t,isValueShown:n,value:i}=e;this.state={column:t,selectedColumn:t,value:i,isValueShown:n}}componentDidUpdate(e,t){var{column:n}=this.props,{column:i,value:a,isValueShown:l}=this.state;n!==e.column&&this.setState({column:n,selectedColumn:n}),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,n=t[parseInt(e,10)];ma.debug2("handleColumnChange",n),this.setState({selectedColumn:n,value:void 0})}handleInputKeyPress(e){e.key==="Enter"&&(e.preventDefault(),e.stopPropagation(),this.setState(t=>{var{value:n}=t;return n==null?{value:""}:null},()=>{this.sendUpdate(),this.sendUpdate.flush()}))}handleValueChange(e){var{value:t}=e.target;ma.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:n,value:i,isValueShown:a}=e,l=t!=null&&n!=null?{name:t,type:n}: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:n,selectedColumn:i,value:a}=this.state,l=a==null||a.length===0?qt.PLACEHOLDER.length:a.length,s=null;if(t!=null){var o=e.findIndex(u=>u.name===t.name&&u.type===t.type);s=o>=0?this.getItemLabel(e,o):t.name}return p.jsxs(Wr,{className:"input-filter fill-parent-absolute",isFlipped:n??!1,children:[p.jsx("div",{className:"input-filter-settings-card",children:p.jsxs("div",{className:"input-filter-settings-content",children:[p.jsxs("div",{className:"input-filter-settings-grid",children:[p.jsx("label",{children:"Filter Column"}),p.jsxs(cn,{value:String(e.findIndex(u=>u.name===(i==null?void 0:i.name)&&u.type===(i==null?void 0:i.type))),className:"custom-select",onChange:this.handleColumnChange,children:[e.map((u,d)=>p.jsx("option",{value:d,children:this.getItemLabel(e,d)},"".concat(u.name,"/").concat(u.type))),e.length===0&&p.jsx("option",{value:"-1",disabled:!0,children:"No Available Columns"})]}),p.jsx("div",{className:"text-muted small",children:"Input filter control will apply its filter to all columns matching this name in this dashboard."})]}),p.jsxs("div",{className:"input-filter-settings-buttons",children:[p.jsx(Z,{kind:"secondary",onClick:this.handleSettingsCancel,disabled:t==null,children:"Cancel"}),p.jsx(Z,{kind:"primary",className:"ml-2",onClick:this.handleSettingsSave,disabled:i==null,children:"Save"})]})]})}),p.jsxs("div",{className:"input-filter-value-card",onClick:this.handleBackgroundClick,children:[p.jsx("div",{className:"input-filter-column",children:p.jsxs("div",{className:"input-filter-column-title",children:[s," Filter"]})}),p.jsx("div",{className:"d-flex justify-content-center align-items-center h-100 w-100",children:p.jsx("div",{className:"input-filter-value-input d-flex flex-column justify-content-center",children:p.jsx("input",{type:"text",ref:this.inputRef,placeholder:qt.PLACEHOLDER,value:a??"",onChange:this.handleValueChange,onKeyPress:this.handleInputKeyPress,style:{width:"".concat(l+3,"ch")},spellCheck:"false"})})}),p.jsx("div",{className:"input-filter-menu",children:p.jsx(Z,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:p.jsx(Ne,{icon:Br,transform:"grow-4"}),tooltip:"Input Filter Settings"})})]})]})}}dn(qt,"PLACEHOLDER","Enter value...");dn(qt,"defaultProps",{column:null,isValueShown:!1,value:null});function ir(r,e,t){return(e=Kc(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Kc(r){var e=Xc(r,"string");return typeof e=="symbol"?e:e+""}function Xc(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var Yc=250;class ar extends E.Component{constructor(e){super(e),ir(this,"inputFilterRef",void 0),this.handleChange=vt(this.handleChange.bind(this),Yc),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.inputFilterRef=Te.createRef();var{panelState:t}=e,{value:n,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:n,timestamp:s,isValueShown:i,wasFlipped:!1,skipUpdate:!1,panelState:t}}componentDidMount(){this.updateColumns();var{column:e,value:t,timestamp:n}=this.state;if(e!=null){var{name:i,type:a}=e;this.sendUpdate(i,a,t,n)}}componentDidUpdate(e){var{columns:t}=this.props;t!==e.columns&&this.updateColumns()}handleChange(e){var{column:t,isValueShown:n=!1,value:i}=e,a,l;t!=null&&({name:a,type:l}=t);var s=!0,o=Date.now();this.setState(u=>{var d,{panelState:h,timestamp:c,wasFlipped:v,skipUpdate:g}=u,m=h!=null&&n!==h.isValueShown&&a===h.name&&l===h.type&&i===h.value;return s=(d=!g&&n&&(!m||!v))!==null&&d!==void 0?d:!1,s||(o=c),{panelState:{isValueShown:n,name:a,type:l,value:i,timestamp:o},timestamp:o,wasFlipped:m,skipUpdate:!1}},()=>{s&&this.sendUpdate(a,l,i,o)})}handleClearAllFilters(){var e;(e=this.inputFilterRef.current)===null||e===void 0||e.clearFilter()}sendUpdate(e,t,n,i){var{glEventHub:a}=this.props,l=H.getIdFromPanel(this);N(l),ns(a,l,e!=null&&t!=null&&n!=null&&i!=null?{name:e,type:t,value:n,timestamp:i}:null)}setPanelState(e){var t,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;this.setState({skipUpdate:!n}),(t=this.inputFilterRef.current)===null||t===void 0||t.setFilterState(e)}updateColumns(){var{columns:e}=this.props;e!=null&&this.setState(t=>{var{column:n}=t;return n==null&&e.length>0?{columns:[...e],column:e[0]}:n!=null&&!e.find(i=>{var{name:a,type:l}=i;return n.name===a&&n.type===l})?{columns:[...e,n]}:{columns:[...e]}})}render(){var{glContainer:e,glEventHub:t}=this.props,{column:n,columns:i,isValueShown:a,value:l}=this.state;return p.jsx(It,{className:"iris-input-filter-panel",componentPanel:this,glContainer:e,glEventHub:t,onClearAllFilters:this.handleClearAllFilters,isClonable:!0,isRenamable:!0,children:p.jsx(qt,{ref:this.inputFilterRef,column:n,columns:i,onChange:this.handleChange,isValueShown:a,value:l})})}}ir(ar,"defaultProps",{panelState:null});ir(ar,"COMPONENT","InputFilterPanel");ir(ar,"displayName","InputFilterPanel");var Zc=(r,e)=>{var{localDashboardId:t}=e;return{columns:Gr(r,t)}},$t=wt(Zc,null,null,{forwardRef:!0})(ar);function ga(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function Rn(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ga(Object(t),!0).forEach(function(n){si(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):ga(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function si(r,e,t){return(e=Qc(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Qc(r){var e=Jc(r,"string");return typeof e=="symbol"?e:e+""}function Jc(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var Oe=J.module("FilterSetManagerPanel");function ev(r){return r.setPanelState!=null}class Kt extends E.Component{static changeFilterIndexesToColumnNames(e,t){return t.map(n=>{var[i,a]=n;if(i>=e.columns.length)return null;var{name:l}=e.columns[i];return{name:l,filter:a}}).filter(n=>n!=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:n}=e,{selectedId:i=n.length>0?n[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(n=>{var i=e.get(n);if(i===void 0){Oe.error("Could not get panel",i);return}var a=H.getComponentNameFromPanel(i),l=H.getIdFromPanel(i);Oe.debug("Panel:",i,a);var{glContainer:s=null}=i.props;if(s==null){Oe.error("Could not get panel container",i);return}var o=H.getComponentConfigFromContainer(s);if(o==null){Oe.error("Could not get component config from container",s);return}var u=H.getPanelComponentState(o);if(u==null){Oe.debug("Panel state is null ".concat(l));return}switch(a){case H.getComponentName(zt):{var d;l!=null&&(d=this.getIrisGridPanelFilters(l,u)),d!=null&&t.push({panelId:l,type:a,state:d});break}case H.getComponentName($t):case H.getComponentName(Vt):{var{isValueShown:h,name:c,type:v,value:g}=u;t.push({panelId:l,type:a,state:{isValueShown:h,name:c,type:v,value:g}});break}}}),t}getIrisGridPanelFilters(e,t){var{panelTableMap:n}=this.props,i=n.get(e);if(i==null)return Oe.error("Unable to get table for panel ".concat(e,".")),null;var{irisGridState:a={advancedFilters:void 0,quickFilters:void 0},gridState:l={}}=t,{advancedFilters:s,quickFilters:o}=a,u;s&&(u=Kt.changeFilterIndexesToColumnNames(i,s));var d;return o&&(d=Kt.changeFilterIndexesToColumnNames(i,o)),{irisGridState:Rn(Rn({},a),{},{advancedFilters:u,quickFilters:d}),gridState:Rn({},l)}}handleGetFilterState(){return this.getFilterState()}handleChange(e){var{isValueShown:t,selectedId:n}=e;Oe.debug("handleChange",t,n),this.setState({isValueShown:t,selectedId:n}),this.updatePanelState()}handleFilterApply(e){var{dashboardOpenedPanelMap:t}=this.props,{panels:n,restoreFullState:i=!1}=e;Oe.debug("Apply filters from filter set",e),n.forEach(a=>{var{panelId:l,type:s,state:o}=a;if(l==null){Oe.debug("panel is null",l);return}if(!t.has(l)){Oe.debug("Ignore closed panel",l);return}Oe.debug("Apply panel filters",l,s,o);var u=t.get(l);switch(s){case H.getComponentName(zt):this.restoreIrisGridFilters(u,o,i);break;case H.getComponentName($t):case H.getComponentName(Vt):this.restoreInputFilterState(u,o);break}})}handleSetsUpdate(e){var{setDashboardFilterSets:t,localDashboardId:n}=this.props;Oe.debug("Saving updated sets",e),t(n,[...e])}updatePanelState(){this.setState(e=>{var{selectedId:t,isValueShown:n}=e;return{panelState:{selectedId:t,isValueShown:n}}})}restoreIrisGridFilters(e,t,n){var{irisGridState:i={},advancedFilters:a=[],quickFilters:l=[]}=t,{advancedFilters:s=a,quickFilters:o=l}=i,{panelTableMap:u}=this.props,d=H.getIdFromPanel(e);if(d==null){Oe.error("Panel Id is null.");return}var h=u.get(d);if(h==null){Oe.error("Unable to get table for panel ".concat(d,"."));return}Oe.debug("restoreIrisGridFilters",d,t,n),n?e.setStateOverrides(t):e.setFilters({quickFilters:o,advancedFilters:s})}restoreInputFilterState(e,t){var n=Rn({},t);delete n.isValueShown,Oe.debug("restoreInputFilterState",e,n),e&&ev(e)&&e.setPanelState(n)}render(){var{glContainer:e,glEventHub:t,filterSets:n}=this.props,{isValueShown:i,selectedId:a}=this.state;return p.jsx(It,{className:"filter-set-manager-panel",componentPanel:this,glContainer:e,glEventHub:t,isClonable:!0,isRenamable:!0,children:p.jsx("div",{className:"input-filter-container h-100 w-100 container",children:p.jsx(mn,{onChange:this.handleChange,onApply:this.handleFilterApply,onUpdateSets:this.handleSetsUpdate,isValueShown:i,filterSets:n,selectedId:a,getFilterState:this.handleGetFilterState})})})}}si(Kt,"defaultProps",{panelState:null});si(Kt,"COMPONENT","FilterSetManagerPanel");var tv=(r,e)=>{var{localDashboardId:t}=e;return{filterSets:ul(r,t),dashboardOpenedPanelMap:sl(r,t),dashboardInputFilters:bn(r,t),panelTableMap:qn(r,t)}},xn=wt(tv,{setDashboardFilterSets:Zl},null,{forwardRef:!0})(Kt);function nv(r,e,t){return(e=rv(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function rv(r){var e=iv(r,"string");return typeof e=="symbol"?e:e+""}function iv(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class ls extends E.PureComponent{render(){var{isEditing:e,children:t,onDoubleClick:n}=this.props;return p.jsxs("div",{className:"markdown-editor-container h-100 w-100",onDoubleClick:n,children:[p.jsx("div",{className:Me("text-muted","edit-hint",{viewing:e===void 0||!e}),children:p.jsxs("span",{children:["double-click to edit ",p.jsx(Ne,{icon:Tl})]})}),t]})}}nv(ls,"defaultProps",{isEditing:!1});function av(r,e,t){return(e=lv(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function lv(r){var e=sv(r,"string");return typeof e=="symbol"?e:e+""}function sv(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var ov=J.module("MarkdownStartPage");class ss extends E.PureComponent{constructor(e){super(e),this.handleDeleteButtonClick=this.handleDeleteButtonClick.bind(this),this.handleDeleteModalClose=this.handleDeleteModalClose.bind(this),this.state={isDeleteModalShown:!1}}handleDeleteButtonClick(e){this.setState({isDeleteModalShown:!0,toBeDeleted:e})}handleDeleteModalClose(){this.setState({isDeleteModalShown:!1,toBeDeleted:void 0})}handleDeleteMarkdown(e){if(ov.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:n}=this.props,{isDeleteModalShown:i,toBeDeleted:a}=this.state;return p.jsx("div",{className:"markdown-panel-start-page h-100 w-100",children:p.jsxs("div",{className:"markdown-panel-start-page-container",children:[p.jsxs("div",{className:"markdown-panel-start-list",children:[p.jsx("h3",{className:"list-title",children:"Start"}),p.jsx("div",{className:"list-item",children:p.jsx(Z,{kind:"ghost",className:"title",onClick:n,children:"New Markdown Note"})})]}),p.jsxs("div",{className:"markdown-panel-start-list",children:[p.jsx("h3",{className:"list-title",children:"Recently Closed from Dashboard"}),e.map(l=>p.jsxs("div",{className:"list-item",children:[p.jsx(Z,{kind:"ghost",className:"title",onClick:()=>t(l),children:l.title}),p.jsx("button",{className:"btn-link icon",type:"button",onClick:()=>{this.handleDeleteButtonClick(l)},children:p.jsx(Ne,{icon:Zn})})]},l.id)),p.jsxs(Uo,{isOpen:i,toggle:this.handleDeleteModalClose,className:"modal-dialog-centered markdown-delete-modal",children:[p.jsx(Wo,{children:"Are you sure you want to permanently delete this note?"}),p.jsx(zo,{children:"You can't undo this action."}),p.jsxs(go,{children:[p.jsx(Z,{kind:"secondary",onClick:this.handleDeleteModalClose,children:"Cancel"}),p.jsx(Z,{kind:"danger",onClick:()=>{this.handleDeleteMarkdown(a)},children:"Delete"})]})]})]})]})})}}av(ss,"defaultProps",{closedMarkdowns:[],onOpen:()=>{},onCreate:()=>{},onDelete:()=>{}});function oi(r,e,t){return(e=uv(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function uv(r){var e=dv(r,"string");return typeof e=="symbol"?e:e+""}function dv(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class it{static getNewMarkdownTitle(e){for(var t="".concat(it.DEFAULT_TITLE),n=0;e.indexOf(t)>=0;)n+=1,t="".concat(it.DEFAULT_TITLE,"-").concat(n);return t}}oi(it,"DEFAULT_TITLE","Note");oi(it,"DEFAULT_CONTENT",`# Markdown Note
10
+
11
+ This note can be edited using **markdown** for styling.`);oi(it,"getClosedMarkdowns",U(r=>r.filter(e=>e.component==="MarkdownPanel"&&e.props.panelState.content!==""&&e.props.panelState.content!==null).reverse()));function hn(r,e,t){return(e=hv(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function hv(r){var e=cv(r,"string");return typeof e=="symbol"?e:e+""}function cv(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var vv=E.lazy(()=>zn(()=>import("./MarkdownEditor-_r2cZw3y.js"),__vite__mapDeps([17,1,2,3,8,4,5,9]),import.meta.url)),In=J.module("MarkdownPanel");class ui extends E.Component{constructor(e){super(e),hn(this,"markdownEditor",void 0),hn(this,"editor",void 0),hn(this,"getClosedMarkdowns",U(it.getClosedMarkdowns)),this.handleContainerDoubleClick=this.handleContainerDoubleClick.bind(this),this.handleCreateMarkdown=this.handleCreateMarkdown.bind(this),this.handleDeleteMarkdown=this.handleDeleteMarkdown.bind(this),this.handleOpenMarkdown=this.handleOpenMarkdown.bind(this),this.handleEditorInitialized=this.handleEditorInitialized.bind(this),this.handleEditorBlur=this.handleEditorBlur.bind(this),this.handleEditorResize=this.handleEditorResize.bind(this);var{panelState:t}=e,n=null;t!=null&&t.content!=null&&(t.content!==""?{content:n}=t:n=it.DEFAULT_CONTENT),this.state={isStartPageShown:n==null&&this.getClosedMarkdowns(e.closedPanels).length!==0,isEditing:!1,content:n,panelState:t},this.markdownEditor=null}setEditorPosition(e){N(this.markdownEditor);var{container:t}=this.markdownEditor;if(this.editor&&t!=null){var n,i,a=t.getBoundingClientRect().top,l=t.scrollTop,s=t.scrollHeight,o=(n=(i=this.editor.getModel())===null||i===void 0?void 0:i.getLineCount())!==null&&n!==void 0?n: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,n=e.clientY;t||this.setState({isEditing:!0},()=>{this.setEditorPosition(n)})}handleEditorInitialized(e){In.debug("Markdown Editor Initialized..."),this.editor=e}handleCreateMarkdown(){In.debug("create markdown..."),this.setState({isStartPageShown:!1,content:"",isEditing:!0,panelState:{content:""}},()=>{this.editor!=null&&this.editor.focus!=null&&this.editor.focus()})}handleOpenMarkdown(e){In.debug("open markdown...",e);var{glContainer:t,glEventHub:n}=this.props,i=H.getComponentConfigFromContainer(t);n.emit(Ie.REOPEN,e,i)}handleDeleteMarkdown(e){var{glEventHub:t}=this.props;t.emit(Ie.DELETE,e)}handleEditorBlur(e){var t;In.debug("markdown content changed, saving...");var{isEditing:n}=this.state;if(!(!n||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:n}=this.props,{isEditing:i,isStartPageShown:a,content:l}=this.state,s=this.getClosedMarkdowns(n);return p.jsx(It,{glContainer:e,glEventHub:t,className:"markdown-panel",componentPanel:this,onResize:this.handleEditorResize,onBlur:this.handleEditorBlur,isClonable:!0,isRenamable:!0,children:a?p.jsx(ss,{closedMarkdowns:s,onCreate:this.handleCreateMarkdown,onOpen:this.handleOpenMarkdown,onDelete:this.handleDeleteMarkdown}):p.jsx(ls,{isEditing:i,onDoubleClick:this.handleContainerDoubleClick,children:p.jsx(E.Suspense,{fallback:p.jsx(pt,{}),children:p.jsx(vv,{ref:o=>{this.markdownEditor=o},isEditing:i,content:l??it.DEFAULT_CONTENT,onEditorInitialized:this.handleEditorInitialized})})})})}}hn(ui,"defaultProps",{panelState:null});hn(ui,"COMPONENT","MarkdownPanel");var pv=(r,e)=>{var{localDashboardId:t}=e;return{closedPanels:bo(r,t)}},un=wt(pv,null,null,{forwardRef:!0})(ui);function ba(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(n,i)}function kn(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){ba(a,n,i,l,s,"next",o)}function s(o){ba(a,n,i,l,s,"throw",o)}l(void 0)})}}function Ca(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function je(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ca(Object(t),!0).forEach(function(n){De(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Ca(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function De(r,e,t){return(e=fv(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function fv(r){var e=mv(r,"string");return typeof e=="symbol"?e:e+""}function mv(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var gv=E.lazy(()=>zn(()=>import("./MarkdownNotebook-GLdDEfXz.js"),__vite__mapDeps([18,1,2,3,4,5,8,9,19]),import.meta.url)),te=J.module("NotebookPanel"),ya=400;class we extends E.Component{static handleError(e){ke.isCanceled(e)||te.error(e)}static unsavedNotebookCount(){return document.querySelectorAll(".".concat(we.UNSAVED_INDICATOR_CLASS_NAME,".").concat(we.UNSAVED_STATUS_CLASS_NAME)).length}static languageFromFileName(e){var t=_e.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),De(this,"pending",void 0),De(this,"debouncedSavePanelState",void 0),De(this,"debouncedLoad",void 0),De(this,"notebook",void 0),De(this,"tabTitleElement",void 0),De(this,"tabInitOnce",void 0),De(this,"editor",void 0),De(this,"getSettings",U((c,v)=>je(je({},c),{},{minimap:{enabled:v}}))),De(this,"getOverflowActions",U((c,v,g)=>{var m=[{title:"Find",icon:Yo,action:this.handleFind,group:He.groups.high,shortcut:ut.NOTEBOOK.FIND,order:10},{title:"Copy File",icon:El,action:this.handleCopy,group:He.groups.medium,order:20},{title:"Rename File",icon:Zo,action:this.handleShowRename,group:He.groups.medium,order:30},{title:"Delete File",icon:Zn,action:this.handleDelete,group:He.groups.medium,order:40},{title:"Show Minimap",icon:c?vr:void 0,action:this.handleMinimapChange,group:He.groups.low,shortcut:ut.NOTEBOOK.MINIMAP,order:20},{title:"Word Wrap",icon:v?vr:void 0,action:this.handleWordWrapChange,group:He.groups.low,shortcut:ut.NOTEBOOK.WORDWRAP,order:30}];return this.canFormat()&&(m.push({title:"Format Document",action:this.handleFormat,group:He.groups.low,order:10}),m.push({title:"Format on Save",icon:g?vr:void 0,action:this.handleFormatOnSaveChange,group:He.groups.low,order:15})),m})),this.handleCloseCancel=this.handleCloseCancel.bind(this),this.handleCloseDiscard=this.handleCloseDiscard.bind(this),this.handleCloseSave=this.handleCloseSave.bind(this),this.handleCopy=this.handleCopy.bind(this),this.handleDelete=this.handleDelete.bind(this),this.handleDeleteConfirm=this.handleDeleteConfirm.bind(this),this.handleDeleteCancel=this.handleDeleteCancel.bind(this),this.handleEditorInitialized=this.handleEditorInitialized.bind(this),this.handleEditorWillDestroy=this.handleEditorWillDestroy.bind(this),this.handleEditorChange=this.handleEditorChange.bind(this),this.handleFind=this.handleFind.bind(this),this.handleMinimapChange=this.handleMinimapChange.bind(this),this.handleWordWrapChange=this.handleWordWrapChange.bind(this),this.handleFormatOnSaveChange=this.handleFormatOnSaveChange.bind(this),this.handleLinkClick=this.handleLinkClick.bind(this),this.handleLoadSuccess=this.handleLoadSuccess.bind(this),this.handleLoadError=this.handleLoadError.bind(this),this.handlePanelDropped=this.handlePanelDropped.bind(this),this.handleRenameFile=this.handleRenameFile.bind(this),this.handleResize=this.handleResize.bind(this),this.handleRunCommand=this.handleRunCommand.bind(this),this.handleRunAll=this.handleRunAll.bind(this),this.handleRunSelected=this.handleRunSelected.bind(this),this.handleSave=this.handleSave.bind(this),this.handleSaveAsCancel=this.handleSaveAsCancel.bind(this),this.handleSaveAsSubmit=this.handleSaveAsSubmit.bind(this),this.handleSaveError=this.handleSaveError.bind(this),this.handleSaveSuccess=this.handleSaveSuccess.bind(this),this.handleSessionOpened=this.handleSessionOpened.bind(this),this.handleSessionClosed=this.handleSessionClosed.bind(this),this.handleShow=this.handleShow.bind(this),this.handleShowRename=this.handleShowRename.bind(this),this.handleTab=this.handleTab.bind(this),this.handleTabBlur=this.handleTabBlur.bind(this),this.handleTabClick=this.handleTabClick.bind(this),this.handleTabFocus=this.handleTabFocus.bind(this),this.handleTransformLinkUri=this.handleTransformLinkUri.bind(this),this.handleOverwrite=this.handleOverwrite.bind(this),this.handlePreviewPromotion=this.handlePreviewPromotion.bind(this),this.handleFormat=this.handleFormat.bind(this),this.canFormat=this.canFormat.bind(this),this.getDropdownOverflowActions=this.getDropdownOverflowActions.bind(this),this.pending=new $r,this.debouncedSavePanelState=vt(this.savePanelState.bind(this),ya),this.debouncedLoad=vt(this.load.bind(this),ya),this.notebook=null,this.tabTitleElement=null,this.tabInitOnce=!1;var{isDashboardActive:t,session:n,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&&_e.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:n,sessionLanguage:i,panelState:{fileMetadata:s,settings:l},showCloseModal:!1,showDeleteModal:!1,showSaveAsModal:!1,scriptCode:"",formatOnSave:!1},te.debug("constructor",e,this.state)}componentDidMount(){var{glContainer:e,glEventHub:t}=this.props,{tab:n}=e;n!=null&&this.initTab(n),this.initNotebookContent(),t.on(se.RENAME_FILE,this.handleRenameFile),t.on(Ie.DROPPED,this.handlePanelDropped),e.on(se.PROMOTE_FROM_PREVIEW,this.handlePreviewPromotion)}componentDidUpdate(e,t){var{isPreview:n,settings:i}=this.state,{wordWrap:a}=i,{notebookSettings:l}=this.props;n!==t.isPreview&&this.setPreviewStatus(),a!==t.settings.wordWrap&&(this.updateEditorWordWrap(),this.debouncedSavePanelState()),l.isMinimapEnabled!==e.notebookSettings.isMinimapEnabled&&this.updateEditorMinimap()}componentWillUnmount(){this.debouncedSavePanelState.flush(),this.pending.cancel();var{glEventHub:e,glContainer:t}=this.props,{fileMetadata:n,isPreview:i}=this.state;e.off(se.RENAME_FILE,this.handleRenameFile),e.off(Ie.DROPPED,this.handlePanelDropped),t.off(se.PROMOTE_FROM_PREVIEW,this.handlePreviewPromotion),e.emit(se.UNREGISTER_FILE,n,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:n,savedChangeCount:i}=this.state;return n!==i?(this.setState({showCloseModal:!0}),!1):!0})}initTabClasses(e){var t=e.element.get(0);N(t);var n=t.querySelector(".lm_title");this.tabTitleElement=n,n==null||n.classList.add("notebook-title"),this.setPreviewStatus()}getNotebookValue(){var{changeCount:e,savedChangeCount:t,settings:n}=this.state,{value:i}=n;if(e!==t&&this.notebook){var a=this.notebook.getValue();return a??i}return i}initNotebookContent(){var{fileMetadata:e,settings:t,isPreview:n}=this.state;if(e&&e.id){te.debug("Init content from file"),this.registerFileMetadata(e,n),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(se.CLOSE_FILE,{id:e})}registerFileMetadata(e,t){var{glEventHub:n,metadata:i}=this.props,{id:a}=i;n.emit(se.REGISTER_FILE,a,e,t)}renameTab(e,t){var{glEventHub:n}=this.props;n.emit(se.RENAME,e,t)}load(){var{fileMetadata:e,settings:t}=this.state;N(e);var{id:n}=e,{fileStorage:i}=this.props;this.pending.add(i.loadFile(n)).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,_e.getBaseName(s))}var h=je(je({},t),{},{language:(l=we.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&&_e.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:n}=this.props;this.pending.add(n.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:n,fileMetadata:i,isPreview:a,settings:l}=e,s=this.getNotebookValue(),o=t!==n?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(se.CLOSE_FILE,{id:e,itemName:e},{force:!0}),this.focus()}handleCopy(){var e=this;return kn(function*(){var{fileStorage:t,glEventHub:n,session:i}=e.props,{fileMetadata:a,settings:l}=e.state;N(a);var{language:s}=l,{itemName:o}=a,u=yield _e.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};n.emit(se.SELECT_NOTEBOOK,i,s,h,d,!0)})()}handleDelete(){te.debug("handleDelete, pending confirmation"),this.setState({showDeleteModal:!0})}handleDeleteConfirm(){var e=this;return kn(function*(){var{fileStorage:t,glContainer:n,glEventHub:i}=e.props,{fileMetadata:a}=e.state;te.debug("handleDeleteConfirm",a==null?void 0:a.itemName),e.setState({showDeleteModal:!1}),a&&(_e.hasPath(a.itemName)&&(yield _e.fileExists(t,a.itemName))?(i.emit(se.CLOSE_FILE,a,{force:!0}),t.deleteFile(a.itemName)):n.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:n,savedChangeCount:i}=t,{isUndoing:a,isRedoing:l}=e;return a?{changeCount:n-1,savedChangeCount:i}:!l&&n<i?{changeCount:n+1,savedChangeCount:0}:{changeCount:n+1,savedChangeCount:i}}),this.debouncedSavePanelState()}handleFind(){this.notebook&&this.notebook.toggleFind()}updateEditorMinimap(){if(this.editor){var{notebookSettings:e}=this.props;this.editor.updateOptions({minimap:{enabled:e.isMinimapEnabled}})}}handleMinimapChange(){var e,{notebookSettings:t,updateNotebookSettings:n}=this.props,i={isMinimapEnabled:!((e=t.isMinimapEnabled)!==null&&e!==void 0&&e)};n(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,n=t.wordWrap==="on"?"off":"on";return{settings:je(je({},t),{},{wordWrap:n})}})}handleFormatOnSaveChange(){var e,{notebookSettings:t,updateNotebookSettings:n}=this.props,i={formatOnSave:!((e=t.formatOnSave)!==null&&e!==void 0&&e)};n(i)}handleLinkClick(e){var{notebooksUrl:t,session:n,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(se.SELECT_NOTEBOOK,n,i,o,u)}}handleLoadSuccess(){this.setState({error:void 0,isLoaded:!0,isLoading:!1})}handleLoadError(e){var t=e;ke.isCanceled(t)||(ke.isTimedOut(t)&&(t=new Error("File not found.")),te.error(t),this.setState({error:t,isLoading:!1}))}handleSave(){var e=this;return kn(function*(){te.debug("handleSave");var{notebookSettings:t}=e.props,{formatOnSave:n=!1}=t;n&&(yield e.handleFormat()),e.save()})()}handleSaveSuccess(e){var t,{fileStorage:n}=this.props,i={id:e.filename,itemName:e.filename},a=(t=we.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&&_e.hasPath(s.itemName)&&s.itemName!==i.itemName&&(te.debug("handleSaveSuccess deleting old file",s.itemName),n.deleteFile(s.itemName).catch(we.handleError)),{fileMetadata:i,settings:o,isPreview:!1}}),this.debouncedSavePanelState(),this.registerFileMetadata(i,!1)}handleSaveError(e){ke.isCanceled(e)||(this.setState({savedChangeCount:0}),te.error(e))}handleSaveAsCancel(){this.setState({showSaveAsModal:!1})}handleSaveAsSubmit(e){var t,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;n&&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}),_e.getBaseName(a)!==_e.getBaseName(e)){var{metadata:s}=this.props,{id:o}=s;this.renameTab(o,_e.getBaseName(e))}this.saveContent(e,l)}}canFormat(){var e;return((e=this.notebook)===null||e===void 0?void 0:e.editor)!=null?dt.canFormat(this.notebook.editor):!1}handleFormat(){var e=this;return kn(function*(){var t;((t=e.notebook)===null||t===void 0?void 0:t.editor)!=null&&(yield dt.formatDocument(e.notebook.editor))})()}handleRenameFile(e,t,n){var{fileMetadata:i,panelState:a}=this.state,{glContainer:l}=this.props;if((i==null?void 0:i.itemName)==="/".concat(t)&&n&&JSON.stringify(a)!==JSON.stringify(n)){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:n}=t;this.setState({session:e,sessionLanguage:n})}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),n=0;n<e;n++)t[n]=arguments[n];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:n}=this.state;if(e.endsWith("/"))return e;if(e.startsWith("/"))return"".concat(t).concat(e.substring(1));var i=n==null?void 0:n.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 n=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:n}),u={id:null,itemName:e};te.debug("handleCreateNotebook",a,l,o,u),i.emit(se.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($n.SEND_COMMAND,e,!1,!0)}removePreviewStatus(){this.setState(e=>{var{isPreview:t}=e;if(t){var{fileMetadata:n}=this.state;return n&&this.registerFileMetadata(n,!1),{isPreview:!1}}return null})}getDropdownOverflowActions(){var{notebookSettings:e}=this.props,{isMinimapEnabled:t,formatOnSave:n}=e,{settings:i}=this.state;return this.getOverflowActions(t??!1,this.getSettings(i,t??!1).wordWrap==="on",n??!1)}render(){var e,t,n,{fileStorage:i,glContainer:a,glContainer:{tab:l},glEventHub:s,notebookSettings:o}=this.props,{changeCount:u,savedChangeCount:d,error:h,isDashboardActive:c,isLoaded:v,isLoading:g,isPreview:m,fileMetadata:f,session:b,sessionLanguage:y,settings:C,showCloseModal:T,showDeleteModal:w,showSaveAsModal:P}=this.state,R=c&&!a.isHidden&&!m,F=(e=f==null?void 0:f.itemName)!==null&&e!==void 0?e:we.DEFAULT_NAME,D=F.endsWith(".md"),M=(f==null?void 0:f.id)!=null,I=this.getSettings(C,(t=o.isMinimapEnabled)!==null&&t!==void 0?t:!1),j=b!=null,V=y===I.language,B=!v||!j||!V,K=!v,re=[{action:this.handleSave,shortcut:Tr.SAVE},{action:this.handleMinimapChange,shortcut:ut.NOTEBOOK.MINIMAP},{action:this.handleWordWrapChange,shortcut:ut.NOTEBOOK.WORDWRAP}],le=Lr.getDisabledRunTooltip(j,V,"Notebook extension","Run"),me=Lr.getDisabledRunTooltip(j,V,"Notebook extension","Run Selected"),ge=[{title:M?"Rename":"Save As…",order:10,group:He.groups.high,action:this.handleShowRename},{title:"Copy File",action:this.handleCopy,group:He.groups.high,order:20}],Ve=l==null?void 0:l.element.find(".lm_title_before").get(0);return p.jsxs(p.Fragment,{children:[Ve!=null&&Ys.createPortal(p.jsx("span",{className:Me(we.UNSAVED_INDICATOR_CLASS_NAME,{[we.UNSAVED_STATUS_CLASS_NAME]:u!==d})}),Ve),p.jsxs(It,{className:"notebook-container",componentPanel:this,glContainer:a,glEventHub:s,onTab:this.handleTab,onResize:this.handleResize,onShow:this.handleShow,onTabClicked:this.handleTabClick,onTabFocus:this.handleTabFocus,onTabBlur:this.handleTabBlur,onSessionOpen:this.handleSessionOpened,onSessionClose:this.handleSessionClosed,additionalActions:ge,renderTabTooltip:()=>F,children:[!D&&p.jsxs(p.Fragment,{children:[p.jsxs("div",{className:"notebook-toolbar",children:[p.jsxs("span",{children:[p.jsx(Z,{kind:"ghost",className:"btn-play",onClick:this.handleRunAll,disabled:B,icon:p.jsx(Ne,{icon:qo,transform:"grow-4"}),tooltip:"Run ".concat(ut.NOTEBOOK.RUN.getDisplayText()),"aria-label":"Run"}),le!=null&&p.jsx(Pr,{children:le})]}),p.jsxs("span",{children:[p.jsx(Z,{kind:"ghost",className:"btn-play",onClick:this.handleRunSelected,disabled:B,icon:p.jsx(Ne,{icon:Ko,transform:"grow-4"}),tooltip:"Run Selected ".concat(ut.NOTEBOOK.RUN_SELECTED.getDisplayText()),"aria-label":"Run Selected"}),me!=null&&p.jsx(Pr,{children:me})]}),p.jsx(Z,{kind:"ghost",className:"mr-auto",disabled:K,onClick:this.handleSave,icon:wl,tooltip:"Save ".concat(Tr.SAVE.getDisplayText()),"aria-label":"Save"}),p.jsx(Z,{kind:"ghost",className:"btn-overflow",disabled:K,icon:Xo,tooltip:"More Actions...",onClick:()=>{},children:p.jsx(dl,{actions:this.getDropdownOverflowActions,popperOptions:we.POPPER_OPTIONS})})]}),p.jsx($l,{isLoaded:v,isLoading:g,error:h,onChange:this.handleEditorChange,onRunCommand:this.handleRunCommand,session:b,sessionLanguage:y,onEditorInitialized:this.handleEditorInitialized,onEditorWillDestroy:this.handleEditorWillDestroy,settings:I,focusOnMount:R,ref:L=>{this.notebook=L}})]}),D&&p.jsx(E.Suspense,{fallback:p.jsx(pt,{}),children:p.jsx(gv,{content:(n=I.value)!==null&&n!==void 0?n:"",onLinkClick:this.handleLinkClick,onRunCode:this.handleRunCommand,transformImageUri:this.handleTransformLinkUri,transformLinkUri:this.handleTransformLinkUri})}),p.jsx(yo,{isOpen:P,type:"file",defaultValue:F,title:M?"Rename":"Save file as",onSubmit:this.handleSaveAsSubmit,onCancel:this.handleSaveAsCancel,notifyOnExtensionChange:!0,storage:i}),p.jsx(yi,{isOpen:w,headerText:'Are you sure you want to delete "'.concat(F,'"?'),bodyText:"You cannot undo this action.",onCancel:this.handleDeleteCancel,onConfirm:this.handleDeleteConfirm,confirmButtonText:"Delete"}),p.jsx(yi,{isOpen:T,headerText:"Do you want to save the changes you made to ".concat(F,"?"),bodyText:"Your changes will be lost if you don't save them.",onCancel:this.handleCloseCancel,onDiscard:this.handleCloseDiscard,onConfirm:this.handleCloseSave,discardButtonText:"Discard Changes",confirmButtonText:"Save"}),p.jsx(He,{actions:re})]})]})}}De(we,"COMPONENT","NotebookPanel");De(we,"POPPER_OPTIONS",{placement:"bottom-end"});De(we,"DEFAULT_NAME","Untitled");De(we,"UNSAVED_INDICATOR_CLASS_NAME","editor-unsaved-indicator");De(we,"UNSAVED_STATUS_CLASS_NAME","is-unsaved");De(we,"defaultProps",{isDashboardActive:!0,isPreview:!1,session:null,sessionLanguage:null,notebookSettings:{isMinimapEnabled:!0}});var bv=(r,e)=>{var t=So(r),n=hl(r),i=cl(r,e.localDashboardId),{session:a,config:l}=i??{},{type:s}=l??{};return{fileStorage:t,notebookSettings:n,session:a,sessionLanguage:s}},Et=wt(bv,{updateNotebookSettings:Co},null,{forwardRef:!0})(we);function os(r){var{onClick:e}=r,t=E.useRef(null),n=E.useCallback(i=>{var a;(a=t.current)===null||a===void 0||a.blur(),e(i)},[e]);return p.jsxs(Z,{ref:t,kind:"primary",className:"btn-pandas",onClick:n,tooltip:"Click to refresh pandas dataframe, updates do not occur automatically.",children:["pandas dataframe",p.jsxs("span",{children:[p.jsx(Ne,{icon:Pl,transform:"shrink-1",className:"mr-1"}),"Reload"]})]})}function Sa(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function Ea(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Sa(Object(t),!0).forEach(function(n){lr(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Sa(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function lr(r,e,t){return(e=Cv(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Cv(r){var e=yv(r,"string");return typeof e=="symbol"?e:e+""}function yv(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class sr extends E.Component{constructor(e){super(e),lr(this,"irisGridRef",void 0),this.irisGridRef=Te.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,n,{shouldFocusGrid:i}=this.state;i&&(e=this.irisGridRef.current)!==null&&e!==void 0&&(t=e.irisGrid)!==null&&t!==void 0&&(n=t.current)!==null&&n!==void 0&&n.grid&&(this.irisGridRef.current.irisGrid.current.grid.focus(),this.setState({shouldFocusGrid:!1}))}handlePanelStateUpdate(e){this.setState({panelState:e})}render(){return p.jsx(li,Ea(Ea({ref:this.irisGridRef,onStateChange:this.handleGridStateChange,onPanelStateUpdate:this.handlePanelStateUpdate},this.props),{},{children:p.jsx(os,{onClick:this.handleReload})}))}}lr(sr,"defaultProps",{panelState:null});lr(sr,"COMPONENT","PandasPanel");function wa(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(n,i)}function Ta(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){wa(a,n,i,l,s,"next",o)}function s(o){wa(a,n,i,l,s,"throw",o)}l(void 0)})}}function Pa(r,e,t){return(e=Sv(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Sv(r){var e=Ev(r,"string");return typeof e=="symbol"?e:e+""}function Ev(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class wv{constructor(e){Pa(this,"items",void 0),Pa(this,"onUpdateCallback",void 0),this.items=e}setSearch(e){}setExpanded(e,t){if(e.charAt(e.length-1)==="/")for(var n=0;n<this.items.length;n+=1){var i=this.items[n];Si(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];Si(t)&&(t.isExpanded=!1)}return Promise.resolve()}getViewportData(){return Promise.resolve({items:this.items,offset:0})}getSnapshot(e){return Ta(function*(){throw new Error("Method not implemented.")})()}setViewport(e){var t=this;return Ta(function*(){var n,i=yield t.getViewportData();(n=t.onUpdateCallback)===null||n===void 0||n.call(t,i)})()}setFilters(e){}setSorts(e){}setReversed(e){}close(){}onUpdate(e){return this.onUpdateCallback=e,jest.fn()}get size(){return this.items.length}}function Oa(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(n,i)}function nn(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){Oa(a,n,i,l,s,"next",o)}function s(o){Oa(a,n,i,l,s,"throw",o)}l(void 0)})}}function Tv(r,e,t){return(e=Pv(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Pv(r){var e=Ov(r,"string");return typeof e=="symbol"?e:e+""}function Ov(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class Dv{constructor(e){Tv(this,"items",void 0),this.items=e}getTable(){var e=this;return nn(function*(){return new wv(e.items)})()}saveFile(e){throw new Error("Method not implemented.")}loadFile(e){throw new Error("Method not implemented.")}copyFile(e,t){return nn(function*(){throw new Error("Method not implemented.")})()}deleteFile(e){var t=this;return nn(function*(){t.items=t.items.filter(n=>n.filename!==e)})()}moveFile(e,t){var n=this;return nn(function*(){for(var i=0;i<n.items.length;i+=1)if(n.items[i].filename===e){n.items[i].filename=t,n.items[i].basename=_e.getBaseName(t),n.items[i].id=t;break}})()}info(e){var t=this;return nn(function*(){var n=t.items.filter(a=>a.filename===e);if(n.length===0)throw new Eo;if(n.length>1)throw new Error("More than one matching file found");var i=n[0];return{filename:i.filename,basename:i.basename,id:i.filename,type:i.type}})()}createDirectory(e){throw new Error("Method not implemented.")}}var Fv=It,Nv=It;function Da(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function Wn(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Da(Object(t),!0).forEach(function(n){Mv(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Da(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function Mv(r,e,t){return(e=Rv(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Rv(r){var e=Iv(r,"string");return typeof e=="symbol"?e:e+""}function Iv(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}function Fa(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(n,i)}function us(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){Fa(a,n,i,l,s,"next",o)}function s(o){Fa(a,n,i,l,s,"throw",o)}l(void 0)})}}function kv(r,e,t,n){return jr.apply(this,arguments)}function jr(){return jr=us(function*(r,e,t,n){var i={},a="",l={};if(_t(e)&&(i=e.settings,a=e.table,l=e.tableSettings),n!=null&&(n.tableSettings!=null&&(l=n.tableSettings),n.table!=null&&(a=n.table),n.settings!=null&&(i=Wn(Wn({},i),n.settings))),a!=null&&a!==""){var s=yield t();return new $(r).applyTableSettings(s,l,vl(Dl.getState())),Bt.makeModelFromSettings(r,i,s)}var o=yield t();return Bt.makeModel(r,i,o)}),jr.apply(this,arguments)}var di=E.forwardRef((r,e)=>{var t=ts(r)?r.panelState:void 0,{fetch:n,metadata:i,localDashboardId:a}=r;N(i);var[l,s]=gu(i),o=E.useCallback(us(function*(){if(s!=null)throw s;return l==null?new Promise(()=>{}):kv(l,i,n,t)}),[l,s,i,n,t]);return p.jsx(ai,Wn(Wn({ref:e},r),{},{metadata:i,localDashboardId:a,makeModel:o}))});di.displayName="ChartPanelPlugin";function Na(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(n,i)}function Lv(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){Na(a,n,i,l,s,"next",o)}function s(o){Na(a,n,i,l,s,"throw",o)}l(void 0)})}}function ds(r){var e=Yn(),[t,n]=E.useState(),{fetch:i}=r;return E.useEffect(()=>{var a=!1;function l(){return s.apply(this,arguments)}function s(){return s=Lv(function*(){var o=yield i(),u=yield Bt.makeModel(e,void 0,o);a||n(u)}),s.apply(this,arguments)}return l(),()=>{a=!0}},[e,i]),t?p.jsx(Ll,{model:t}):null}var Av={name:"ChartPanel",title:"Chart",type:Ot.WIDGET_PLUGIN,component:ds,panelComponent:di,supportedTypes:"Figure",icon:Qo};function Ma(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(n,i)}function xv(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){Ma(a,n,i,l,s,"next",o)}function s(o){Ma(a,n,i,l,s,"throw",o)}l(void 0)})}}function hs(r){Yt(r);var{id:e,layout:t}=r,n=E.useCallback(i=>{var{metadata:a,panelId:l=Ue(),table:s}=i,{settings:o}=a,u=function(){var v=xv(function*(){return s});return function(){return v.apply(this,arguments)}}(),d=k.titleFromSettings(o),h={type:"react-component",component:ai.COMPONENT,props:{localDashboardId:e,id:l,metadata:a,fetch:u},title:d,id:l},{root:c}=t;H.openComponent({root:c,config:h})},[e,t]);return Ee(t.eventHub,Fe.CREATE_CHART,n),null}var jv={name:"ChartBuilderPlugin",type:Ot.DASHBOARD_PLUGIN,component:hs};function cs(){var{python:{linter:r={}}={}}=Hn(hl),{isEnabled:e=!1,config:t}=r;E.useEffect(function(){wr.isRuffEnabled=e,wr.setRuffSettings(t)},[e,t])}function Ra(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function Ia(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ra(Object(t),!0).forEach(function(n){_v(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Ra(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function _v(r,e,t){return(e=Vv(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Vv(r){var e=$v(r,"string");return typeof e=="symbol"?e:e+""}function $v(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var ve=J.module("ConsolePlugin");function ka(r){return r.notebook!==void 0}function Hv(r){Yt(r)}function Gv(r){Hv(r);var{id:e,hydrateConsole:t,layout:n,panelManager:i,registerComponent:a,notebooksUrl:l}=r,s=E.useRef(0),[o,u]=E.useState(new Map),[d,h]=E.useState(new Map);cs();var c=rl(),v=E.useCallback(()=>i.getLastUsedPanelOfType(An),[i]),g=E.useCallback((L,x)=>{u(_=>new Map(_.set(L,x)))},[u]),m=E.useCallback(L=>{u(x=>(x.delete(L),new Map(x)))},[u]),f=E.useCallback((L,x)=>{h(_=>new Map(_.set(L,x)))},[h]),b=E.useCallback(L=>{h(x=>(x.delete(L),new Map(x)))},[h]),y=E.useCallback(function(L){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,_=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,W=L&&L.trim();if(!W)ve.info("Ignoring empty code");else{var q=v();if(!q||!(q instanceof An.WrappedComponent)){ve.error("Console panel not found");return}ve.debug("Send command: ",L,x,_),q.addCommand(L,x,_)}},[v]),C=E.useCallback(L=>{c(Yl(e,L))},[c,e]),T=E.useCallback(L=>{var{language:x}=L,_=x==="python"?"py":x,W=null;return _==null?(ve.debug("No extension for language",x),W="Untitled-".concat(s.current)):W="Untitled-".concat(s.current,".").concat(_),s.current+=1,W},[]),w=E.useCallback(function(L){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,{id:_}=L;if(_!=null&&o.has(_))return o.get(_);if(_!=null&&d.has(_))return d.get(_);if(x)return Ue()},[o,d]),P=E.useCallback((L,x)=>{H.renameComponent(n.root,{id:L},x)},[n.root]),R=E.useCallback((L,x)=>{ve.debug("Rename file panel",L,x);var _;if(o.has(L)&&(_=o.get(L),m(L),_!=null&&g(x,_)),d.has(L)&&(_=d.get(L),b(L),_!=null&&f(x,_)),_===void 0){ve.debug2("File ".concat(L," isn't open, no need to rename the tab"));return}P(_,_e.getBaseName(x))},[o,d,P,g,f,m,b]),F=E.useCallback(L=>{var x=w(L,!1);if(x==null){ve.error("Could not find panel id for file metadata",L);return}H.activateTab(n.root,{id:x})},[w,n.root]),D=E.useCallback((L,x,_)=>{if(ve.debug("registerFilePanel",L,x,_),x==null||x.id==null){ve.debug("Ignore empty file id",x);return}var{id:W}=x;if(_){f(W,L);return}if(o.has(W)){var q=o.get(W);if(L===q){ve.debug("Update tab title for file ".concat(W));var{itemName:be}=x;R(W,be)}else ve.error("File ".concat(W," already associated with a different tab ").concat(q));return}g(W,L),d.has(W)&&b(W)},[o,d,R,g,f,b]),M=E.useCallback((L,x)=>{if(ve.debug("unregisterFileTab",L,x),L==null||L.id==null){ve.debug("Ignore empty file id",L);return}var{id:_}=L;if(x){b(_);return}m(_)},[m,b]),I=E.useCallback((L,x)=>{ve.debug("closeFilePanel",L);var{id:_}=L,W=null,q=!1;if(o.has(_))W=o.get(_);else if(d.has(_))W=d.get(_),q=!0;else{ve.debug("File ".concat(_," isn't open, ignore close event"));return}M(L,q),H.closeComponent(n.root,{id:W},x)},[n.root,o,d,M]),j=E.useCallback(L=>{var{itemName:x}=L;return _e.getBaseName(x)},[]),V=E.useCallback(L=>{var{id:x}=L;return ve.debug("fileIsOpen",L,x,o),x!=null&&o.has(x)},[o]),B=E.useCallback(L=>{var{id:x}=L;return ve.debug("fileIsOpenAsPreview",L,x,d),x!=null&&d.has(x)},[d]),K=E.useCallback(L=>{if(L!=null){var x=i.getOpenedPanelById(L);x&&ka(x)&&x.focus()}},[i]),re=E.useCallback(L=>{var{id:x,settings:_,fileMetadata:W,session:q,sessionLanguage:be,isPreview:Ce=!1}=L,Le={settings:_,fileMetadata:W},Ke=j(W);return{type:"react-component",component:Et.COMPONENT,isFocusOnShow:!1,props:{localDashboardId:e,metadata:{id:x},session:q,sessionLanguage:be,panelState:Le,isPreview:Ce,notebooksUrl:l},title:Ke,id:x}},[j,e,l]),le=E.useCallback(function(L,x,_){var W=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{id:null,itemName:T(_)},q=w(W);if(V(W)&&q!=null){ve.debug("File is already open, focus panel"),F(W),K(q);return}var be=H.getStackForComponentTypes(n.root,[Et.COMPONENT]),Ce=re({id:q,settings:_,fileMetadata:W,session:L,sessionLanguage:x});ve.debug("createNotebook",Ce,o),H.openComponentInStack(be,Ce)},[V,K,T,w,n.root,re,o,F]),me=E.useCallback(function(L,x,_,W){var q=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;ve.debug("selectNotebook",W,q);var be=V(W),Ce=B(W),[Le]=[...d.values()],Ke=!q,Xe=Ke&&Le?Le:w(W);if(Xe==null||Xe==="")throw new Error("Unable to retrieve or create panelId for metadata",W);if(be||Ce)F(W);else{var ur=H.getStackForComponentTypes(n.root,[Et.COMPONENT]),dr=re({id:Xe,settings:_,fileMetadata:W,session:L,sessionLanguage:x,isPreview:Ke});H.openComponentInStack(ur,dr)}if(Ce&&q){var En=W.id,hr=H.getStackForConfig(n.root,{component:Et.COMPONENT,id:Xe}),Qt=H.getContentItemInStack(hr,{component:Et.COMPONENT,id:Xe});Qt&&wo(Qt)&&(Qt.container.emit(se.PROMOTE_FROM_PREVIEW),b(En),g(En,Xe))}q&&K(Xe)},[F,V,B,K,w,n.root,re,d,b,g]),ge=E.useCallback(function(L,x){var _=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},W=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,q=i.getLastUsedPanelOfType(Et);q&&ka(q)?_!=null&&_.value!=null&&q.notebook!=null&&q.notebook.append(_.value):W&&le(L,x,_)},[le,i]),Ve=E.useCallback((L,x)=>To.hydrate(Ia(Ia({},L),{},{notebooksUrl:l}),x),[l]);return en(a,An,t),en(a,pl),en(a,fl),en(a,ml),en(a,Et,Ve),Ee(n.eventHub,$n.SEND_COMMAND,y),Ee(n.eventHub,$n.SETTINGS_CHANGED,C),Ee(n.eventHub,se.CLOSE_FILE,I),Ee(n.eventHub,se.CREATE_NOTEBOOK,le),Ee(n.eventHub,se.SELECT_NOTEBOOK,me),Ee(n.eventHub,se.RENAME,P),Ee(n.eventHub,se.RENAME_FILE,R),Ee(n.eventHub,se.SEND_TO_NOTEBOOK,ge),Ee(n.eventHub,se.REGISTER_FILE,D),Ee(n.eventHub,se.UNREGISTER_FILE,M),null}var rn=J.module("FilterPlugin");function vs(r){Yt(r);var{id:e,layout:t,registerComponent:n}=r,i=rl(),[a]=E.useState(()=>new Map),[l]=E.useState(()=>new Map),[s]=E.useState(()=>new Map),o=E.useCallback(()=>{var f=Array.from(a.values()).flat().sort((C,T)=>{var w=Ze.toLower(C.name),P=Ze.toLower(T.name);if(w!==P)return w>P?1:-1;var R=Ze.toLower(C.type),F=Ze.toLower(T.type);return R!==F?R>F?1:-1:0}).reduce((C,T)=>((C.length===0||Ze.toLower(C[C.length-1].name)!==Ze.toLower(T.name)||Ze.toLower(C[C.length-1].type)!==Ze.toLower(T.type))&&C.push(T),C),[]),b=Array.from(l.values()).flat().sort((C,T)=>C.timestamp-T.timestamp),y=new Map(s);rn.debug("sendUpdate",{columns:f,filters:b,tableMap:y}),i(Tt(e,{columns:f,filters:b,tableMap:y}))},[i,e,a,l,s]),u=E.useCallback((f,b)=>{rn.debug2("handleColumnsChanged",f,b),b==null?a.delete(f):a.set(f,[].concat(b)),o()},[a,o]),d=E.useCallback((f,b)=>{rn.debug2("handleFiltersChanged",f,b),b==null?l.delete(f):l.set(f,[].concat(b??[])),o()},[l,o]),h=E.useCallback((f,b)=>{rn.debug2("handleTableChanged",f,b),b==null?s.delete(f):s.set(f,b),o()},[s,o]),c=E.useCallback(f=>{rn.debug2("handlePanelUnmount",f);var b=H.getIdFromPanel(f);b!=null&&(a.delete(b),s.delete(b),l.delete(b)),o()},[a,l,s,o]),v=E.useCallback(f=>{var{title:b="DropdownFilter",metadata:y={},panelState:C=null,id:T=Ue(),focusElement:w=H.DEFAULT_FOCUS_SELECTOR,createNewStack:P=!1,dragEvent:R=null}=f,F={type:"react-component",component:Vt.COMPONENT,props:{id:T,metadata:y,panelState:C,localDashboardId:e},title:b,id:T},{root:D}=t;H.openComponent({root:D,config:F,focusElement:w,createNewStack:P,dragEvent:R})},[t,e]),g=E.useCallback(f=>{var{title:b="InputFilter",metadata:y={},panelState:C=null,id:T=Ue(),focusElement:w=H.DEFAULT_FOCUS_SELECTOR,createNewStack:P=!1,dragEvent:R=void 0}=f,F={type:"react-component",component:$t.COMPONENT,props:{id:T,metadata:y,panelState:C,localDashboardId:e},title:b,id:T},{root:D}=t;H.openComponent({root:D,config:F,focusElement:w,createNewStack:P,dragEvent:R})},[t,e]),m=E.useCallback(f=>{var{title:b="FilterSets",metadata:y={},panelState:C=null,id:T=Ue(),focusElement:w=H.DEFAULT_FOCUS_SELECTOR,createNewStack:P=!1,dragEvent:R=null}=f,F={type:"react-component",component:xn.COMPONENT,props:{id:T,metadata:y,panelState:C,localDashboardId:e},title:b,id:T},{root:D}=t;H.openComponent({root:D,config:F,focusElement:w,createNewStack:P,dragEvent:R})},[t,e]);return E.useEffect(function(){var b=[n(Vt.COMPONENT,Vt),n($t.COMPONENT,$t),n(xn.COMPONENT,xn)];return()=>{b.forEach(y=>y())}},[n]),vc(t.eventHub,u),fc(t.eventHub,d),pc(t.eventHub,h),Ee(t.eventHub,ht.OPEN_DROPDOWN,v),Ee(t.eventHub,ht.OPEN_INPUT,g),Ee(t.eventHub,ht.OPEN_FILTER_SET_MANAGER,m),Ee(t.eventHub,Ie.UNMOUNT,c),null}var Bv={name:"FilterPlugin",type:Ot.DASHBOARD_PLUGIN,component:vs},Uv=J.module("@deephaven/app-utils/useTablePlugin");function hi(){var r=gl(),e=E.useCallback(t=>{var n=r.get(t);if(n!=null){if(Po(n))return n.component;if(Oo(n))return n.TablePlugin}var i="Unable to find table plugin ".concat(t,".");throw Uv.error(i),new Error(i)},[r]);return e}function La(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(n,i)}function Wv(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){La(a,n,i,l,s,"next",o)}function s(o){La(a,n,i,l,s,"throw",o)}l(void 0)})}}function ps(r,e,t){var n=Yn(),i=hi(),a=E.useMemo(()=>({loadPlugin:i,localDashboardId:e,makeModel:function(){var l=Wv(function*(){var o=yield r();return Hl.makeModel(n,o)});function s(){return l.apply(this,arguments)}return s}(),metadata:t}),[n,r,e,i,t]);return a}function Aa(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function xa(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Aa(Object(t),!0).forEach(function(n){zv(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Aa(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function zv(r,e,t){return(e=qv(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function qv(r){var e=Kv(r,"string");return typeof e=="symbol"?e:e+""}function Kv(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var ci=E.forwardRef((r,e)=>{var{localDashboardId:t,fetch:n,metadata:i}=r,a=ps(n,t,i);return p.jsx(li,xa(xa({ref:e},r),a))});ci.displayName="GridPanelPlugin";function ja(r,e,t,n,i,a,l){try{var s=r[a](l),o=s.value}catch(u){return void t(u)}s.done?e(o):Promise.resolve(o).then(n,i)}function Sr(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function l(o){ja(a,n,i,l,s,"next",o)}function s(o){ja(a,n,i,l,s,"throw",o)}l(void 0)})}}function fs(r){var e=Yn(),[t,n]=E.useState(),[i,a]=E.useState(),[l,s]=E.useState(!0),o=E.useCallback(Sr(function*(){var h=yield r();return Hl.makeModel(e,h)}),[e,r]),u=E.useCallback(Sr(function*(){s(!0),a(void 0);try{var h=yield o();n(h),s(!1)}catch(c){a(c),s(!1)}}),[o]);E.useEffect(()=>{var h=!1;function c(){return v.apply(this,arguments)}function v(){return v=Sr(function*(){s(!0),a(void 0);try{var g=yield o();h||(n(g),s(!1))}catch(m){h||(a(m),s(!1))}}),v.apply(this,arguments)}return c(),()=>{h=!0}},[o]),E.useEffect(function(){if(!t)return;function c(){a(new Error("Table disconnected")),n(void 0),s(!1)}return t.addEventListener(z.EVENT.DISCONNECT,c),()=>{t.removeEventListener(z.EVENT.DISCONNECT,c)}},[t]);var d=E.useMemo(()=>{if(l)return{reload:u,status:"loading"};if(i!=null)return{error:i,reload:u,status:"error"};if(t!=null)return{model:t,reload:u,status:"success"};throw new Error("Invalid state")},[i,l,t,u]);return d}function ms(r,e){var{eventHub:t}=Jn(),n=bl(),i=Cl();E.useEffect(function(){i==null||r==null||Bn(t,i,r)},[t,i,r]),E.useEffect(function(){e==null||i==null||Un(t,i,e)},[t,i,e]),E.useEffect(function(){if(i!=null)return()=>{Bn(t,i,null),Un(t,i,null)}},[t,i]);var a=E.useCallback(o=>bn(o,n),[n]),l=Hn(a),s=E.useMemo(()=>$.getInputFiltersForColumns(r??[],l.filter(o=>{var{value:u,excludePanelIds:d}=o;return u!=null&&(d==null||i!=null&&!d.includes(i))})),[r,i,l]);return s}function gs(r,e){var{eventHub:t}=Jn(),n=bl(),i=Cl(),a=yl(),l=E.useCallback(f=>Pt(f,n),[n]),s=Hn(l),o=E.useMemo(()=>{var f=new Set;return s.forEach(b=>{b.start.panelId===i&&f.add(b.start.columnName)}),[...f]},[s,i]),u=E.useCallback(f=>gn(f,n),[n]),d=Hn(u),h=E.useCallback(f=>d&&f&&i!=null?d(i,f,{type:"tableLink"}):!1,[d,i]),c=d!=null,v=E.useCallback((f,b)=>{i!=null&&rs(t,i,b)},[t,i]),g=E.useCallback(f=>{var b,y,C;if(!r||!e)return null;var{gridWrapper:T}=e,w=(b=T==null?void 0:T.getBoundingClientRect())!==null&&b!==void 0?b:null;if(w==null||w.width<=0||w.height<=0)return null;var{metrics:P}=e.state;N(P);var{columnHeaderHeight:R,allColumnXs:F,allColumnWidths:D,right:M,columnHeaderMaxDepth:I}=P,j=r.getColumnIndexByName(f);N(j);var V=e.getVisibleColumn(j),B=(y=F.get(V))!==null&&y!==void 0?y:0,K=(C=D.get(V))!==null&&C!==void 0?C:0,re=Ge(V>M?w.right:w.left+B+K*.5,w.left,w.right),le=w.top+R*I;return[re,le]},[r,e]),m=E.useCallback(f=>{i!=null&&nr(t,i,f,{type:"tableLink"})},[t,i]);return E.useEffect(function(){if(!(!e||a==null||i==null))return oa(t,i,{getCoordinates:g,setFilterValues:e.setFilterMap,unsetFilterValue:()=>{},panelId:a}),()=>{oa(t,i,null)}},[t,i,g,e,a]),{alwaysFetchColumns:o,columnSelectionValidator:h,isSelectingColumn:c,onColumnSelected:m,onDataSelected:v}}var bs=E.forwardRef((r,e)=>{var{name:t,model:n,filter:i,fetchColumns:a,selectedRanges:l,irisGridRef:s,pluginState:o,onStateChange:u}=r,d=hi(),h=E.useMemo(()=>d(t),[d,t]),c=Jn(),v=yl(),g=E.useMemo(()=>{var f;if(v==null)return"unknown";var b=H.getContentItemById(c.root,v);return(f=b==null?void 0:b.config.title)!==null&&f!==void 0?f:"unknown"},[c.root,v]),m=E.useMemo(()=>({irisGrid:s,getTableName:()=>g}),[s,g]);return p.jsx("div",{className:"iris-grid-plugin",children:p.jsx(h,{ref:e,filter:i,fetchColumns:a,model:n,table:n.table,tableName:g,selectedRanges:l,onStateChange:u,pluginState:o,panel:m})})});bs.displayName="TablePluginWrapper";function Cs(r){var{model:e,irisGridRef:t,irisGridUtils:n,selectedRanges:i}=r,[a,l]=E.useState([]),s=E.useMemo(()=>e!=null&&ct(e)?n.getFiltersFromInputFilters(e.table.columns,a,e.formatter.timeZone):[],[e,n,a]),[o,u]=E.useState([]),d=E.useRef(null),[h,c]=kl(void 0,{version:1,type:"GridWidgetTablePluginState"}),v=E.useMemo(()=>e!=null&&ct(e)&&e.table.pluginName!=null?p.jsx(bs,{ref:d,name:e.table.pluginName,model:e,filter:l,fetchColumns:u,selectedRanges:i,irisGridRef:t,pluginState:h,onStateChange:c}):null,[e,i,t,h,c]),g=E.useCallback(m=>{var f,b,y;return(f=(b=d.current)===null||b===void 0||(y=b.getMenu)===null||y===void 0?void 0:y.call(b,m))!==null&&f!==void 0?f:[]},[]);return{Plugin:v,customFilters:s,alwaysFetchColumns:o,onContextMenu:g}}var Xv=["alwaysFetchColumns"];function Yv(r,e){if(r==null)return{};var t,n,i=Zv(r,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(r);for(n=0;n<a.length;n++)t=a[n],e.indexOf(t)===-1&&{}.propertyIsEnumerable.call(r,t)&&(i[t]=r[t])}return i}function Zv(r,e){if(r==null)return{};var t={};for(var n in r)if({}.hasOwnProperty.call(r,n)){if(e.indexOf(n)!==-1)continue;t[n]=r[n]}return t}function _a(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function an(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?_a(Object(t),!0).forEach(function(n){Qv(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):_a(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function Qv(r,e,t){return(e=Jv(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Jv(r){var e=ep(r,"string");return typeof e=="symbol"?e:e+""}function ep(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}function ys(r){var e,{fetch:t}=r,n=Zs(Xn),{eventHub:i}=Jn(),a=fs(t),l=a.status==="success"?a.model:void 0,s=Yn(),o=E.useMemo(()=>new $(s),[s]),[u,d]=kl(void 0,{version:1,type:"GridWidgetPlugin"}),h=E.useRef(u),c=E.useMemo(()=>{if(!(a.status!=="success"||h.current===void 0))return an(an({},o.hydrateIrisGridState(a.model,h.current)),$.hydrateGridState(a.model,h.current))},[a,o]),v=E.useMemo(()=>Ar.makeMemoizedCombinedGridStateDehydrator(),[]),g=E.useCallback((j,V)=>{if(!(a.status!=="success"||j==null||V==null)){var B=v(a.model,j,V);d(B)}},[a,d,v]),m=ms((e=l==null?void 0:l.columns)!==null&&e!==void 0?e:null,l!=null&&ct(l)?l.table:void 0),f=E.useRef(null),b=gs(a.status==="success"?a.model:null,f.current),{alwaysFetchColumns:y}=b,C=Yv(b,Xv),T=E.useCallback(()=>{f.current!=null&&f.current.clearAllFilters()},[]);Ee(i,ht.CLEAR_ALL_FILTERS,T);var[w,P]=E.useState([]),{Plugin:R,customFilters:F,alwaysFetchColumns:D,onContextMenu:M}=Cs({model:l,irisGridRef:f,irisGridUtils:o,selectedRanges:w}),I=E.useMemo(()=>{var j=new Set([...y,...D]);return[...j]},[y,D]);return a.status==="loading"?p.jsx(pt,{isLoading:!0}):a.status==="error"?p.jsx(pt,{errorMessage:Sl(a.error),isLoading:!1}):(N(l,"Model should be defined when fetch is successful"),p.jsx(er,an(an(an({ref:f,model:l,settings:n,onStateChange:g,onSelectionChanged:P,onContextMenu:M,inputFilters:m,customFilters:F},C),{},{alwaysFetchColumns:I},c),{},{children:R})))}var tp={name:"IrisGridPanel",title:"Table",type:Ot.WIDGET_PLUGIN,component:ys,panelComponent:ci,supportedTypes:["Table","TreeTable","HierarchicalTable","PartitionedTable"],icon:Jo};function Va(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function bt(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Va(Object(t),!0).forEach(function(n){np(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Va(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function np(r,e,t){return(e=rp(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function rp(r){var e=ip(r,"string");return typeof e=="symbol"?e:e+""}function ip(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}function Ss(r){var e=r;return typeof e.getCoordinateForColumn=="function"}function $a(r){var e=r;return Ss(r)&&typeof e.setFilterMap=="function"&&typeof e.unsetFilterValue=="function"}function Ha(r){return r.description==null||!r.description.startsWith("Preview of type: ")}var Ga=J.module("LinkerUtils");class Rt{static isLinkValid(e,t,n){if(e.panelId==null||t.panelId==null||e.panelId===t.panelId||n!=null&&n!==e.panelId&&n!==t.panelId)return Ga.debug2("Incompatible panel ids",e,t,n),!1;var{columnType:i}=e,{columnType:a}=t,l=a===null||S.isCompatibleType(i,a);return l?!0:(Ga.debug2("Incompatible type",i,a),!1)}static findColumn(e,t){var{columnName:n,columnType:i}=t;return e.find(a=>{var{name:l,type:s}=a;return l===n&&s===i})}static cloneLinksForPanel(e,t,n){var i=[];return e.forEach(a=>{var l;a.start.panelId===t&&a.type!=="filterSource"?i.push(bt(bt({},a),{},{id:Ue(),start:bt(bt({},a.start),{},{panelId:n})})):((l=a.end)===null||l===void 0?void 0:l.panelId)===t&&i.push(bt(bt({},a),{},{id:Ue(),end:bt(bt({},a.end),{},{panelId:n})}))}),i}}function Es(r,e,t){return(e=ap(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function ap(r){var e=lp(r,"string");return typeof e=="symbol"?e:e+""}function lp(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var sp=J.module("LinkerLink"),Ba=.015,Ua=1.5,ws=12,Ts=12,Wa=2,Ln=Math.sqrt((Ts*.5)**2+ws**2),za=Math.asin(Ts*.5/ws),qa=15,Ct=Math.PI*.5;class Ht extends E.Component{static makeCirclePath(e,t,n){return"M ".concat(e," ").concat(t," m -").concat(n,",0 a ").concat(n,",").concat(n," 0 1,0 ").concat(n*2,",0 a ").concat(n,",").concat(n," 0 1,0 -").concat(n*2,",0 z")}static getLabelForLinkFilter(e,t){try{if(S.isNumberType(e)||S.isCharType(e))return Zu(t);if(S.isTextType(e))return Yu(t);if(S.isDateType(e))return Qu(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(n){return sp.warn(n),""}}constructor(e){super(e),Es(this,"getOperators",U((t,n)=>{var{onOperatorChanged:i}=this.props,a=S.getFilterTypes(n);return S.isBooleanType(n)&&(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:Ht.getLabelForLinkFilter(n,l),icon:p.jsx("b",{children:o}),action:()=>i(t,l),order:s}]})})),this.handleClick=this.handleClick.bind(this),this.handleMouseEnter=this.handleMouseEnter.bind(this),this.handleMouseLeave=this.handleMouseLeave.bind(this),this.handleDelete=this.handleDelete.bind(this),this.getDropdownActions=this.getDropdownActions.bind(this),this.state={isHovering:void 0}}handleClick(e){e.stopPropagation(),e.preventDefault();var{id:t,onClick:n,onDelete:i}=this.props;e.altKey?i(t):n(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:n,x1:i,y1:a,x2:l,y2:s,id:o,startColumnType:u,type:d}=this.props,{isHovering:h}=this.state,c=Math.sqrt((i-l)**2+(a-s)**2),v=Math.atan2(s-a,l-i),g=Math.sin(v),m=Math.cos(v)+2,f=window.innerWidth,b=window.innerHeight,y=0,C=0,T=Math.max(y,Math.min(i+(l-i)/2+g*(c*Ba)**Ua,f)),w=Math.max(C,Math.min(a+(s-a)/2+m*(c*Ba)**Ua,b)),P="M ".concat(i," ").concat(a," Q ").concat(T," ").concat(w," ").concat(l," ").concat(s),R="M ".concat(y," ").concat(C," L ").concat(y," ").concat(b," L ").concat(f," ").concat(b," L ").concat(f," ").concat(C,` z
12
+ `).concat(Ht.makeCirclePath(i,a,qa),`
13
+ `).concat(Ht.makeCirclePath(l,s,qa)),F="link-select-clip-".concat(o),D=Math.atan2(s-w,l-T),M=D-za+Math.PI,I=D+za+Math.PI,j=l+Math.cos(D)*Wa,V=s+Math.sin(D)*Wa,B=j+Math.cos(M)*Ln,K=V+Math.sin(M)*Ln,re=j+Math.cos(I)*Ln,le=V+Math.sin(I)*Ln,me="".concat(j,",").concat(V," ").concat(B,",").concat(K," ").concat(re,",").concat(le),ge=.25*i+.5*T+.25*l,Ve=.25*a+.5*w+.25*s,L=T-i+(l-T),x=w-a+(s-w),_=x/L,W=20,q=W/Math.sqrt(1+_**2),be=q*_,Ce=q*-1,Le=be*-1;Number.isFinite(_)?_>0?(q*=-1,be*=-1,Ce*=-1,Le*=-1,Ce-=50-10*(Math.abs(v)%Ct),Le+=10*(Math.abs(v)%Ct),q-=50-10*(Math.abs(v)%Ct),be+=10*(Math.abs(v)%Ct)):_<0?(Ce+=10*(Math.abs(v)%Ct),Le+=10*(Math.abs(v)%Ct),q+=10*(Math.abs(v)%Ct),be+=10*(Math.abs(v)%Ct)):(Ce=15,Le=10,q=-25,be=10):(Ce=10,Le=5,q=10,be=-35);var Ke="";t!==void 0&&(t==="startsWith"?Ke="a*":t==="endsWith"?Ke="*z":Ke=S.getFilterOperatorString(t));var Xe=d!=="chartLink"&&d!=="filterSource";return p.jsxs(p.Fragment,{children:[p.jsxs("svg",{className:Me(e,{hovering:h}),children:[p.jsx("clipPath",{id:F,children:p.jsx("path",{d:R,clipRule:"evenodd"})}),p.jsx("path",{className:"link-select",d:P,onClick:this.handleClick,onMouseEnter:this.handleMouseEnter,onMouseLeave:this.handleMouseLeave,clipPath:"url(#".concat(F,")"),"data-testid":"link-select"}),p.jsx("path",{className:"link-background",d:P}),p.jsx("path",{className:"link-foreground",d:P}),p.jsx("circle",{className:"link-dot",cx:i,cy:a,r:"5"}),p.jsx("polygon",{className:"link-triangle",points:me})]}),u!=null&&n&&p.jsxs(p.Fragment,{children:[Xe&&p.jsx(Z,{kind:"primary",className:"btn-fab btn-operator",style:{top:Ve+(_>=0?be:Le),left:ge+(_>=0?q:Ce)},onClick:()=>{},icon:p.jsxs("div",{className:"fa-md fa-layers",children:[p.jsx("b",{children:Ke}),p.jsx(Ne,{icon:eu,transform:"right-8 down-9 shrink-5"})]}),tooltip:"Change comparison operator",children:p.jsx(dl,{actions:this.getDropdownActions,popperOptions:{placement:"bottom-start"}})}),p.jsx(Z,{kind:"primary",className:"btn-fab btn-delete",style:{top:Ve+(_<0?be:Le),left:ge+(_<0?q:Ce)},onClick:this.handleDelete,icon:Zn,tooltip:"Delete"})]})]})}}Es(Ht,"defaultProps",{className:"",isSelected:!1,onClick(){},onDelete(){}});function Ka(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function Xa(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ka(Object(t),!0).forEach(function(n){vi(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Ka(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function vi(r,e,t){return(e=op(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function op(r){var e=up(r,"string");return typeof e=="symbol"?e:e+""}function up(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var Er=J.module("LinkerOverlayContent");class Ps extends E.Component{constructor(e){super(e),vi(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=Te.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){Er.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:n}=this.props,{panelId:i,columnName:a}=e,l=i,s=n.get(i);if(s!=null){l=s.panelId;var o=s.getCoordinates(a);if(o!=null)return o}var u=t.getOpenedPanelById(l);if(s==null&&u!=null){if(!Ss(u))throw new Error("Panel does not have getCoordinateForColumn method: ".concat(l));try{var d=u.getCoordinateForColumn(a);if(d!=null)return d}catch{Er.error("Could not get coordinate for column",a,u)}}var h=t.getContainerByPanelId(l);if(h==null)throw new Error("Unable to find panel container for id: ".concat(l));return H.getTabPoint(h)}handleOperatorChanged(e,t){var{links:n,onLinksUpdated:i}=this.props,a=n.map(l=>l.id===e?Xa(Xa({},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(),n=Ge(e.x,0,window.innerWidth-t.width),i=Ge(e.y,0,window.innerHeight-t.height);this.setState({dialog:{x:n,y:i}})}}handleMouseMove(e){var{offset:t,isDragging:n}=this.state;if(this.setState({mouse:{x:e.clientX,y:e.clientY}}),n&&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 n=this.dialogRef.current.getBoundingClientRect();t.x=n.right-(n.width+e.clientX),t.y=n.bottom-(n.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:n}=this.props;e.preventDefault(),t.forEach(i=>n(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:n,messageText:i,onLinkSelected:a,onLinkDeleted:l,onAllLinksDeleted:s,onDone:o}=this.props,{mouse:u,dialog:d,isDragging:h,mode:c}=this.state,v=t.map(g=>{try{var m,f,{id:b,type:y,isReversed:C,start:T,end:w,operator:P}=g,R=T.columnType,[F,D]=this.getPointFromLinkPoint(T),M=(m=u==null?void 0:u.x)!==null&&m!==void 0?m:F,I=(f=u==null?void 0:u.y)!==null&&f!==void 0?f:D;if(w!=null&&([M,I]=this.getPointFromLinkPoint(w)),C!=null&&C){var[j,V]=[F,D];[F,D]=[M,I],[M,I]=[j,V]}var B=Me("linker-link",{disabled:e},{"link-filter-source":y==="filterSource"},{"link-invalid":y==="invalid"},{interactive:g.end==null},{"link-is-selected":n.has(b)},{"danger-delete":c==="delete"});return{x1:F,y1:D,x2:M,y2:I,id:b,className:B,operator:P,startColumnType:R,type:y}}catch(K){return Er.warn("Unable to get point for link",g,K),null}}).filter(g=>g!=null);return p.jsxs("div",{className:Me("linker-overlay",{"danger-delete":c==="delete"}),children:[v.map(g=>{var{x1:m,y1:f,x2:b,y2:y,id:C,className:T,operator:w,startColumnType:P,type:R}=g;return p.jsx(Ht,{className:T,id:C,x1:m,y1:f,x2:b,y2:y,onClick:a,onDelete:l,isSelected:n.has(C),operator:w,startColumnType:P,type:R,onOperatorChanged:this.handleOperatorChanged},C)}),p.jsxs("div",{className:Me("linker-toast-dialog",{dragging:h}),ref:this.dialogRef,style:{bottom:d==null?void 0:d.y,right:d==null?void 0:d.x},"data-testid":"linker-toast-dialog",children:[p.jsx(Z,{draggable:!0,kind:"inline",className:"btn-drag-handle",icon:tu,onClick:()=>{},onMouseDown:this.handleMouseDown,children:!h&&p.jsx(Pr,{children:"Drag to reposition"})}),p.jsx("div",{className:"toast-body",children:i}),p.jsxs("div",{className:"toast-footer",children:[p.jsx(Z,{kind:"secondary",onClick:s,children:"Clear All"}),p.jsx(Z,{kind:"primary",onClick:o,children:"Done"})]})]}),p.jsx(He,{actions:[{action:this.handleEscapePressed,shortcut:Tr.LINKER_CLOSE,isGlobal:!0}]})]})}}vi(Ps,"defaultProps",{disabled:"false"});function Ya(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function Za(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ya(Object(t),!0).forEach(function(n){jn(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Ya(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function jn(r,e,t){return(e=dp(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function dp(r){var e=hp(r,"string");return typeof e=="symbol"?e:e+""}function hp(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var Se=J.module("Linker"),cp=(r,e)=>({activeTool:Hr(r),dh:ol(r),isolatedLinkerPanelId:Kn(r,e.localDashboardId),links:Pt(r,e.localDashboardId),timeZone:vl(r)}),vp=wt(cp,{setActiveTool:ll,setDashboardLinks:tr,addDashboardLinks:ql,deleteDashboardLinks:Kl,setDashboardIsolatedLinkerPanelId:Zr,setDashboardColumnSelectionValidator:Xl});class pp extends E.Component{constructor(e){super(e),jn(this,"linkTargetPropMap",new Map),jn(this,"removerFns",[]),jn(this,"getCachedLinks",U((t,n,i)=>{var a=[...t];return n!=null&&n.start!=null&&a.push(n),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:n}=this.props;n!==e.layout&&(this.stopListening(e.layout),this.startListening(n)),t!==e.activeTool&&(this.updateSelectionValidators(),t===et.DEFAULT&&this.reset())}componentDidCatch(e,t){Se.error("componentDidCatch",e,t)}componentWillUnmount(){var{layout:e}=this.props;this.stopListening(e)}startListening(e){e.on("stateChanged",this.handleLayoutStateChanged);var{eventHub:t}=e;t.on(Fe.COLUMN_SELECTED,this.handleGridColumnSelect),t.on(Fe.DATA_SELECTED,this.handleUpdateValues),t.on(Fe.STATE_CHANGED,this.handleStateChange),t.on(Wt.COLUMN_SELECTED,this.handleChartColumnSelect),t.on(Ie.CLONED,this.handlePanelCloned),this.removerFns=[cc(t,this.handleColumnsChanged),mc(t,this.handleLinkPointSelected),gc(t,this.handleUpdateValues),bc(t,this.handleTargetRegistered)],t.on(Ie.CLOSE,this.handlePanelClosed),t.on(Ie.CLOSED,this.handlePanelClosed),t.on(Ie.DRAGGING,this.handlePanelDragging),t.on(Ie.DROPPED,this.handlePanelDropped)}stopListening(e){e.off("stateChanged",this.handleLayoutStateChanged);var{eventHub:t}=e;t.off(Fe.COLUMN_SELECTED,this.handleGridColumnSelect),t.off(Fe.DATA_SELECTED,this.handleUpdateValues),t.off(Fe.STATE_CHANGED,this.handleStateChange),t.off(Wt.COLUMN_SELECTED,this.handleChartColumnSelect),t.off(Ie.CLONED,this.handlePanelCloned),t.off(Ie.CLOSE,this.handlePanelClosed),t.off(Ie.CLOSED,this.handlePanelClosed),t.off(Ie.DRAGGING,this.handlePanelDragging),t.off(Ie.DROPPED,this.handlePanelDropped),this.removerFns.forEach(n=>n()),this.removerFns=[]}reset(){this.setState({linkInProgress:void 0,selectedIds:new Set})}handleCancel(){var{linkInProgress:e}=this.state;if(e==null){var{setActiveTool:t}=this.props;t(et.DEFAULT)}this.setState({linkInProgress:void 0})}handleDone(){var{setActiveTool:e}=this.props;e(et.DEFAULT)}handleChartColumnSelect(e,t){var n=H.getIdFromPanel(e);N(n),this.columnSelected(n,t,"chartLink",!0)}handleColumnsChanged(e,t){Se.debug("handleColumnsChanged",e,t);var{links:n}=this.props;if(e==null){Se.error("Invalid filter columns source id",e);return}if(t==null){this.deleteLinksForPanelId(e);return}var i=n.filter(a=>{var{start:l,end:s}=a;return l.panelId===e&&Rt.findColumn(t,l)==null||s!=null&&s.panelId===e&&Rt.findColumn(t,s)==null});this.deleteLinks(i)}handleGridColumnSelect(e,t){if(!Ha(t)){Se.debug2("Column is not filterable");return}var n=H.getIdFromPanel(e);N(n),this.columnSelected(n,t,"tableLink")}handleLinkPointSelected(e,t,n){var{type:i}=n,a=i==="filterSource",l=i==="chartLink"||i==="filterSource";if(!this.isOverlayShown()&&e!=null&&a){var{links:s,localDashboardId:o,setActiveTool:u,setDashboardIsolatedLinkerPanelId:d}=this.props,h=s.filter(c=>{var v,g;return((v=c.start)===null||v===void 0?void 0:v.panelId)===e||((g=c.end)===null||g===void 0?void 0:g.panelId)===e});u(et.LINKER),d(o,e),h.length===0&&this.columnSelected(e,t,i,l,e);return}this.columnSelected(e,t,i,l)}columnSelected(e,t,n){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,a=arguments.length>4?arguments[4]:void 0;if(!(a===void 0&&!this.isOverlayShown())){var{isolatedLinkerPanelId:l}=this.props,{linkInProgress:s}=this.state,{name:o,type:u}=t;if(s==null||s.start==null){var d={id:Ue(),start:{panelId:e,columnName:o,columnType:u},type:"invalid",isReversed:i};i&&(d.endType=n),Se.debug("starting link",d),this.setState({linkInProgress:d})}else{var h,{links:c}=this.props,{start:v,id:g,isReversed:m=!1}=s,f={panelId:e,columnName:o,columnType:u},b=!(m&&i)&&Rt.isLinkValid(m?f:v,m?v:f,a??l);if(!b){Se.debug("Ignore invalid link connection",s,f);return}var y=(h=s.endType)!==null&&h!==void 0?h:n;switch(y){case"invalid":Se.debug("Ignore invalid link connection",s,f);return;case"filterSource":{var C=m!==void 0&&m?v.panelId:f.panelId,T=c.filter(D=>{var{end:M}=D;return(M==null?void 0:M.panelId)===C});this.deleteLinks(T);break}case"chartLink":{var w=m===!0?v:f,P=m===!0?f:v;Se.debug("creating chartlink",{existingLinkEnd:w,start:v,end:f});var R=c.filter(D=>{var{end:M,start:I}=D;return(I==null?void 0:I.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(R);break}}var F={start:m?f:v,end:m?v:f,id:g,type:y,operator:O.eq};Se.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 n,{end:i}=e,{panelId:a,columnName:l,columnType:s}=i,{linkTargetPropMap:o}=this,u=(n=o.get(a))===null||n===void 0?void 0:n.unsetFilterValue;if(u){u(l,s);return}var d=t.getOpenedPanelById(a);d?$a(d)?d.unsetFilterValue(l,s):Se.debug("endPanel.unsetFilterValue not implemented",d):Se.debug("endPanel no longer exists or target is not a panel. Ignoring unsetFilterValue",a)}}setPanelFilterMap(e,t){var n;Se.debug("Set filter data for panel:",e,t);var{panelManager:i}=this.props,{linkTargetPropMap:a}=this,l=(n=a.get(e))===null||n===void 0?void 0:n.setFilterValues;if(l){l(t);return}var s=i.getOpenedPanelById(e);s?$a(s)?s.setFilterMap(t):Se.debug("panel.setFilterMap not implemented",e,s):Se.debug("panel no longer exists or target is not a panel. Ignoring setFilterMap",e)}addLinks(e){var{addDashboardLinks:t,localDashboardId:n}=this.props;t(n,e)}deleteLinks(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,{localDashboardId:n}=this.props;if(e.forEach(l=>this.unsetFilterValueForLink(l)),t){var{setDashboardLinks:i}=this.props;i(n,[])}else if(e.length>0){var{deleteDashboardLinks:a}=this.props;a(n,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 n=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(n)}this.reset()}handleLinkDeleted(e){var{links:t}=this.props,n=t.find(i=>i.id===e);n?this.deleteLinks([n]):Se.error("Unable to find link to delete",e)}handleTargetRegistered(e,t){var{linkTargetPropMap:n}=this;t==null?n.delete(e):n.set(e,t)}handleUpdateValues(e,t){for(var{dh:n,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&&d!=null){var h,c,{panelId:v,columnName:g,columnType:m}=u,f=l.get(v),b=f??new Map,y=(h=(c=b.get(g))===null||c===void 0?void 0:c.filterList)!==null&&h!==void 0?h:[],{visibleIndex:C,isExpandable:T,isGrouped:w}=t[o.columnName],{value:P}=t[o.columnName],R="".concat(P);if(P===null&&T&&w&&(P=void 0),m!=null&&S.isDateType(m)){var F=new Vn(n,{timeZone:a,showTimeZone:!1,showTSeparator:!0,defaultDateTimeFormatString:ae.FULL_DATE_FORMAT});R=F.format(P)}y.push({operator:d,text:R,value:P,startColumnIndex:C}),b.set(g,{columnType:m,filterList:y}),l.set(v,b)}}l.forEach((D,M)=>{this.setPanelFilterMap(M,D)})}handlePanelCloned(e,t){var{links:n}=this.props,i=H.getIdFromPanel(e),a=t.id;if(i!=null){var l=Rt.cloneLinksForPanel(n,i,a);this.addLinks(l)}}handlePanelDragging(e){for(var{links:t}=this.props,n=0;n<t.length;n+=1){var i=t[n],{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){Se.debug("Panel ".concat(e," closed, deleting links.")),this.deleteLinksForPanelId(e)}handleLinkSelected(e){this.setState({selectedIds:new Set([e])})}handleLinksUpdated(e){var{localDashboardId:t,setDashboardLinks:n}=this.props;n(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,n=0;n<t.length;n+=1){var i=t[n],{start:a,end:l,id:s}=i;(a.panelId===e||(l==null?void 0:l.panelId)===e)&&this.handleLinkDeleted(s)}}isOverlayShown(){var{activeTool:e}=this.props;return e===et.LINKER}updateSelectionValidators(){var{activeTool:e,setDashboardColumnSelectionValidator:t,localDashboardId:n}=this.props;switch(e){case et.LINKER:t(n,this.isColumnSelectionValid);break;default:t(n,void 0);break}}updateLinkInProgressType(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"invalid";this.setState(t=>{var{linkInProgress:n}=t;return n!==void 0?{linkInProgress:Za(Za({},n),{},{type:e})}:null})}isColumnSelectionValid(e,t,n){var i,{linkInProgress:a}=this.state,{isolatedLinkerPanelId:l}=this.props,s=typeof e=="string"?n.type==="filterSource"||n.type==="chartLink":H.getComponentNameFromPanel(e)!=="IrisGridPanel";if(t==null)return(a==null?void 0:a.start)!=null&&this.updateLinkInProgressType("invalid"),!1;if(!Ha(t))return Se.debug2("Column is not filterable",t.description),(a==null?void 0:a.start)!=null&&this.updateLinkInProgressType("invalid"),!1;if((a==null?void 0:a.start)==null)return!0;var{isReversed:o=!1,start:u}=a,d=typeof e=="string"?e:H.getIdFromPanel(e);if(d==null)return!1;if(o&&s)return this.updateLinkInProgressType("invalid"),!1;var h={panelId:d,columnName:t.name,columnType:t.type},c=o?Rt.isLinkValid(h,u,l):Rt.isLinkValid(u,h,l);return this.updateLinkInProgressType(c?(i=a.endType)!==null&&i!==void 0?i:n.type:"invalid"),c}render(){var{links:e,isolatedLinkerPanelId:t,panelManager:n}=this.props,{linkInProgress:i,selectedIds:a,isDraggingPanel:l}=this.state,s=this.isOverlayShown(),o=i!=null&&i.start!=null,u=t===void 0?"Click a column source, then click a column target to create a filter link. The filter comparison operator used by a selected link can be changed. Delete a filter link by clicking the delete button or with alt+click. Click done when finished.":"Create a link between the source column button and a table column by clicking on one, then the other. Delete a filter link by clicking the delete button or with alt+click. Click done when finished.";return l?null:p.jsx(Or,{in:s,mountOnEnter:!0,unmountOnExit:!0,onExited:this.handleExited,children:p.jsx(Ps,{disabled:o,panelManager:n,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 fp=vp(pp);function Os(r){Yt(r);var{id:e,layout:t,panelManager:n}=r;return p.jsx(fp,{layout:t,localDashboardId:e,panelManager:n})}var mp={name:"LinkerPlugin",type:Ot.DASHBOARD_PLUGIN,component:Os};function Ds(r){Yt(r);var{id:e,layout:t,panelManager:n,registerComponent:i}=r,a=E.useCallback(function(){var{title:l="",metadata:s={},id:o=Ue(),focusElement:u=H.DEFAULT_FOCUS_SELECTOR,createNewStack:d=!1,dragEvent:h=null}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},c=n.getOpenedPanelConfigsOfType(un.COMPONENT),v=c.map(y=>{var C;return(C=y.title)!==null&&C!==void 0?C:""}),g=l!=null&&l!==""?l:it.getNewMarkdownTitle(v),m=null,f={type:"react-component",component:un.COMPONENT,props:{id:o,metadata:s,panelState:{content:m},localDashboardId:e},title:g,id:o},{root:b}=t;H.openComponent({root:b,config:f,focusElement:u,createNewStack:d,dragEvent:h})},[e,t,n]);return E.useEffect(function(){var s=[i(un.COMPONENT,un)];return()=>{s.forEach(o=>o())}},[i]),Ee(t.eventHub,Ul.OPEN,a),null}var gp={name:"MarkdownPlugin",type:Ot.DASHBOARD_PLUGIN,component:Ds};function Qa(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function Ja(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Qa(Object(t),!0).forEach(function(n){bp(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):Qa(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function bp(r,e,t){return(e=Cp(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Cp(r){var e=yp(r,"string");return typeof e=="symbol"?e:e+""}function yp(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var pi=E.forwardRef((r,e)=>{var{localDashboardId:t,fetch:n,metadata:i}=r,a=ps(n,t,i);return p.jsx(sr,Ja(Ja({ref:e},r),a))});pi.displayName="PandasPanelPlugin";function Fs(r){var{fetch:e}=r,t=fs(e);if(t.status==="loading")return p.jsx(pt,{isLoading:!0});if(t.status==="error")return p.jsx(pt,{errorMessage:Sl(t.error),isLoading:!1});var{model:n,reload:i}=t;return p.jsx(er,{model:n,children:p.jsx(os,{onClick:i})})}var Sp={name:"PandasPanel",title:"Pandas",type:Ot.WIDGET_PLUGIN,component:Fs,panelComponent:pi,supportedTypes:"pandas.DataFrame",icon:nu};function el(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function Nt(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?el(Object(t),!0).forEach(function(n){Ep(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):el(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function Ep(r,e,t){return(e=wp(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function wp(r){var e=Tp(r,"string");return typeof e=="symbol"?e:e+""}function Tp(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}var Pp=J.module("WidgetLoaderPlugin");function Op(r){var e;function t(n,i){var a,l,s=r.component,{metadata:o}=n,u=Nt(Nt({},o),{},{type:(a=o==null?void 0:o.type)!==null&&a!==void 0?a:r.type,name:(l=o==null?void 0:o.name)!==null&&l!==void 0?l:"Widget"}),d=No(s);return p.jsx(yn,Nt(Nt({descriptor:u},n),{},{children:d?p.jsx(s,Nt(Nt({},n),{},{ref:i})):p.jsx(s,Nt({},n))}))}return t.displayName="WidgetLoaderPlugin(".concat((e=r.component.displayName)!==null&&e!==void 0?e:r.name,")"),E.forwardRef(t)}function Ns(r){var e=gl(),t=E.useMemo(()=>{var s=new Map;return e.forEach(o=>{Do(o)&&[o.supportedTypes].flat().forEach(u=>{if(u!=null&&u!==""){if(s.has(u)){var d;Pp.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(r);var{id:n,layout:i,registerComponent:a}=r,l=E.useCallback(s=>{var o,{dragEvent:u,panelId:d=Ue(),fetch:h,widget:c}=s,{type:v}=c,g=v!=null?t.get(v):null;if(g!=null){var m=(o=c.name)!==null&&o!==void 0?o:v,f={localDashboardId:n,metadata:c,fetch:h},b={type:"react-component",component:g.name,props:f,title:m,id:d},{root:y}=i;H.openComponent({root:y,config:b,dragEvent:u})}},[n,i,t]);return E.useEffect(()=>{var s=[...new Set(t.values())].map(o=>{var{panelComponent:u}=o;return u==null?a(o.name,Op(o)):a(o.name,u)});return()=>{s.forEach(o=>o())}},[a,t]),Fo(i.eventHub,l),null}var Dp={name:"WidgetLoaderPlugin",type:Ot.DASHBOARD_PLUGIN,component:Ns};function or(r,e,t){return(e=Fp(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Fp(r){var e=Np(r,"string");return typeof e=="symbol"?e:e+""}function Np(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class Sn{}or(Sn,"DROPDOWN_FILTER","ControlType.DROPDOWN_FILTER");or(Sn,"INPUT_FILTER","ControlType.INPUT_FILTER");or(Sn,"MARKDOWN","ControlType.MARKDOWN");or(Sn,"FILTER_SET_MANAGER","ControlType.FILTER_SET_MANAGER");var Mp=Q.shape({state:Q.shape({panelState:Q.shape({})})}),Rp=Q.shape({panelId:Q.string.isRequired,columnName:Q.string.isRequired,columnType:Q.string.isRequired}),tl=Q.shape({panelId:Q.string.isRequired,columnName:Q.string.isRequired}),Ms=Q.shape({start:tl,end:tl,id:Q.string,isReversed:Q.bool}),Ip=Q.arrayOf(Ms),kp=Q.shape({name:Q.string.isRequired,operateAs:Q.string.isRequired,groups:Q.arrayOf(Q.string).isRequired,permissions:Q.shape({canUsePanels:Q.bool.isRequired,canCopy:Q.bool.isRequired,canDownloadCsv:Q.bool.isRequired,canLogout:Q.bool.isRequired}).isRequired}),Lp=Object.freeze({LinkPoint:Rp,Link:Ms,Links:Ip,Panel:Mp,User:kp}),Ap=(r,e)=>r[e]===null?null:Q.bool,xp=(r,e)=>r[e]===null?null:Q.string,jp=Object.freeze({nullableBoolean:Ap,nullableString:xp});const af=Object.freeze(Object.defineProperty({__proto__:null,ChartBuilderPlugin:hs,ChartBuilderPluginConfig:jv,ChartEvent:Wt,ChartPanel:ai,ChartPanelPlugin:di,ChartPluginConfig:Av,ChartWidgetPlugin:ds,CommandHistoryPanel:pl,CommonPropTypes:jp,ConsoleEvent:$n,ConsolePanel:An,ConsolePlugin:Gv,ControlType:Sn,CorePanel:Fv,DropdownFilterPanel:Vt,FileExplorerPanel:fl,FilterPlugin:vs,FilterPluginConfig:Bv,FilterSetManager:mn,FilterSetManagerPanel:xn,GridPanelPlugin:ci,GridPluginConfig:tp,GridWidgetPlugin:ys,InputFilterEvent:ht,InputFilterPanel:$t,IrisGridEvent:Fe,IrisGridPanel:li,LinkerPlugin:Os,LinkerPluginConfig:mp,LinkerUtils:Rt,LogPanel:ml,MarkdownEvent:Ul,MarkdownPanel:un,MarkdownPlugin:Ds,MarkdownPluginConfig:gp,MockFileStorage:Dv,NotebookEvent:se,NotebookPanel:Et,PandasEvent:Xr,PandasPanel:sr,PandasPanelPlugin:pi,PandasPluginConfig:Sp,PandasWidgetPlugin:Fs,Panel:Nv,TabEvent:lc,ToolType:et,UIPropTypes:Lp,WidgetLoaderPlugin:Ns,WidgetLoaderPluginConfig:Dp,WidgetPanel:yn,WidgetPanelTooltip:Yr,addDashboardLinks:ql,deleteDashboardLinks:Kl,getColumnSelectionValidatorForDashboard:gn,getColumnsForDashboard:Gr,getDashboardConnection:Mo,getDashboardConsoleSettings:Ro,getDashboardSessionWrapper:cl,getFilterSetsForDashboard:ul,getInputFiltersForDashboard:bn,getIsolatedLinkerPanelIdForDashboard:Kn,getLinksForDashboard:Pt,getTableMapForDashboard:qn,isChartPanelDehydratedProps:ts,isChartPanelFigureMetadata:Jl,isChartPanelTableMetadata:_t,isGLChartPanelState:es,isIrisGridPanelMetadata:as,isLegacyIrisGridPanelMetadata:is,setDashboardColumnSelectionValidator:Xl,setDashboardConnection:dc,setDashboardConsoleSettings:Yl,setDashboardFilterSets:Zl,setDashboardIsolatedLinkerPanelId:Zr,setDashboardLinks:tr,setDashboardSessionWrapper:hc,useConfigureRuff:cs,useDashboardColumnFilters:ms,useGridLinker:gs,useLoadTablePlugin:hi,useTablePlugin:Cs},Symbol.toStringTag,{value:"Module"}));export{er as $,Qp as A,_u as B,su as C,mu as D,Zp as E,Or as F,Jp as G,kl as H,Ju as I,ne as J,k as K,Ll as L,Bt as M,pn as N,Vi as O,Il as P,Sd as Q,en as R,Qn as S,S as T,Yt as U,Dd as V,Jn as W,Vl as X,$l as Y,Lr as Z,zh as _,Wr as a,Al as a0,Hi as a1,Y as a2,gr as a3,Cn as a4,Ar as a5,z as a6,Hl as a7,Bh as a8,Lh as a9,zp as aA,O as aB,Rh as aC,Ut as aa,Sh as ab,$ as ac,ct as ad,rf as ae,nf as af,qi as ag,nh as ah,Qe as ai,ea as aj,af as ak,Dl as al,Ur as am,ef as an,jl as ao,jd as ap,G as aq,Rr as ar,A as as,tf as at,Mr as au,Zu as av,Yu as aw,Qu as ax,qp as ay,vn as az,gu as b,Vu as c,ae as d,$u as e,qe as f,Dr as g,Hu as h,Hp as i,Fl as j,ld as k,Nl as l,Up as m,Kp as n,Gp as o,Bp as p,Wp as q,Wu as r,Xp as s,Yp as t,lu as u,Ml as v,Rl as w,ed as x,td as y,sd as z};
14
+ //# sourceMappingURL=index-Czax2Lgv.js.map